@charset "utf-8";
/*
Theme Name: SHINFIELD.CO.JP
Theme URI: http://shinfield.co.jp/
Description: sf-theme
Version: 1.0
Author: Shinfield Co., Ltd
Author URI: http://shinfield.jp/
Tags: simple

*/


@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Modern+Antiqua);
@import url(https://fonts.googleapis.com/css?family=Pacifico);


@font-face {
  font-family: "apercu";
  src: url("css/font/ApercuPro-Bold.woff2") format("woff2"),
       url("css/font/ApercuPro-Bold.woff") format("woff");
}
.f_apercu{
  font-family: "apercu";
}
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@700&display=swap');

/* reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
img,abbr,acronym,fieldset{border:0;}
p{margin-block-start: 0; margin-block-end: 0;}

body{
	font-family: 游ゴシック, YuGothic,'Noto Sans JP', Arial, Verdana, 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	font-size: 18px;
	line-height: 1.9em;
	font-weight: 500;
	-webkit-text-size-adjust:100%;
	color: #374047;
	background: #fff;
	overflow-x: hidden;
}


/* リンク設定
------------------------------------------------------------*/
a{
	color: #2b86b5;
	text-decoration: none;
}

.active{
  text-decoration: underline;
}

a:active, a:focus,input:active, input:focus{
	outline: 0;
}


/* アーカイブ + ウィジェット */
.col3 a{
	display: block;
	color: #000;
}

.col3 a:hover{
	color: #2b86b5;
	text-decoration: none;
}

#wp-calendar a{
	color: #2b86b5 !important;
}



/* フォーム
------------------------------------------------------------*/
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], textarea, select {
	max-width: 90%;
	height: 28px;
	padding: 0 5px;
	border: 1px solid #d4d4d7;
	border-radius: 3px;
	line-height: 28px;
	font-size: 100%;
	color: #555;
	background: #fcfcfc;
}

textarea{
	height: auto;
	line-height: 1.5;
}

input[type="submit"], input[type="reset"], input[type="button"]{
	padding: 1px 10px;
	border: 0;
	border-radius: 3px;
	line-height: 28px;
	font-size: 100%;
	color: #fff;  
	background: #000;
}

 input[type="reset"]:hover, input[type="button"]:hover{
	cursor: pointer;
	background: #777;
}



/* ヘッダー
------------------------------------------------------------*/
#header{
	display: block;
	width: 100%;
	height: auto;
	position: absolute;
	z-index: 100;
	top: 0;
	text-align: center;
}


#headerWrap{
	display: flex;
	justify-content: space-between;
	align-items: center;
}

#logo{
	flex-basis: 18%;
	box-sizing:border-box;
	height: auto;
	padding: 10px 0 5px 2%;
	text-align: center;
}

#logo img{max-width: 125px; height: auto;}

#logo img.logo_scroll{display: none;}

@media only screen and (max-width: 768px){

}


/* Navi */
.gnav-wrapper {
 background: none;
 /* position: relative; */
 width: 96%;
 margin: 0 2%;
}
 
.gnav {
 display: flex;
 justify-content: space-around;
 align-items: center;
}
 
.gnav li {
 padding: 10px 5px;
 text-align: center;
 transition: all .3s ease-in-out;
 margin-bottom: 10px;
box-sizing:border-box;
position: relative;
}

.gnav li.arrowplus{
	background: url(images/common/arrow_down_w.png) no-repeat center bottom 10px;
}

.gnav li.blogicon{
	background: url(images/common/nav_blog_icon.png) no-repeat right 0 top 35%;
	padding-right: 15px;
}
 
.gnav li:hover {
 /*background: #fff;*/
}
 
.gnav a {
 color: #fff;
 padding: 0;
font-size: 12px;
display: block;
}

.gnav a span{
	font-size: 20px;
	font-weight: bold;
	font-family: "apercu", san-serif;
	clear: both;
	display: block;
	margin: 0 auto -10px;
}
 
.gnav > li:last-child a {
 /* border-right: solid 1px #fff; */
}
 
.gnav > li:hover .megamenu {
 max-height: 9999px;
 opacity: 1;
 padding: 0;
}
 
