/* *****************************************************************************
********************************************************************************
レイアウト 20210528 UPDATE
********************************************************************************
***************************************************************************** */


a img {
	transition-duration:0.3s;
	transition-property:opacity;
}
a:hover img {
	opacity:0.6;
}
.disp_sp {
	display:none;
}
.btn_more {
	text-align:center;
	font-family:'signa';
}
.btn_more a{
	display:inline-block;
	color:#000;
}
.btn_more a:hover{
	color:#000;
	text-decoration:none;
}
.btn_more  span{
	display:block;
	width: 18%;
	min-width:290px;
	border:solid 2px #000;
	padding: 1em 0em;;
	line-height:1;
	font-size:15px;
	letter-spacing: 0.07em;
	transition-duration:0.3s;
	transition-property:background-color,color;
}
.btn_more a:hover span{
	background-color:#000;
	color:#fff;
}
hr {
	border-top: 1px solid #eee;
}


section h1{
	font-family:'signa';
}
section h2.catch{
	font-family:'signa';
}
section h2.catch small,
section h2.catch.ja{
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", "Meiryo", "Osaka", Verdana, "ＭＳ Ｐゴシック", "MS P Gothic", Arial, Helvetica, sans-serif;
}
section h3{
	font-family:'signa';
}


/* *****************************************************************************
フェードに関すること
***************************************************************************** */
.fadeblock {
  opacity: 0;
  transition: opacity 0.0s;
}

.fadeblock.fadeblock-fadein {
  transition: opacity 0.7s;
  opacity: 1.0;
}


/* *****************************************************************************
ヘッダ
***************************************************************************** */
header {
	font-family:'signa';
}
header > .inner {
	position:fixed;
	top:0px;
	left:0px;
	width:100%;
	z-index:1000;
	transition-property:background-color;
	transition-duration:0.3s;
}
header > .inner > div{
	width:92.5%;
	max-width:1400px;
	margin:0px auto;
	line-height:1;
	padding-top:60px;
	padding-bottom:30px;
	transition-property:padding-top,padding-bottom;
	transition-duration:0.3s;
}
header h1 {
	float:left;
	width:15%;
	max-width:210px;
	line-height:1;
}
header h1 img{
	width:90%;
	margin-top: 1px;
}
header nav {
	float:right;
}
header nav li{
	float:left;
	margin-top: 3px;
	margin-left:45px;
	font-size:12px;
	letter-spacing: 0.1em;
}
header nav li:first-child {
	margin-left:0px;
}
header a:link,
header a:visited{
	color:#333;
}
header a:hover{
	text-decoration:none;
}
header nav li hr {
	margin:2px 0px 0px 0px;
	padding:0px;
	width:0%;
	transition-property:width;
	transition-duration:0.2s;
	border-top:solid 1px #000;
	height:0px;
}
header nav li.current hr {
	width:100%;
}
header nav li:hover hr {
	width:100%;
}
header nav li.icon_sns img {
	width:35px;
	height:35px;
}

header #btn_menuopen {
	display:none;
}


.header_sticker header > .inner {
	background-color:rgba(255,255,255,1.0);
}
.header_sticker header > .inner > div{
	padding-top:10px;
	padding-bottom:10px;
}




header #tabbar {
	display:none;
}

/* *****************************************************************************
フッタ
***************************************************************************** */
footer {
	font-family:'signa';
	padding: 6em 0 2em 0;
}
footer > .inner {
}

footer #footernav {
	text-align:center;
	margin-bottom: 1.4em;
}
footer #footernav ul{
	display:inline-block;
	list-style-type:none;
}
footer #footernav li{
	float:left;
	margin-left: 45px;
	font-size:12px;
}
footer #footernav li a:link,
footer #footernav li a:visited{
	color:#333;
}
footer #copy {
	text-align:center;
	font-size:11px;
}

.footerSnsBtn a {
	display:block;
	width:32px;
	height:33px;
	margin:1em auto;
}
.footerSnsBtn a img{
	width: 80%;
}

#btn_pagetop {
	position:fixed;
	right:19px;
	bottom:-42px;
	width:42px;
	height:42px;
	width:15vw;
	height:15vw;
	right:6%;
	bottom:-42px;
	bottom:-15vw;
	padding:0px;
	line-height:1;
	transition-property:all;
	transition-duration:0.4s;
	z-index:10;
	max-width:42px;
	max-height:42px;
}
body.header_sticker #btn_pagetop {
	bottom:3%;
	bottom:3vw;
}
#btn_pagetop img{
	width:100%;
}


