body
{
	margin:0px;
	-webkit-text-size-adjust: 100%;
	
	font-family:'ヒラギノ角ゴ Pro W3','Osaka','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
	background: #FAF0DC;
}

ul
{
	margin:0px;
	padding:0px;
}
ul a
{ 
	display: block;
}
a:link
{
	color:#00468C;
}
a:visited
{
	color:#00468C;
}
a:hover
{
	color:#00468C;
}
a:active
{
	color:#00468C;
}

@media screen and (min-width: 768px){
.pc {display: block !important;}
.sp {display: none !important;}
}
@media screen and (max-width: 767px){
.sp {display: block !important;}
.pc {display: none !important;}
}




header
{
    height:45px;
    z-index:1000;
    
    position:absolute;
    
    width:100%;
    
    background-color:#FAF0DC;
}
header nav
{
    position:absolute;
    top:100%;
    
    right:10px;
    
    top:45px;
}
main
{
	width:100%;
	margin:auto;
	display:block; /* IE対策に追加 */
}

#wrapper
{
	/*background-color:#fff;*/
	
	height:auto !important; /*IE6対策*/ 
	height:100%; /*IE6対策*/ 
	min-height:100%;
}
#contents
{ 
    position:relative;
    top:45px;
	
	/*padding-bottom:58px; /*フッターの高さと同じ*/
	/*padding-bottom:36px; /*フッターの高さと同じ*/
}
#footer{
height:58px;
	/*height:36px;*/
	width:100%;
	position: fixed !important;
	bottom:0;
	z-index: 10;
}

#footer.nofix{
   height:auto;
	width:100%;
	bottom:0;
	z-index: 10;
}



.page
{
	margin:0 auto;
	/*width:320px;*/
	width:100%;
}

.header
{
	background-color:#FAF0DC;
	height:35px;
	padding:5px 10px 5px 10px;
}
.logo
{
	float:left;
}
.menu
{
	float:right;
	margin-right:20px;
}
.menu_off
{
	position:relative;
	top: 3px;
}
.menu_on
{
	display: none;
	
	position:relative;
	left:10px;
	top:-5px;
}


.nav
{
	display:none;
	
	z-index:1000;
	
	width:280px;
	box-shadow:-5px 5px 10px rgba(0, 0, 0, 0.2);
	
	background-color:#fff;
}
.nav li
{
	/*border:1px solid #000000;*/
	/*height:36px;*/
	
	list-style:none;
	display:block;
	
	margin:0px;
	/*padding:12px 0px 11px 18px;*/
	padding:9px 0px 9px 18px;
	
	letter-spacing:1px;
	
	background-image:url("../img/nav_icon.png");
	background-repeat:no-repeat;
	background-position:center right;
	background-size:25px 12px;
	
}
.nav li+li{
	border-top:1px solid #E8380D;
}
.nav a
{
	/*padding:0px 0px 0px 30px;*/
	text-decoration:none;
	
	color:#E8380D !important;
	font-weight:bold;
	font-size:15px;
}
.nav_txt
{
	/*
    position:relative;
    top: -7px;
	*/
}
.nav_txt2{
	font-size:14px;
	line-height:1.4;
	display:block;
}
nav .nav2
{
	padding:3px 0px 3px 18px;
}

.overlay {
    position:fixed;
    top:0;
    left:0;
    display:none;
    width:100%;
    height:100%;
    background:#000;
    opacity:0.3;
    filter:alpha(opacity=30);
    -ms-filter:"alpha(opacity=30)";
    z-index:999;
}
.overlay2 {
    position:absolute;
    top:0;
    left:0;
    display:none;
    width:100%;
    height:45px;
    background:#000;
    opacity:0.3;
    filter:alpha(opacity=30);
    -ms-filter:"alpha(opacity=30)";
    z-index:1100;
}
.overlay_menu {
	display: none;
	
    z-index:1200;
    
    position:absolute;
	right:0px;
	top:0px;
}