.megamenu {
 background: #fff;
 max-height: 0;
 opacity: 0;
 overflow: hidden;
 width: 170px;
 position: absolute;
 left: 0;
 transition: all .2s ease-in;
 z-index: 999;
}
 
.megamenu-inner {
  width: 100%;
  margin: 0 auto;
 display: flex;
 flex-wrap: wrap;
 box-sizing:border-box;
}
 
.megamenu-inner li {
 width: 100% /* calc( (100% / 5) ) */;
 padding: 0 5%;
 display: block;
 text-align: left;
 margin-bottom: 0;
 box-sizing:border-box;
 transition: all .2s ease-in;
 background: rgba(94, 94, 94, 0.9);
}

.megamenu-inner li:hover {
	background: rgba(94, 94, 94, 0.6);
	/* background: #c3d0d8 #f3f4f5 */;
}
 
.megamenu-inner a {
 border-left: none;
color: #fff;
}

.megamenu-inner a:hover {
	color: #fff;
}
 
.megamenu-inner-img {
 display: none;
 margin: 0 0 10px;
}
 
.megamenu-inner-text img {
 margin: 0 5px 0 0;
}

#header_contact{
	flex-basis: 20%;
	box-sizing:border-box;
	height: auto;
	padding: 10px 2%;
}

#header_contact a{
	color: #d0000d;
	box-sizing:border-box;
	border: 1px solid #fff;
	font-family: "apercu";
	background: #fff;
	text-align: center;
	display: block;
	transition-property: all;
	transition: 0.2s linear;
}

#header_contact a:hover{
	color: #fff;
	font-family: "apercu";
	border: 1px solid #d0000d;
	background: #d0000d;
	text-align: center;
	display: block;
}

.disabled{
    pointer-events: none;
}

/* スクロール後の変化 */
.fixed {
	position: fixed;
	top: 0;
	left: 0;
   	width: 100%;
	background: #fff;
	box-shadow:0px 0px 7px 2px #c1c1c1;
}


.fixed .gnav a {
 color: #374047 /* #a1abb1*/; 
 font-weight: bold;
}

.fixed .gnav a span{
	color: #374047;
}

.fixed .gnav li.arrowplus{
	background: url(images/common/arrow_down_g.png) no-repeat center bottom 10px;
}
.fixed .gnav li.blogicon{
	background: url(images/common/nav_blog_icon_g.png) no-repeat right 0 top 35%;
	padding-right: 15px;
}

.fixed .megamenu-inner a{
 color: #fff /* #374047 */;
}

.fixed .megamenu-inner a:hover {
    color: #fff;
    /* text-decoration: underline; */
}

.fixed #header_contact a{
	color: #fff;
	box-sizing:border-box;
	border: 1px solid #d0000d;
	font-family: "apercu";
	background: #d0000d;
	text-align: center;
	display: block;
	transition-property: all;
	transition: 0.2s linear;
}

.fixed #header_contact a:hover{
	color: #d0000d;
	font-family: "apercu";
	border: 1px solid #d0000d;
	background: #fff;
	text-align: center;
	display: block;
}

.fixed #logo .logo_top{display: none;}
.fixed #logo .logo_scroll{display: inline;}

@media only screen and (max-width: 999px){
	.gnav li {
	 padding: 10px 2px;
	}

	.gnav a {
	font-size: 1vw;
	}

	.gnav a span{
	font-size: 1.8vw;
	}
}

/* ウィジェット
------------------------------------------------------------*/
#widget{
	clear: both;
	margin-top: 50px;
	padding-top: 80px;
	border-top: 1px solid #dfdfdf;
}

.widget{
	padding-bottom: 30px;
}

.widget li{
	margin-bottom: 10px;
	line-height: 1.5;
}

.widget .sub-menu{
	margin: 5px 0 0 10px;
	font-size: 90%;
}

#wp-calendar{
	width: 100%;
}

#wp-calendar th, #wp-calendar td{
  text-align: center;
}

#wp-calendar caption {
    font-weight: bold;
    text-align: center;
}

#wp-calendar #today{
	background: #eee;
}

#wp-calendar th:nth-child(6){
	color: #0040ce;
}

#wp-calendar th:nth-child(7){
	color: #cc0000;
}

#wp-calendar #prev{
	padding-top: 10px;
	text-align: left;
}

#wp-calendar #next{
	padding-top: 10px;
	text-align: right;
}