/* *****************************************************************************
パンくずリスト
***************************************************************************** */
#breadcrumb {
	width:92.5%;
	max-width:1400px;
	margin:1em auto;
	font-size:9px;
	color:#333;
	letter-spacing:0.05em;
	font-family:'signa';
}
#breadcrumb > ul {
	list-style-type:none;
}
#breadcrumb > ul li {
	float:left;
	margin-right:0.5em;
}
#breadcrumb > ul li:before {
	content:'>';
	display:inline-block;
	margin-right:0.5em;
}
#breadcrumb > ul li > span {
	display:inline-block;
	padding-left:1em;
}
#breadcrumb > ul li:first-child > span{
	padding-left:0em;
}
#breadcrumb > ul li:first-child:before {
	content:'';
	margin-right:0em;
}
#breadcrumb > ul a:link,
#breadcrumb > ul a:visited{
	color:#333;
}












/* *****************************************************************************

-1400px

***************************************************************************** */
@media only screen and (max-width: 1400px) {
header h1 {
		margin-top: 0.1vw;
	max-width:initial;
}
header > .inner > div{
	width:92.5%;
	max-width:initial;
}
header nav li{
	margin-left:2.5vw;
	font-size:12px;
}

} /* END */



/* *****************************************************************************

-1200px

***************************************************************************** */
@media only screen and (max-width: 1200px) {

header > .inner > div {
	padding-top:30px;
}

header h1,
header nav {
	float:none;
}
header h1 {
	margin-top: 0.1vw;
	margin-bottom:0.5em;
}
header nav li{
	margin-left:1.5vw;
	font-size:12px;
}

} /* END */




/* *****************************************************************************

-768px

***************************************************************************** */
@media only screen and (max-width: 768px) {
body {
	font-size:3vw;
}
.disp_sp {
	display:block;
}
br.disp_sp {
	display:inline;
}
img.disp_sp {
	display:inline-block;
}

header > .inner {
	background-color:#fff;
}
.header_sticker header > .inner > div,
header > .inner > div{
	padding:0px;
	width:100%;
}

header h1 {
	padding-top:3.2vw;
	padding-left:3.75%;
	height: 5.1vw;
	font-size:1vw;
	float:none;
	width:28%;
	max-width:180px;
	margin-bottom:0em;
}
header nav{
	position:fixed;
	top:8vw;
	width:100%;
	display:none;
}
header nav:after {
	width:2.7vw;
	height:2.0vw;
	display:block;
	position:absolute;
	right:4vw;
	top:-2.0vw;
	content:' ';
	background:url(/images/common/serif_spmenu.png);
	background-size:contain;
	opacity:0.85;
}
header nav ul{
	background-color:rgba(0,0,0,0.85);
	width:95%;
	margin:auto;
	padding-top:8vw;
	padding-bottom:8vw;
	text-align:center;
}
header nav li{
	float:none;
	font-size:2.8vw;
	font-weight:bold;
}
header nav li a{
	display:block;
	line-height:1;
	padding:1.333em;
}
header nav li a:link,
header nav li a:visited{
	color:#fff;
}
header nav li.icon_sns img {
	width:6vw;
	height:6vw;
}

header #btn_menuopen {
	position:fixed;
	top:2vw;
	right:3vw;
	width:5vw;
	height:5vw;
	max-width:50px;
	max-height:50px;
	cursor:pointer;
	display:block;
	font-size:1vw;
}
header #btn_menuopen img{
	width:100%;
}
header #tabbar {
	display:block;
	border-top:solid 1px #ccc;
	text-align:center;
}
header #tabbar ul{
	display:table;
	width:100%;
}
header #tabbar li{
	display:table-cell;
	line-height:1;
	font-size:2.5vw;
	width:33.333%;
}
header #tabbar a{
	display:block;
	padding:3vw ;
}
header #tabbar li.current{
	background-color:#f8f8f8;
}

	article {
	padding-top:16vw;
	}

	footer {
	padding-top:0px;
	padding-bottom:0px;
	}
	footer #footernav {
	margin-bottom:0px;
	}
	footer #footernav ul{
	display:block;
	border-top:solid 1px #ccc;
	text-align:left;
	}
	footer #footernav li{
	float:none;
	margin-left:0px;
	font-size:2.5vw;
	border-bottom:solid 1px #ccc;
	}
	footer #footernav li a{
	display:block;
	line-height:1;
	padding:1.5em 2em;
	}
	footer #copy {
	text-align:center;
	font-size:2.0vw;
	background-color:#22445b;
	color:#fff;
	padding:1.5em;
	}

	.btn_more  a{
	width:60%;
	}
	.btn_more  span{
	display:block;
	width:100%;
	padding:1em 0em;
	min-width:initial;
	font-size:3vw;
	}

	.footerSnsBtn a img {
	margin-top: 0.6em;
	width: 70%;
	}

/* *****************************************************************************
パンくずリスト
***************************************************************************** */
#breadcrumb {
	font-size:1.6vw;
}


} /* END */

/* *****************************************************************************

-360px

***************************************************************************** */
@media only screen and (max-width: 360px) {


} /* END */









body:not(.page_customer) .grecaptcha-badge{
	display:none;
}