@charset "utf-8";
/*
Theme Name: 愛知県共済2016 ライフプラススマホ用CSS
Copyright: 愛知県共済
Author: kcc
Version: 1.1
*/
@media screen and ( max-width:768px) {
/*非表示*/
.search,.fontSizeChange,.headerNav,.topicpath,.bnr,footer nav, header img.tel{
	display:none;
}
/*フロート解除など*/
.lifeplusMainLeft,.lifeplusContent,.lifeplus aside,footer .inner{
	float:none;
	width:auto;
	padding:0;
}

/*
共通
*/
body{
	position:relative;
	font-size:14px;
	line-height:160%;
}
img{max-width:100%;}
header{height:45px;}
header .inner{
	padding:5px 10px 5px 10px;
	height:35px;
	width:100%;
}
header h1 img{height:34px;}

footer{
	position:fixed;
	left:0;
	bottom:0;
	padding:0;
	height:58px;
	width:100%;
	border:none;
	background:#FAF0DC;
	z-index:1000;
}

footer nav.spfn{display:block;}
footer nav.spfn ul{
	display:table;
	margin:auto;
	width:100%;
	border-collapse:collapse;
}

footer nav.sp ul li{
	display:table-cell;
	width:33%;
	text-align:center;
}
footer nav.spfn ul li a{
	display:block;
	height:36px;
	width:100%;
	margin:0;
	padding:0;
	font-size:16px;
	font-weight:bold;
	line-height:2.4em;
	letter-spacing:3px;
	color:#FFF;
	text-align:center;
	text-decoration:none;
	background:#E8380D;
	border-left:1px solid #FFF;
}
footer nav.spfn ul li:first-child a{border-left:none;}
.copyright{
	float:none;
	margin:0;
	width:auto;
	font-size:10px;
	text-align:center;
}

.pagetop{
	position:fixed;
	bottom:64px;
	right:10px;
	height:47px;
	width:47px;
}
.pagetop a{
	display:block;
	height:47px;
	width:47px;
	content:url(../images/sp/common/btn_pagetop.png);
}
.pagetop a:before{
	margin:0;
	padding:0;
	content:'';
}

.spgn{
	display:block;
	position:absolute;
	top:0;
	right:0;
	z-index:2000;
}
.spgn .btn{
	position:absolute;
	top:0;
	right:0;
	margin:0 0 0 0;
	width:46px !important;
	height:46px;
	text-align:right;
	color:#0F0;
}
.spgn .btn img{
	width:46px;
	height:46px;
}
.spgn ul{
	position:absolute;
	top:43px;
	right:0;
	padding:2px	0 0 0;
	box-shadow:-5px 5px 10px rgba(0, 0, 0, 0.2);
	width:280px;
}
.spgn ul li{
	display:block;
	margin:0;
	background:#FFF url(../images/sp/common/nav_icon.png) right center no-repeat;
	background-size:25px 12px;
	border-bottom:1px solid #E8380D;
}
.spgn ul li:last-child{
	border-bottom:none;
}
.spgn ul li a{
	display:block;
	padding:9px 0px 9px 18px;
	font-size:15px;
	font-weight:bold;
	letter-spacing:1px;
	color:#E8380D;
}

.overlay{
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.3);
	z-index:1500;
}

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

.sp_p br{
	display:none;
}

.sp_style{display: block;}


/*
共通
*/
.contentHeader{
	padding:20px;
	height:auto;
}
.contentHeader article{
width:auto;
height:auto !important;
overflow:hidden;
}
.contentHeader article h2{
	float:none !important;
	height:auto;
	font-size:30px;
	line-height:130%;
	text-align:left;
}
.contentHeader article h2 img{
	display:table;
	margin:auto;
	width:90%;
	text-align:center;
}
.contentHeader article p{
/*	float:none !important;*/
}
.contentHeader h2{
	float:none;
	text-align:center;
}
.contentHeader article{
	width:auto;
}
.contentHeader h2+p{
	margin:5px 20px !important;
	padding:5px 35px !important;
	height:auto !important;
	line-height:150% !important;
	background-size:30px 30px !important;
}
.unionTop .contentHeader h2+p{
	display:none;
}

.union .titurf{
	width:auto;
}

.fukyu .kouhou01 .imgTit{
	margin-bottom:30px;
}

/*
インターネット文化講座
*/


.internet00 h2+p{
	margin:10px 20px;
	padding:5px 35px;
	height:auto;
	line-height:150%;
	background-size:30px 30px;
}
.internet04 .tit_area .left,
.internet04 .tit_area .right{
	float:none;
	width:auto;
}
.internet04 .tit_area .right{
	margin:10px 0 0;
	font-size:70%;
	line-height:150%;
}
.internet04 .tit_area .right p.alignR{
	text-align:left !important;
}