.tel_request{margin:auto;width:95%;}
.tel_request img{margin-bottom:5px;width:100%;display:block;}
.tel_request p{font-weight:bold;font-size:15px;text-align:center;line-height:1.6em;margin:0;}
.tel_requestl a{display:block;}









#pageTop
{
	position: fixed;
	bottom: 46px;
	right: 10px;
}


#pageTop a img{display:block;}

#pageTop a:hover {
	text-decoration: none;
	opacity: 0.7;
}

.footer
{
	background-color:#fff;
	text-align:center;
	
	
	display: -webkit-box;
	display: box;
	
	/*
	border:1px solid #000000;
	padding:5px;
	height:50px;
	
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	*/
}
.footer_btn
{
	float:left;
	
	background-color:#E8380D;
	color:#fff;
	
	font-weight:bold;
	font-size:16px;
	letter-spacing:3px;
	
	text-align:center;
	width:106px;
	
	position:relative;
	
	margin-right:1px;
	
	
	-webkit-box-flex:1;
	box-flex:1;
	width:100%;
			
	height:36px;
	
	/*
	border:1px solid #888888;
	padding:10px;
	*/
}
.footer_btn_end
{
	float:left;
	
	background-color:#E8380D;
	color:#fff;
	
	font-weight:bold;
	font-size:16px;
	letter-spacing:3px;
	
	text-align:center;
	width:106px;
	
	position:relative;
	
	-webkit-box-flex:1;
	box-flex:1;
	width:100%;
	
	
	
	height:36px;
}
.footer a
{
	text-decoration:none;
	color:#fff;
	
	line-height:2.4;
}
.copyright_bg
{
	display:table;
	height:22px;
	width:100%;
	background-color:#FAF0DC;
}
.copyright
{
	height:22px;
	width:100%;

	display:table-cell;
	vertical-align:middle;
	font-size:10px;
	color:#444;
	line-height:22px;
	text-align:center;
}


/*共通ボタン色==============================*/

