@charset "utf-8";

/*
---------------------------------------
reset
---------------------------------------
*/
@font-face {
 font-family: "Yu Gothic";
 src: local("Yu Gothic Medium");
 font-weight: 400;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
 margin: 0;
 padding: 0;
 vertical-align: baseline;
 box-sizing: border-box;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
 display: block;
 margin: 0;
 padding: 0;
}

html {
 min-height: 100%;
 width: 100%;
 min-width: 320px;
 overflow-y: scroll;
}

/* 文字編集の為非表示 */
/*
body {
 font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
 line-height: 1.8;
 height: 100%;
 width: 100%;
 margin: 0px auto;
 background: #f7f7f7;
 color: #0d1846;
 min-width: 320px;
 letter-spacing: 2px;
 -webkit-text-size-adjust: 100%;
}
*/

/* 文字 */
body {
 font-family: Noto Sans Japanese,Hiragino Sans,\\30D2\30E9\30AE\30CE\89D2\30B4\30B7\30C3\30AF Pro,Hiragino Kaku Gothic Pro,Open Sans,\\30E1\30A4\30EA\30AA,Meiryo,Osaka,"\FF2D\FF33   \FF30\30B4\30B7\30C3\30AF",MS PGothic,sans-serif;
 line-height: 1.5em;
 height: 100%;
 width: 100%;
 margin: 0px auto;
 background: #f7f7f7;
 color: #2e2e2e;
 min-width: 320px;
 letter-spacing: 0.5px;
 -webkit-text-size-adjust: 100%;
 font-weight: 500;
}

html, body {
 font-size: 120%;
}

@media screen and (min-width: 955px) {
 html, body {
  font-size: 100%;
 }
}

.bl_box,
label {
 cursor: pointer;
}

img {
 border: none;
 line-height: 1;
 max-width: 100%;
 height: auto;
}

ol, ul {
 list-style: none;
}
.content-box ul {
	list-style: inside;
}

ol.clearfix > li,
ul.clearfix > li {
 float: left;
}

table {
 width: 100%;
 border-collapse: collapse;
 border-spacing: 0;
}

table th {
 font-weight: normal;
}

caption, th {
 text-align: left;
}

div, p, dt, dd, li, address, blockquot {
 font-style: normal;

 word-break: break-all;
}

.bold {
 font-weight: bold;
}

.underline {
 text-decoration: underline;
}

p.indent,
ul.indent {
 text-indent: -1em;
 padding-left: 1em;
}

.nobdr {
 border: none !important;
}

figure {
 display: block;
 line-height: 1;
 text-align: center;
}

figure img {
 width: 100%;
}

i {
 font-style: normal;
}

/*
---------------------------------------
link
---------------------------------------
*/

a:link {
 color: #333;
 text-decoration: none;
}

a:visited {
 color: #333;
 text-decoration: none;
}

a:hover {
 color: #333;
 text-decoration: none;
}

a:active {
 color: #333;
 text-decoration: none;
}

a img,
#contents form input[type="submit"],
button{
  -webkit-transition: all .4s;
 transition: all .4s;
}

a:hover img,
#contents form input[type="submit"]:hover,
button:hover {
 filter: alpha(opacity=70); /* internet explorer */
 -khtml-opacity: 0.7; /* khtml, old safari */
 -moz-opacity: 0.7; /* mozilla, netscape */
 opacity: 0.7; /* fx, safari, opera */
 -webkit-transition: all .4s;
 transition: all .4s;
}

nav ul li a:hover img,
.noalpha a:hover img {
 filter: alpha(opacity=100) !important; /* internet explorer */
 -khtml-opacity: 1.0 !important; /* khtml, old safari */
 -moz-opacity: 1.0 !important; /* mozilla, netscape */
 opacity: 1.0 !important; /* fx, safari, opera */
}

a:focus {
 outline: none;
}

/*
---------------------------------------
clear
---------------------------------------
*/

.clearfix:after {
 content: ".";
 display: block;
 height: 0;
 font-size: 0;
 clear: both;
 visibility: hidden;
}

.clearfix {
 min-height: 1px;
}

* html .clearfix {
 height: 1px;
 /*\*//*/
  height: auto;
  overflow: hidden;
 /**/
}

.clear,
.both {
 clear: both;
}

*:first-child + html .clearfix {
 zoom: 1;
}

/* IE7 */

/*
---------------------------------------
style
---------------------------------------
*/

.futura {
 font-family: 'Poppins', 'Nunito Sans', 'FuturaBT', 'Futura', sans-serif;
 letter-spacing: 2px;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
 margin: 0;
 padding: 0;
 font-size: 16px;
 padding: 5px 10px;
 outline: none;
 line-height: 1.4;
}

input[type="submit"],
button {
 -webkit-appearance: none;
/*  width: 38% !important; */
 float: right;
}

#contact #mailformpro textarea {
 width: 100%;
 height: 5em;
 box-sizing: border-box;
}

#contact #mailformpro input[type="text"],
#contact #mailformpro input[type="email"] {
 width: 100%;
}


/*
---------------------------------------
text_align
---------------------------------------
*/

.alnL {
 text-align: left !important;
}

.alnC {
 text-align: center !important;
}

.alnR {
 text-align: right !important;
}

/*
---------------------------------------
float
---------------------------------------
*/

.fL {
 float: left !important;
}

.fR {
 float: right !important;
}

/*
---------------------------------------
table
---------------------------------------
*/

table {
 width: 100%;
 border-collapse: collapse;
 border-spacing: 0;
}

.tbl-01 {
 border-collapse: separate;
 position: relative;
 background: #fff;
 margin: 0 auto;
 table-layout: fixed;
}

.tbl-01 th,
.tbl-01 td {
 font-size: 16px;
 vertical-align: middle;
 position: relative;
 padding: 20px 50px;
}

.tbl-01 th {
 font-weight: bold;
 border-right: 1px solid #d3d3d3;
 width: 25%;
 text-align: right;
}

.tbl-01 td * {
 font-size: 16px;
}

.tbl-02 {
 border-collapse: separate;
 position: relative;
 background: #fff;
 margin: 0 auto;
 table-layout: fixed;
}

.tbl-02 th,
.tbl-02 td {
 font-size: 16px;
 vertical-align: middle;
 position: relative;
 padding: 22px 20px;
 border-bottom: 1px solid #d1d1d1;
}

.tbl-02 th {
 background: #fff;
 width: 25%;
 text-align: center;
 border-right: 1px dashed #d1d1d1;
}

.tbl-02 td * {
 font-size: 18px;
}

.tbl-03 {
 border-collapse: separate;
 position: relative;
 background: #fff;
 margin: 5px auto;
 table-layout: fixed;
 border-top: 1px solid #d1d1d1;
}

.tbl-03 th,
.tbl-03 td {

 vertical-align: middle;
 position: relative;
 padding: 11px 30px;
 border-bottom: 1px solid #d1d1d1;
}

.tbl-03 th {
 background: #fff;
 width: 45%;
 text-align: left;
}

.tbl-03 td * {

}

/*
---------------------------------------
h1-h6
---------------------------------------
*/

h1, h2, h3, h4, h5, h6 {
 font-size: 16px;
 line-height: 1.6;
 font-weight: normal;
}