/* 共通
------------------------------------------------------------*/
h1, h2{
}

h3{
  font-size: 120%;
}

img{
	max-width: 100%;
	height: auto;
}

.inner{
	width: 80%;
	max-width: 1000px;
	margin: 0 auto;
	box-sizing:border-box;
}

.innerS{
	width: 60%;
	margin: 0 auto;
	box-sizing:border-box;
}

.pad_inner{
	width: 98%;
	margin: 0 auto;
	box-sizing:border-box;
}

hr{
	border-top: 1px solid #cfd3d6;
	border-left: 0;
	border-right: 0;
	border-bottom: 0;
}
/*20240328*/
.breadcrumb-area .post > .br-ttl{
        display: none;
    }
.responsive {
width: 100%;
aspect-ratio: 16/9;
}


@media only screen and (max-width: 768px){
	.inner{
	width: 90%;
	max-width: initial
	margin: 0 auto;
	box-sizing:border-box;
	}

	.innerS{
	width: 80%;
	max-width: initial
	margin: 0 auto;
	box-sizing:border-box;
	}
    .br-ttl{
        display: none;
    }
	
}

/* ページ・投稿
------------------------------------------------------------*/
#singleImg{
	text-align: center;
	margin-bottom: 40px;
}

#singleImg img{
	width: 100%;
	height: auto;
}

.header{
	width: 60%;
	margin: 0 auto;
	background: url(images/borderBlack.png) repeat-x 0 50%;
	background-size: 1px 1px;
}

.header h1{
	padding: 10px;
}

.header h1 span{
	display: inline-block;
	background: #fff;
	padding: 0 80px;
}

section header h1{
	text-align: center;
	font-size: 120%;
	margin-bottom: 30px;
}

.entry-footer{
	clear: both;
	padding-top: 30px;
	font-size: 80%;
	text-align: right;
}

.entry-footer span{
	padding-right: 10px;
}

.content{
	display:block;
	padding: 100px 0;
	box-sizing:border-box;
}

.column2{
	display:flex;
	padding: 100px 0;
	justifu-content: space-between;
	align-items: flex-start;
	box-sizing:border-box;
}

#sidebar_main{
	flex-basis: 80%;
	padding-right: 3%;
	box-sizing:border-box;
}

#sidebar_main .post{
	padding-right: 2%;
	box-sizing:border-box;
}

#sidebar_main .post h2, 
#single_column.post h2{
    display: block;
    margin: 20px 0;/*上下少し詰めた*/
    font-size: 130%;
    color: #000;
    border-radius: 10px;
    padding: 2% 2%;/*上下少し詰めた*/
    background: #F3F3F3;
    font-weight: bold;
    font-feature-settings: "palt";
}

#sidebar_main h2:first-of-type, 
#single_column.post h2:first-of-type{
	margin: 0;
	font-size: 2em;
	line-height: 1.4em;
	display: block;
	background: none;
	padding: 0;
}
/*投稿見出しの改行位置調整　PC*/
#sidebar_main h2:first-of-type span, #single_column.post h2:first-of-type span{
    display: inline-block;
}

#sidebar_main .post h3, 
#single_column.post h3{
    margin: 20px 0 10px;
    padding: 10px 1%;
    font-size: 120%;
    font-weight: bold;
    color: #333;
    border-left: 4px solid #464646;
    padding-left: 15px;
}

#sidebar_sub{
	flex-basis: 20%;
}

.widget_recent_entries ul li{
	border-bottom: 1px solid #ecedef;
	padding-bottom: 10px;
}

.widget_recent_entries ul li .post-date{
	font-size: 0.8em;
	display:block;
	font-family: "apercu", sans-serif;
	color: #a1abb1;
}

.widget_categories ul li{
	line-height: 1em;
}

.widget_categories ul li ul.children{
	margin: 10px 0 0 0;
}

.widget_categories ul li ul.children li:before{
	content: "├";
	margin-right: 5px;
}

.widget_categories ul li ul.children li:last-of-type:before{
	content: "└";
	margin-bottom: 10px;
}

#sidebar_sub ul li a{
	font-size: 0.8em;
	text-decoration: underline;
}

#sidebar_sub ul li a:hover{
	text-decoration: none;
}

