﻿@charset "utf-8";

html { width: 100%; overflow: auto; font-size: 62.5%;}
body {
	background: ;
	text-align: center;
	padding: ;
	line-height: ;
	letter-spacing:0.5px;
	font-size:1.4rem;
	color: #333333;
	width: 100%;
	position:relative;
	overflow:hidden;
}
@media screen and ( max-width:640px ){
	html { font-size: 65%;}
	body { padding-top:82px;}
}
@media screen and ( max-width:420px ){
	html { font-size: 64%;}
	body { padding-top:60px;}
}


.inner { width:100%; max-width:1024px; margin-left:auto; margin-right:auto; padding:0 20px;}
@media screen and ( max-width:420px ){
	.inner { padding:0 12px;}
}
.w700 { width:100%; max-width:700px; margin-left:auto; margin-right:auto;}
.smallTxt { font-size:86%;}

#goTop {
	position:fixed; z-index:500; right:25px; bottom:40px; width:50px; height:50px; cursor:pointer;
	background:#FFF;
	border:#777 1px solid;
	color:#777;
	letter-spacing:0;
	text-align:center;
	border-radius:50%;
}
#goTop:hover { opacity:0.8;}
#goTop:after {
	font-family: "fontello";
	content: '\e800';
	font-size:3.0rem;
	width:48px;
	height:48px;
	position:absolute;
	left:0;
	top:0;
	line-height:48px;
	vertical-align:middle;
	font-style: normal;
	font-weight: normal;
	speak: none;
	font-style: normal;
	font-weight: normal;
	speak: none;
	display: inline-block;
	font-variant: normal;
	text-transform: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