/*
---------------------------------------
各ボタン
---------------------------------------
*/

.btn-01 {
 width: 90%;
 max-width: 228px;
 margin: 0 auto;
 position: relative;
}

.btn-01 a i {
 width: 20px;
 height: 1px;
 background: #000;
 display: inline-block;
 position: absolute;
 top: 50%;
 right: 20px;
 transition: all .4s;
}

.btn-01 a i:before {
 content: "";
 width: 7px;
 height: 1px;
 background: #000;
 position: absolute;
 top: -3px;
 right: 0;
 transform: rotate(45deg);
 transition: all .4s;
}

.btn-01 a {
 width: 100%;
 display: inline-block;

 position: relative;
 border: 1px solid #000;
 box-sizing: border-box;
 padding: 12px 20px;
 color: #000;
 background: none;
 text-align: center;
 text-decoration: none !important;
 overflow: hidden;
}

.btn-01 a:hover {
 background: #000;
 color: #fff;
}

.btn-01 a:hover i,
.btn-01 a:hover i:before {
 background: #fff;
 right: -22px;
}

.btn-02 {
 width: 90%;
 max-width: 228px;
 margin: 0 auto;
 position: relative;
}

.btn-02 a i {
 width: 20px;
 height: 1px;
 background: #fff;
 display: inline-block;
 position: absolute;
 top: 50%;
 right: 20px;
 transition: all .4s;
}

.btn-02 a i:before {
 content: "";
 width: 7px;
 height: 1px;
 background: #fff;
 position: absolute;
 top: -3px;
 right: 0;
 transform: rotate(45deg);
 transition: all .4s;
}

.btn-02 a {
 width: 100%;
 display: inline-block;

 position: relative;
 border: 1px solid #fff;
 box-sizing: border-box;
 padding: 12px 20px;
 color: #fff;
 background: none;
 text-align: center;
 text-decoration: none !important;
 overflow: hidden;
}

.btn-02 a:hover {
 background: #fff;
 color: #000;
}

.btn-02 a:hover i,
.btn-02 a:hover i:before {
 background: #000;
 right: -22px;
}

.btn-03 a {
 width: 100%;
 display: inline-block;
 font-size: 18px;
 position: relative;
 border: 1px solid #edbf20;
 box-sizing: border-box;
 padding: 7px 20px;
 color: #fff;
 background: #edbf20;
 text-align: center;
 text-decoration: none !important;
}

.btn-03 a:hover {
 background: #fff;
 color: #edbf20;
}

.btn-sub-01 {
 position: relative;
 text-align: center;
}

.btn-sub-01 > *,
.btn-sub-01 > .mfp_element_submit {
 outline: none;
 width: 100%;
 max-width: 450px !important;
 font-size: 1.8rem;
 cursor: pointer;
 position: relative;
 border: 2px solid #363636;
 background: #363636;
 box-sizing: border-box;
 padding: 18px 10px;
 color: #fff;
 text-align: center;
 max-width: 450px;
 margin: 0 auto;
 text-shadow: none;
 box-shadow: none;
}

.btn-sub-01 > *:hover,
.btn-sub-01 > .mfp_element_submit:hover {
 background: #fff;
 color: #363636;
 text-shadow: none;
 box-shadow: none;
}

/* 記事内商品紹介「商品はこちら」ボタン*/
.store_btn {
	display: block;
	position: relative;
	width: 100%;
	padding: 0.8em;
	text-align: center;
	text-decoration: none;
	background: #000;
	transition: 0.5s;
	margin: 20px 0px;
	color: #fff !important;
}
.store_btn:hover {
	opacity:0.8;
	cursor: pointer;
	text-decoration: none;
}

/*
------------------------------------------------------------------------------
layout - common(base)
------------------------------------------------------------------------------
---------------------------------------
wrapper
---------------------------------------
*/

#wrapper {
 /*min-width: 1180px;*/
 width: 100%;
 margin: 0 auto;
 height: 100%;
 position: relative;
}

.inner-box {
 display: block;
 position: relative;
 max-width: 1080px;
 margin: 0 auto;
 box-sizing: border-box;
}

#contents > section {
 padding-bottom: 70px;
}

.top #contents > section {
 padding-bottom: 50px;
}

.page-ttl {
 text-align: center;
 color: #fff;
 letter-spacing: .9em;
 font-size: 2.4rem;
 padding: 45px 0;
}

#contents {
 width: 1120px;
 margin: 0 auto;
}

#main {
 width: 850px;
 float: left;

 padding-bottom: 100px;
}

.post-box .ttl-01 {
 padding: 5px 30px;
 font-weight: normal;
 font-size: 1.1rem;
 line-height: 2;
}

.post-box .box figure {
 margin-bottom: 5px;
}

.post-box .box .new {
 display: block;
 color: #fff;
 background: #AA2445;
 border-radius: 100%;
 width: 4em;
 height: 4em;
 line-height: 4em;
 text-align: center;
 letter-spacing: 2px;
 font-family: 'Times', serif;
 position: relative;
 top: 4em;
 margin-top: -4em;
 left: 0;
 z-index: 1;
 text-indent: 2px;
}

.imgs-slider-2 {
 width: 100%;
 max-width: 1160px;
 margin: 0 auto;
}

.slick-slide {
}

.post-box .box {
 background: #fff;
 padding: 3%;
 border: 1px solid #ededed;
}

.column-single .post-box .box {
 padding: 10px;
}

.slick-slide h3.ttl {
 min-height: 3em;
}

.post-box time {
 font-size: 15px;
 /*display: inline-block;*/
 margin-top: 7px;
 display: block;
}

.post-box .cat-box {
 display: inline-block;
}

#sidebar .s-box .c02-fd > div .cat-box,
.post-box .cat-box {
 font-size: 0;
 display: inline-block;
 vertical-align: top;
}

.post-box .cat-box {
 padding-top: 5px;
}

#sidebar .s-box .c02-fd > div .cat-box span,
.post-box .cat-box span {
 display: inline-block;
 vertical-align: middle;
 margin: 0 5px 5px 0;
}

/* トップページ　カテゴリータグ表示編集の為非表示　*/
/*
#sidebar .s-box .c02-fd > div .cat-box span a,
.post-box .cat-box span a {
 font-size: 0.9rem;
 padding: 0 0.2rem;
 background: #000e2c;
 border: 1px solid #000e2c;
 display: inline-block;
 color: #fff;
 transition: all .4s;
 border-radius: 7px;
}
*/

/* トップページ　カテゴリータグ　*/
#sidebar .s-box .c02-fd > div .cat-box span a,
.post-box .cat-box span a {
  font-size: 12px;
  padding: 0px 5px;
  background: #f1f1f1;
  display: inline-block;
  color: #333333;
  transition: all .4s;
	font-weight: 500;
}


.column-single .post-box .time-cat a {
 font-size: 15px;
 padding: 0 12px;
 line-height: 1.6;
}

#sidebar .s-box .c02-fd > div .cat-box span a:hover,
.post-box .cat-box span a:hover {
 background: #dfdfdf;
 color: #333333;
}

.column-single .post-box time {
 font-size: 13px;
 font-weight: 500;
 font-color: black;
}