img{max-width:100%;height:auto;}
.sub,
section,
.internet04{
margin:0 0 60px 0;
width:auto !important;
/*max-width:375px;*/
padding:0 0 60px 0;
max-width:100%;
}
	.internet04{
		margin:0 0 20px 0;
		padding:0;
	}
	
.main h3{margin:0 10px 20px !important;}
.main{
float:none !important;
width:auto !important;
padding:15px 0 20px !important;
}

div.wrap{
	padding:0 !important;
	width:auto;
}

.internet04 .sub{
	display:none;
	float:none;
	margin:20px auto;
	width:auto;
}

.btnSubOpen{
	display:table;
	margin:20px auto;
	padding:10px 20px;
	cursor:pointer;
	background:#EEE;
}




.internet .main .report_nav{
	background:#A0C81E;
	width:100%;
}

.internet .main .report_nav ul{
	display:table;
	margin:auto;
	padding:10px 5%;
}

.internet .main .report_nav ul li{
	display:table-cell;
	margin:0;
	padding:0;
	width:25%;
	font-size:80%;
	line-height:130%;
	vertical-align:middle;
	text-align:center;
	border:none;
}
.internet .main .report_nav ul li.list{
	width:50%;
}

.internet .main .report_nav ul li a{

}
.internet .main .report_nav ul li.prev a,
.internet .main .report_nav ul li.next a{
	margin:0;
	height:46px;
	line-height:46px;
	color:#FFF;
	font-weight:bold;
	background:#14A03C;
	white-space:nowrap;
}
.internet .main .report_nav ul li.prev a{
	padding:0 0 0 50px;
	background:url(/images/sp/arw01_l.png) left center no-repeat;
}
.internet .main .report_nav ul li.next a{
	padding:0 50px 0 0;
	background:url(/images/sp/arw01_r.png) right center no-repeat;
}
.internet .main .report_nav ul li.list a{
	margin:0 20px;
	padding:10px;
	width:auto;
	height:40px;
	line-height:20px;
	font-weight:bold;
	color:#A0C81E;
	background:#FFF;
	border-radius:5px;
	white-space:nowrap;
}

/*文化講座footerボタンデザイン*/
.footerContent{
	display:block;
	margin:20px 0 70px;
	font-size:70%;
	text-align:center;
	padding: 0;
}
	.footerContent h4{
		margin:0 0 10px 0;
		padding: 10px;
		color:#fff;
		background: #e8380d;
		font-size: 200%;
		font-weight: bold;
	}
		.footerContent h4 span{font-size: 80%;}
	.footerContent .footerContent_inner{padding: 0 20px;}
.footerContent .footerContent_inner > p{
	font-size: 160%;
	font-weight: bold;
	line-height: 150%;
	margin: 20px 0;
}
	.footerContent .footerContent_inner > p span{
		color: #e8380d;
	}

.footerContent ul{
	display:flex;
	margin:auto;
	flex-wrap: wrap;
	align-items: flex-end;
	max-width: 342px;
	width: 100%;
}
.footerContent ul li{
	font-size:130%;
	width: 49.5%;
	margin-right: 1%;
	line-height: 140%;
	font-weight: bold;
	float: none;
}
	.footerContent ul li:nth-child(2n){
		margin-right: 0;
	}
	

/*料理*/
table{
max-width:100%;
width:auto;
}
table.tbl_vegi th, table.tbl_vegi td, .internet .cbody table.tbl_vegi td{
width:auto;
font-size:80%;
line-height:150%;
}
table.tbl_vegi th img{width:100px;}
.cbody a{word-break: break-all;}

.cbody div[style*="float: right; margin-left: 10px;"]{
	float:none !important;
	margin:0 0 10px 0;
	width:auto;
	text-align:center;
}




/*インターネット文化講座トップ*/
.internet01 .news,
.internet01 .b_number,
.internet02 article{
	float:none;
	margin:5px 5% 20px;
	width:auto;
}
.internet02 .no3, .internet02 .no6, .internet02 .no9{
	margin:5px 5% 20px;
}


.nature01 .bnr{
	display:block;
}

/*
山村体験
*/

.report .box figure{
	margin-right:15px;
}
.report .box .txt{
	float:none;
	width:auto;
	overflow:hidden;
}

.nature .contentHeader h2+p{
	margin:0px 20px;
	padding:5px 35px;
	height:auto;
	line-height:150%;
	background-size:30px 30px;
}

.contentMain01 h3{
	padding:15px 15px 15px 20px
}
.contentMain01 h3 span{
	display:block;
	font-size:20px;
	line-height:130%;
}
.report_detail .sub{
	display:none;
}