.single_date{
	display: block;
	color: #a1abb1;
	font-family: "apercu", sans-serif;
	font-size: 14px;
	margin-bottom: 20px;
}

#sidebar .cat-item.cat-item-1,
#sidebar .cat-item.cat-item-3 {
  display: none;
}


@media only screen and (max-width: 768px){
	section.widget{padding-top: 0;}

	.column2{
	display:flex;
	flex-direction: column;
	}

	#sidebar_main{
	flex-basis: 100%;
	padding-right: 0;
	}

	#sidebar_sub{
	flex-basis: 100%;
	}

}


/* アーカイブ
------------------------------------------------------------*/
.col3 .thumb{
	text-align: center;
	margin-bottom: 15px;
}

.col3 .thumb img{
	width: 100%;
	height: auto;
}

.col3 h3{
	margin-bottom: 10px;
  line-height: 1.5;
}

.date{
	margin-top: 10px;
	font-size: 80%;
}


/* タイポグラフィ
------------------------------------------------------------*/
.post{
	font-size: 16px;
}
.post p{
	margin-bottom: 30px;
}

.post ul{
	margin: 0 0 10px 20px;
}

.post ul li{
	margin-bottom: 5px;
	padding-left: 5px;
	list-style: disc;
}

.post ol li{
	list-style:decimal;
}

.post h1, .post h2, .post h3, .post h4, .post h5, .post h6{
	clear: both;
}

.post h1{
	font-size: 120%;
}

.post h2{
	margin: 30px auto;
	font-size: 24px;
	font-weight: bold;
    font-feature-settings: "palt";
}

.post h3{
	margin: 0 auto 30px;
	font-size: 24px;
	font-weight: bold;
}

.post blockquote{
  clear: both;
	margin: 10px 0 30px;
	padding: 0 0 0 20px;
	border-left: 2px solid #bababa;
}
 
.post blockquote p{
	margin: 0;
}

.post table{
	margin:10px 0 20px;
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 1px solid #374047;
}

.post table tr{border-bottom: 1px solid #374047;}


.post table th{
	padding: 10px 10px 10px 0;
	box-sizing:border-box;
	white-space: nowrap;
	word-break: break-all;
	word-wrap: break-word;
	max-width: 100%;
	vertical-align: top;
}

.post table td{
	padding: 7px 5px;
	border-collapse: collapse;
	text-align: left;
	padding: 15px;
	line-height: 1.6em;
	box-sizing: border-box;
	word-break: break-all;
	word-wrap: break-word;
	max-width: 100%;
}

.post dt{
	font-weight: bold;
}

.post dd{
	padding-bottom: 10px;
}

.aligncenter {
	display: block;
	margin:5px auto;
}

.alignright, .alignleft{
	float:right;
	margin: 5px 0 15px 7px;
	display: inline;
}

.alignleft{
	float: left;
	margin: 5px 15px 2px 0;
}

.clear{
	clear: both;
}

.imgFull{
	width: 100% !important;
	height: auto;
}




/* ページナビ
------------------------------------------------------------*/
.pagination, #pageLinks{
	clear: both;
	padding-top: 30px;
	text-align: center;
}

.pagination li{
	display: inline-block;
	margin: 0 5px;
	height: 35px;
	width: 35px;
	line-height: 35px;
	text-align: center;
	border-radius: 100px;
	box-shadow: 0 0 1px 0 rgba(0, 0, 0, .4);
}


#pageLinks span{
	padding: 0 5px;
}

#pageLinks span.current{
	font-weight: bold;
}


/* フッター
------------------------------------------------------------*/