.btn_b{
	background: -webkit-linear-gradient(top, #0085c3 0%,#003597 56%,#00468c 100%);
	background: linear-gradient(to bottom, #0085c3 0%,#003597 56%,#00468c 100%);

	box-shadow: 0 0 0 1px #003597 inset, 0 0 0 2px #52B2D8 inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow: 0 0 0 1px #003597 inset, 0 0 0 2px #52B2D8 inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}

.btn_b2{
	background: -webkit-linear-gradient(top, #82D2E1 0%,#3C8CA5 56%,#3C8CA5 100%);
	background: linear-gradient(to bottom, #82D2E1 0%,#3C8CA5 56%,#3C8CA5 100%);

	box-shadow: 0 0 0 1px #3C8CA5 inset, 0 0 0 2px #B1CED7 inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow: 0 0 0 1px #3C8CA5 inset, 0 0 0 2px #B1CED7 inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}

.btn_r{
	background: -webkit-linear-gradient(top, #FF8E00 0%,#F02900 56%,#E8380D 100%);
	background: linear-gradient(to bottom, #FF8E00 0%,#F02900 56%,#E8380D 100%);

	box-shadow:0 0 0 1px #E01C00 inset,  0 0 0 2px #FFB33D inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #E01C00 inset,  0 0 0 2px #FFB33D inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}

.btn_r2{
	background: -webkit-linear-gradient(top, #E93802 0%,#A30F0D 56%,#A30F0D 100%);
	background: linear-gradient(to bottom, #E93802 0%,#A30F0D 56%,#A30F0D 100%);

	box-shadow:0 0 0 1px #E01C00 inset,  0 0 0 2px #FFB33D inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #E01C00 inset,  0 0 0 2px #FFB33D inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}

.btn_br{
background: -webkit-linear-gradient(top, #7a5858 1%,#260303 100%);
background: linear-gradient(to bottom, #7a5858 1%,#260303 100%);

	box-shadow:0 0 0 1px #260303 inset,  0 0 0 2px #9e7070 inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #260303 inset,  0 0 0 2px #9e7070 inset, 0 0px 5px 0px #999999;
	cursor:pointer;
	font-size:14px !important;
	letter-spacing:1px !important;
}




.btn_g{
	background: -webkit-linear-gradient(top, #84C503 0%,#508B00 56%,#6AA101 100%);
	background: linear-gradient(to bottom, #84C503 0%,#508B00 56%,#6AA101 100%);

	box-shadow:0 0 0 1px #387A00 inset,  0 0 0 2px #A6D421 inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #387A00 inset,  0 0 0 2px #A6D421 inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}

.btn_o{
	background: -webkit-linear-gradient(top, #FF9C21 0%,#FF6734 56%,#FF7B2D 100%);
	background: linear-gradient(to bottom, #FF9C21 0%,#FF6734 56%,#FF7B2D 100%);

	box-shadow:0 0 0 1px #F25400 inset,  0 0 0 2px #FFBA24 inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #F25400 inset,  0 0 0 2px #FFBA24 inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}
.btn_n{
	background: -webkit-linear-gradient(top, #bbb 0%,#999999 56%,#969696 100%);
	background: linear-gradient(to bottom, #bbb 0%,#999999 56%,#969696 100%);

	box-shadow:0 0 0 1px #797979 inset,  0 0 0 2px #eee inset, 0 0px 5px 0px #999999;
	-webkit-box-shadow:0 0 0 1px #797979 inset,  0 0 0 2px #eee inset, 0 0px 5px 0px #999999;
	cursor:pointer;
}


/*span.y-line{background: linear-gradient(transparent 30%, #fff082 80%)repeat scroll 0 0;}*/
span.y-line{background: linear-gradient(#FFFFFF 30%, #fff082 80%)repeat scroll 0 0;}


/*共通背景色==============================*/

.bg_yellow{
	background-color:#FFFCE9;
}

	
.bg_white{
	background-color:#ffffff;
}

.pb75{
	padding-bottom:75px;
}

.pt40{
	padding-top:40px;
}


/*共通 見出し==============================*/

.h2{
    padding-left: 8px;
    border-left: solid 5px #ffffff;
    display: inline-block;
    font-size:18px;
}

.h3_l {
    padding-left: 8px;
    border-left: solid 3px #00468C;
}

.h3_h {
    padding-left: 8px;
    border-left: solid 3px #E8380D;
}

.h3_o {
    padding-left: 8px;
    border-left: solid 3px #FF6734;
}




.tel_img
{
	max-width:320px;
	padding-bottom:40px;
}

/* ---------------------------------------------
	preset margin 
--------------------------------------------- */
.mt00 { margin-top:  0   !important;}
.mt01 { margin-top:  1px !important;}
.mt02 { margin-top:  2px !important;}
.mt03 { margin-top:  3px !important;}
.mt04 { margin-top:  4px !important;}
.mt05 { margin-top:  5px !important;}
.mt06 { margin-top:  6px !important;}
.mt07 { margin-top:  7px !important;}
.mt08 { margin-top:  8px !important;}
.mt09 { margin-top:  9px !important;}
.mt10 { margin-top: 10px !important;}
.mt12 { margin-top: 12px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt35 { margin-top: 35px !important;}
.mt40 { margin-top: 40px !important;}
.mt45 { margin-top: 45px !important;}
.mt50 { margin-top: 50px !important;}

.mr00 { margin-right:  0   !important;}
.mr01 { margin-right:  1px !important;}
.mr02 { margin-right:  2px !important;}
.mr03 { margin-right:  3px !important;}
.mr04 { margin-right:  4px !important;}
.mr05 { margin-right:  5px !important;}
.mr06 { margin-right:  6px !important;}
.mr07 { margin-right:  7px !important;}
.mr08 { margin-right:  8px !important;}
.mr09 { margin-right:  9px !important;}
.mr10 { margin-right: 10px !important;}
.mr12 { margin-right: 12px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr35 { margin-right: 35px !important;}
.mr40 { margin-right: 40px !important;}
.mr45 { margin-right: 45px !important;}
.mr50 { margin-right: 50px !important;}

.mb00 { margin-bottom:  0   !important;}
.mb01 { margin-bottom:  1px !important;}
.mb02 { margin-bottom:  2px !important;}
.mb03 { margin-bottom:  3px !important;}
.mb04 { margin-bottom:  4px !important;}
.mb05 { margin-bottom:  5px !important;}
.mb06 { margin-bottom:  6px !important;}
.mb07 { margin-bottom:  7px !important;}
.mb08 { margin-bottom:  8px !important;}
.mb09 { margin-bottom:  9px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb12 { margin-bottom: 12px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}

.ml00 { margin-left:  0   !important;}
.ml01 { margin-left:  1px !important;}
.ml02 { margin-left:  2px !important;}
.ml03 { margin-left:  3px !important;}
.ml04 { margin-left:  4px !important;}
.ml05 { margin-left:  5px !important;}
.ml06 { margin-left:  6px !important;}
.ml07 { margin-left:  7px !important;}
.ml08 { margin-left:  8px !important;}
.ml09 { margin-left:  9px !important;}
.ml10 { margin-left: 10px !important;}
.ml12 { margin-left: 12px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml30 { margin-left: 35px !important;}
.ml40 { margin-left: 40px !important;}
.ml45 { margin-left: 45px !important;}
.ml50 { margin-left: 50px !important;}


/* ---------------------------------------------
	preset padding 
--------------------------------------------- */
.pt00 { padding-top:  0   !important;}
.pt01 { padding-top:  1px !important;}
.pt02 { padding-top:  2px !important;}
.pt03 { padding-top:  3px !important;}
.pt04 { padding-top:  4px !important;}
.pt05 { padding-top:  5px !important;}
.pt06 { padding-top:  6px !important;}
.pt07 { padding-top:  7px !important;}
.pt08 { padding-top:  8px !important;}
.pt09 { padding-top:  9px !important;}
.pt10 { padding-top: 10px !important;}
.pt12 { padding-top: 12px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt35 { padding-top: 35px !important;}
.pt40 { padding-top: 40px !important;}
.pt45 { padding-top: 45px !important;}
.pt50 { padding-top: 50px !important;}

.pr00 { padding-right:  0   !important;}
.pr01 { padding-right:  1px !important;}
.pr02 { padding-right:  2px !important;}
.pr03 { padding-right:  3px !important;}
.pr04 { padding-right:  4px !important;}
.pr05 { padding-right:  5px !important;}
.pr06 { padding-right:  6px !important;}
.pr07 { padding-right:  7px !important;}
.pr08 { padding-right:  8px !important;}
.pr09 { padding-right:  9px !important;}
.pr10 { padding-right: 10px !important;}
.pr12 { padding-right: 12px !important;}
.pr15 { padding-right: 15px !important;}
.pr20 { padding-right: 20px !important;}
.pr25 { padding-right: 25px !important;}
.pr30 { padding-right: 30px !important;}
.pr35 { padding-right: 35px !important;}
.pr40 { padding-right: 40px !important;}
.pr45 { padding-right: 45px !important;}
.pr50 { padding-right: 50px !important;}

.pb00 { padding-bottom:  0   !important;}
.pb01 { padding-bottom:  1px !important;}
.pb02 { padding-bottom:  2px !important;}
.pb03 { padding-bottom:  3px !important;}
.pb04 { padding-bottom:  4px !important;}
.pb05 { padding-bottom:  5px !important;}
.pb06 { padding-bottom:  6px !important;}
.pb07 { padding-bottom:  7px !important;}
.pb08 { padding-bottom:  8px !important;}
.pb09 { padding-bottom:  9px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb12 { padding-bottom: 12px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}
.pb30 { padding-bottom: 30px !important;}
.pb35 { padding-bottom: 35px !important;}
.pb40 { padding-bottom: 40px !important;}
.pb45 { padding-bottom: 45px !important;}
.pb50 { padding-bottom: 50px !important;}
.pb55 { padding-bottom: 55px !important;}
.pb60 { padding-bottom: 60px !important;}
.pb65 { padding-bottom: 65px !important;}
.pb70 { padding-bottom: 70px !important;}
.pb75 { padding-bottom: 75px !important;}

.pl00 { padding-left:  0   !important;}
.pl01 { padding-left:  1px !important;}
.pl02 { padding-left:  2px !important;}
.pl03 { padding-left:  3px !important;}
.pl04 { padding-left:  4px !important;}
.pl05 { padding-left:  5px !important;}
.pl06 { padding-left:  6px !important;}
.pl07 { padding-left:  7px !important;}
.pl08 { padding-left:  8px !important;}
.pl09 { padding-left:  9px !important;}
.pl10 { padding-left: 10px !important;}
.pl12 { padding-left: 12px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}
.pl30 { padding-left: 35px !important;}
.pl40 { padding-left: 40px !important;}
.pl45 { padding-left: 45px !important;}
.pl50 { padding-left: 50px !important;}


.w03 { width:   3% !important;}
.w04 { width:   4% !important;}
.w05 { width:   5% !important;}
.w06 { width:   6% !important;}
.w07 { width:   7% !important;}
.w08 { width:   8% !important;}
.w09 { width:   9% !important;}
.w10 { width:  10% !important;}
.w11 { width:  11% !important;}
.w12 { width:  12% !important;}
.w13 { width:  13% !important;}
.w14 { width:  14% !important;}
.w15 { width:  15% !important;}
.w20 { width:  20% !important;}
.w25 { width:  25% !important;}
.w30 { width:  30% !important;}
.w33 { width:  33% !important;}
.w35 { width:  35% !important;}
.w40 { width:  40% !important;}
.w45 { width:  45% !important;}
.w50 { width:  50% !important;}
.w55 { width:  55% !important;}
.w60 { width:  60% !important;}
.w65 { width:  65% !important;}
.w70 { width:  70% !important;}
.w75 { width:  75% !important;}
.w80 { width:  80% !important;}
.w85 { width:  85% !important;}
.w90 { width:  90% !important;}
.w95 { width:  95% !important;}

.w100{ width: 100% !important;}

.mw100px{ max-width:100px !important;}

.w10px{ width: 10px !important;}
.w20px{ width: 20px !important;}
.w30px{ width: 30px !important;}
.w40px{ width: 40px !important;}
.w50px{ width: 50px !important;}
.w60px{ width: 60px !important;}
.w70px{ width: 70px !important;}
.w80px{ width: 80px !important;}
.w90px{ width: 90px !important;}
.w100px{ width: 100px !important;}
.w110px{ width: 110px !important;}
.w120px{ width: 120px !important;}
.w160px{ width: 160px !important;}

.boxsizeBB{ box-sizing:border-box;}


.ta-l{text-align:left;}
.ta-r{text-align:right;}
.fltR{float:right;}
.fltL{float:left;}


/*20240910*/
@charset "utf-8";
/* common */
:root {
 --c-red:#e8380d;
 --c-orange:#ee7800;
 --c-orange-dark: #7e3800;
}

#quickLink, #grandMenu { -webkit-box-sizing: border-box;  box-sizing: border-box;}
#quickLink :before, #grandMenu :before,  #quickLink :after, #grandMenu :after {  -webkit-box-sizing: border-box;  box-sizing: border-box;}

.pc {display: none !important;}
.sp {display: block!important;}
a:hover { text-decoration: none !important;}

#quickLink p, #grandMenu p{margin: 0;}

/* ----------------------------------------------------
調整
---------------------------------------------------- */
header{overflow: visible !important; height: auto;}
.header {-webkit-box-sizing: content-box;  box-sizing: content-box; font-weight: 400;  }
#quickLink a  {color: #333; text-decoration: none;}
#quickLink a:hover{text-decoration: none;}
#quickLink em {font-style: normal;}
header nav img {width:100%; height: auto;}

header .header {position: fixed; left: 0; top: 0; width: 100%; z-index: 10; background: #FAF0DC; height: 35px;}

/* ----------------------------------------------------
quickLink (common)
---------------------------------------------------- */
.bg {width: 100%; height: calc(100% - calc(90px + min(4.67vw,56px) + 1px) ); background: rgba(0,0,0,0.25); position: fixed; left: 0; top:calc(90px + min(4.67vw,56px) + 1px); display: none; z-index: 2;}
.bg.is_active{display: block;}

#btnGlobal, #grandMenu {display: none;}

#quickLink {width: 100%; border-top: 1px solid var(--c-red); border-bottom:1px solid var(--c-red); position: relative; background: #fff; transition: 0.3s all ease-in-out; font-size: min(1.3vw, 16px);}
#navQuick {width: 90%; max-width: 1000px; margin: 0 auto; display: flex; display: -webkit-flex;}
#navQuick > li {flex: 1;display: flex; display: -webkit-flex; border-left: 1px solid #c0c0c0; font-weight: 600; cursor: pointer;}
#navQuick > li:last-child {letter-spacing: -0.08em; border-right: 1px solid #c0c0c0;}

#navQuick > li span {flex: 1;display: flex; display: -webkit-flex; align-items: center; justify-content: center; height: min(4.67vw,56px); position: relative; line-height: 1.3; font-weight: 600; }
#navQuick > li.is_active, #navQuick > li.current{background: var(--c-red); color: #fff;}
#navQuick > li > span::before {content: ""; background: url("/assets/img/common/ic-arrow-01.svg") center center / cover no-repeat; aspect-ratio: 240/150; width: min(1.08vw,13px); position: absolute; left: 50%; bottom:min(0.4vw,5px); transform: translate(-50%,0); }
#navQuick > li.is_active span::before, #navQuick > li.current span::before{background-image: url("/assets/img/common/ic-arrow-02.svg");}

.navQuick__list {position: absolute; left: 0; top: calc(min(4.67vw,56px) + 1px); background: #fff url("/assets/img/common/bg-navQuickLink-01.svg") left top / min(5vw,6px) auto repeat; width: 100%; z-index: 10; padding: min(3.3vw,40px) 0 min(4.16vw,50px); display: none;}
.navQuick__wrap {width: 90%; max-width: 1000px; margin: 0 auto; display: flex; display: -webkit-flex; flex-wrap: wrap;column-gap: 2%; position: relative;}
.navQ__link {width: 32%;background: #fff; box-shadow: 3px 3px 5px 0 rgba(0,0,0,0.2); border-radius: min(0.66vw,8px); }
.navQ__link:not(:nth-child(-n+3)) {margin-top: 2%;}

.navQ__link a {font-size: min(1.25vw,15px); padding: min(1.25vw, 15px) min(2.5vw, 30px); position: relative; min-height: min(8.5vw,102px); display: flex; display: -webkit-flex; align-items: center; transition: 0.3s all ease-in-out;}

.navQ__brand .navQ__link a {padding: min(1.25vw, 15px) min(1.25vw, 15px) min(0.83vw, 10px) min(1.25vw, 15px) ; display: block;}
.navQ__brand .navQ__link a .navQ__catch {margin-bottom: min(0.6vw,8px); line-height: 1.4; font-weight: 600;}
.navQ__link .navQ__brand {position: absolute; top: 50%; transform: translateY(-50%);}
.navQ--0101 h2 img {width: min(10.58vw,127px);}
.navQ--0101 .navQ__brand {width: min(7.08vw,85px); right: min(1.25vw, 15px);}
.navQ--0102 h2 img {width: min(17.72vw,209px);}
.navQ--0102 .navQ__brand {width: min(3.83vw,46px); right: min(1.66vw, 20px); top: inherit; transform: none; bottom: 0;}
.navQ--0103 h2 img {width: min(17.72vw,209px);}
.navQ--0103 .navQ__brand {width: min(7.33vw,88px); right: min(0.4vw, 5px); }
.navQ--0104 h2 img {width: min(12.83vw,154px);}
.navQ--0104 .navQ__brand {width: min(7.08vw,85px); right: min(1.25vw, 15px);}
.navQ--0105 h2 img {width: min(14.17vw,170px);}
.navQ--0105 .navQ__brand {width: min(5.5vw,66px); right: min(1.25vw, 15px);}

.navQ__link h2 {font-size: min(1.75vw,21px); line-height: 1.5; font-weight: 600;text-align: left;}
.navQ__link h2 em {display: block;}
.navQ__icon {position: absolute; right: min(2.5vw,30px); top: 50%; transform: translateY(-50%); width: min(4.16vw,50px);}

.navQ__close {position: absolute; right: 0; bottom:0; transform: translateY(150%); background: #fff; color: #333; font-size: min(1.08vw,13px); padding: min(0.4vw, 5px) min(0.4vw, 5px) min(0.4vw, 5px) min(2.5vw, 30px); line-height: 1;}
.navQ__close::before, .navQ__close::after {content: ""; width: min(1.25vw, 15px); height: 1px; background: #333; position: absolute; transform-origin: center center; left: min(0.4vw,5px); top: 50%; }
.navQ__close::before {transform: rotate(45deg);}
.navQ__close::after {transform: rotate(-45deg);}


#wrapper {overscroll-behavior: none;}
.bodyFixed {height: 100vh;overflow: hidden;}
.bg {height: 100%; top: 0; }

#btnGlobal {position: fixed; right: 0; top: 0; height: 45px; width: 45px; display: flex; display: -webkit-flex; justify-content:center; align-items: center; flex-direction: column; z-index: 40;}
#btnGlobal .btnWrapGlobal { width: 30px; height: 20px; position: relative;}
#btnGlobal .btnLine { height:3px; background:var(--c-red); position: absolute; left: 50%; transform: translateX(-50%); width: 100%; transform-origin: center center;}
#btnGlobal .btnLine.btnLineT { top: 0;}
#btnGlobal .btnLine.btnLineM { top: 50%; transform: translate(-50%,-50%);}
#btnGlobal .btnLine.btnLineB { bottom: 0; }
#btnGlobal p {text-align: center; font-size: min(2.8vw, 12px); color: var(--c-red); font-weight: 600; line-height: 1; margin: 3px 0 0; }

#btnGlobal.active {background: #fff;}
#btnGlobal.active .btnLine {width: 90%;}
#btnGlobal.active .btnLine.btnLineT { display: none;}
#btnGlobal.active .btnLine.btnLineM { transform: translate(-50%,-50%) rotate(45deg) ;}
#btnGlobal.active .btnLine.btnLineB { top: 50%; bottom:inherit; transform: translate(-50%,-50%) rotate(-45deg) ;}
#btnGlobal .btnLine.btnLineM, #btnGlobal .btnLine.btnLineB {transition: all, ease-in-out, 0.3s;}

#grandMenu {background: rgba(0,0,0,0.25); width: 100%; height:100vh; position: fixed; z-index:30; left: 0; top: 45px; display: none; overflow: auto; padding: 0 0 10vw;}
#grandMenu .navGlobal {background: #fff;}
#grandMenu .navGlobal li { border-bottom: 1px solid var(--c-red); font-weight: 600; font-size: min(4vw, 18px);}
#grandMenu .navGlobal li a {display: block; padding: min(3vw, 25px) min(4vw, 30px); position: relative;text-decoration: none; }
#grandMenu .navGlobal li a::before {content: ""; position: absolute; right: min(4vw,30px); top: 50%; transform: translateY(-50%); aspect-ratio: 75/150; width: min(2vw,12px);background-position: center center; background-size: cover; background-repeat: no-repeat;}
#grandMenu .navGlobal__main a {color: var(--c-red);}
#grandMenu .navGlobal__sub a {color: #333;}
#grandMenu .navGlobal__sub li:last-child {border-bottom: 0;}
#grandMenu .navGlobal__main a::before{background-image: url("/assets/img/common/ic-arrow-03.svg");}
#grandMenu .navGlobal__sub a::before{background-image: url("/assets/img/common/ic-arrow-04.svg");}


#quickLink {position: fixed; left: 0; top: 45px; z-index: 10;}
#navQuick {width: 100%; font-size: min(3vw,18px); line-height: 1.2;  }
#navQuick > li:first-child {border-left: none;}
#navQuick > li:nth-child(4) span{width: 88px;}
#navQuick > li:last-child {letter-spacing: -0.08em; border-right: none;}
#navQuick > li span {height: min(12vw,70px); text-align: center; padding-bottom: min(1vw,5px);}
#navQuick > li > span::before {width: min(2vw,14px); bottom:min(1vw,3px); }

.navQuick__list {background-size: min(2vw,12px) auto; padding: min(7vw,50px) 0 ; z-index: 20;}
.navQuick__wrap {column-gap: 0;}
.navQ__link {width: 100%; border-radius: min(2vw,8px); }
.navQ__link:not(:first-child) {margin-top: min(1vw,10px);}
.navQ__link a {font-size: min(3vw,2.4rem); padding: min(2vw, 15px) min(4vw, 30px); min-height: min(16vw,70px);}

.navQ__brand .navQ__link a {padding: min(2vw, 15px) min(4vw, 30px);}
.navQ__brand .navQ__link a .navQ__catch {margin-bottom: min(1.5vw,15px);}

.navQ--0101 h2 img {width: min(23vw,172px);}
.navQ--0102 h2 img {width: min(38vw,283px);}
.navQ--0103 h2 img {width: min(38vw,283px);}
.navQ--0104 h2 img {width: min(51vw,379px);}
.navQ--0105 h2 img {width: min(31vw,232px);}
.navQ__brand img {width:auto; height: 100%;}
.navQ__link .navQ__brand {width: inherit; height: 90%; right: min(9vw, 70px);}
.navQ--0102 .navQ__brand {width: inherit; right: min(13vw, 95px);}

.navQ__link h2 {font-size: min(4vw,24px);text-align: left !important;}
.navQ__link h2 em {display: inline-block; margin-left: 1em;}
.navQ__icon {right: min(6vw,45px); width: min(10vw,72px);}

.navQ__close {bottom: max(-7vw, -50px); padding: min(7.5vw,60px) 0 0; transform: translateY(130%); aspect-ratio: 50/65; width: min(7vw,50px); font-size: min(2vw,1.7rem); text-align: center; color: #fff; background: transparent;}
.navQ__close::before, .navQ__close::after {content: ""; width: min(7vw, 50px); height: 3px; background: #fff; position: absolute; transform-origin: center center; left: 50%; top: 20%; }
.navQ__close::before {transform: translate(-50%)rotate(45deg);}
.navQ__close::after {transform: translateX(-50%)rotate(-45deg);}

@keyframes fadeup {
  0% {transform: translateY(100%);}
  100% {transform: translateY(0);}
 }