#sidebar .s-box .c02-fd {
 margin-bottom: 12px;
 align-items: flex-start;
}

#sidebar .s-box .c02-fd > div .cat-box span a {
 font-size: 0.7rem;
 line-height: 1.5;
 padding: 0 3px;
 letter-spacing: 0;
 text-align: center;
}

.column-single .post-box .cat-box span a {
}

.post-box .box p a:link {
 color: #333;
 text-decoration: underline;
 transition: all .4s;
}

#sidebar {
 width: 250px;
 float: left;
 margin-left: 20px;
 padding-bottom: 50px;
}

#sidebar .s-box {
 border: 1px solid #ededed;
 border-top: 2px solid #0d1846;
 margin-bottom: 20px;
 background: #fff;
 padding: 10px;
}

#sidebar .s-box .ttl-c {
 padding: 10px 5px 18px;
}

#sidebar .s-box .ttl-c i,
#sidebar .s-box .ttl-c:before {
 top: 8px !important;
}

#sidebar .s-box .c02-fd figure {
 position: relative;
 width: 31%;
}

#sidebar .s-box .c02-fd figure:before {
 content: "";
 display: block;

 color: #fff;
 background: #0d1846;
 border-radius: 100%;
 width: 2em;
 height: 2em;
 line-height: 2em;
 text-align: center;
 letter-spacing: 0;
 font-family: 'Times', serif;
 position: absolute;
 top: -5px;
 left: -5px;
 z-index: 1;
}

#sidebar .s-box .c02-fd.rank-1 figure:before {
 content: "1";
 background: #e2bf00;
}

#sidebar .s-box .c02-fd.rank-2 figure:before {
 content: "2";
 background: #a9a9a9;
}

#sidebar .s-box .c02-fd.rank-3 figure:before {
 content: "3";
}

#sidebar .s-box .c02-fd.rank-4 figure:before {
 content: "4";
}

#sidebar .s-box .c02-fd.rank-5 figure:before {
 content: "5";
}

#sidebar .s-box .c02-fd > div {
 padding: 0 0 0 12px;
 width: 69%;
}

#sidebar .s-box .c02-fd > div p {
 line-height: 1;
}

#sidebar .widget_categories ul li,
#sidebar .widget_archive ul li {
 margin: 5px 0;
 font-weight: bold;
}

#sidebar .widget_categories ul li:before,
#sidebar .widget_archive ul li:before {
 content: "・";
}

#sidebar .widget_custom_html {
 border: 1px solid #bbbbbc;
 padding: 15px;
}

#sidebar .widget_custom_html p {

 padding: 10px 0;
}

#sidebar .widget_custom_html h2 {

 text-align: center;
 border-bottom: 1px dotted #bbbbbc;
}

#sidebar .widget_custom_html h2 i {

 font-weight: bold;
}

#sidebar .widget_custom_html h2 > * {
 display: block;
 margin: 0 auto 15px;
}

#sidebar .widget_recent_entries ul {
 padding: 5px 15px;
}

#sidebar .widget_recent_entries ul li {

 border-bottom: 1px dotted #bbbbbc;
 padding: 5px 0;
}

#sidebar .widget_archive select {
 margin: 15px;
}

#sidebar .widget_archive label {
 display: none;
}

#sidebar .widget_search {
 border: none;
}

#sidebar .widget_search label {
 display: none;
}

/* #sidebar .widget_search div {
 text-align: center;
} */

#sidebar .widget_search input[type=text] {
 padding: 0;
 line-height: 1.3;
 width: 63%;
 vertical-align: middle;
}

#sidebar .widget_search input[type=submit] {
 border: 2px solid #ccc;
 background: #eee;
 padding: 2px 10px;
 width: 30% !important;
 color: #333333;
}

#breadcrumbs {
 margin-bottom: 15px;
}

/*
---------------------------------------
header
---------------------------------------
*/

header {
 margin-bottom: 25px;
}

#header > .flex > div {
 width: 100%;
}

header .inner-box {
 position: fixed;
 top: 0;
 left: 0;
 padding-top: 4px;
 height: 54px;
 z-index: 1000000;
 overflow: hidden;
 box-shadow: 0 5px 9px #00000040;
}

header .flex div > p.logo {
 font-size: 0;
 vertical-align: middle;
 line-height: 1;
 text-align: center;
}

header .flex div > p.logo a {
 display: block;
 width: auto;
 padding-top: 3px;
 padding-left: 3px;
}

header .flex div > p.logo a img {
 height: 40px;
 width: auto;
 margin-top: 3px;
}

header .flex div h1,
header .flex div .test {
 width: 60%;
 height: 54px;
 display: none;
 float: left;
 display: block;
 overflow: hidden;
 padding-left: 3%;
 line-height: 2.8em;
}

header .flex li {
 padding: 0 5px;
 float: right;
}

header {
 position: relative;
 background: #000;
 color: #fff;
}

header > * {
 position: relative;
 z-index: 2;
}

#main-img {
 /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
 padding-top: 36.73%;
 background: url(img/main-img-01.jpg) 0 0 no-repeat;
 background-size: contain;
}

#main-img img {
 visibility: hidden;
 display: none;
 margin: 0 auto;
}

/*
---------------------------------------
nav
---------------------------------------
*/

header nav {
 position: relative;
 width: 100%;
 display: none;
 background-color: #fff;
 border-bottom: 1px solid #000;
}

nav ul {
 max-width: 1080px;
 margin: 0 auto;
 position: relative;
 text-align: center;
}

nav ul li {
 text-align: center;

 line-height: 1.6;
 width: 16%;
}

nav ul li a {
 padding: 10px 0;
 display: block;
 color: #000 !important;
 line-height: 1.8;
 font-weight: bold;
 width: 100%;
}

nav ul li a:hover {
}

/*
---------------------------------------
footer
---------------------------------------
*/

footer {
 background: #fff;
 padding-top: 1em;
}

footer nav {
 position: relative;
 background: #0D1050;
 width: 100%;
 border-bottom: 1px solid #fff;
 margin-bottom: 22px;
}

footer nav:before {
 content: "";
 width: 100%;
 height: 1px;
 position: absolute;
 bottom: -2px;
 left: 0;
 background: #0D1050;
}

footer nav ul li a {
 padding: 22px 0;
 color: #fff !important;
}

footer > ul {
 text-align: center;
 /*font-size: 0;*/
 padding: 25px 0;
}

footer > ul li {
 display: inline-block;

 padding: 0 10px;
}

footer p {
 padding: 10px 0;
 background: #000;
 text-align: center;
 color: #FFF;
 font-size: 90%;
}

footer > ul li a {
 color: #8b8b8b;
}

footer > ul li a:hover {
 text-decoration: underline;
}

/*
---------------------------------------
flex
---------------------------------------
*/

.flex {
 display: flex;
 /* width: 100%;
 display: inline-block; */
 flex-wrap: wrap;
 justify-content: space-between;
 align-content: space-between;
 box-sizing: border-box;
}

.flex.reverse {
 flex-direction: row-reverse;
}

.flex.nowrap {
 flex-wrap: nowrap;
}

.flex > * {
 box-sizing: border-box;
}

