@charset "utf-8";
/* CSS Document */

/* --リセット・汎用スタイル-- */

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, q, samp, small, strong, sub, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, button, label, legend, caption, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	vertical-align:baseline;
	background:transparent;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section{
	display:block;}	
*{
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;}

body{
	width:100%;
	-webkit-text-size-adjust: none;
	/*-webkit-user-select:none; right button */ 
	position:relative;}
	
pre, button{
	font:inherit;}
	
button::-moz-focus-inner{ border-width: 0 !important; }

input, select, button, label{
	vertical-align:middle;}

textarea {
	vertical-align:top;}
a {
	margin:0;
	padding:0;
	vertical-align:baseline;
	background:transparent;
	display:block;}
	
ul {
	list-style-type:none;}
	
em {
	font-style:normal;}

a:link,
a:visited {
	text-decoration:none;}
	
.txtline{
	display:inline;
	text-decoration:underline !important;}


.hvline:hover{
	text-decoration:underline !important;}	
.hvbold:hover{
	font-weight: bold !important;}	
	
.hvop:hover{
	opacity:0.8 !important;}
.hvdnb{
	display: none;}
.hvdnbP:hover .hvdnb{
	display:block;}	

.-disabled{
	pointer-events: none;
	opacity: .45;
	cursor: not-allowed;}
	
.inl{
	display:inline;}
		
.inlb{
	display:inline-block;
    margin: 0;
    vertical-align: top;}
		
.block{
	display:block;}


.nbdr{
	border:none !important;}