/* 
#ft_topbox{
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin-top: -35px;
}

#ft_topbox a, #ft_btmbox a{
  transition-property: all;
  transition: 0.2s linear;
}

#ft_topbox a:hover, #ft_btmbox a:hover{
  opacity: 0.8;
}

#ft_left{
	flex-basis: 50%;
	justify-content: center;
	box-sizing:border-box;
	padding: 15% 0 5%;
	background: url(images/common/ftimg_leftbg.jpg) no-repeat center;
	background-size: cover;
}

#ft_left .boxin{
	background: rgba(255, 255, 255, 0.75);
	text-align: center;
	width: 70%;
	box-sizing:border-box;
	padding: 5% 7%;
	margin: 0 auto;
}

#ft_left .boxin a{
	display: block;
	background: #374047;
	color: #fff;
	border-radius: 3px;
	padding: 2px 5px;
}

#ft_right{
	flex-basis: 50%;
	justify-content: center;
	box-sizing:border-box;
	padding: 15% 0 5%;
	background: url(images/common/ftimg_rightbg.jpg) no-repeat center;
	background-size: cover;
}

#ft_right .boxin{
	background: rgba(55, 64, 71, 0.75);
	text-align: center;
	width: 70%;
	box-sizing:border-box;
	padding: 5% 7%;
	margin: 0 auto;
	color: #fff;
}

#ft_right .boxin a{
	display: block;
	background: #fff;
	color: #374047;
	border-radius: 3px;
	padding: 2px 5px;
}

#ft_btmbox h3, .boxin h3{
	font-family: "apercu", sans-serif;
	font-weight: bold;
	font-size: 1.4em;
}

.boxin p{
	font-size: 14px;
	line-height: 1.4em;
	margin: 2% auto 4%;
}

#ft_btmbox{
	display: block;
	padding: 60px 0;
	color: #fff;
	background: #374047 url(images/common/ft_btmbox_bg.jpg) no-repeat center;
	background-size: cover;
	background-blend-mode: multiply;
	text-align: center;
}

#ft_btmbox p{
	font-size: 14px;
	line-height: 1.4em;
	margin: 2% auto;
}

#ft_btmbox a{
	display: block;
	background: #fff;
	color: #374047;
	border-radius: 3px;
	padding: 2px 5px;
	width: 35%;
	margin: 0 auto;
	height: auto;
}

@media only screen and (max-width: 768px){
	#ft_topbox{
	display: flex;
	flex-direction: column;
	justify-content: center;
	}

	#ft_left, #ft_right{
	flex-basis: 100%;
	}

	#ft_btmbox h3, .boxin h3{
	font-size: 5vw;
	}

	.boxin p{
	font-size: 2.8vw;
	}

	#ft_btmbox p{
	font-size: 2.8vw;
	}

	#ft_btmbox a{
	font-size: 4vw;
	width: 80%;
	}

	#ft_left .boxin a, #ft_right .boxin a {
	font-size: 4vw;
	}

}
 */


#ft_top{
	background: #fff;
	display: block;
	padding: 100px 0;
}


.footerlogo{
	position: relative;
 	display: block;
	margin: 0 auto 120px;
	text-align: center;
}

.footerlogo img{
	max-width: 200px;
	height:auto;
	margin: 0 auto;
}

.footerlogo:after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 1px;
  height: 60px;
  margin: 80px auto -80px;
  background-color: #374047;
}

.footertext{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
}

.ft_box01{
	display: flex;
	justify-content: space-around;
	align-items: center;
}

.ft_box01 div{
	flex-basis: 50%;
	text-align: center;
	box-sizing:border-box;
	padding: 0 2%;
}

a.btn_footer{
	display: flex;
	justify-content: center;
	align-items: center;
	color: #d0000d;
	background: url(images/common/arrow-right_r.png) no-repeat right 20px top 50%;
	margin:2em auto;
	position: relative;
	padding: 0.5em 1.5em;
	box-sizing:border-box;
	font-family: "游ゴシック", "YuGothic", 'Noto Sans JP', sans-serif;
	font-size: 16px;
	width: 300px;
	height: 60px;
	border-top: 1px solid #a1abb1;
	border-bottom: 1px solid #a1abb1;
	transition-property: all;
	transition: 0.1s linear;
}

a.btn_footer:before, a.btn_footer:after{
    content: '';
    position: absolute;
    top: -10px;
    width: 1px;
    height: -webkit-calc(100% + 20px);
    height: calc(100% + 20px);
    background-color: #a1abb1;
}
a.btn_footer:before {left: 10px;}
a.btn_footer:after {right: 10px;}

a.btn_footer:hover{
	background: #d0000d url(images/common/arrow-right_w.png) no-repeat right 20px top 50%;
	color: #fff;
	border-top: none;
	border-bottom: none;
	width: -webkit-calc(300px - 20px);
	width: calc(300px - 20px) ;
}