.flex.c02 > * {
 width: 50%;
}

.flex.c02-fd {
 align-items: center;
}

.flex.c02-fd > figure,
.flex.c02-fd > .lg {
 width: 23%;
}

.flex.c02-fd > div,
.flex.c02-fd > .sl {
 width: 77%;
}

.flex.c03 > * {
 /*width: 33.3333%;*/
}

.flex.c04 > * {
 width: 25%;
}

.flex.c05 > * {
 width: 20%;
}

.flex-tbl {
 display: flex;
 flex-wrap: nowrap;
 justify-content: flex-start;
 align-content: center;
 align-items: center;
}

.flex > * {
 box-sizing: border-box;
}

.flex-auto {
 display: flex;
 flex-wrap: wrap;
 justify-content: start;
 align-content: space-between;
}

.flex-auto > * {
 box-sizing: border-box;
 flex-basis: auto;
}

/*************************/
/* 関連リンク */
/**************************/

.yarpp-related-custom-link{
  margin-top: 25px;
}
.yarpp-related-custom-link .flex span{
  font-weight: bold;
}

.yarpp-related-custom-link .flex{
  list-style: disc inside;
}
.yarpp-related-custom-link ul:nth-child(odd) {
  margin-left: 2%;
  margin-top: 10px;
}
.yarpp-related-custom-link .flex a{
  display: inline-block;
  width: 32%;
  margin-left: .5%;
  vertical-align: top;
  margin-bottom: 15px;
  text-decoration: underline;
}
.yarpp-related-custom-link .flex li{
  /* border: 1px #333 solid;
  text-align: center;
  vertical-align: top;
  min-height: 50px;
  display: inline-flex;
  align-items: center;
  width: 100%;
  justify-content: center; */
  font-size: 14px;
}
.yarpp-related-custom-link .flex span {
  display: block;
  border-bottom: 1px #333 solid;
  width: 100%;
}

.yarpp-related-custom-link .flex span a {
  text-decoration: none;
  margin: 0;
}

  @media (max-width: 768px) {
    .yarpp-related-custom-link .flex li{
      font-size: 12px;
    }
  }
  @media (max-width: 550) {
    .yarpp-related-custom-link .flex a{
      width: 48%;
    }
  }
/*
---------------------------------------
contents
---------------------------------------
----------------------------
common
----------------------------
*/

#contents {

 margin: 0 auto;
 position: relative;
}

.tbl {
 display: table;
 width: 100%;
 height: 100%;
 margin: 0 auto;
 table-layout: fixed;
}

.tbl > * {
 display: table-cell;
 vertical-align: top;
 height: 100%;
}

.caveat {
 font-family: 'Caveat', cursive;
}

.ttl-01 {
 color: #fff;

 text-align: left;
 font-weight: 700;
 line-height: 1.4;
 padding: 2px 5px;
 background: #000e2c;
}

.ttl-01 span {
 font-weight: 200;
 display: block;
 font-size: 2rem;
 color: #ca1f27;
}

.ttl-a {
 line-height: 1.2;
 color: #fff;
 padding: 0.6em 0.8rem;
 background: #000;
 font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;

 letter-spacing: 0.2em;
 margin-bottom: 0.2em;
}

.ttl-s {
 position: relative;
 top: 0.2rem;
}

.ttl-a i {
 font-family: 'Times', serif;
 font-size: 20px;
 display: inline-block;
 margin-right: 5px;
 vertical-align: middle;
}

.ttl-b {
 color: #000;

 margin-bottom: 1em;
 position: relative;
 text-align: center;
}

.ttl-b span {
 font-family: 'Times', serif;
 font-size: 30px;
 display: block;
}

.ttl-c {
 position: relative;
 line-height: 1.5em;
 color: #fff;
 padding: 12px 5px;
 background: #fff;
 color: #2e2e2e;
 font-family: '游ゴシック', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;

 letter-spacing: 2px;
 margin-bottom: 10px;
 border-bottom: 1px solid #ededed;
 font-weight: bold;
 text-align: center;
}

#sidebar .s-box .ttl-c:before,
.ttl-c i {
 font-family: 'Times', serif;
 font-size: 18px;
 display: inline-block;
 margin-right: 5px;
 vertical-align: middle;
 text-align: left;
 position: absolute;
 left: 5px;
 top: 12px;
}

.widget_archive .ttl-c:before {
}

.widget_categories .ttl-c:before {
}

.ttl-04 {
 font-size: 1.8rem;
}

.ttl-04 span {
 text-align: center;
 padding: 3px 10px;
 background: #fae60c;
 font-size: 1.1rem;
 color: #151515;
 margin-right: 10px;
 vertical-align: middle;
}

.ttl-04 i {
 display: block;
 font-size: 3rem;
 font-weight: 600;
 letter-spacing: .7em;
 margin-top: 5px;
}

/*
---------------------------------------
top
---------------------------------------
*/

#spotlight {
 margin-bottom: 55px;
}

.slick-dots li button::before {
 font-size: 9px !important;
 color: #d2d2d2 !important;
}

.slick-dots li {
 margin: 0 1px !important;
}

.slick-dots li.slick-active button::before {
 color: #10184c !important;
}

/*
---------------------------------------
single
---------------------------------------
*/

.wp-pagenavi {
 margin-top: 45px;
 text-align: center;
}

.wp-pagenavi a,
.wp-pagenavi span {
 text-decoration: none;
 line-height: 36px;
 width: 44px;
 height: 44px;
 color: #181818;
 display: inline-block;
 vertical-align: middle;
 text-align: center;
 border-radius: 100%;
 letter-spacing: -1px;
 margin: 0 3px;
 font-size: 10px;
}

.wp-pagenavi .current {
 border: 1px solid #000;
 color: #fff;
 background: #000;
}

.wp-pagenavi a:hover {
 background: #000;
 color: #fff;
 transition: 0.5s;
}

.wp-pagenavi span.current {
 font-weight: bold;
}

.column-single .post-box .content-box h1 {
 font-size: 22px;
 margin-bottom: 20px !important;
}

/* ------h2 h3の編集の為非表示 ------ */
/* 
.column-single .post-box .content-box h2 {
 font-size: 18px;
 margin-bottom: 20px !important;
}

.column-single .post-box .content-box h2 {
 position: relative;
 display: inline-block;
 width: 100%;
 color: #fff;
 box-sizing: border-box;
 padding: 8px 12px;
 text-align: left;
 background: #aaaaaa;
 z-index: 0;
 font-size: 20px;
 margin-bottom: 20px !important;
}

.column-single .post-box .content-box h2:after {
 content: "";
 position: absolute;
 bottom: -15px;
 left: 65px;
 margin-left: -10px;
 display: block;
 width: 0px;
 height: 0px;
 border-style: solid;
 border-width: 15px 8px 0 8px;
 border-color: #aaaaaa transparent transparent transparent;
}

.column-single .post-box .content-box h3 {
 font-size: 1.6rem;
 position: relative;
}

.column-single .box div,
.column-single .box p,
.column-single .box dt,
.column-single .box dd,
.column-single .box li,
.column-single .box address,
.column-single .box blockquot {

}

/*
.column-single .post-box .content-box h3:after {
    display: inline;
    width: 100%;
    content: "";
    height: 10px;
    background: #ffec56;
    line-height: 1;
    position: absolute;
    bottom: 5px;
    left: 0;
    z-index: -1;
}
*/
/* ------h2 h3の編集の為非表示END ------ */