.bdr{
	border:solid 1px #ddd  !important;}
.bdrl{
	border-left:solid 1px #ddd  !important;}
.bdrr{
	border-right:solid 1px #ddd  !important;}
.bdrt{
	border-top:solid 1px #ddd  !important;}
.bdrb{
	border-bottom:solid 1px #ddd  !important;}

.bdrd{
	border-color: #ddd !important;}
.bdrc{
	border-color: #ccc !important;}
.bdrbb{
	border-color: #bbb !important;}
.bdra{
	border-color: #aaa !important;}
.bdr3{
	border-color: #333 !important;}
.bdr000{
	border-color: #000 !important;}
.bdrdot{
	border-style:dotted !important;}
.bdrdash{
	border-style:dashed !important;}
.bdrw2{
	border-width:2px !important;};}
.bdrw3{
	border-width:3px !important;}

.nbdrb,
.bdrb0{
	border-bottom:none !important;}
.nbdrl{
	border-left:none !important;}
.nbdrr,
.bdrr0{
	border-right:none !important;}
.nbdrt{
	border-top:none !important;}

.clrclr{
	background-color:transparent !important;}
	
sup{
	font-size:70%;}	
	
.cursor-p,
.cursor-point{
	cursor:pointer !important;}	
.cursor-d{
	cursor:default !important;}
.cursor-m{
	cursor:move !important;}	


.opacity1{
	opacity:1 !important;}
.opacity05{
	opacity:0.5 !important;}
.opacity025{
	opacity:0.25 !important;}
.opacity0{
	opacity:0 !important;}
.trans-r45{
	transform:rotate(45deg);}	
.trans-r90{
	transform:rotate(90deg);}	
.trans-rm45{
	transform:rotate(-45deg);}	
.trans-rm90{
	transform:rotate(-90deg);}	
.trans-r180{
	transform:rotate(180deg);}	
.trans-flip{
  transform: scaleX(-1);}
.transparent{
	background-color:transparent !important;} 
.-trans{transition: all .5s;}
/*------------------------------------------------------------ 
    フォント
------------------------------------------------------------*/ 	
.lh-1{
	line-height:1 !important;}
.ls-1{
	letter-spacing:-1px !important;}
.ls-2{
	letter-spacing:-2px !important;}
.f_w_b {
	font-weight:bold !important;}
.f_w_n {
	font-weight:normal !important;}
	
	
.f_pxs10{
	font-size:10px !important;}	
.f_pxs13{
	font-size:13px !important;}	
.f_pxs15{
	font-size:15px !important;}	
.f_pxs20{
	font-size:20px !important;}
.f_pxs30{
	font-size:30px !important;}
.f_pxs40{
	font-size:40px !important;}
.f_s50 {
	font-size:50% !important;}
.f_s60 {
	font-size:60% !important;}
.f_s70 {
	font-size:70% !important;}
.f_s80 {
	font-size:80% !important;}
.f_s85 {
	font-size:85% !important;}
.f_s90 {
	font-size:90% !important;}
.f_s100 {
	font-size:100% !important;}
.f_s110 {
	font-size:110% !important;}
.f_s115 {
	font-size:115% !important;}
.f_s120 {
	font-size:120% !important;}
.f_s130 {
	font-size:130% !important;}
.f_s140 {
	font-size:140% !important;}
.f_s150 {
	font-size:150% !important;}
.f_s180 {
	font-size:180% !important;}	
.f_s200 {
	font-size:200% !important;}
		


.f_r02{
	font-size:0.2rem !important;}
.f_r03{
	font-size:0.3rem !important;}
.f_r04{
	font-size:0.4rem !important;}
.f_r05{
	font-size:0.5rem !important;}
.f_r06{
	font-size:0.6rem !important;}
.f_r065{
	font-size:0.65rem !important;}
.f_r07{
	font-size:0.7rem !important;}
.f_r075{
	font-size:0.75rem !important;}
.f_r08{
	font-size:0.8rem !important;}
.f_r09{
	font-size:0.9rem !important;}
.f_r1{
	font-size:1rem !important;}
.f_r12{
	font-size:1.2rem !important;}
.f_r14{
	font-size:1.4rem !important;}
.f_r16{
	font-size:1.6rem !important;}
.f_r18{
	font-size:1.8rem !important;}
.f_r2{
	font-size:2rem !important;}
.f_r22{
	font-size:2.2rem !important;}
.f_r25{
	font-size:2.5rem !important;}
.f_r3{
	font-size:3rem !important;}
.f_r35{
	font-size:3.5rem !important;}
.f_r4{
	font-size:4rem !important;}
.f_r45{
	font-size:4.5rem !important;}
.f_r5{
	font-size:4rem !important;}	



.wordbrk{
	word-break:break-all;}	
/*------------------------------------------------------------ 
    size 
------------------------------------------------------------*/
.w-auto{
	width: auto  !important;}
.h-auto{
	height: auto  !important;}
.mw0{
	min-width:0  !important;}
.mwf{
	min-width:0 !important;}
.mxwf{
	max-width:none !important;}
.mxhf{
	max-height:none !important;}
.minh100{
	min-height:100%  !important;}
.max{
	width:100% !important;}
.wp90{
	width:90% !important;}
.wp80{
	width:80% !important;}
.wp70{
	width:70% !important;}
.wp60{
	width:60% !important;}
.wp50{
	width:50% !important;}
.hp50{
	height:50% !important;}
.wp40{
	width:40% !important;}
.wp35{
	width:35% !important;}
.wp30{
	width:30% !important;}
.wp25{
	width:25% !important;}	
.wp20{
	width:20% !important;}	
.wp15{
	width:15% !important;}	
.wp10{
	width:10% !important;}	
.wp05{
	width:5% !important;}	

.h-o{
	height:1px !important;}	
.h10{
	height:10px !important;}	
.h15{
	height:15px !important;}
.h20{
	height:20px !important;}
.h25{
	height:25px !important;}
.h30{
	height:30px !important;}
.h35{
	height:35px !important;}
.h40{
	height:40px !important;}
.h50{
	height:50px !important;}
.h60{
	height:60px !important;}
.h70{
	height:70px !important;}	
.h80{
	height:80px !important;}
.mnh80{
	min-height:80px !important;}	
.h90{
	height:90px !important;}	
.h100{
	height:100px !important;}
.mxh100{
	max-height:100px !important;}
.h110{
	height:110px !important;}
.h120{
	height:120px !important;}
.h130{
	height:130px !important;}
.h140{
	height:140px !important;}
.h150{
	height:150px !important;}
.h160{
	height:160px !important;}
.mxh160{
	max-height:160px !important;}
.h180{
	height:180px !important;}
.h200{
	height:200px !important;}	
.mxh200{
	max-height:200px !important;}
.h220{
	height:220px !important;}	
.h240{
	height:240px  !important;}	
.h250{
	height:250px !important;}
.mxh250{
	max-height:250px !important;}
.h260{
	height:260px !important;}	
.h280{
	height:280px !important;}	
.h300{
	height:300px !important;}	
.mxh300{
	max-height:300px !important;}
.h320{
	height:320px !important;}	
.h340{
	height:340px !important;}	
.h350{
	height:350px !important;}	
.h360{
	height:360px !important;}	
.h380{
	height:380px !important;}	
.h400{
	height:400px !important;}	
.h450{
	height:400px !important;}	
.h480{
	height:400px !important;}	
.h500{
	height:500px !important;}	
.mxh500{
	max-height:500px !important;}
.h600{
	height:600px !important;}	
.mxh600{
	max-height:600px !important;}
.hmax{
	height:100% !important;}
.hmaxvh{
	height:100vh !important;}
.w10{
	width:10px !important;}
.w15{
	width:15px !important;}
.w20{
	width:20px !important;}
.w25{
	width:25px !important;}
.w30{
	width:30px !important;}
.w35{
	width:35px !important;}
.w40{
	width:40px !important;}
.w50{
	width:50px !important;}
.w60{
	width:60px !important;}
.w70{
	width:70px !important;}
.w80{
	width:80px !important;}
.w90{
	width:90px !important;}
.w100{
	width:100px !important;}
.mx100{
	max-width:100px !important;}
.w120{
	width:120px !important;}
.mx120{
	max-width:120px !important;}
.w140{
	width:140px !important;}
.mx140{
	max-width:140px !important;}
.w160{
	width:160px !important;}
.w170{
	width:170px !important;}
.w180{
	width:180px !important;}
.mx180{
	max-width:180px !important;}
.w200{
	width:200px !important;}
.mx200{
	max-width:200px !important;}
.w220{
	width:220px !important;}
.w240{
	width:240px !important;}
.mx250{
	max-width:250px !important;}
.w260{
	width:260px !important;}	
.w280{
	width:280px !important;}
.w300{
	width:300px !important;}	
.mx300{
	max-width:300px !important;}
.w320{
	width:320px !important;}	
.w340{
	width:340px !important;}
.w350{
	width:350px !important;}
.mx350{
	max-width:350px !important;}
.w360{
	width:360px !important;}
.w380{
	width:380px !important;}
.w400{
	width:400px !important;}
.mx400{
	max-width:400px !important;}
.w420{
	width:420px !important;}
.w440{
	width:440px !important;}
.w450{
	width:450px !important;}
.mx450{
	max-width:450px !important;}
.w460{
	width:460px !important;}
.w480{
	width:480px !important;}
.w500{
	width:500px !important;}
.mx500{
	max-width:500px !important;}
.w520{
	width:520px !important;}
.w540{
	width:540px !important;}
.w560{
	width:560px !important;}
.w550{
	width:550px !important;}
.mx550{
	max-width:550px !important;}
.w600{
	width:600px !important;}
.mx600{
	max-width:600px !important;}
.w650{
	width:650px !important;}
.w700{
	width:700px !important;}
.mx700{
	max-width:700px !important;}
.w750{
	width:750px !important;}
.w800{
	width:800px !important;}
.mx800{
	max-width:800px !important;}
.w850{
	width:850px !important;}
.w900{
	width:900px !important;}
.w950{
	width:950px !important;}
.w1000{
	width:1000px !important;}
[class^="mx"], 
[class*=" mx"]{
	width:100% !important;}	
/*------------------------------------------------------------ 
    マージン、パディング
------------------------------------------------------------*/ 
.mr_1 {
	margin:1px !important;
}
.mr_b1 {
	margin-bottom:1px !important;
}
.mr_t1 {
	margin-top:1px !important;
}
.mr_r1 {
	margin-right:1px !important;
}
.mr_l1 {
	margin-left:1px !important;
}
.mr_2 {
	margin:2px !important;
}
.mr_b2 {
	margin-bottom:2px !important;
}
.mr_t2 {
	margin-top:2px !important;
}
.mr_r2 {
	margin-right:2px !important;
}
.mr_l2 {
	margin-left:2px !important;
}
.mr_2 {
	margin:3px !important;
}
.mr_b3 {
	margin-bottom:3px !important;
}
.mr_t3 {
	margin-top:3px !important;
}
.mr_r3 {
	margin-right:3px !important;
}
.mr_l3 {
	margin-left:3px !important;
}

.mr_5 {
	margin:5px !important;
}
.mr_10 {
	margin:10px !important;
}
.mr_15 {
	margin:15px !important;
}
.mr_20 {
	margin:20px !important;
}
.mr_30 {
	margin:30px !important;
}
.mr_40 {
	margin:40px !important;
}
.mr_50 {
	margin:50px !important;
}


.mr_-5{
	margin:-5px !important;}
.mr_-10{
	margin:-10px !important;}
.mr_-15{
	margin:-15px !important;}
.mr_-20{
	margin:-20px !important;}
.mr_b-1 {
	margin-bottom:-1px !important;}
.mr_b-5 {
	margin-bottom:-5px !important;}

.mr_b0 {
	margin-bottom:0 !important;
}
.mr_b5 {
	margin-bottom:5px !important;
}
.mr_b10 {
	margin-bottom:10px !important;
}
.mr_b15 {
	margin-bottom:15px !important;
}
.mr_b20 {
	margin-bottom:20px !important;
}
.mr_b25 {
	margin-bottom:25px !important;
}
.mr_b30 {
	margin-bottom:30px !important;
}
.mr_b35 {
	margin-bottom:35px !important;
}
.mr_b40 {
	margin-bottom:40px !important;
}
.mr_b50 {
	margin-bottom:50px !important;
}
.mr_b100 {
	margin-bottom:100px !important;
}
.mr_t-20 {
	margin-top:-20px !important;
}
.mr_t-15 {
	margin-top:-15px !important;
}
.mr_t-10 {
	margin-top:-10px !important;
}
.mr_t-5 {
	margin-top:-5px !important;
}
.mr_t0 {
	margin-top:0 !important;
}
.mr_t5 {
	margin-top:5px !important;
}
.mr_t10 {
	margin-top:10px !important;
}
.mr_t15 {
	margin-top:15px !important;
}
.mr_t20 {
	margin-top:20px !important;
}
.mr_t25 {
	margin-top:25px !important;
}
.mr_t30 {
	margin-top:30px !important;
}
.mr_t40 {
	margin-top:40px !important;
}
.mr_t50 {
	margin-top:50px !important;
}
.mr_t100 {
	margin-top:100px !important;
}
.mr_l0 {
	margin-left:0 !important;
}
.mr_l5 {
	margin-left:5px !important;
}
.mr_l10 {
	margin-left:10px !important;
}
.mr_l15 {
	margin-left:15px !important;
}
.mr_l20 {
	margin-left:20px !important;
}
.mr_l25 {
	margin-left:25px !important;
}
.mr_l30 {
	margin-left:30px !important;
}
.mr_l50 {
	margin-left:50px !important;
}
.mr_l100 {
	margin-left:100px !important;
}

.mr_r0 {
	margin-right:0 !important;
}
.mr_r5 {
	margin-right:5px !important;
}
.mr_r10 {
	margin-right:10px !important;
}
.mr_r15 {
	margin-right:15px !important;
}
.mr_r20 {
	margin-right:20px !important;
}
.mr_r25 {
	margin-right:25px !important;
}
.mr_r30 {
	margin-right:30px !important;
}
.mr_r50 {
	margin-right:50px !important;
}
.mr_r100 {
	margin-right:100px !important;
}
.mr_lr_auto {
	margin-left:auto !important;
	margin-right:auto !important;
}

.pd_a0 {
	padding:0px !important;
}
.pd_a2 {
	padding:2px !important;
}
.pd_a5 {
	padding:5px !important;
}
.pd_a8 {
	padding:8px !important;
}
.pd_a10 {
	padding:10px !important;
}
.pd_a15 {
	padding:15px !important;
}
.pd_a20 {
	padding:20px !important;
}
.pd_a25 {
	padding:25px !important;
}
.pd_a30 {
	padding:30px !important;
}
.pd_a50 {
	padding:50px !important;
}
.pd_a100 {
	padding:100px !important;
}
.pd_t0 {
	padding-top:0px !important;
}
.pd_t5 {
	padding-top:5px !important;
}
.pd_t10 {
	padding-top:10px !important;
}
.pd_t15 {
	padding-top:15px !important;
}
.pd_t30 {
	padding-top:30px !important;
}
.pd_t50 {
	padding-top:50px !important;
}
.pd_b0 {
	padding-bottom:0px !important;
}
.pd_b5 {
	padding-bottom:5px !important;
}
.pd_b10 {
	padding-bottom:10px !important;
}
.pd_b20 {
	padding-bottom:20px !important;
}
.pd_b30 {
	padding-bottom:30px !important;
}
.pd_b40 {
	padding-bottom:40px !important;
}
.pd_b50 {
	padding-bottom:50px !important;
}
.pd_b100 {
	padding-bottom:100px !important;
}

.pd_l0 {
	padding-left:0px !important;
}

.pd_r0 {
	padding-right:0px !important;
}

.pd_l5 {
	padding-left:5px !important;
}

.pd_r5 {
	padding-right:5px !important;
}

.pd_l10 {
	padding-left:10px !important;
}

.pd_r10 {
	padding-right:10px !important;
}
.pd_l20 {
	padding-left:20px !important;
}

.pd_r20 {
	padding-right:20px !important;
}
.pd_l30 {
	padding-left:30px !important;
}

.pd_r30 {
	padding-right:30px !important;
}
.pd_l40 {
	padding-left:40px !important;
}

.pd_r40 {
	padding-right:40px !important;
}
.pd_l50 {
	padding-left:50px !important;
}

.pd_r50 {
	padding-right:50px !important;
}
/*------------------------------------------------------------ 
    border style
------------------------------------------------------------*/ 	
.br-l0 {
	border-left:none;
}
.br-r0 {
	border-right:none;
}
.br-t0 {
	border-top:none;
}
.br-b0 {
	border-bottom:none;
}
.br-0 {
	border:none;
}
hr {
    border: none;
    height: 1px;
	background: #d7d7d7;
	margin:0;}
/*------------------------------------------------------------ 
    テーブル
------------------------------------------------------------*/ 	
table {
	word-break:break-all;
	font-size:inherit;
}

/*------------------------------------------------------------ 
    注釈
------------------------------------------------------------*/ 

/*------------------------------------------------------------ 
    location
------------------------------------------------------------*/ 
.static{
	position:static !important;}
.pr_parent {
	position:relative !important;}
.pa_parent {
	position:absolute !important;}
.pa_center{
	position:absolute;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);}
.pa_topright {
	position:absolute;
	top:0;
	right:0;
}
.pa_topright5 {
	position:absolute;
	top:5px;
	right:5px;
}
.pa_topright10 {
	position:absolute;
	top:10px;
	right:10px;
}
.pa_topright15{
	position:absolute;
	top:15px;
	right:15px;
}
.pa_topright.beyond{
	top:-50px !important;}
	
.pa_topleft {
	position:absolute;
	top:0;
	left:0;
}
.pa_topleft5 {
	position:absolute;
	top:5px;
	left:5px;
}
.pa_topleft10{
	position:absolute;
	top:10px;
	left:10px;
}
.pa_botmright {
	position:absolute;
	bottom:0;
	right:0;
}
.pa_botmleft {
	position:absolute;
	bottom:0;
	left:0;
}

.pa_botmright5{
	position:absolute;
	bottom:5px;
	right:5px;
}

.pa_botmright10{
	position:absolute;
	bottom:10px;
	right:10px;
}
.zi1{
	z-index:1;}
.zi2{
	z-index:2;}
/*------------------------------------------------------------ 
    フロート指定
------------------------------------------------------------*/ 
.f_right {
	float: right;
}
.f_left {
	float: left;
}

.inline{
	display:inline;}

.inlineb{
	display:inline-block;}

	
/*------------------------------------------------------------ 
    テキストの位置
------------------------------------------------------------*/ 
.taLeft {
	text-align: left !important;
}
.taCenter {
	text-align: center !important;
}
.taRight {
	text-align: right !important;
}
.va_mid {
	vertical-align:middle !important;
}
.va_top {
	vertical-align:top !important;
}
.va_bottom {
	vertical-align:bottom !important;
}
.txt-oe{
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;}

.ovf-h{
overflow: hidden  !important;}

.ovf-a{
overflow: auto  !important;}

.ovf-v{
overflow:visible  !important;}

/*------------------------------------------------------------
        クリア 
 ------------------------------------------------------------*/	
.clearfix {
	zoom:1;
}

.clearfix:after{
	content: '';
	display:block;
	clear:both;
	width: 100%;
	height:0px;
	visibility:hidden;
	font-size: 0;
	line-height: 0;}
.clear {
	clear:both;}
	
.noDisp{
    display:block;
    white-space:nowrap;
    text-indent:-9999px;
    overflow:hidden;}

/* flexbox */
.flx{
	-js-display: flex !important;
	display:-webkit-box !important;
    display:-moz-box !important;
    display:-webkit-flexbox !important;
    display:-moz-flexbox !important;
    display:-ms-flexbox !important;
    display:-webkit-flex !important;
    display:-moz-flex !important;
    display:flex !important;}	

.flx1{flex: 1;}

.flx .left{margin-right: auto;}

.flx .right{margin-left: auto;}

.mirror .left,
.order2{
	-webkit-order:2;
	order:2;}
	
.mirror .right,
.order1{
	-webkit-order:1;
	order:1;}

.flx-o{
	flex: 1;}
.flx-d{
	-webkit-flex: 2;
	flex: 2;}
.flx-t{
	-webkit-flex: 3;
	flex: 3;}
.flx-004{
    flex: 0 0 25%;}	
.flx-003{
    flex: 0 0 33.333%;}	
.flx-002{
    flex: 0 0 50%;}	
.flx-007{
    flex: 0 0 66.6666%;}
.flx-008{
    flex: 0 0 80%;}
.flx-009{
    flex: 0 0 90%;}	
.flx-001{
    flex: 0 0 100%;}
.clm > .flx-o,
.clm-flx-o{flex:1 0 auto;}	
.flx-clmimg{
	min-height:0%;}			
	
.flx.center-w{
	-webkit-justify-content: center;
	justify-content:center;}
.flx.center-h{
	-webkit-align-items: center;
	align-items: center;}
.flx.fend{
	-webkit-align-items: flex-end;
	align-items:flex-end;}
.flx.fend-w{
	-webkit-justify-content: flex-end;
	justify-content:flex-end;}
.flx.fst{
	-webkit-align-items: flex-start;
	align-items:flex-start;}	
.flx.center{
	-webkit-justify-content: center;
	justify-content:center;
	-webkit-align-items: center;
	align-items: center;}	
.flx.stretch{
	align-items: stretch;}
.flx.base{
	align-items:baseline;}
.fx-cnt-in {
    display: block;
    width: 100%;}	
.flx.clm{
	-webkit-flex-direction: column; 
     flex-direction:column;}
.flx.spar{
    -webkit-justify-content:space-around;
    -moz-justify-content:space-around;
    justify-content:space-around;}
.flx.spbt{
    -webkit-justify-content:space-between;
    -moz-justify-content:space-between;
    justify-content:space-between;}

.f-child-end{
	-webkit-align-self:flex-end;
    -moz-align-self:flex-end;
    -ms-align-self:flex-end;
    align-self:flex-end;}	
.flx.spar .left,	
.flx.spbt .left{
	margin-right:inherit;}	
	


.flx:after{
	content:none !important;}	

.flx.col2,
.flx.col3,
.flx.col4,
.flx.col5,
.flx.wrap{
	flex-wrap: wrap;}	
	
.flx.col2 .flx-i,
.flx .col-50{
    width: 50%;}
.flx.row.col4 .flx-i,
.flx .col-25{
    width: 25%;}
.flx.col3 .flx-i{
    width: 33.33333333%;}
.flx.col5 .flx-i,
.flx .col-20{
    width: 20%;}
.flx .col-33 {
    width: 33.333333333333%;}
.flx .col-40 {
    width: 40%;}
.flx .col-60 {
    width: 60%;}
.flx .col-66 {
    width: 66.666666666666%;}	
.flx .col-75 {
    width: 75%;}
.flx .col-80 {
    width: 80%;}
.flx .col-23{
    width:66%;}
.flx .col-13{
    width:34%;}
	

.flx.sp50.col2 .flx-i,
.flx.sp50 .col-50{
    width: 50%;
    width: calc((100% - 50px*1)/ 2);}
.flx.sp50.col4 .flx-i,
.flx.sp50 .col-25{


    width: 25%;
    width: calc((100% - 50px*3)/ 4);}
.flx.sp50.col3 .flx-i{
    width: 33.33333333%;
    width: calc((100% - 50px*2)/ 3);}
.flx.sp50.col5 .flx-i,
.flx.sp50 .col-20{
    width: 20%;
    width: calc((100% - 50px*4)/ 5);}
.flx.sp50 .col-33 {
    width: 33.333333333333%;
    width: calc((100% - 50px*2)/ 3);}
.flx.sp50 .col-66 {
    width: 66.666666666666%;
    width: calc((100% - 50px*.5000000000000002)/ 1.5000000000000002);}	
.flx.sp50 .col-75 {
    width: 75%;
    width: calc((100% - 50px*.3)/ 1.3);}
.flx.sp50 .col-80 {
    width: 80%;
    width: calc((100% - 50px*.25)/ 1.25);}
	
		

.flx.sp30.col2 .flx-i,
.flx.sp30 .col-50{
    width: 50%;
    width: calc((100% - 30px*1)/ 2);}
.flx.sp30.col4 .flx-i,
.flx.sp30 .col-25{
    width: 25%;
    width: calc((100% - 30px*3)/ 4);}
.flx.sp30.col3 .flx-i{
    width: 33.33333333%;
    width: calc((100% - 30px*2)/ 3);}
.flx.sp30.col5 .flx-i,
.flx.sp30 .col-20{
    width: 20%;
    width: calc((100% - 30px*4)/ 5);}
.flx.sp30 .col-33 {
    width: 33.333333333333%;
    width: calc((100% - 30px*2)/ 3);}
.flx.sp30 .col-66 {
    width: 66.666666666666%;
    width: calc((100% - 30px*.5000000000000002)/ 1.5000000000000002);}	
.flx.sp30 .col-75 {
    width: 75%;
    width: calc((100% - 30px*.333)/ 1.333);}
.flx.sp30 .col-80 {
    width: 80%;
    width: calc((100% - 30px*.25)/ 1.25);}
	

.flx.sp15.col2 .flx-i,
.flx.sp15 .col-50{
    width: 50%;
    width: calc((100% - 15px*1)/ 2);}
.flx.sp15.col4 .flx-i,
.flx.sp15 .col-25{
    width: 25%;
    width: calc((100% - 15px*3)/ 4);}
.flx.sp15.col3 .flx-i{
    width: 33.33333333%;
    width: calc((100% - 15px*2)/ 3);}
.flx.sp15.col5 .flx-i,
.flx.sp15 .col-20{
    width: 20%;
    width: calc((100% - 15px*4)/ 5);}
.flx.sp15 .col-33 {
    width: 33.333333333333%;
    width: calc((100% - 15px*2)/ 3);}
.flx.sp15 .col-66 {
    width: 66.666666666666%;
    width: calc((100% - 15px*.5000000000000002)/ 1.5000000000000002);}	
.flx.sp15 .col-75 {
    width: 75%;
    width: calc((100% - 15px*.333)/ 1.333);}
.flx.sp15 .col-80 {
    width: 80%;
    width: calc((100% - 15px*.25)/ 1.25);}	

@media screen and (max-width:1000px){	
.flx.flx82-rv{
	-webkit-flex-direction: column-reverse; 
     flex-direction:column-reverse;}	
.flx.flx82-rv .col-20 {
    width:100%;
	margin-bottom:10px !important;}	
.flx.flx82-rv .col-80 {
    width:100%;}	
}
	
.grid{
  display: grid !important;
  grid-gap: 0px;}
.ggap5{
  grid-gap: 5px;}
.ggap10{
  grid-gap: 10px;}
.ggap15{
  grid-gap: 15px;}
.ggap20{
  grid-gap: 20px;}
.ggap25{
  grid-gap: 25px;}
.ggap30{
  grid-gap: 30px;}
.ggap50{
  grid-gap: 50px;}
.r6g{
	 grid-template-columns: repeat(6,1fr);
	-ms-grid-columns: repeat(6,1fr);}
.r5g{
	 grid-template-columns: repeat(5,1fr);
	-ms-grid-columns: repeat(5,1fr);}
.r4g{
	 grid-template-columns: repeat(4,1fr);
	-ms-grid-columns: repeat(4,1fr);}
.r3g{
	 grid-template-columns: repeat(3,1fr);
	-ms-grid-columns: repeat(3,1fr);}
.r2g{
	 grid-template-columns: repeat(2,1fr);
	-ms-grid-columns: repeat(2,1fr);}
.r1g{
	 grid-template-columns: repeat(1,1fr);
	-ms-grid-columns: repeat(1,1fr);}



.-col{
	display: flex;
	flex-wrap: wrap;}
.flx.-col:has(.-side) .flx-i.left{
	order:1;}
.flx.-col:has(.-side) .flx-i.right{
	order:2;}
.flx.-col.wrap{margin-top: -10px;}
.flx.-col.wrap > .flx-i{
	margin-top:10px;
    flex: 1 1 300px;}
.flx.-col > .flx-i .dl-set.-col dl{
    flex: 1 1 150px;}
.dl-set.-col dl.max{
	flex:none !important;
	width: 100%;}
.flx.-col > .flx-i[class^="w"], 
.flx.-col > .flx-i[class*=" w"]{
    flex:none;}	
.flx.-col.-scrl{
	height: 100%;}
.flx.-col.-scrl > .flx-i{
	height: 100%;
	overflow: auto;}
.flx.-col.-scrl.-resize > .flx-i{
	min-width: 100px;}
.flx.-col.-scrl.-resize > .flx-i.left{position: relative;}
.flx.-col.-scrl.-resize > .flx-i.left:after{
	content: "";
	position: absolute;
	right:0;
	top:0;
    width: 5px;
    height: 100%;
    cursor: ew-resize;
	z-index: 10;}
.flx.-col > .flx-i.-def{
	width:380px;}
.flx.-col > .flx-i.-nrw{
	width:280px;}
@media screen and (max-width:720px){
.flx.-col > .flx-i.-def{
	width:320px;}	
}
@media screen and (max-width:580px){
.flx.-col:not(.wrap) > .flx-i{
	width: 100% !important;}
.flx.-col > .flx-i .fix-side{
	min-width: 0 !important;}	
.flx.-col .-coloff{
		display: none !important;}
}
@media screen and (max-width:700px){
.flx.-row {
	flex-wrap: wrap;}	
.flx.-row.dblock {
    overflow:auto;}	
.flx.-row > .-nrw{
    width: 100%;
	border-right:none;
    border-bottom: solid 1px #bbb;
	max-width: none;}
.flx.-row > .flx-o{
    width: 100%;
	flex:none;}	
}
.flx.-row .flx-o .pics-list{
	max-width: none;}
.flx.-imgrow .-imgr{
	background-color: #000;
	aspect-ratio: 1 / 1; 
	overflow: hidden;}
.flx.-imgrow .-imgr img{
	max-width: 100%;  
	max-height: 100%;  
	object-fit: contain;
	display: block;}
.flx.-col.-slide .flx-i{
	transition: ease-out 0.2s;}
.flx.-col.-slide .flx-i.right .-slideoff{
	display: none;
	padding: 5px 10px;}
@media screen and (max-width: 580px) {
#cube.contents .flx.-col.-slide .flx-i.right .-slideoff + .cont-inner{
	padding-top:0px !important;}
.flx.-col.-slide .flx-i.right .-slideoff{
	display:inline-block;}
.flx.-col.-slide{
	width: 100%;
    flex-wrap:nowrap !important;}
.flx.-col.-slide .flx-i.right{ 
    height: 100%;
    overflow:auto; 
	position:absolute;
	top:0;}
body:has(.-slide) header,
.flx.-col.-slide .flx-i.left{
	transform: translateX(-100%);}
body:has(.-slide).-slideactoff header,
.-slideactoff .flx.-col.-slide .flx-i.left{
	transform: translateX(0%);}
.-slideactoff .flx.-col.-slide .flx-i.right{
	transform: translateX(100%);}
}



.grid-list-wrap{
	container-type: inline-size;}
.grid-list{
  font-size:1.3rem;
  display: grid;
  gap:20px;
  margin: 0;
  padding: 0;}
.grid-list .grid-col > .box {
  aspect-ratio: 1 / 1; 
	padding: 10px;
  width: 100%;
	height:100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;}
.grid-list .grid-col > .box.-b02{
	aspect-ratio:3 / 2; }
@container (max-width: 2030px) {
.grid-list{
  grid-template-columns: repeat(8, 1fr);}
}
@container (max-width: 1740px) {
.grid-list{
  grid-template-columns: repeat(7, 1fr);}
}
@container (max-width: 1450px) {
.grid-list{
  grid-template-columns: repeat(6, 1fr);}
}
@container (max-width: 1160px) {
.grid-list{
  grid-template-columns: repeat(5, 1fr);}
}
@container (max-width: 870px) {
.grid-list{
  grid-template-columns: repeat(4, 1fr);}
}
@container (max-width: 580px) {
.grid-list{
  grid-template-columns: repeat(3, 1fr);}
}
@container (max-width: 380px) {
.grid-list{
  grid-template-columns: repeat(2, 1fr) !important;}	
}