a.btn_footer:hover:before, a.btn_footer:hover:after{
    content: '';
    position: absolute;
    top: 0px;
    width: 0;
    height: -webkit-calc(100%);
    height: calc(100%);
    background-color: #fff;
}

a.btn_footer:hover:before {left: 0px;}
a.btn_footer:hover:after {right: 0px;}

.ft_box01 div:last-of-type{
	display: flex;
	align-items: center;
	justify-content: center;
	color: #a1abb1;
	font-size: 12px;
	line-height: 1.8em;
	text-align: left;
}

.ft_box01 div:last-of-type img{
	margin-right: 10px;
}

.ft_box01 div:last-of-type a{
	font-family: 'Inter', sans-serif;
	color: #0e6ab5;
	font-size: 36px;
	font-weight: bold;
}


#ft_btm{
	background: #374047;
	display: block;
	padding: 100px 0 80px;
	color: #fff;
	font-size: 14px;
	line-height: 2em;
}

#ft_btm a{
	color: #a1abb1;
	text-decoration: none;
}

#ft_btm a:hover{
	color: #fff;
	text-decoration: underline;
}


.ft_navibox{
	display: flex;
	justify-content: space-between;
}

.ft_navibox ul{padding: 0 1%;box-sizing:border-box;}
.ft_navibox ul ol{
	color: #fff!important;
	font-weight: bold;
	font-family: "apercu", sans-serif;
	font-size: 20px;
	margin-bottom: 20px;
}

.ft_navibox ul ol a{
	color: #fff!important;
}

.ft_navibox ul ol a:hover{
	color: #fff;
	text-decoration: underline;
}

#ft_copyright{
	display: block;
	text-align: center;
	background: #5f6b74;
	color: #fff;
	font-family: "apercu", sans-serif;
	font-size: 12px;
	box-sizing:border-box;
	padding: 30px 0 80px;
}

.ft_bannerarea{
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 30px auto 0;
}

.ft_bannerarea p{
	padding: 0 2%;
}

#page_top{
  width: 40px;
  height: 40px;
  position: fixed;
  right: 30px;
  bottom: 0;
  background: #ccc;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
  text-decoration: none;
}
#page_top a::before{
  content: '▲';
  font-size: 18px;
  color: #374047;
  position: absolute;
  width: 25px;
  height: 25px;
  top: -10px;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}
/*20240205追加*/
.fixed-banner-pc {
    position: fixed;
    right: 0;
    top: 6vw;
    margin-top: 0;
    z-index: 100;
    width: 4.15vw;
    max-width: 79px;
}
/*20240311追加*/
.fixed-banner-pc > a.side-toi img , .fixed-banner-pc > img {
    display: block;
    width: 100%;
}
   .fixed-banner-sp > a.side-toi img{
        width: 33.33%;
    }

/*20240315追加*/
.firstrecollection {
    text-align: center;
    font-size: 40px;
    font-weight: bold;
    margin-bottom: 70px;
}
.firstrecollection span {
    font-size: 14px;
    line-height: 1.57;
    margin-top: 20px;
    display: inline-block;
}


@media only screen and (max-width: 768px){

	.footerlogo img{
	max-width: 40%;
	height:auto;
	}

	.ft_box01{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	}

	.ft_box01 div{
	flex-basis: 100%;
	width: 85vw;
	text-align: center;
	box-sizing:border-box;
	padding: 0 2%;
	margin: auto;
	}
	#ft_btm{display: none;}

	.ft_box01 div:last-of-type a{
	font-size: 8vw;
	}

	.ft_box01 div .f_s{font-size: 3.5vw;}

	a.btn_footer{
	width: 100%;
	min-height: 60px;
	height: auto;
	}

	a.btn_footer:hover{
	background: #d0000d url(images/common/arrow-right_w.png) no-repeat right 20px top 50%;
	color: #fff;
	border-top: none;
	border-bottom: none;
	width: -webkit-calc(100% - 20px);
	width: calc(100% - 20px) ;
	}
    /*20240205追加*/
.fixed-banner-sp {
    position: fixed;
    bottom:0;
    z-index: 100;
    margin-bottom: -11px;
}
.fixed-banner-pc{
    display: none;
} 
    /*20240315追加*/
    .firstrecollection {
    text-align: center;
    font-size: 1.4em;
    font-weight: bold;
    margin-top: 1em;
    line-height: 1.2em;
}
.firstrecollection span {
    font-size: 0.47em;
    line-height: 2em;
    margin-top: 1em;
    display: inline-block;
}
}