/*
nature
*/
.nature01 .nature_list dl dt{
	float:none;
	margin:10px 0 0;
	width:auto;
	text-align:center;
}
.nature01 .nature_list dl dd{
	float:none;
	width:auto;
	margin:10px 0 0;
}



/*
uninon/history
*/
.history01 table th{
	white-space:nowrap;
	font-size:100%;
}
.history .sub{
	display:none;
}

.history00 h2+p{
	margin:0px 20px;
	padding:5px 35px;
	height:auto;
	line-height:150%;
	background-size:30px 30px;
}

.history div[style*='float']{
	float:none !important;
	width:auto !important;
}
.history div[style*='margin:-25px']{
	margin-top:0 !important;
	width:auto !important;
}

.history img[style*='margin']{
	margin:0 !important;
}
.service section .topics{
	width:auto;
	padding:0;
}
.culture01 dl dt,
.service .nature_list dl dt{
	float:none;
	margin:0 auto 10px;
	width:auto;
	text-align:center;
}
.culture01 dl dd,
.service .nature_list dl dd{
	float:none;
	margin:0;
	width:auto;
	overflow:hidden;
}


.culture01 .inner2{
	padding:20px;
}

.culture01 table,
.culture01 tbody{
	display:block;
	margin:auto;
	width:90%;
}
.culture01 table tr{
	display:table;
	/*margin:0 0 20px 0;*/
	width:100%;
}
.culture01 table th{
	display:table-row;
	width:100%;
	padding:10px;
	border-right:1px solid #dcdddd;
}
.culture01 table td{
	display:table-row;
	width:100%;
	padding:10px;
}
.culture01 table td th,
.culture01 table td td{
	padding:2%;
	width:96%;
	border:none;
}
.culture01 table td.t_top{
	border-width:1px;
}
.serviceTop .contentMain01{
	position:static;
	width:auto;
	height:auto;
	padding-top:150px;
	background:url(/sp/img/top04_sp.jpg) center top no-repeat;
	background-size:auto  150px;
}
.serviceTop .contentMain01 li{
	display:block;
	margin:0 0 10px 0;
	padding:0;
}
.serviceTop .contentMain01 li a{
	position:static;
	top:auto;
	left:auto;
	margin:0;
	padding:3% 0;
	width:100%;
}
.serviceTop .contentMain01 li a span{
	width:100% !important;
	background:rgba(255,255,255,0.5);
}


/*
union
*/
.tel .tel_num{
	width:auto;
}

.top01 .about{
	margin:0 0 20px 0 ;
	width:auto;
}
.top01 article{
	float:none;
	width:auto;
}

.top01 .about ul,
.top01 .about ul+ul{
	float:none;
	width:auto;
}
.top01 article ul li a{
	width:auto;
}

.about .sub{display:none;}

.contentMain01{
	padding-bottom:100px !important;
	overflow:hidden;
	zoom:1;
}

.unionTop01{
	padding-top:20px;
	padding-bottom:20px !important;
}

.union .top01{
	margin-bottom:20px !important;
}
.unionTop01+.unionTop01{
	padding-top:20px;
	margin-bottom:20px;
}
.recruit01 .inner .info_box{
	width:auto;
}

.recruit01 .btn a{
	display:inline-block;
	margin-bottom:10px;
	padding:10px;
	font-size:90%;
}
.fukyu .contentMain01{
	padding:30px 0 60px;
}
.fukyu .imgTit{
	margin-left:auto;
	margin-right:auto;
	margin-bottom:380px;
	max-width:90%;
}
.fukyu01 h4{
	max-width:80%;
}
.fukyu01{
	background-size:auto 400px;
	background-position:center 50px;
}
.fukyuTable01 th{
	min-width:0;
}
.fukyu01 p+p{
	width:90%;
	margin:auto;
	text-align:center;
}
.fukyu01 p {
    margin: 10px 20px 15px 20px;	
}
.recruit01 h5{
	float:left;
}
.recruit01 article .bnr{
display:inline-block;
position:static;
float:right;
margin-top:30px;
width:50%;
}
.recruit01 article .bnr img{
}
	
	/*20200923*/
	p.pc{
		display: none;
	}
	p.sp{display: block;}
	.center0923{
		padding: 5px 0;
	}

.officeList{
	height:auto;
}
.officeList li{
	position:static;
	width:auto;
	height:auto;
	overflow:hidden;
}
.officeList li img:first-child{
	width:20%;
}
.officeList li dl{
	width:75%;
}
.officeList li dt{
	white-space:nowrap;
}
.officeList li dd{
	white-space:normal;
}