@media screen and ( max-width:1160px ){ #goTop { right:15px;}}
@media screen and ( max-width:640px ){
	#goTop { position:relative; right:inherit; bottom:inherit; margin:25px auto; clear:both; border-width:2px;}
	#goTop:after { width:46px; height:46px; line-height:46px;}
}

#otoiawaseListBtnBox { width:100%; text-align:center; background:#333333; padding:15px 0; position:fixed; z-index:450; left:0; bottom:-300px; color:#FFF; -webkit-transition: 0.3s ease; transition: 0.3s ease; -webkit-backface-visibility:hidden; backface-visibility:hidden;}
#otoiawaseListBtnBox span { display:inline-block; margin-right:20px;}
#otoiawaseListBtnBox a { display:inline-block; padding:1.0em 2.5em 1.0em 4em; background:#B32C25; color:#FFF; border-radius:1.6em; text-decoration:none; vertical-align:middle;}
#otoiawaseListBtnBox a i { font-size:1.0rem;}
#otoiawaseListBtnBox a i:before { margin:0 1.4em; -webkit-transform :scale(0.8); -ms-transform :scale(0.8); transform :scale(0.8); vertical-align:1px;}
#otoiawaseListBtnBox span.spNon { display:inline; font-size:1.4rem; margin:0;}
@media screen and ( max-width:760px ){
	#otoiawaseListBtnBox a { padding:1.0em 1.5em 1.0em 3em;}
}
@media screen and ( max-width:700px ){
	#otoiawaseListBtnBox span { display:block; margin:0 0 12px; line-height:1.3; font-size:1.3rem; }
	#otoiawaseListBtnBox span.spNon { font-size:1.4rem;}
}
@media screen and ( max-width:640px ){
	#otoiawaseListBtnBox { z-index:1000;}
}
@media screen and ( max-width:420px ){
	#otoiawaseListBtnBox span { margin-bottom:10px;}
	#otoiawaseListBtnBox a { padding:0.8em 1em 0.8em 2.5em;}
	#otoiawaseListBtnBox span.spNon { display:none;}
	#otoiawaseListBtnBox a i:before { margin:0 1em;}
}

/* ----------------------------------------------------------------------------
	header
---------------------------------------------------------------------------- */
.headerWrap { height:240px; width:100%; max-width:1300px; margin:0 auto; padding-top:98px; position:relative; text-align:left; }
header { position:relative; text-align:left;}
header .h1 { width:53%; max-width:519px; float:left; margin-left:-18px;}
header .h1 a { display:block; vertical-align:middle;}
header .h1 object { display:none;}
body.ie header .h1 object,body.edge header .h1 object { display:inline-block; width:100%;}
body.ie header .h1 img,body.edge header .h1 img { display:none;}

#pageSearch { position:absolute; right:20px; top:13px; width:180px;}
#pageSearch input { border:none;}
#pageSearch input[type="text"] { width:136px; background:#E6E6E6 url(../img/cmn/icon_search.svg) no-repeat 7px center; background-size:13px 13px; line-height:20px; border-radius:10px 0 0 10px; font-size: 1.2rem; padding:0 2px 0 24px; height:20px; vertical-align:middle; }
#pageSearch input[type="submit"] { width:44px; background:#B32C25; color:#fff; text-align:center; line-height:20px; border-radius:0 10px 10px 0; cursor:pointer; font-size:1.2rem; letter-spacing:2px; height:20px; vertical-align:middle;}
#pageSearch input[type="submit"]:hover { opacity:0.8; filter:alpha(opacity=80);}
nav { display:block;}
.headerWrap .telNum { position:absolute; right:220px; top:11px; text-align:right; font-size:1.5rem; vertical-align:middle; }
.headerWrap .telNum p { display:inline-block;}
.headerWrap .telNum p.mrgL { margin-left:12px;}
.headerWrap .telNum i { font-size:2.0rem; vertical-align:-2px; margin-right:2px;}
.headerWrap .innerNav { display:none;}
.headerWrap .gnavi { float:right; font-size:0; letter-spacing:0;}
.headerWrap .gnavi li { width:16px; height:112px;  display:inline-block; vertical-align:top; margin-right:28px;}
.headerWrap .gnavi li:last-child { margin-right:0;}
.headerWrap .gnavi li a { display:block; width:100%; height:100%;}
.headerWrap .gnavi li object { display:none;}
.headerWrap .gnavi li img { width:16px;}


@media screen and ( max-width:1070px ){
	header .h1 { margin-left:0;}
}


/* =============================== */
/* 2023.03.13 Mitsubachisha  START */
/* =============================== */
@media screen and ( max-width:900px ){
	header .h1 {
		width: 49%;
	}

	.headerWrap .gnavi li {
		margin-right: 25px;
	}
}
/* =============================== */
/* 2023.03.13 Mitsubachisha  END   */
/* =============================== */


@media screen and ( max-width:800px ){
	.headerWrap { height:220px; padding-top:78px; }
	header .h1 { width:49%;}
	.headerWrap .gnavi li { margin-right:24px;}
}


/* =============================== */
/* 2023.03.13 Mitsubachisha  START */
/* =============================== */
@media screen and ( max-width:750px ){
	header .h1 {
		width: 45%;
	}

	.headerWrap .gnavi li {
		margin-right: 20px;
		width: 15px;
	}

	.headerWrap .gnavi li img {
		width: 15px;
	}
}
/* =============================== */
/* 2023.03.13 Mitsubachisha  END   */
/* =============================== */

header .btnImg { display:none;}
@media screen and ( max-width:640px ){
	.headerWrap { height:auto; padding:0;}
	header { height:82px; width:100%; position:fixed; left:0; top:0; z-index:1000; background:#FFF; text-align:center;}
	header.inner { padding:0 10px;}
	header .h1 a { display:inline-block; vertical-align:middle;}
	header .h1 { line-height:82px; width:66%; min-width:256px; margin:0 auto; text-align:center; float:none; vertical-align:middle; display:inline-block;}
	header .h1 img { vertical-align:middle;}
	header .btnImg { display:block; width:66px; height:82px; overflow:hidden; text-indent:-999px; font-size:0; cursor:pointer;}
	header .menuSP { position:absolute; left:0px; top:0px; background:url(/img/cmn/menu_open.png) no-repeat right 10px center; background-size:46px 37px;}
	header .searchSP { position:absolute; right:0px; top:0px; background:url(/img/cmn/icon_search_sp.png) no-repeat 10px center; background-size:46px 37px;}
	header .menuSP.open { background:url(/img/cmn/menu_close.png) no-repeat right 10px center; background-size:46px 37px;}
	header .searchSP.open { background:url(/img/cmn/menu_close.png) no-repeat 10px center; background-size:46px 37px;}
	.headerWrap .telNum { position:relative; text-align:left; }
	#pageSearch { position:relative; width:100%; height:auto;}
	nav.inner { display:none; height:100vh; overflow-y:scroll; background:rgba(0, 0, 0, 0.9); position:fixed; left:0; top:0; z-index:999; color:#FFF;}
	nav.inner { padding:82px 0 40px;}
	.headerWrap .gnavi { display:none;}
	.headerWrap .innerNav { display:block; font-size:0; left:0; margin-bottom:25px; padding-top:1px;}
	.headerWrap .innerNav li { font-size:1.3rem; border-bottom:#999 1px solid; text-align:center; display:inline-table; vertical-align:top; width:100%;}
	.headerWrap .innerNav li a { display:table-cell; width:100%; vertical-align:middle; padding:1em; color:#FFF; text-decoration:none; line-height:1.3;}
	.headerWrap .innerNav li.left50 { width:50%; border-right:#999 1px solid; margin-left:-1px;}
	.headerWrap .innerNav li.right50 { width:50%;}
	.headerWrap .telNum { position:relative; text-align:center; left:inherit; top:inherit; margin-bottom:10px; }
	.headerWrap .telNum p.mrgL { margin-left:30px;}
	.headerWrap .telNum a { color:#FFF;}
	
	#pageSearch { display:none; position:fixed; right:0; top:82px; z-index:1000; background:rgba(0, 0, 0, 0.9); width:100%; padding:20px 6%; text-align:center;}
	#pageSearch input[type="text"] { width:80%; background:#E6E6E6 url(/img/cmn/icon_search_sp.png) no-repeat 0px center; background-size:47px 38px; line-height:38px; border-radius:19px 0 0 19px; font-size: 1.2rem; padding:0 2px 0 50px; height:38px; }
	#pageSearch input[type="submit"] { width:20%; line-height:38px; border-radius:0 19px 19px 0; height:38px;}
}
@media screen and ( max-width:420px ){
	header { height:60px;}
	header .h1 { line-height:54px; width:60%; min-width:inherit; min-width: auto;}
	header .btnImg { width:60px; height:60px;}
	header .menuSP { left:0; top:0; padding-left:12px; background-size:40px 33px;}
	header .searchSP { right:0; top:0; padding-right:12px; background-size:40px 33px;}
	header .menuSP.open { background-size:40px 33px;}
	header .searchSP.open { background-size:40px 33px;}
	nav.inner { padding:60px 0 50px;}
	/*.headerWrap .gnavi { width:92%; margin:0 auto 34px;}
	.headerWrap .gnavi img { width:16px;}*/
	#pageSearch { top:60px;}
}
@media screen and ( max-width:390px ){
	.headerWrap .telNum p { display:block; margin-bottom:10px;}
	.headerWrap .telNum p.mrgL { margin-left:0px;}
}


/* ----------------------------------------------------------------------------
	contents
---------------------------------------------------------------------------- */
.contents { width:100%; background:#F2F2F2; text-align:left;}



/* ----------------------------------------------------------------------------
	footer
---------------------------------------------------------------------------- */
footer { background:#333; color:#FFF; text-align:left; padding:46px 0 18px; margin-bottom:0; letter-spacing:1px;}
footer a { color:#FFF; text-decoration:none; line-height:1.4;}
footer a:hover { opacity:0.8; filter:alpha(opacity=80);}
footer .fName { font-size:1.6rem; width:10em; float:left; font-weight:bold;}
footer .rightBox { width:554px; float:right; margin-bottom:30px;}
footer .rightBox ul { float:left;}
footer .rightBox ul li { margin-bottom:1em; font-weight:bold;}
footer .rightBox ul li ul { margin-left:0.6em; margin-top:1em;}
footer .rightBox ul li ul li { font-size:1.3rem;  font-weight:normal;}
footer .rightBox ul.list01 { width:16.5em; margin-right:60px;}
footer .rightBox ul.list02 { width:6em; margin-right:78px;}
footer .contactLink { width:7em; float:left; font-weight:bold;}
footer .telNum { display:none;}
footer .copyRightBox { clear:both; border-top:#666 1px solid; padding-top:18px; font-size:1.2rem;}
footer .policyLink { width:48%; float:left; font-weight:normal;}
footer .copyRight { width:48%; float:right; text-align:right; font-weight:normal;}

@media screen and ( max-width:850px ){
	footer .fName { width:96%; float:none; margin:-5px auto 30px;}
	footer .rightBox { width:96%; float:none; margin:0 auto 24px;}
}
@media screen and ( max-width:640px ){
	footer { text-align:center; padding:30px 0 17px;}
	footer .fName { width:100%; margin:0 auto; margin-bottom:1.2em;}
	footer .rightBox { width:100%; margin:0 0 3.5em;}
	footer .rightBox ul { display:none;}
	footer .contactLink { width:100%; float:none; margin-bottom:1.2em;}
	footer .contactLink a { display:block; background:#4D4D4D; padding:0.8em 1em;}
	footer .telNum { font-size:1.5rem; display:block;}
	footer .telNum a { text-decoration:underline;}
	footer .telNum p { display:inline-block;}
	footer .telNum p.mrgL { margin-left:12px;}
	footer .telNum i { font-size:2.0rem; vertical-align:-2px; margin-right:2px;}
	footer .copyRightBox { position:relative; padding-top:17px;}
	footer .policyLink { width:100%; float:none; position:absolute; left:0; top:-2.5em;}
	footer .copyRight { width:100%; float:none; text-align:center;}
}
@media screen and ( max-width:420px ){
	footer .telNum p { display:block; margin-bottom:0.5em;}
	footer .telNum p.mrgL { margin-left:0;}
}


/* ----------------------------------------------------------------------------
	ソーシャルボタン
---------------------------------------------------------------------------- */
#shareBtnList { position: fixed; bottom:8px; right:10px; z-index:999; text-align:right;}
#shareBtnList div { display:inline-block; vertical-align:top;}