.column-single .post-box .content-box h2 {
	padding: 15px 13px;
	margin-bottom: 20px;
	font-size: 16px;
	font-weight: bold;
	color: #2e2e2e;
	margin-top: 80px;
  border-top: 2px solid #ccc;
  border-bottom: 2px solid #ccc;

  font-size: 18px;
  border: 0;
  margin-bottom: 0;
}

.column-single .post-box .content-box .tile-list{
  font-size: 20px;
  padding-bottom: 0;
}

.column-single .post-box .content-box h3 {
  position: relative;
  padding: 6px 13px;
	font-size: 16px;
	font-weight: bold;
	margin-top: 40px;
	margin-bottom: 20px;
  border-left: 8px solid #000;
}

.column-single .post-box .content-box .sub-t-list{
  margin: 0;
  border: 0;
}
.column-single .post-box .content-box blockquote {
 display: block;
 width: 100%;
 min-height: 80px;
 margin: 2rem auto;
 position: relative;
 padding: 23px 42px 23px 60px;
 box-sizing: border-box;
 background: #ebebeb url(img/ico-quo.png) no-repeat 15px 18px;
 border-radius: 5px;
}

.column-single .post-box .content-box blockquote > * {
 display: block;
 font-size: 15px;
}

/* ------h4の編集の為非表示 ------ */
/*
.column-single .post-box .content-box h4 {
 position: relative;
 padding: 5px 0 10px 20px;
 font-size: 18px;
 font-weight: bold;
 margin-top: 6px !important;
 margin-bottom: 8px !important;
 background: #fff;
 color: #333;
}

.column-single .post-box .content-box h4:before {
 content: "";
 width: 4px;
 height: 85%;
 background: #aaaaaa;
 position: absolute;
 top: 2.5%;
 left: 0;
}

.column-single .post-box .content-box h4:after {
 content: "";
 width: 100%;
 height: 1px;
 background: #ddd;
 position: absolute;
 bottom: -4px;
 left: 0;
 border: none;
 margin-left: 0;
}
*/
/* ------h4の編集の為非表示END ------ */

.column-single .post-box .content-box h4 {
	font-size: 15px;
	font-weight: bold;
	margin-bottom: 20px;
}

.column-single .post-box .content-box h5 {
 position: relative;
 padding: 0 0 10px 20px;
 font-size: 1.8rem;
 font-weight: bold;
 margin-bottom: 20px !important;
 background: #fff;
 color: #333;
}

.column-single .post-box .content-box h5:before {
 content: "";
 width: 4px;
 height: 60%;
 background: #aaaaaa;
 position: absolute;
 top: 10%;
 left: 0;
}

.column-single .post-box .content-box h6 {
 position: relative;
 padding: 0 0 10px 10px;
 font-size: 16px;
 font-weight: bold;
 margin-bottom: 20px !important;
 background: #fff;
 color: #333;
}

.column-single .post-box .content-box h6:after {
 content: "";
 width: 100%;
 height: 1px;
 background: #ddd;
 position: absolute;
 bottom: 0;
 left: 0;
 border: none;
 margin-left: 0;
}

.column-single .post-box .content-box p {
 margin-top: 20px;
 line-height: 1.8em;
 letter-spacing: 0.5px;
 font-weight: 500;
 margin-bottom: 30px;
}

/* border */

/* 目次　*/
/*
div#toc_container {
  margin-bottom: 50px;
}
*/
/* TOC もくじのカスタマイズ */
#toc_container{
 margin-top:25px;
 margin-bottom:35px;
 border-radius: 4px; 
 font-size: 16px; /* 文字の大きさ */
 padding-right: 16px;
 padding-left: 16px;
 background-color: #f9f9f9; /* 背景色 */
 border: 2px solid #f9f9f9; /* 外枠の設定 */
}

#toc_container .toc_title{
 font-size: 18px; /* タイトルの文字の大きさ */
 font-weight:bold;
 color: #2e2e2e; /* タイトルの文字色 */
 text-align: left; 
}

/* タイトル前のアイコン　FontAwesomeの設定 */
#toc_container .toc_title:before{
 content: "\f046"; /* FontAwesomeのコード */
 font-family: FontAwesome;
 padding-right: 6px;
 font-size:18px; /* アイコンの大きさ */
 color: #000;
}

#toc_container .toc_toggle a{
 color: #F89174; 
}

#toc_container ul{
 counter-reset:number;
 list-style:none;
}

#toc_container ul li{
 line-height: 1.25em;
 margin-bottom: 0.9em;
 margin-top:10px;
}

#toc_container ul li:before{
 /*counter-increment: number;
 content: counter(number);*/
 font-weight: bold;
 color: #555555;
 /*padding-right:12px;*/
 content: "・";
 margin-left: -15px;
 margin-right: -10px;
 font-size: 35px;
 vertical-align: middle;
}

#toc_container ul li a{
 font-weight: bold;
 color: #555555;
 text-decoration:none;
 font-size: 15px;
}
#toc_container ul li a:hover{
 text-decoration:underline
}

#toc_container ul ul{
 margin-top: 0.5em;
}

#toc_container ul ul li{
 line-height: 1.25em;
 margin-bottom: 0.5em;
 font-size:14px;
}

#toc_container ul ul li:before{
 content: "\f0da";
 font-family: FontAwesome;
 padding-right: 6px;
 margin-left:0px;
 color: #CCC;
 font-size: 14px;
 margin:0;
}

#toc_container ul ul li a{
 color: #3D3D3D;
 font-weight: 500;
 padding-right:6px;
	text-decoration:none
}

#toc_container ul ul li a:hover{
 text-decoration:underline
}





/* page-nav */
#page-nav {
 padding: 25px 0;
 margin: 25px auto;
 border-top: solid 1px #ddd;
}

#page-nav ul {
 align-items: center;
 width: 100%;
}

#page-nav ul li {
 float: left;
 text-align: center;
}

#page-nav ul li.prev {
 text-align: left
}

#page-nav ul li.back {
}

#page-nav ul li.next {
 text-align: right;
}

#page-nav ul li.prev,
#page-nav ul li.back,
#page-nav ul li.next {
 width: 33%;
}

#page-nav ul li a {
 display: block;
 color: #222;
 text-decoration: none;

 font-weight: bold;
}

#page-nav ul li a:hover {
 color: #161d6e;
}

#page-nav ul li.prev a:before,
#page-nav ul li.next a:after {
 content: "";
 width: 17px;
 height: 17px;
 background: #000;
 display: inline-block;
 vertical-align: middle;
 border-radius: 3px;
 color: #fff;
 font-family: 'FontAwesome';

 text-align: center;
 line-height: 17px;
 font-weight: normal;
 letter-spacing: 0;
}

#page-nav ul li.prev a:before {
 content: "\f104";
 margin-right: 10px;
}

#page-nav ul li.next a:after {
 content: "\f105";
 margin-left: 10px;
}