.about .main .box .box_inner .left{
	float:none;
	width:auto;
}
.about .main .box .box_inner .photo{
	float:none;
	text-align:center;
}
.fukyuBox02{
	margin:auto;
	padding:10px;
	width:90%;
}

.btn{
	margin:auto;
	width:80%;
	text-align:center;
}
.btn+p{
	padding-bottom:50px;
	width:auto;
}
.fukyu .btn{
	margin-bottom:100px;
	width:80%;
}
.union article+ article{}

.union .table01, .union .errorBox{
	width:auto;
}
.table01 th,.table01 td{
	display:block;
	width:auto;
}
.table01 th{
	padding:2% 5%;
}
.btn a+a{
	margin-left:0;
}
div.sample, p.sample{
	font-size:70%;
	line-height:150%;
}

.union .addressCell input[type="text"]{
	width:50%;
}
.table01 input[type="text"]{
	width:14%;
}
.table01 .emailCell input[type="text"]{
	width:50%;
}

.union .pagetop{
	width:auto;
}

.union .checkBoxCell01 label{
	width:auto;
	margin-right:10px;
}

td#birth,
td#birth select,
td#birth option{
	font-size:70%;
}

.table01 th p br,
.table01 th label br{
	display:none;	
}


.contentMain01 .table01 th p{
	margin:5px;
}

.table01 caption{
	padding:7px;
}
.thanks h3{
	font-size:200%;
}

.thanks p{
	margin-bottom:50px;
	padding:20px;
	font-size:80%;
	
}


div.illust{
	width:auto;
}
.manners_1 .cbody > table:nth-child(1) tr:nth-child(1) td img{
	height:10px;
}


div[style*="width: 400px"]{
	width:auto !important;
}

div.pattern2-1, div.pattern1-2, div.pattern1-1-1{
	width:auto;
}
div.pattern1-1-1 div.col,div.pattern1-2 div.col{
	float:none;
	margin:10px auto !important;
	text-align:center;
}
div.pattern2-1 div.col{
	width:auto;
	float:none;
	margin:10px auto !important;
	text-align:center;
}
div.pattern2-1 div.col ul{
	text-align:left;
}

div.pattern1-1{
	width:auto;
}
div.pattern1-1 div.col{
	float:none;
	margin:0 auto;
	width:auto;
}
div.pattern1-1 div.col img{
	display:table;
	margin:auto;
}

div.pattern2-1 div.col:last-child,
div.pattern1-2 div.col:last-child
{
    width:auto;
} 

/*
カラー
*/
.internet04 .main .cbody{padding-top:20px; !important}


/*ちぎり絵*/
img[src*='spacer.gif']{
	height:10px;
}

table[width='435']{
	width:315px;
}

table.style8{
	width:270px;
	font-size:80%;
}
td[background*='04.gif']{
	width:271px;
}

table[width='435'] tr:last-child td img{
	vertical-align:top;
	width:314px;
}

img[src*='05.gif']{
	height:auto;
}


.internet04 .main .cbody td p{
	width:50%;
	max-width:100%;
}

span[style*='width:500px;']{
	width:auto !important;
	background-size:100% 100% !important;
}

.fl_right4{
	float:none;
	width:100%;
	text-align:center;
	margin:auto;
}


.history .main .report_nav ul li{
	padding:10px;
}


/*
serivce form
プレゼント応募フォーム
*/
.service .contentHeader+h3{
	width:auto;
}
.btnSet01 li{
	display:block;
	margin:20px auto;
}
.btnSet01 + p{
	width:auto;
}

.dash_line2 br{
	display:none;
}
.cell_1 br{
	display:block;
}
.dash_line2 img{
	float:none !important;
	margin-left:0 !important;
}

.box01{
	width:auto;
}
.table01{
	width:100%;
}

.addressCell input[type='text'],
.nameCell input[type='text']{
	width:74%;
}

.errorBox{
	width:auto !important;
}

.scroll{
overflow: auto;
/*white-space: nowrap;*/
}
	
.scroll::-webkit-scrollbar{
 height: 5px;
}
.scroll::-webkit-scrollbar-track{
 background: #F1F1F1;
}
.scroll::-webkit-scrollbar-thumb {
 background: #BCBCBC;
}
	
/*
fire
life
*/
.flow .flow_nav{
	display:none;
}


/*
sitemap
*/

.sitemap .block{
	float:none !important;;
	width:auto !important;;
	height:auto !important;
}

/*20240910*/
#grandMenu ul{margin:0;padding:0;}

/* 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;width: 100%;position: fixed;z-index: 1000;}
.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:nth-child(4) span {width:212px;}

#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;}
.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) !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);}
 }

}