/* RESPONSIVE 設定
------------------------------------------------------------*/

@media only screen and (min-width: 800px){
.fixed-banner-sp{
    display: none;
} 
}

@media only screen and (min-width: 981px){
	.col3{
		width: 80%;
		margin: 0 auto;
	}

	.col3 > li{
		display: inline-block;
		width: 30%;
		padding: 0 1.5%;
		margin-bottom: 50px;
		vertical-align: top;
		text-align: left;
	}
}


@media only screen and (max-width: 980px){
	.col3 > li{
		width: 80%;
		margin: 0 auto 30px;
	}
	.header{
		width: 80%;
		margin-bottom: 30px;
	}
  .header h1 span{
  		padding: 0 15px;
  }
	#mainImg img{
		margin-bottom: 0;
	}
	.innerS{
		width: 80%;
		padding-bottom: 30px;
	}
}


@media only screen and (max-width: 798px){
	#header{
		position: fixed;
		width: 100%;
		z-index: 500;
	}	
	#headerWrap{
		width: 100%;
		height: 70px;
		/*background: #fff;*/
		/*border-bottom: 1px solid #ccc;*/
	}	
	#logo{
		flex-basis: 28%;
		box-sizing:border-box;
		height: auto;
		padding: 15px 0 5px 5%;
		text-align: center;
	}

	#logo img{
		max-height: 45px;
		width: auto !important;
		transform: scale(1);
	}
  a#menu{
  	display: inline-block;
  	position: relative;
  	width: 40px;
  	height: 40px;
  	margin: 10px;
	}

	#menuBtn{
  	display: block;
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	width: 18px;
  	height: 2px;
  	margin: -1px 0 0 -7px;
  	background: #000;
  	transition: .2s;
	}
	#menuBtn:before, #menuBtn:after{
  	display: block;
  	content: "";
  	position: absolute;
  	top: 50%;
  	left: 0;
  	width: 18px;
  	height: 2px;
  	background: #000;
  	transition: .3s;
	}

	#menuBtn:before{
  	margin-top: -7px;
	}

	#menuBtn:after{
  	margin-top: 5px;
	}

	a#menu .close{
  	background: transparent;
	}

	a#menu .close:before, a#menu .close:after{
  	margin-top: 0;
	}

	a#menu .close:before{
  	transform: rotate(-45deg);
  	-webkit-transform: rotate(-45deg);
	}

	a#menu .close:after{
  	transform: rotate(-135deg);
  	-webkit-transform: rotate(-135deg);
	}

	.panel{
		width: 100%;
		display: none;
		overflow: hidden;
		position: relative;
		left: 0;
		top: 0;
		z-index: 100;
	}
	#mainnav{
		position: absolute;
		top: 0;
		width: 100%;
		text-align: right;
		z-index:500;
	}
	#mainnav ul{
		background: #fff;
		text-align: left;
	}
	#mainnav ul ul li{
		padding-left: 20px;
	}

	#mainnav li a{
		position: relative;
		display:block;
		padding:15px 25px;
		border-bottom: 1px solid #ccc;
		color: #000;
		font-weight: 400;
	}	
	#mainnav li.menu-item-has-children a{
		border-bottom: 0;
	}
	#mainnav li.menu-item-has-children{
		border-bottom: 1px solid #ccc;
	}	
	#mainnav li a:before{
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 5px;
		width: 6px;
		height: 6px;
		margin: -4px 0 0 0;
		border-top: solid 2px #000;
		border-right: solid 2px #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#mainImg{
		padding-top: 70px;
		z-index: -100;
	}
	section{
		padding-top: 100px;
	}
	section#toppage{
		padding-top: 30px;
	}
	section h2{
		margin: 0 auto 20px;
	}
	section h2 span {
		padding: 0 30px;
	}
	.alignright, .alignleft{
	  float: none;
		display: block;
		margin: 10px auto;	
	}
    /*投稿見出しの改行位置調整　SP(解除する)*/
#sidebar_main h2:first-of-type span, #single_column.post h2:first-of-type span{
    display: inline;
    padding: 0;
     font-feature-settings: "palt";
}
}