#page-nav ul li.back a {
 background: #fff;
 border: solid 2px #000;
 color: #000;
 margin: 0;
 padding: 13px 10px;
 color: #000;
 text-decoration: none;
 transition: all .4s;
}

#page-nav ul li.back a:hover {
 background: #000;
 color: #fff;
}

/*-- YARPP --*/
.yarpp-related {
 margin: 0px auto 0px auto !important;
}

/*
.column-single .yarpp-related .yarpp-thumbnails-horizontal {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-content: space-between;
}
.column-single .yarpp-related .yarpp-thumbnails-horizontal .yarpp-thumbnail {
    width: 31.3333%;
    margin: 7px 1%;
    box-sizing: border-box;
    position: relative;
	border: none;
	display:block;
	height:auto;
	border: 1px solid #ededed;
	background: #fff;
	padding:10px;
}
.column-single .yarpp-related .yarpp-thumbnails-horizontal .yarpp-thumbnail > img,
.column-single .yarpp-related .yarpp-thumbnails-horizontal .yarpp-thumbnail-default {
    display: block;
    width: 100%;
    height: auto;
	margin:0;
	text-align: center;
}
.column-single .yarpp-related .yarpp-thumbnail-title {
    font-size: 13px !important;
    display: inline-block;
    width: 100% !important;
    margin: 0 !important;
    padding: 5px 0;
    height: auto;
	max-height: 100% !important;
}
*/
.yarpp-related-custom h2,
.yarpp-related-custom-link h2 {
 position: relative;
 padding: 3px 0 13px 15px;
 font-size: 15px;
 font-weight: bold;
 margin-bottom: 0px !important;
 background: none;
 color: #2e2e2e;
}

.yarpp-related-custom h2:before,
.yarpp-related-custom-link h2:before {
 content: "";
 width: 6px;
 height: 75%;
 background: #000;
 position: absolute;
 top: 2.5%;
 left: 0;
}

.yarpp-related-custom h2:after,
.yarpp-related-custom-link h2:after {
 content: "";
 width: 100%;
 height: 1px;
 background: #ededed;
 position: absolute;
 bottom: -4px;
 left: 0;
 border: none;
 margin-left: 0;
}

#writer {
 width: 100%;
 margin: 45px auto 10px auto;
 box-sizing: border-box;
 position: relative;
 border: none;
 border: 3px solid #ededed;
 background: #fff;
 padding: 15px 0;
 align-items: center;
}

#writer > * {
 padding: 0 18px;
}

#writer h2 {
 color: #0d1846;
 font-size: 2rem;
 font-weight: bold;
 line-height: 1.5;
 margin-bottom: 12px;
 letter-spacing: 0;
}

#writer h2 span {
 display: block;
 margin-bottom: 12px;
}

#writer h2 span i {
 color: #0d1846;
 font-size: 1.1rem;
 border-bottom: 1px solid #0d1846;
 display: inline-block;
 line-height: 2;
}

/*
---------------------------------------
955px以上
---------------------------------------
*/
@media screen and (min-width: 955px) {
 /*--ここから記述--*/
 .slide-menu {
  display: none;
 }

 #slide_menu {
  display: none;
 }

 /*--ここまで--*/
}

/*
---------------------------------------
1180px以下
---------------------------------------
*/
@media screen and (max-width: 1180px) {
 #contents {
  width: 100%;
 }

 #wrapper {
  width: 100%;
 }

 #sidebar {
  width: 20%;
  overflow: auto;
 }
}

/*
---------------------------------------
1180px以下
---------------------------------------
*/
@media screen and (min-width: 955px) and (max-width: 1180px) {
 #main {
  width: 75%;
 }
}

/*
---------------------------------------
954px以下(タブレットサイズ)
---------------------------------------
*/
@media screen and (max-width: 954px) {

 /*--ここから記述--*/
 html, body {
  font-size: 94%;
  font-size: 15px \0;
 }

 p {
  /*font-size: 1.8rem;*/
 }

 .tbl,
 .tbl > * {
  display: block;
  padding: 0 !important;
  width: 100% !important;
 }

 body {
  padding-top: 0 !important;
 }

 .inner-box {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  background: #000;
 }

 #wrapper {
  margin-top: 56px;
  min-width: inherit;
 }

 #main {
  width: 98%;
  float: none;

  margin: 0 auto;
 }

 #sidebar {
  width: 100%;
  float: none;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
 }

 #sidebar .s-box {
  margin-bottom: 20px;
  padding: 0;
 }

 #sidebar .s-box .c02-fd {
  padding: 10px;
 }

 #sidebar > p {
  text-align: center;
  width: 250px;
  margin: 0 auto;
  display: none;
 }
	
/* 検索窓 */
 #sidebar .widget_search input[type=submit] {
  height: 35px;
}
 
 .searchform {
  padding: 0 16px;
  text-align: center;
}

 footer nav .ttl-c,
 #sidebar .s-box .ttl-c {
  margin-bottom: 0;
  padding: 25px 20px;
 }

 footer nav .ttl-c i,
 #sidebar .s-box .ttl-c i,
 #sidebar .s-box .ttl-c::before {
  top: 23px !important;
  left: 20px;
 }

 #sidebar .widget_categories ul li,
 #sidebar .widget_archive ul li {
  margin: 0;
  font-weight: bold;
  border-top: 1px solid #ededed;
 }

 #sidebar .widget_categories ul li:first-child,
 #sidebar .widget_archive ul li:first-child {
  border-top: none;
 }

 #sidebar .widget_categories ul li a,
 #sidebar .widget_archive ul li a {
  padding: 15px 20px;
  box-sizing: border-box;
  display: block;
  position: relative;
  margin: 0;
  font-weight: bold;
 }

 #sidebar .widget_archive ul li {
  position: relative;
 }

 #sidebar .widget_archive ul li a {
  display: block;
 }

 #sidebar .widget_categories ul li:before {
  display: none;
 }

 footer nav ul li a:after,
 #sidebar .widget_categories ul li a:before,
 #sidebar .widget_archive ul li:before {
  font-family: 'FontAwesome';
  content: "\f105";
  display: inline-block;
  line-height: 1;
  margin-top: -.5em;
  padding: 0;
  font-size: 1.8rem;
  position: absolute;
  top: 50%;
  right: 15px;
 }

 footer nav {
  background: #fff;
  border-bottoom: none;
 }

 footer nav ul {
  border-bottom: none;
 }

 footer nav:before {
  display: none;
 }

 footer nav ul li {
  border-top: none;
  font-weight: bold;
  border-bottom: 1px solid #ededed;
 }

 footer nav ul li a {
  position: relative;
  color: #000 !important;
 }

 footer nav .ttl-c {
  margin-bottom: 0;
  border-top: 2px solid #0d1846;
 }

 header .sns-menu {
  position: absolute;
  top: 10px;
  right: 10px;
 }

 header p.alnC {
  font-size: 1rem;
  padding: 0 20px;
 }

 header .sns-menu > ul {
  display: none;
 }

 .open header .inner-box {
  background: #000;
 }

 header .inner-box > ul {
  display: none;
 }

 /*--nav--*/
 nav ul {
  border-bottom: 1px solid #929292;
 }

 nav ul li {
  display: block;
  padding: 0;
  text-align: left;
  border-top: 1px solid #929292;
 }

 nav ul li a {
  display: block !important;
  padding: 10px 20px !important;
 }

 nav ul li a:after {
 }

 footer nav .flex {
  display: block;
 }

 /*--table--*/
 .tbl-02 th,
 .tbl-02 td,
 .tbl-02 tr,
 .tbl-02 tbody {
  display: block;
  width: 100%;
  padding: 0;
 }

 .tbl-02 th {
  border-bottom: 0;
 }

 .tbl-02 th,
 .tbl-02 td {
  padding: 20px 0;
 }

 input[type="text"],
 input[type="email"],
 textarea {
  border: 1px solid #000;
 }

 input[type="text"],
 input[type="tel"],
 input[type="email"],
 select,
 option,
 textarea {
  font-size: 1.6rem !important;
 }

 input[type="text"]{
 width: 60% !important;
 padding: 0;
 margin-right: 0 !important;
 }

 /*
 -------------------
 カラム落ち&ハンバーガーメニュー設定
 -------------------
 */
 #wrapper > .slide-menu > * {
  top: 2px;
  position: relative;
 }

 .slide-menu {
  display: block;
  text-align: center;
  color: #fff;
  font-size: 3rem;
  position: fixed;
  /*top: 0px;*/
  top: 8px;
  right: 5px;
  width: 70px;
  display: block;
  padding: 0;
  vertical-align: middle;
  cursor: pointer;
  z-index: 1000001;
 }

 .slide-menu i {
  display: table;
  width: 100%;
  height: 100%;
  line-height: 100%;
 }

 .slide-menu i:before {
  display: table-cell;
  vertical-align: middle;
  width: 100%;
  height: 100%;
  line-height: 100%;
 }

 .active .slide-menu {
  border-color: #fff;
 }

 .slide-menu span {
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  -webkit-transform-origin: 50% 50%;
  -moz-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  -o-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  display: block;
  /*margin: 10px auto;*/
  margin:8px auto;
  /*height: 5px;*/
  height:2px;
  background: #fff;
  transition: all .4s;
  color: #fff;
  border-radius: 100px;
  /*max-width: 46px;*/
  max-width:32px;
 }

 .open .slide-menu .menu-top {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  /*top: 15px;*/
  top:9px;
  position: relative;
 }

 .open .slide-menu .menu-mdl {
  -webkit-transform: scale(0) translateY(7px);
  -moz-transform: scale(0) translateY(7px);
  -ms-transform: scale(0) translateY(7px);
  -o-transform: scale(0) translateY(7px);
  transform: scale(0) translateY(7px);
 }

 .open .slide-menu .menu-btm {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  /*top:15px;*/
  bottom: 12px;
  position: relative;
 }

 .slide-menu span.menu {
  font-size: 0.9rem;
  text-align: center;
  line-height: 1.1;
  background: none;
 }

 /*--slidemenu--*/
 #slide_menu {
  display: block;
  position: fixed;
  top: 56px;
  right: -80%;
  width: 80%;
  height: 100%;
  overflow-y: auto;
  padding: 0 0 10px 0;
  background: rgba(49, 82, 130, 0.85);
  color: #fff;
  z-index: 10000;
 }

 #slide_menu .logo {
  padding: 5%;
 }

 #slide_menu .logo img {
  vertical-align: middle;
  margin-right: 10px;
  width: 37px;
 }

 #slide_menu .logo a {
  color: #fff;

  letter-spacing: 6px;
  font-weight: bold;
 }

 #slide_menu .menu {
  margin-bottom: 20px;
 }

 #slide_menu .menu li {
  border-bottom: 1px solid #fff;
 }

 #slide_menu .menu li a {
  padding: 5%;
  display: block;
  font-size: 16px;
  position: relative;
  color: #fff;
  line-height: 1.4;
 }

 #slide_menu .menu li a:before {
  content: "";
  width: 3px;
  height: 2em;
  background: #fff;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  position: relative;
  left: -5px;
 }

 #slide_menu .menu li a:after {
  font-family: 'FontAwesome';
  content: "\f105";
  display: inline-block;
  line-height: 1;
  margin-top: -.5em;
  padding: 0;
  font-size: 1.8rem;
  position: absolute;
  top: 50%;
  right: 15px;
 }

 #slide_menu .sns {
  padding: 0 5%;
  text-align: right;
 }

 #slide_menu .sns a {
  display: inline-block;
  padding: 5px;
  font-size: 2.5rem;
  color: #fff;
 }

 .layer {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 9998;
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0);
 }

 body.open {
  overflow: hidden;
 }

 /*--ここまで--*/
}

/*!
 * Hover.css (http://ianlunn.github.io/Hover/)
 * Version: 2.2.0
 * Author: Ian Lunn @IanLunn
 * Author URL: http://ianlunn.co.uk/
 * Github: https://github.com/IanLunn/Hover

 * Hover.css Copyright Ian Lunn 2017. Generated with Sass.
 */

/* Underline From Left */
.hvr-L h3, .hvr-L a {
 display: inline-block;
 vertical-align: middle;
 -webkit-transform: perspective(1px) translateZ(0);
 transform: perspective(1px) translateZ(0);
 box-shadow: 0 0 1px transparent;
 position: relative;
 overflow: hidden;
}

.hvr-L h3:before, .hvr-L a:before {
 content: "";
 position: absolute;
 z-index: -2;
 left: 0;
 right: 100%;
 bottom: 0;
 background: #000;
 height: 4px;
 -webkit-transition-property: right;
 transition-property: right;
 -webkit-transition-duration: 0.3s;
 transition-duration: 0.3s;
 -webkit-transition-timing-function: ease-out;
 transition-timing-function: ease-out;
}

.hvr-L a:hover:before, .hvr-L a:focus:before, .hvr-L a:active:before,
.hvr-L:hover h3:before, .hvr-L:focus h3:before, .hvr-L:active h3:before {
 right: 0;
}

/*
---------------------------------------
954px以下(タブレットサイズ)
---------------------------------------
*/
@media screen and (max-width: 954px) {
 /*--ここから記述--*/
 .hvr-L h3::before, .hvr-L a::before {
  display: none;
 }

 /*--ここまで--*/
}

/*
---------------------------------------
タグクラウドのデザイン
---------------------------------------
*/
.tagcloud{
  width: 98%;
  margin:auto;
}
@media (max-width: 550px) {
  .tagcloud{
    width: 95%;
    margin:auto;
  }
}
.tagcloud a {
 font-size: 0.8em !important; /* 文字のサイズ */
 font-weight: bold;
 line-height: 1em;
 background: #f1f1f1; /* 背景色 */
 color: #333333; /* 文字色 */
 display: inline-block;
 white-space: nowrap;
 padding: 8px 8px; /* 文字周りの余白 */
 margin-top: 7px; /* タグ同士の余白 */
 border-radius: 4px; /* 角を少し丸く */
 text-decoration: none;
}

.tagcloud a:hover {
 background: #97b8ff; /* マウスホバー時の背景色 */
 color: #000;

}

.tagcloud a:before {
 font-family: "FontAwesome";
 content: "\f02b"; /* 絵文字のコード */
 padding-right: 4px;
}

/*
---------------------------------------
ECサイトのバナー
---------------------------------------
*/

.ec_bnr {
 display: block !important;
}

.ec_bnr a {
 display: block !important;
}

.ec_bnr img {
 display: block !important;
 width: 98% !important;
 max-width: initial !important;
 margin-right: auto !important;
 margin-left: auto !important;
}

.ec_bnr1 {
 margin-bottom: 20px;
}

.ec_bnr2 {
 margin-bottom: 0;
}

@media screen and (min-width: 955px) {
 .ec_bnr2 {
  margin-top: 20px;
 }
}

/*
---------------------------------------
修正
---------------------------------------
*/
.column-single .post-box .box h1.ttl {
 line-height: 1.5;
 font-weight: bold;
 font-size: 22px;
 margin: 0.2em 0 0.2em 0;
}

.column-single .post-box .box h2.ttl {
}

header .flex div h1.pc {
 display: none;
}

#page-nav ul li a {
 font-size: 14px;
 line-height: 1.4;
}

.yarpp-related a {
 font-weight: normal !important;
}

.flex a {
 font-size: 0.9rem;
}

.column-list.flex {
 justify-content: flex-start;
}

.column-list .post-box {
 padding: 10px 5px;
 width: 100%;
}

.column-list .post-box .box h3.ttl {
 line-height: 1.5rem;
 font-size: 15px;
 margin: 0;
 font-weight: 500;
}

.column-list .post-box figure a,
.column-list .post-box figure img {
 display: block;
 margin: 0 auto;
}

.column-list .post-box figure img.post-list-img {
 display: block;
 width: 100%;
}

.column-list .post-box figure .post-list-divimg {
 display: none;
}

.column-list .post-box figure .post-list-divimg{
  transform: scale(1);
  transition: all 0.5s 0s ease;
}

.column-list .post-box figure .post-list-divimg:hover{
  transform: scale(1.05);
  transition: all 0.5s 0s ease;
}

.column-list .post-box figure a {
 width: 100%;
}

.column-single .content-box p img {
 display: block;
 margin: 0 auto;
 width: 95%;
}

.column-single .content-box figure img {
 max-width: 95%;
}

.column-single .post-box .box .time-cat .cat-box {
 padding-top: 0;
}

div.content-box div.wp_social_bookmarking_light {
 margin-bottom: 1em !important;
}

.wp_social_bookmarking_light_clear:after {
 content: ".";
 display: block;
 height: 0;
 font-size: 0;
 clear: both;
 visibility: hidden;
}

.wp_social_bookmarking_light_clear {
 display: inline-block;
}

* html .wp_social_bookmarking_light_clear {
 height: 1%;
}

.wp_social_bookmarking_light_clear {
 display: block;
}

.sp {
 display: inherit;
}

.pc,
.pc-initial {
 display: none;
}

.btn-square-little-rich {
 top: -1px;
 position: relative;
 display: inline-block;
 text-decoration: none;
 color: #FFF;
 background: #000; /*色*/
 border: solid 1px #000; /*線色*/
 box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2);
 text-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
 padding: 12px 8px 13px;
 letter-spacing: 3px;
}
@media (max-width: 768px) {
  .btn-square-little-rich {
    top: 0;
    padding: 6px 8px 7px;
  }
}

.btn-square-little-rich:active {
 /*押したとき*/
 border: solid 1px #03A9F4;
 box-shadow: none;
 text-shadow: none;
}

.search_multi_search_box {
 padding-top: 7px;
 padding-bottom: 3px;
 padding-left: 10px
}

.single_search_box {
 margin-bottom: 10px;
}
.single_search_box {
  width: 98%;
  margin: auto;
}
/* iframeのレスポンシブ対応 */
/* https://akros-ac.jp/8277/ */
.frame-wrapper__video {
 position: relative;
 width: 100%;
 height: 0;
 padding-top: 75%;
}

.frame-wrapper__video iframe {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}

/* WP Social Bookmarking Light のアイコン数に応じて値を変える */
@media screen and (min-width: 500px) {
 .wp_social_bookmarking_light_clear {
  display: none;
 }
}

@media screen and (min-width: 723px) {

 .column-list .post-box {
  float: left;
  width: 50%;
 }

 .column-list .post-box figure a {
  max-height: 200px;
  overflow: hidden;
 }

 .column-list .post-box .box {
  width: initial;
  height: 350px;
 }
}

@media screen and (min-width: 955px) {

 header nav {
  display: block;
 }

 .column-single .post-box .box {
  padding: 2% 3%;
 }

 .column-single .post-box .content-box h1 {
  font-size: 24px
 }

 .column-single .post-box .box h1.ttl {
  line-height: bold;
  font-size: 24px;
  color: #2e2e2e;
 }

 .column-single .post-box .box h2.ttl {
 }

 header > .flex {
  padding: 15px 0 20px 0;
 }

 header .inner-box {
  position: initial;
  padding: 0;
  padding-top: 12px;
  height: 80px;
 }

 header .flex div > p.logo a img {
  height: 60px;
  width: auto;
 }

 .column-list .post-box figure img.post-list-img {
  display: none;
 }

 .column-list .post-box figure .post-list-divimg {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: block;
  height: 220px;
 }

 header .flex div > .social {
  display: block;
  width: 20%;
  float: left;
  padding-top: 13px
 }

 header .flex div > p.logo {
  position: relative;
  top: -6px;
  padding-top: 0;
 }

 header .flex div h1,
 header .flex div .test{
  position: relative;
  top: 10px;
  line-height: 44px;
  text-align: center;
	font-weight: bold;
 }

 header .flex div h1.pc {
  height: 3em;
  max-width: 450px;
  display: inline-block;
 }

 .column-list .post-box > div {
  height: 336px;
  overflow: hidden;
 }

 .logo img {
  width: 150px;
 }

 .column-single .content-box p img {
  max-width: 600px;
 }

 .wp-pagenavi a, .wp-pagenavi span {
  line-height: 46px;
  width: 54px;
  height: 54px;
  font-size: 12px;
  margin-right: 20px;
  margin-left: 20px;
  font-weight: bold;
 }

 #sidebar .widget_archive ul li a {
  display: inline-block;
 }

 .sp {
  display: none;
 }

 .pc {
  display: inherit;
 }

 .pc-initial {
  display: initial;
 }

 .c02-fd {
  height: 100px;
  overflow: hidden;
 }

 #sidebar .s-box .c02-fd > div .cat-box, .post-box div.popular-cat {
  display: block;
 }
}

@media screen and (min-width: 1000px) {
 .column-list .post-box {
  width: 33%;
 }
}

/*
---------------------------------------
ポップアップバナー
---------------------------------------
*/
.pum .pum-container, .pum-theme-lightbox .pum-container{
    border: 0 !important;
}
.pum-container.pum-responsive.pum-responsive-medium{
	overflow:unset !important;
}
.pum .pum-content + .pum-close, .pum-theme-lightbox .pum-content + .pum-close{
    width: 60px !important;
    height: 60px !important;
    right: -26px !important;
    top: -27px !important;
    border-radius: 30px !important;
    font-size: 35px !important;
}
