@charset "UTF-8";

:root{
	/* color */
	--color-black1: #000000;
	--color-black2: #2A2A2A;
	--color-white1: #ffffff;
	--color-white2: #dad7d3;
	--color-white3: #f4f4f4;
	--color-gray1: #9F9FA0;
	--color-gray2: #707070;
	--color-gray3: #575757;
	--color-orange1: #EB8457;
	--color-orange2: #EE7300;
	--color-blue1: #46A8F2;
	--color-blue2: #0091D1;
	--color-blue3: #b3d4fc;
	--color-red1: #BD0015;
	--color-red2: #C12426;

	/* margin */
	--margin-5: 0.5rem;
	--margin-8: 0.8rem;
	--margin-10: 1rem;
	--margin-15: 1.5rem;
	--margin-20: 2rem;
	--margin-25: 2.5rem;
	--margin-30: 3rem;
	--margin-35: 3.5rem;
	--margin-40: 4rem;
	--margin-45: 4.5rem;
	--margin-50: 5rem;
	--margin-55: 5.5rem;
	--margin-60: 6rem;
	--margin-65: 6.5rem;
	--margin-70: 7rem;
	--margin-75: 7.5rem;
	--margin-80: 8rem;
	--margin-85: 8.5rem;
	--margin-90: 9rem;
	--margin-95: 9.5rem;
	--margin-100: 10rem;
	--margin-105: 10.5rem;
	--margin-110: 11rem;
	--margin-115: 11.5rem;
	--margin-120: 12rem;
	--margin-125: 12.5rem;

	/* margin custom */
	--margin-1: 0.1rem;
	--margin-2: 0.2rem;
	--margin-3: 0.3rem;
	--margin-4: 0.4rem;
	--margin-7: 0.7rem;
	--margin-8: 0.8rem;
	--margin-12: 1.2rem;
	--margin-13: 1.3rem;
	--margin-17: 1.7rem;
	--margin-18: 1.8rem;
	--margin-21: 2.1rem;
	--margin-24: 2.4rem;
	--margin-27: 2.7rem;
	--margin-29: 2.9rem;
	--margin-36: 3.6rem;
	--margin-48: 4.8rem;
	--margin-135: 13.5rem;
	--margin-150: 15rem;
	--margin-160: 16rem;
	--margin-170: 17rem;
	--margin-180: 18rem;
	--margin-200: 20rem;
	--margin-215: 21.5rem;
	--margin-240: 24rem;
	--margin-260: 26rem;
	--margin-265: 26.5rem;
	--margin-270: 27rem;
	--margin-300: 30rem;

	/* font size */
	--font-size-8: 0.8rem;
	--font-size-10: 1rem;
	--font-size-11: 1.1rem;
	--font-size-12: 1.2rem;
	--font-size-13: 1.3rem;
	--font-size-14: 1.4rem;
	--font-size-15: 1.5rem;
	--font-size-16: 1.6rem;
	--font-size-18: 1.8rem;
	--font-size-20: 2rem;
	--font-size-24: 2.4rem;
	--font-size-30: 3rem;
	--font-size-35: 3.5rem;
	--font-size-36: 3.6rem;
	--font-size-45: 4.5rem;
}

/* -----------------------------------------------
Table of Contents (common css)
--------------------------------------------------
[1. Foundation]
		1-1. Reset
		1-2. Config
[2. Object]
		2-1. Utility
				 2-1-1. clearfix [ModernType]
				 2-1-2. margin,padding [mb10,pt20]
				 2-1-3. Object-Oriented CSS [OOCSS]
				 2-1-4. Grid System [grid-***]
				 2-1-5. CSS Animation [act-***]
		2-2. WebFont
		2-3. State [is-***]
		2-4. Component a.k.a Module
				 2-4-1. Wrapper     [wrp-***]
				 2-4-2. Headings [hdg-lv*]
				 2-4-3. Text     [txt-***]
				 2-4-4. Button   [btn-***]
				 2-4-5. Anchor   [acr-***]
				 2-4-6. Icon     [icn-***]
				 2-4-7. Label    [lbl-***]
				 2-4-8. List     [lst-***]
				 2-4-9. Table    [tbl-***]
				 2-4-10. Nav      [nav-***]
				 2-4-11. Box      [box-***]
				 2-4-12. Panel    [pnl-***]
				 2-4-13. Media    [mda-***]
				 2-4-14. Form     [frm-***]
				 2-4-15. Error    [err-***]
				 2-4-16. UI
[3. Layout]
		3-1. #l-document
		3-2. #l-header
		3-3. #l-container
				 3-3-1. #l-main
				 3-3-2. #l-sub
		3-4. #l-footer
		3-4. OverLayerConfig [z-index]
		3-5. Project
[4. Print Style]


-------------------------------------------------- */

/* -----------------------------------------------
*> [1. Foundation]
-------------------------------------------------- */

/*>> 1-1. Reset
-------------------------------------------------- */
html{
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body{
	margin: 0;
	padding: 0;
}
a{
	background-color: transparent;
}
a:focus{
	outline: thin dotted;
}
a:active,
a:hover{
	outline-width: 0;
}
html,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,code,del,em,img,strong,
dl,dt,dd,ol,ul,li,
fieldset,form,label,
table,caption,tbody,tfoot,thead,tr,th,td{
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
pre{
	font-family: monospace, monospace;
	font-size: 1em;
}
code,
kbd,
samp{
	font-family: monospace, monospace;
	font-size: 1em;
}
article,aside,footer,header,small,nav,section,figure,figcaption,main{
	margin: 0;
	padding: 0;
	display: block;
	list-style: none;
	background-color: transparent;
	outline: none;
}
small{
	font-size: 80%;
}
audio,canvas,progress,video{
	display: inline-block;
}
audio:not([controls]){
	display: none;
	height: 0;
}
progress{
	vertical-align: baseline;
}
template,
[hidden]{
	display: none;
}
ul,ol{
	list-style-type: none;
}
table{
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	line-height: 1;
	vertical-align: baseline;
	outline: none;
	border-style: none;
}
a img{
	border: none;
	outline: none;
}
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sub{
	bottom: -0.25em;
}
sup{
	top: -0.5em;
}
hr{
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}
abbr[title]{
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}
dt,dd,li,
th,td,
input,textarea{
	text-align: left;
	vertical-align: top;
}
button{
	border: none;
}
input,textarea,button{
	margin: 0;
	padding: 0;
}
input{
	border: 0.1rem solid var(--color-white2);
	height: auto;
	padding: 0.2rem 0.5rem;
}
textarea{
	border: 0.1rem solid var(--color-white2);
	height: 7.8rem;
	resize: none;
	overflow: auto;
}
button,label{
	background-color: transparent;
	cursor: pointer;
}
button,select{
	text-transform: none;
}
[type="checkbox"],
[type="radio"]{
	box-sizing: border-box;
	padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button{
	height: auto;
}
[type="search"]{
	-webkit-appearance: textfield;
	outline-offset: -0.2rem;
}
[type="search"]::-webkit-search-decoration{
	-webkit-appearance: none;
}
::-webkit-file-upload-button{
	-webkit-appearance: button;
	font: inherit;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"]{
	-webkit-appearance: button;
	cursor: pointer;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner{
	border-style: none;
	padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring{
	outline: 0.1rem dotted ButtonText;
}
button[disabled],
input[disabled]{
	cursor: default;
}
input[type="checkbox"],
input[type="radio"]{
	box-sizing: content-box;
	padding: 0;
}
input[type="search"]{
	-webkit-appearance: textfield;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
textarea{
	overflow: auto;
	vertical-align: top;
}
:focus{
	outline: none;
}
fieldset{
	padding: 0.35em 0.75em 0.625em;
}
legend{
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}
details{
	display: block;
}
summary{
	display: list-item;
}
audio,
canvas,
iframe,
img,
svg,
video{
	vertical-align: middle;
}
main{
	display: block;
}
h1{
	margin: 0.67em 0;
}
h1,h2,h3,h4,h5,h6{
	font-size: 100%;
	font-weight: bold;
}
table{
	width: 100%;
}
button,
input,
optgroup,
select,
textarea{
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}
button,
input{
	overflow: visible;
}
button,
select{
	text-transform: none;
}
b,
strong,
em{
	font-weight: bolder;
}
hr{
	display: block;
	height: 0.1rem;
	border: 0;
	border-top: 0.1rem solid var(--color-red1);
	margin: 1em 0;
	padding: 0;
}


/*>> 1-2. Config
-------------------------------------------------- */
html{
	overflow-x: hidden;
	overflow-y: scroll;
	font-size: 10px;
	height: 100%;
}
body{
	font-size: var(--font-size-14);
	color: var(--color-gray2);
	background-color: var(--color-white1);
	line-height: 1.4;
	letter-spacing: 0;
	font-family:"YuGothic","游ゴシック","Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo",sans-serif;
	font-feature-settings : "palt";
	height: 100%;
}
a{
	color: var(--color-blue2);
	text-decoration: none;
}
a:focus{
	outline: none;
}
.no-touchevents a:hover{
	color: var(--color-blue2);
	text-decoration: underline;
}
a[href="tel"]{
	color: var(--color-red1);
}
::-moz-selection{
	background: var(--color-blue3);
	text-shadow: none;
}
::selection{
	background: var(--color-blue3);
	text-shadow: none;
}
h1,h2,h3,h4,h5,h6{
	line-height: 1.4;
}
p{
	line-height: 1.7;
}
dt,dd,li,
th,td,
input,
textarea,
button{
	line-height: 1.6;
}
input{
	font-size: var(--font-size-16);
	box-sizing: border-box;
}
select{
	display: block;
}
textarea{
	width: 100%;
	display: block;
	font-size: var(--font-size-16);
	box-sizing: border-box;
}



/* -----------------------------------------------
*> [2. Object]
-------------------------------------------------- */

/*>> 2-1. Utility
-------------------------------------------------- */
/*>>> 2-1-1. clearfix [ModernType]*/
#l-header:after, #l-container:after, #l-main:after, #l-sub:after, #l-footer:after, .grid-row:after,
.clearfix:after{
	display: block;
	clear: both;
	content: "";
}


/*>>> 2-1-2. margin,padding [mb10,pt20]*/
/* margin  */.m0{margin:0!important;}.m5{margin: 0.5rem!important;}.m10{margin: 1rem!important;}.m15{margin: 1.5rem!important;}.m20{margin: 2rem!important;}.m25{margin: 2.5rem!important;}.m30{margin: 3rem!important;}.m35{margin: 3.5rem!important;}.m40{margin: 4rem!important;}.m45{margin: 4.5rem!important;}.m50{margin: 5rem!important;}.m55{margin: 5.5rem!important;}.m60{margin: 6rem!important;}.m65{margin: 6.5rem!important;}.m70{margin: 7rem!important;}.m75{margin: 7.5rem!important;}.m80{margin: 8rem!important;}.m85{margin: 8.5rem!important;}.m90{margin: 9rem!important;}.m95{margin: 9.5rem!important;}.m100{margin: 10rem!important;}/* margin-top */.mt0{margin-top:0!important;}.mt5{margin-top: 0.5rem!important;}.mt10{margin-top: 1rem!important;}.mt15{margin-top: 1.5rem!important;}.mt20{margin-top: 2rem!important;}.mt25{margin-top: 2.5rem!important;}.mt30{margin-top: 3rem!important;}.mt35{margin-top: 3.5rem!important;}.mt40{margin-top: 4rem!important;}.mt45{margin-top: 4.5rem!important;}.mt50{margin-top: 5rem!important;}.mt55{margin-top: 5.5rem!important;}.mt60{margin-top: 6rem!important;}.mt65{margin-top: 6.5rem!important;}.mt70{margin-top: 7rem!important;}.mt75{margin-top: 7.5rem!important;}.mt80{margin-top: 8rem!important;}.mt85{margin-top: 8.5rem!important;}.mt90{margin-top: 9rem!important;}.mt95{margin-top: 9.5rem!important;}.mt100{margin-top: 10rem!important;}/* margin-right */.mr0{margin-right:0!important;}.mr5{margin-right: 0.5rem!important;}.mr10{margin-right: 1rem!important;}.mr15{margin-right: 1.5rem!important;}.mr20{margin-right: 2rem!important;}.mr25{margin-right: 2.5rem!important;}.mr30{margin-right: 3rem!important;}.mr35{margin-right: 3.5rem!important;}.mr40{margin-right: 4rem!important;}.mr45{margin-right: 4.5rem!important;}.mr50{margin-right: 5rem!important;}.mr55{margin-right: 5.5rem!important;}.mr60{margin-right: 6rem!important;}.mr65{margin-right: 6.5rem!important;}.mr70{margin-right: 7rem!important;}.mr75{margin-right: 7.5rem!important;}.mr80{margin-right: 8rem!important;}.mr85{margin-right: 8.5rem!important;}.mr90{margin-right: 9rem!important;}.mr95{margin-right: 9.5rem!important;}.mr100{margin-right: 10rem!important;}/* margin-bottom */.mb0{margin-bottom:0!important;}.mb5{margin-bottom: 0.5rem!important;}.mb10{margin-bottom: 1rem!important;}.mb15{margin-bottom: 1.5rem!important;}.mb20{margin-bottom: 2rem!important;}.mb25{margin-bottom: 2.5rem!important;}.mb30{margin-bottom: 3rem!important;}.mb35{margin-bottom: 3.5rem!important;}.mb40{margin-bottom: 4rem!important;}.mb45{margin-bottom: 4.5rem!important;}.mb50{margin-bottom: 5rem!important;}.mb55{margin-bottom: 5.5rem!important;}.mb60{margin-bottom: 6rem!important;}.mb65{margin-bottom: 6.5rem!important;}.mb70{margin-bottom: 7rem!important;}.mb75{margin-bottom: 7.5rem!important;}.mb80{margin-bottom: 8rem!important;}.mb85{margin-bottom: 8.5rem!important;}.mb90{margin-bottom: 9rem!important;}.mb95{margin-bottom: 9.5rem!important;}.mb100{margin-bottom: 10rem!important;}/* margin-left */.ml0{margin-left:0!important;}.ml5{margin-left: 0.5rem!important;}.ml10{margin-left: 1rem!important;}.ml15{margin-left: 1.5rem!important;}.ml20{margin-left: 2rem!important;}.ml25{margin-left: 2.5rem!important;}.ml30{margin-left: 3rem!important;}.ml35{margin-left: 3.5rem!important;}.ml40{margin-left: 4rem!important;}.ml45{margin-left: 4.5rem!important;}.ml50{margin-left: 5rem!important;}.ml55{margin-left: 5.5rem!important;}.ml60{margin-left: 6rem!important;}.ml65{margin-left: 6.5rem!important;}.ml70{margin-left: 7rem!important;}.ml75{margin-left: 7.5rem!important;}.ml80{margin-left: 8rem!important;}.ml85{margin-left: 8.5rem!important;}.ml90{margin-left: 9rem!important;}.ml95{margin-left: 9.5rem!important;}.ml100{margin-left: 10rem!important;}.mb200{margin-bottom: 20rem!important;}
/* padding */.p0{padding:0!important;}.p5{padding: 0.5rem!important;}.p10{padding: 1rem!important;}.p15{padding: 1.5rem!important;}.p20{padding: 2rem!important;}.p25{padding: 2.5rem!important;}.p30{padding: 3rem!important;}.p35{padding: 3.5rem!important;}.p40{padding: 4rem!important;}.p45{padding: 4.5rem!important;}.p50{padding: 5rem!important;}.p55{padding: 5.5rem!important;}.p60{padding: 6rem!important;}.p65{padding: 6.5rem!important;}.p70{padding: 7rem!important;}.p75{padding: 7.5rem!important;}.p80{padding: 8rem!important;}.p85{padding: 8.5rem!important;}.p90{padding: 9rem!important;}.p95{padding: 9.5rem!important;}.p100{padding: 10rem!important;}/* padding-top */.pt0{padding-top:0!important;}.pt5{padding-top: 0.5rem!important;}.pt10{padding-top: 1rem!important;}.pt15{padding-top: 1.5rem!important;}.pt20{padding-top: 2rem!important;}.pt25{padding-top: 2.5rem!important;}.pt30{padding-top: 3rem!important;}.pt35{padding-top: 3.5rem!important;}.pt40{padding-top: 4rem!important;}.pt45{padding-top: 4.5rem!important;}.pt50{padding-top: 5rem!important;}.pt55{padding-top: 5.5rem!important;}.pt60{padding-top: 6rem!important;}.pt65{padding-top: 6.5rem!important;}.pt70{padding-top: 7rem!important;}.pt75{padding-top: 7.5rem!important;}.pt80{padding-top: 8rem!important;}.pt85{padding-top: 8.5rem!important;}.pt90{padding-top: 9rem!important;}.pt95{padding-top: 9.5rem!important;}.pt100{padding-top: 10rem!important;}/* padding-right */.pr0{padding-right:0!important;}.pr5{padding-right: 0.5rem!important;}.pr10{padding-right: 1rem!important;}.pr15{padding-right: 1.5rem!important;}.pr20{padding-right: 2rem!important;}.pr25{padding-right: 2.5rem!important;}.pr30{padding-right: 3rem!important;}.pr35{padding-right: 3.5rem!important;}.pr40{padding-right: 4rem!important;}.pr45{padding-right: 4.5rem!important;}.pr50{padding-right: 5rem!important;}.pr55{padding-right: 5.5rem!important;}.pr60{padding-right: 6rem!important;}.pr65{padding-right: 6.5rem!important;}.pr70{padding-right: 7rem!important;}.pr75{padding-right: 7.5rem!important;}.pr80{padding-right: 8rem!important;}.pr85{padding-right: 8.5rem!important;}.pr90{padding-right: 9rem!important;}.pr95{padding-right: 9.5rem!important;}.pr100{padding-right: 10rem!important;}/* padding-bottom */.pb0{padding-bottom:0!important;}.pb5{padding-bottom: 0.5rem!important;}.pb10{padding-bottom: 1rem!important;}.pb15{padding-bottom: 1.5rem!important;}.pb20{padding-bottom: 2rem!important;}.pb25{padding-bottom: 2.5rem!important;}.pb30{padding-bottom: 3rem!important;}.pb35{padding-bottom: 3.5rem!important;}.pb40{padding-bottom: 4rem!important;}.pb45{padding-bottom: 4.5rem!important;}.pb50{padding-bottom: 5rem!important;}.pb55{padding-bottom: 5.5rem!important;}.pb60{padding-bottom: 6rem!important;}.pb65{padding-bottom: 6.5rem!important;}.pb70{padding-bottom: 7rem!important;}.pb75{padding-bottom: 7.5rem!important;}.pb80{padding-bottom: 8rem!important;}.pb85{padding-bottom: 8.5rem!important;}.pb90{padding-bottom: 9rem!important;}.pb95{padding-bottom: 9.5rem!important;}.pb100{padding-bottom: 10rem!important;}/* padding-left */.pl0{padding-left:0!important;}.pl5{padding-left: 0.5rem!important;}.pl10{padding-left: 1rem!important;}.pl15{padding-left: 1.5rem!important;}.pl20{padding-left: 2rem!important;}.pl25{padding-left: 2.5rem!important;}.pl30{padding-left: 3rem!important;}.pl35{padding-left: 3.5rem!important;}.pl40{padding-left: 4rem!important;}.pl45{padding-left: 4.5rem!important;}.pl50{padding-left: 5rem!important;}.pl55{padding-left: 5.5rem!important;}.pl60{padding-left: 6rem!important;}.pl65{padding-left: 6.5rem!important;}.pl70{padding-left: 7rem!important;}.pl75{padding-left: 7.5rem!important;}.pl80{padding-left: 8rem!important;}.pl85{padding-left: 8.5rem!important;}.pl90{padding-left: 9rem!important;}.pl95{padding-left: 9.5rem!important;}.pl100{padding-left: 10rem!important;}


/*>>> 2-1-3. Object-Oriented CSS [OOCSS]*/
.no-display{
	display: none;
}
.no-br{
	white-space: nowrap;
}
.no-line-height{
	line-height: 1!important;
}
.pull-left{
	float: left!important;
}
.pull-right{
	float: right!important;
}
.right{
	text-align: right!important;
}
.center{
	text-align: center!important;
}
.left{
	text-align: left!important;
}
.top{
	vertical-align: top!important;
}
.middle{
	vertical-align: middle!important;
}
.bottom{
	vertical-align: bottom!important;
}
.block{
	display: inline-block;
}
/* for RWD */
.fluid-image{
	max-width: 100%;
	height: auto;
}

/* width */
.w1per{ width:1% !important;}.w2per{ width:2% !important;}.w3per{ width:3% !important;}.w4per{ width:4% !important;}.w5per{ width:5% !important;}.w6per{ width:6% !important;}.w7per{ width:7% !important;}.w8per{ width:8% !important;}.w9per{ width:9% !important;}.w10per{ width: 10% !important;}.w11per{ width: 11% !important;}.w12per{ width: 12% !important;}.w13per{ width: 13% !important;}.w14per{ width: 14% !important;}.w15per{ width: 15% !important;}.w16per{ width: 16% !important;}.w17per{ width: 17% !important;}.w18per{ width: 18% !important;}.w19per{ width: 19% !important;}.w20per{ width: 20% !important;}.w21per{ width: 21% !important;}.w22per{ width: 22% !important;}.w23per{ width: 23% !important;}.w24per{ width: 24% !important;}.w25per{ width: 25% !important;}.w26per{ width: 26% !important;}.w27per{ width: 27% !important;}.w28per{ width: 28% !important;}.w29per{ width: 29% !important;}.w30per{ width: 30% !important;}.w31per{ width: 31% !important;}.w32per{ width: 32% !important;}.w33per{ width: 33% !important;}.w34per{ width: 34% !important;}.w35per{ width: 35% !important;}.w36per{ width: 36% !important;}.w37per{ width: 37% !important;}.w38per{ width: 38% !important;}.w39per{ width: 39% !important;}.w40per{ width: 40% !important;}.w41per{ width: 41% !important;}.w42per{ width: 42% !important;}.w43per{ width: 43% !important;}.w44per{ width: 44% !important;}.w45per{ width: 45% !important;}.w46per{ width: 46% !important;}.w47per{ width: 47% !important;}.w48per{ width: 48% !important;}.w49per{ width: 49% !important;}.w50per{ width: 50% !important;}.w51per{ width: 51% !important;}.w52per{ width: 52% !important;}.w53per{ width: 53% !important;}.w54per{ width: 54% !important;}.w55per{ width: 55% !important;}.w56per{ width: 56% !important;}.w57per{ width: 57% !important;}.w58per{ width: 58% !important;}.w59per{ width: 59% !important;}.w60per{ width: 60% !important;}.w61per{ width: 61% !important;}.w62per{ width: 62% !important;}.w63per{ width: 63% !important;}.w64per{ width: 64% !important;}.w65per{ width: 65% !important;}.w66per{ width: 66% !important;}.w67per{ width: 67% !important;}.w68per{ width: 68% !important;}.w69per{ width: 69% !important;}.w70per{ width: 70% !important;}.w71per{ width: 71% !important;}.w72per{ width: 72% !important;}.w73per{ width: 73% !important;}.w74per{ width: 74% !important;}.w75per{ width: 75% !important;}.w76per{ width: 76% !important;}.w77per{ width: 77% !important;}.w78per{ width: 78% !important;}.w79per{ width: 79% !important;}.w80per{ width: 80% !important;}.w81per{ width: 81% !important;}.w82per{ width: 82% !important;}.w83per{ width: 83% !important;}.w84per{ width: 84% !important;}.w85per{ width: 85% !important;}.w86per{ width: 86% !important;}.w87per{ width: 87% !important;}.w88per{ width: 88% !important;}.w89per{ width: 89% !important;}.w90per{ width: 90% !important;}.w91per{ width: 91% !important;}.w92per{ width: 92% !important;}.w93per{ width: 93% !important;}.w94per{ width: 94% !important;}.w95per{ width: 95% !important;}.w96per{ width: 96% !important;}.w97per{ width: 97% !important;}.w98per{ width: 98% !important;}.w99per{ width: 99% !important;}.w100per{ width: 100% !important;}.wauto { width: auto !important; }
@media only screen and (max-width: 767px){ /* SP */
	.w1per-sp{width:1% !important;}.w2per-sp{width:2% !important;}.w3per-sp{width:3% !important;}.w4per-sp{width:4% !important;}.w5per-sp{width:5% !important;}.w6per-sp{width:6% !important;}.w7per-sp{width:7% !important;}.w8per-sp{width:8% !important;}.w9per-sp{width:9% !important;}.w10per-sp{ width: 10% !important;}.w11per-sp{ width: 11% !important;}.w12per-sp{ width: 12% !important;}.w13per-sp{ width: 13% !important;}.w14per-sp{ width: 14% !important;}.w15per-sp{ width: 15% !important;}.w16per-sp{ width: 16% !important;}.w17per-sp{ width: 17% !important;}.w18per-sp{ width: 18% !important;}.w19per-sp{ width: 19% !important;}.w20per-sp{ width: 20% !important;}.w21per-sp{ width: 21% !important;}.w22per-sp{ width: 22% !important;}.w23per-sp{ width: 23% !important;}.w24per-sp{ width: 24% !important;}.w25per-sp{ width: 25% !important;}.w26per-sp{ width: 26% !important;}.w27per-sp{ width: 27% !important;}.w28per-sp{ width: 28% !important;}.w29per-sp{ width: 29% !important;}.w30per-sp{ width: 30% !important;}.w31per-sp{ width: 31% !important;}.w32per-sp{ width: 32% !important;}.w33per-sp{ width: 33% !important;}.w34per-sp{ width: 34% !important;}.w35per-sp{ width: 35% !important;}.w36per-sp{ width: 36% !important;}.w37per-sp{ width: 37% !important;}.w38per-sp{ width: 38% !important;}.w39per-sp{ width: 39% !important;}.w40per-sp{ width: 40% !important;}.w41per-sp{ width: 41% !important;}.w42per-sp{ width: 42% !important;}.w43per-sp{ width: 43% !important;}.w44per-sp{ width: 44% !important;}.w45per-sp{ width: 45% !important;}.w46per-sp{ width: 46% !important;}.w47per-sp{ width: 47% !important;}.w48per-sp{ width: 48% !important;}.w49per-sp{ width: 49% !important;}.w50per-sp{ width: 50% !important;}.w51per-sp{ width: 51% !important;}.w52per-sp{ width: 52% !important;}.w53per-sp{ width: 53% !important;}.w54per-sp{ width: 54% !important;}.w55per-sp{ width: 55% !important;}.w56per-sp{ width: 56% !important;}.w57per-sp{ width: 57% !important;}.w58per-sp{ width: 58% !important;}.w59per-sp{ width: 59% !important;}.w60per-sp{ width: 60% !important;}.w61per-sp{ width: 61% !important;}.w62per-sp{ width: 62% !important;}.w63per-sp{ width: 63% !important;}.w64per-sp{ width: 64% !important;}.w65per-sp{ width: 65% !important;}.w66per-sp{ width: 66% !important;}.w67per-sp{ width: 67% !important;}.w68per-sp{ width: 68% !important;}.w69per-sp{ width: 69% !important;}.w70per-sp{ width: 70% !important;}.w71per-sp{ width: 71% !important;}.w72per-sp{ width: 72% !important;}.w73per-sp{ width: 73% !important;}.w74per-sp{ width: 74% !important;}.w75per-sp{ width: 75% !important;}.w76per-sp{ width: 76% !important;}.w77per-sp{ width: 77% !important;}.w78per-sp{ width: 78% !important;}.w79per-sp{ width: 79% !important;}.w80per-sp{ width: 80% !important;}.w81per-sp{ width: 81% !important;}.w82per-sp{ width: 82% !important;}.w83per-sp{ width: 83% !important;}.w84per-sp{ width: 84% !important;}.w85per-sp{ width: 85% !important;}.w86per-sp{ width: 86% !important;}.w87per-sp{ width: 87% !important;}.w88per-sp{ width: 88% !important;}.w89per-sp{ width: 89% !important;}.w90per-sp{ width: 90% !important;}.w91per-sp{ width: 91% !important;}.w92per-sp{ width: 92% !important;}.w93per-sp{ width: 93% !important;}.w94per-sp{ width: 94% !important;}.w95per-sp{ width: 95% !important;}.w96per-sp{ width: 96% !important;}.w97per-sp{ width: 97% !important;}.w98per-sp{ width: 98% !important;}.w99per-sp{ width: 99% !important;}.w100per-sp{ width: 100% !important;}.wauto-sp{width: auto !important;}
}


/*>>> 2-1-4. Grid System [grid-***] */
.grid-row{
	margin-right: -1rem;
	margin-left: -1rem;
	display: flex;
	flex-wrap: wrap;
}
.grid-col,
.grid-col--1,
.grid-col--2,
.grid-col--3,
.grid-col--4,
.grid-col--5,
.grid-col--6,
.grid-col--7,
.grid-col--8,
.grid-col--9,
.grid-col--10,
.grid-col--11,
.grid-col--12{
	position: relative;
	min-height: 0.1rem;
	padding-right: 1rem;
	padding-left: 1rem;
	box-sizing: border-box;
}
.grid-col--1{width: 8.33333333333%}
.grid-col--2{width: 16.6666666667%;}
.grid-col--3{width: 25%;}
.grid-col--4{width: 33.3333333333%;}
.grid-col--5{width: 41.6666666667%;}
.grid-col--6{width: 50%;}
.grid-col--7{width: 58.3333333333%;}
.grid-col--8{width: 66.6666666667%;}
.grid-col--9{width: 75%;}
.grid-col--10{width: 83.3333333333%;}
.grid-col--11{width: 91.6666666667%;}
.grid-col--12{width: 100%;}

@media only screen and (max-width:767px){
	.grid-row{
		margin-left: -0.5rem;
		margin-right: -0.5rem;
	}
	.grid-col--1, .grid-col--2, .grid-col--3, .grid-col--4, .grid-col--5, .grid-col--6, .grid-col--7, .grid-col--8, .grid-col--9, .grid-col--10, .grid-col--11, .grid-col--12{
		width: 100%;
		padding-right: 0.5rem;
		padding-left: 0.5rem;
	}
	.grid-col--3.__isSP,
	.grid-col--4.__isSP,
	.grid-col--6.__isSP{
		width: 50%;
	}
}/* endMedia */


@media only screen and (min-width:768px) and (max-width:1199px){
	.grid-row{
		margin-left: -1rem;
		margin-right: -1rem;
	}
	.grid-col--1, .grid-col--2, .grid-col--3, .grid-col--4, .grid-col--5, .grid-col--6, .grid-col--7, .grid-col--8, .grid-col--9, .grid-col--10, .grid-col--11, .grid-col--12{
		width: 100%;
		padding-right: 1rem;
		padding-left: 1rem;
	}
	.grid-col--3.__isTablet,
	.grid-col--4.__isTablet,
	.grid-col--6.__isTablet{
		width: 50%;
	}
}/* endMedia */



/*>>> 2-1-5. CSS Animation [act-***] */


/*>> 2-2. WebFont [is-***]
-------------------------------------------------- */


/*>> 2-3. State [is-***]
-------------------------------------------------- */
.is-error{
	background-color: var(--color-red1);
}
.is-disabled{
	opacity: 0.3;
	pointer-events: none;
	cursor: default;
}
.is-inline-block span{
	margin-bottom: var(--margin-10);
	display: inline-block;
}
.is-visiblePc{
	display: block!important;
}
.is-visibleSp{
	display: none!important;
}
.is-visibleTablet{
	display: none!important;
}
@media only screen and (max-width:767px){
	.is-visiblePc{
		display: none!important;
	}
	.is-visibleTablet{
		display: none!important;
	}
	.is-visibleSp{
		display: block!important;
	}
}
@media only screen and (min-width:768px) and (max-width:1199px){
	.is-visibleTablet{
		display: block!important;
	}
}




/*>> 2-4. Component a.k.a Module
-------------------------------------------------- */
/*>>> 2-4-1.  Wrapper     [wrp-***]*/
.wrp-container{
	max-width: 95rem;
	margin: 0 auto;
	padding: 0 var(--margin-30);
}
.wrp-container.sm{
	max-width: 68rem;
}
.wrp-container::after{
	content: "";
	display: block;
	clear: both;
}
@media only screen and (max-width:767px){
	.wrp-container{
		padding: 0 6.977vw;
	}
}

.wrp-button{
	text-align: center;
}
.wrp-button .btn{
	margin: var(--margin-20) var(--margin-10) 0;
}

.wrp-video{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: var(--margin-30);
	height: 0;
	overflow: hidden;
}
.wrp-video iframe,
.wrp-video object,
.wrp-video embed{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


/*>>> 2-4-2.  Headings [hdg-lv*] */
.hdg-lv2{
	display: flex;
	align-items: center;
	justify-content: center;
}
.hdg-lv2__title{
	font-size: var(--font-size-45);
	line-height: 1.5;
	color: var(--color-black1);
	font-weight: normal;
	margin: 0 var(--margin-25);
}
.hdg-lv2__decor{
	display: flex;
	align-items: center;
	justify-content: center;
}
.hdg-lv2__decor.revert{
	flex-direction: row-reverse;
}
.hdg-lv2__decor::before,
.hdg-lv2__decor::after{
	content: "";
	display: inline-block;
	width: var(--margin-10);
	height: var(--margin-35);
}
.hdg-lv2__decor::before{
	background: var(--color-gray1);
}
.hdg-lv2__decor::after{
	background: var(--color-blue2);
}
.hdg-lv2__decor span{
	width: var(--margin-10);
	height: var(--margin-35);
	background: var(--color-orange2);
	display: inline-block;
	margin: 0 var(--margin-10);
}
.hdg-lv2 + .box-image{
	margin-top: var(--margin-100);
}
.hdg-lv2 + .wrp-container.sm{
	margin-top: var(--margin-200);
}
@media only screen and (max-width:767px){
	.hdg-lv2__title{
		font-size: var(--font-size-24);
		margin: 0 var(--margin-12);
	}
	html[lang="en"] .hdg-lv2__title{
		font-size: var(--font-size-20);
	}
	.hdg-lv2__decor::before,
	.hdg-lv2__decor::after{
		width: var(--margin-5);
		height: var(--margin-20);
	}
	.hdg-lv2__decor span{
		width: var(--margin-5);
		height: var(--margin-20);
		margin: 0 var(--margin-5);
	}
	.hdg-lv2 + .box-image{
		margin-top: var(--margin-35);
	}
	.hdg-lv2 + .wrp-container.sm{
		margin-top: var(--margin-30);
	}
}

.hdg-lv3{
	text-align: center;
}
.hdg-lv3__subtitle{
	font-size: var(--font-size-20);
}
.hdg-lv3__title{
	font-size: var(--font-size-30);
	font-weight: normal;
	line-height: 1.566;
}
.hdg-lv3 + .box-image{
	margin-top: var(--margin-80);
}
.hdg-lv3.border{
	border-top: solid 0.1rem var(--color-red2);
	border-bottom: solid 0.1rem var(--color-red2);
	padding: var(--margin-20) 0;
}
@media only screen and (max-width:767px){
	.hdg-lv3{
		margin: 0 -6.977vw;
	}
	.hdg-lv3__subtitle{
		font-size: var(--font-size-14);
	}
	.hdg-lv3.border{
		padding: var(--margin-10) 0;
		margin: 0;
	}
	.hdg-lv3.border .hdg-lv3__subtitle{
		font-size: var(--font-size-12);
	}
	.hdg-lv3__title{
		font-size: var(--font-size-20);
	}
	.hdg-lv3 + .box-image{
		margin-top: var(--margin-30);
	}
}

/*>>> 2-4-3.  Text     [txt-***]*/
.txt-copyright{
	text-align: right;
	font-size: var(--font-size-10);
	margin-top: var(--margin-60);
}
@media only screen and (max-width:767px){
	.txt-copyright{
		text-align: center;
		margin-top: var(--margin-24);
	}
}

/* text-lead */
.txt-lead{
	font-size: var(--font-size-20);
	line-height: 2.25;
}
.txt-lead + .txt-lead{
	margin-top: var(--margin-45);
}
.txt-lead + .hdg-lv3{
	margin-top: var(--margin-95);
}
.txt-lead + .txt-subtitle{
	margin-top: var(--margin-200);
}
.txt-lead + .txt-title{
	margin-top: var(--margin-120);
}
@media only screen and (max-width:767px){
	.txt-lead{
		font-size: var(--font-size-14);
		line-height: 1.833;
	}
	.txt-lead + .txt-lead{
		margin-top: var(--margin-20);
	}
	.txt-lead + .hdg-lv3{
		margin-top: var(--margin-60);
	}
	.txt-lead + .txt-subtitle{
		margin-top: var(--margin-40);
	}
	.txt-lead + .txt-title{
		margin-top: var(--margin-55);
	}
	.txt-lead + .txt-title.normal{
		margin-top: var(--margin-15);
	}
}

/* txt-subtitle */
.txt-subtitle{
	font-size: var(--font-size-20);
	line-height: 2.25;
	position: relative;
	padding-left: var(--margin-17);
}
.txt-subtitle::before{
	content: "";
	width: var(--margin-10);
	height: var(--margin-20);
	display: inline-block;
	background: var(--color-red1);
	position: absolute;
	top: 0.5em;
	left: 0;
}
@media only screen and (max-width:767px){
	.txt-subtitle{
		font-size: var(--font-size-12);
		line-height: 1.833;
		padding-left: var(--margin-8);
	}
	.txt-subtitle::before{
		width: var(--margin-5);
		height: var(--margin-13);
		top: 0.3em;
	}
}

/* text-title */
.txt-title{
	display: flex;
	align-items: center;
	margin-top: var(--margin-90);
}
.txt-title::after{
	content: "";
	width: 100%;
	height: var(--margin-1);
	background: var(--color-gray2);
}
.txt-title span{
	font-size: var(--font-size-30);
	flex-shrink: 0;
	padding-right: var(--margin-20);
}
.txt-title.gray::before,
.txt-title.blue::before,
.txt-title.orange::before{
	content: "";
	width: var(--margin-10);
	height: var(--margin-30);
	display: inline-block;
	margin-right: var(--margin-7);
	flex-shrink: 0;
}
.txt-title.gray::before{
	background: var(--color-gray1);
}
.txt-title.orange::before{
	background: var(--color-orange2);
}
.txt-title.blue::before{
	background: var(--color-blue2);
}
.txt-title.normal::after{
	display: none;
}
.txt-title.normal span{
	padding-right: 0;
	flex-shrink: initial;
}
.txt-title + .box-image{
	margin-top: var(--margin-30);
}
.txt-title.gray + .box-image{
	margin-top: var(--margin-120);
}
.txt-title + .box-image.zone2050-02{
	margin-top: var(--margin-90);
}
@media only screen and (max-width:767px){
	.txt-title{
		margin-top: var(--margin-35);
	}
	.txt-title span{
		font-size: var(--font-size-16);
		flex-shrink: 0;
		padding-right: var(--margin-10);
	}
	.txt-title.gray::before,
	.txt-title.blue::before,
	.txt-title.orange::before{
		width: var(--margin-5);
		height: var(--margin-13);
		margin-right: var(--margin-3);
	}
	.txt-title.gray span,
	.txt-title.blue span,
	.txt-title.orange span{
		color: var(--color-black1);
		font-size: var(--font-size-12);
	}
	.txt-title.gray::after,
	.txt-title.blue::after,
	.txt-title.orange::after{
		height: 0;
		background: none;
		border-top: dashed var(--margin-1) var(--color-gray2);
	}
	.txt-title + .box-image{
		margin-top: var(--margin-20);
	}
	.txt-title.gray + .box-image{
		margin-top: var(--margin-15);
	}
	.txt-title + .box-image.zone2050-02{
		margin: var(--margin-40) 0 0;
		padding: 0 var(--margin-12);
	}
}


/* text link */
.txt-link{
	margin-top: var(--margin-50);
}
.txt-link a{
	display: inline-flex;
	align-items: center;
	font-size: var(--font-size-20);
	color: var(--color-gray2);
	transition: all .3s ease;
}
.txt-link a::before{
	content: "";
	width: var(--margin-29);
	height: var(--margin-18);
	display: inline-block;
	background: url("/assets/images/common/icn-arrow-up-gray.svg") no-repeat center center;
	background-size: contain;
	margin-right: var(--margin-10);
}
.txt-link.orange a::before{
	background: url("/assets/images/common/icn-arrow-up-orange.svg") no-repeat center center;
	background-size: contain;
}
.txt-link.blue a::before{
	background: url("/assets/images/common/icn-arrow-up-blue.svg") no-repeat center center;
	background-size: contain;
}
.no-touchevents .txt-link a:hover{
	text-decoration: none;
	color: var(--color-gray2);
	opacity: 0.7;
}
.txt-link.right{
	text-align: right;
}
@media only screen and (max-width:767px){
	.txt-link{
		margin-top: var(--margin-25);
	}
	.txt-link a{
		font-size: var(--font-size-12);
	}
	.txt-link a::before{
		width: var(--margin-12);
		height: var(--margin-7);
		background-size: cover;
	}
	.txt-link.orange a::before{
		background-size: cover;
	}
	.txt-link.blue a::before{
		background-size: cover;
	}
}



/*>>> 2-4-4.  Button   [btn-***]*/
.btn{
	background-color: var(--color-gray2);
	border-radius: var(--margin-20);
	border: 0;
	box-sizing: border-box;
	color: var(--color-white1);
	cursor: pointer;
	display: inline-block;
	font-size: var(--font-size-14);
	line-height: 1;
	padding: var(--margin-15);
	text-align: center;
	text-decoration: none;
	vertical-align: middle;
	overflow: hidden;
	min-width: 28rem;
}
.no-touchevents .btn:hover{
	text-decoration: none;
	color: var(--color-white1);
	opacity: 0.7;
}

/*>>> 2-4-5.  Anchor   [acr-***]*/

/*>>> 2-4-6. Icon     [icn-***]*/

/*>>> 2-4-7. Label    [lbl-***]*/

/*>>> 2-4-8. List     [lst-***]*/

/*>>> 2-4-9. Table    [tbl-***]*/

/*>>> 2-4-10. Nav      [nav-***]*/
/* nav-global-menu */
.nav-global-menu{
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: calc(100 * var(--vh));
	background: rgba(255, 255, 255, 0.95);
	backdrop-filter: blur(var(--margin-30));
	-webkit-backdrop-filter: blur(var(--margin-30));
	opacity: 0;
	visibility: hidden;
	transform: translateY(-1rem);
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
	padding: var(--margin-25) var(--margin-20) var(--margin-30);
	box-sizing: border-box;
	display: flex;
	/* justify-content: center; */
	/* align-items: center; */
	flex-direction: column;
	/* overflow-y: scroll; */
}
.is-menu-opened .nav-global-menu{
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	background: var(--color-white3);
}
.nav-global-menu__left{
	position: absolute;
	top: var(--margin-25);
	left: var(--margin-20);
	width: 33.594vw;
	pointer-events: none;
}
.nav-global-menu__right{
	position: absolute;
	top: var(--margin-35);
	right: var(--margin-80);
	width: 24.688vw;
	pointer-events: none;
}
.nav-global-menu__close{
	width: var(--margin-40);
	height: var(--margin-40);
	display: inline-block;
	cursor: pointer;
	position: absolute;
	top: var(--margin-40);
	right: var(--margin-25);
	transition: all .3s ease;
}
.no-touchevents .nav-global-menu__close:hover{
	opacity: 0.7;
}
.nav-global-menu__close span{
	display: block;
	width: 100%;
	height: var(--margin-1);
	background: var(--color-red1);
	position: absolute;
	left: 0;
	top: 50%;
}
.nav-global-menu__close span:nth-of-type(1){
	transform: rotate(45deg) translateY(-50%);
}
.nav-global-menu__close span:nth-of-type(2){
	transform: rotate(-45deg) translateY(-50%);
}
.nav-global-menu__wrap{
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
}
.nav-global-menu__title{
	text-align: center;
	font-size: var(--margin-36);
	line-height: 1;
	color: var(--color-red1);
	letter-spacing: 0.2em;
}
.nav-global-menu__content{
	display: flex;
	width: 100%;
	margin-top: var(--margin-100);
}
.nav-global-menu__list{
	width: 50%;
	padding-left: 4.688vw;
}
.nav-global-menu__list li{}
.nav-global-menu__list li + li{
	margin-top: var(--margin-70);
}
.nav-global-menu__list li a{
	color: var(--color-black2);
	font-size: var(--margin-30);
	line-height: 1;
	transition: all .3s ease;
	display: flex;
	align-items: center;
}
.no-touchevents .nav-global-menu__list li a:hover{
	text-decoration: none;
	color: var(--color-black2);
	opacity: 0.7;
}
.nav-global-menu__list li a::before{
	content: "";
	width: var(--margin-15);
	height: var(--margin-25);
	display: inline-block;
	background: var(--color-red1);
	flex-shrink: 0;
	margin-right: var(--margin-15);
	position: relative;
	z-index: 1;
}
.nav-global-menu__list.primary{}
.nav-global-menu__list.primary > li ul{
	margin-top: var(--margin-45);
}
.nav-global-menu__list.primary > li ul li{
	position: relative;
	padding-left: var(--margin-95);
}
.nav-global-menu__list.primary > li ul li + li{
	margin-top: var(--margin-55);
}
.nav-global-menu__list.primary > li ul li::before{
	content: "";
	width: var(--margin-70);
	height: var(--margin-60);
	border: solid var(--margin-1) var(--color-gray1);
	border-top: 0;
	border-right: 0;
	display: inline-block;
	position: absolute;
	left: 0.5em;
	bottom: 1.15em;
}
.nav-global-menu__list.primary > li ul li:nth-of-type(2):before{
	border-color: var(--color-orange2);
}
.nav-global-menu__list.primary > li ul li:nth-of-type(3):before{
	border-color: var(--color-blue2);
}
.nav-global-menu__list.primary > li ul li a::before{
	display: none;
}
.nav-global-menu__logo{
	display: flex;
	align-items: center;
	justify-content: center;
	/* position: absolute;
	bottom: var(--margin-40);
	left: 50%;
	--webkit-transform: translateX(-50%);
	transform: translateX(-50%); */
	margin-top: 3.385vw;
}
.nav-global-menu__logo a{
	transition: all .3s ease;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	flex-shrink: 0;
}
.no-touchevents .nav-global-menu__logo a:hover{
	opacity: 0.7;
}
.nav-global-menu__logo a img{
	height: var(--margin-65);
	width: auto;
}
.nav-global-menu__top{
	display: block;
	text-align: center;
	padding-bottom: var(--margin-90);
}
.nav-global-menu__top img{
	max-width: 31rem;
	margin: 0 auto;
}
@media (max-height: 750px) {
	.nav-global-menu__wrap{
		height: 60rem;
		overflow-y: scroll;
	}
}
@media only screen and (min-width: 1281px){
	.nav-global-menu__wrap{
		width: 120rem;
	}
}
@media only screen and (min-width:768px) and (max-width:1199px){
	.nav-global-menu__wrap{
		width: 90vw;
	}
	.nav-global-menu__content{
		margin-top: var(--margin-60);
	}
	/* .nav-global-menu__title{
		padding-right: 10.417vw;
	} */
	.nav-global-menu__list li a{
		font-size: var(--font-size-20);
	}
	.nav-global-menu__logo a{
		margin: 0 2.604vw;
	}
}
@media only screen and (max-width:767px){
	.nav-global-menu{
		padding: 37.442vw 4.651vw 10.465vw;
		display: block;
		overflow-y: scroll;
	}
	.nav-global-menu__left{
		width: 77.674vw;
		top: 5.814vw;
		left: 4.651vw;
	}
	.nav-global-menu__right{
		width: 58.605vw;
		top: 52.791vw;
		right: 0;
	}
	.nav-global-menu__close{
		width: 6.977vw;
		height: 6.977vw;
		top: 5.814vw;
		right: 4.651vw;
	}
	.nav-global-menu__wrap{
		width: auto;
		display: block;
		margin: 0 -4.651vw;
		height: auto;
		overflow-y: inherit;
	}
	.nav-global-menu__title{
		padding: 0;
		font-size: var(--font-size-16);
		text-align: center;
		padding: var(--margin-10) 0;
		border-top: solid var(--margin-1) var(--color-red1);
		border-bottom: solid var(--margin-1) var(--color-red1);
		color: var(--color-gray3);
	}
	.nav-global-menu__content{
		margin-top: var(--margin-35);
		flex-direction: column;
		padding: 0 12vw;
		box-sizing: border-box;
	}
	.nav-global-menu__list{
		width: 100%;
	}
	.nav-global-menu__list li + li{
		margin-top: var(--margin-35);
	}
	.nav-global-menu__list li a{
		font-size: var(--margin-18);
	}
	.nav-global-menu__list li a::before{
		width: var(--margin-7);
		height: var(--margin-20);
		margin-right: var(--margin-10);
	}
	.nav-global-menu__list.primary{
		margin-top: var(--margin-35);
	}
	.nav-global-menu__list.primary > li ul{
		margin-top: var(--margin-35);
	}
	.nav-global-menu__list.primary > li ul li{
		padding-left: var(--margin-40);
	}
	.nav-global-menu__list.primary > li ul li::before{
		width: var(--margin-24);
		height: var(--margin-35);
		left: 0.2em;
		bottom: 0.65em;
	}
	.nav-global-menu__list.primary > li ul li + li{
		margin-top: var(--margin-35);
	}
	.nav-global-menu__logo{
		position: relative;
		left: auto;
		bottom: auto;
		-webkit-transform: none;
		transform: none;
		margin: var(--margin-65) 0 0;
		padding: 0 var(--margin-35);
	}
	.nav-global-menu__logo a{
		margin: 0;
	}
	.nav-global-menu__logo a + a{
		margin-left: var(--margin-50);
	}
	.nav-global-menu__logo{
		padding-bottom: 0;
	}
	.nav-global-menu__logo a img{
		height: var(--margin-40);
	}
	.nav-global-menu__top{
		padding-bottom: 31.99vw;
	}
	.nav-global-menu__top img{
		max-width: 21rem;
	}
}
/* @media only screen and (max-width:375px){
	.nav-global-menu{
		padding-top: 49.186vw;
		padding-bottom: 10.465vw;
	}
	.nav-global-menu__right{
		top: 22.093vw;
	}
	.nav-global-menu__content{
		padding: 0 10vw;
	}
} */

/*Footer navi*/
.nav-footer ul{
	display: flex;
	align-items: center;
}
.nav-footer ul li{
	display: flex;
	align-items: center;
	margin-right: var(--margin-45);
}
.nav-footer ul li::before{
	content: "";
	width: var(--margin-4);
	height: var(--margin-21);
	display: inline-block;
	margin-right: var(--margin-12);
	background: var(--color-red1);
}
.nav-footer ul li a{
	color: var(--color-gray2);
	font-size: var(--font-size-20);
	transition: all .3s ease;
}
.no-touchevents .nav-footer ul li a:hover{
	text-decoration: none;
	color: var(--color-red1);
}
@media only screen and (min-width:768px) and (max-width:1199px){
	.nav-footer ul{
		flex-wrap: wrap;
	}
}
@media only screen and (max-width:767px){
	.nav-footer ul{
		flex-wrap: wrap;
	}
	.nav-footer ul li{
		margin-right: 0;
		width: 50%;
		margin-bottom: var(--margin-7);
	}
	.nav-footer ul li::before{
		width: var(--margin-2);
		height: var(--margin-10);
		margin-right: var(--margin-3);
	}
	.nav-footer ul li a{
		font-size: var(--font-size-12);
	}
}

/*Back to Top*/
.nav-backtotop{
	position: fixed;
	right: var(--margin-50);
	bottom: var(--margin-50);
	z-index: 2;
}
.nav-backtotop a{
	width: var(--margin-50);
	height: var(--margin-50);
	border-radius: 50%;
	background: var(--color-red1);
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0;
	transition: all .3s ease;
}
.nav-backtotop a img{
	width: var(--margin-15);
	height: auto;
}
.no-touchevents .nav-backtotop a:hover{
	opacity: 0.7;
}
@media only screen and (max-width:767px){
	.nav-backtotop{
		right: var(--margin-10);
		bottom: var(--margin-10);
	}
	.nav-backtotop a{
		width: var(--margin-24);
		height: var(--margin-24);
	}
	.nav-backtotop a img{
		width: var(--margin-12);
	}
}

/*>>> 2-4-11. Box      [box-***]*/
.box-noscript{
	border: var(--margin-2) solid var(--color-red1);
	padding: var(--margin-20);
	margin: var(--margin-10);
}

/* box-image */
.box-image{
	position: relative;
}
.box-image picture{
	display: block;
	font-size: 0;
	text-align: center;
}
.box-image picture img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.box-image figcaption{
	font-size: var(--font-size-16);
	margin-top: var(--margin-50);
	text-align: center;
}
.box-image + .txt-lead{
	margin-top: var(--margin-70);
}
.box-image + .wrp-container.sm{
	margin-top: var(--margin-100);
}
@media only screen and (max-width:767px){
	.box-image + .txt-lead{
		margin-top: var(--margin-40);
	}
	.box-image.overflowSp{
		margin-left: calc(-1 * var(--margin-30));
		margin-right: calc(-1 * var(--margin-30));
	}
	.box-image + .wrp-container.sm{
		margin-top: var(--margin-20);
	}
	.box-image figcaption{
		font-size: var(--font-size-12);
		margin-top: var(--margin-15);
	}
}

/* box MV */
.box-mv{
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}
.box-mv .box-image{
	width: 50%;
}
.box-mv__info{
	width: 50%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.box-mv__logo{
	max-width: 50.5rem;
	font-size: 0;
	margin: 0;
}
.box-mv__logo .hidden{
	font-size: 0;
	visibility: hidden;
	opacity: 0;
}
.box-mv__expo{
	max-width: 56.4rem;
	margin-top: var(--margin-75);

}
.box-mv__text{
	font-size: var(--font-size-20);
	line-height: 2.25;
	text-align: center;
	margin-top: var(--margin-65);
}
/* @media only screen and (min-width:1400px){
	.box-mv{
		height: calc(100vh - 8.4rem);
	}
	.box-mv .box-image,
	.box-mv .box-image picture {
		height: 100%;
	}
} */
@media only screen and (min-width:768px) and (max-width:1600px){
	.box-mv__logo{
		max-width: 26.302vw;
	}
	.box-mv__expo{
		max-width: 29.375vw;
	}
	.box-mv__expo{
		margin-top: 3.906vw;
	}
	.box-mv__text{
		font-size: 1.042vw;
		margin-top: 3.385vw;
	}
}
@media only screen and (max-width:767px){
	.box-mv{
		flex-direction: column;
	}
	.box-mv .box-image,
	.box-mv__info{
		width: 100%;
	}
	.box-mv__logo{
		max-width: 14rem;
		margin-top: var(--margin-50);
	}
	.box-mv__expo{
		max-width: 18rem;
		margin-top: var(--margin-15);
	}
	.box-mv__text{
		margin-top: var(--margin-10);
		font-size: var(--font-size-12);
		line-height: 1.833;
	}
	html[lang="en"] .box-mv__text{
		font-size: var(--font-size-11);
	}
}

/* box-concept */
.box-concept{
	padding-bottom: var(--margin-200);
}
.box-concept__logo{
	max-width: 59rem;
	margin: var(--margin-95) auto 0;
}
.box-concept .box-lead{
	margin-top: var(--margin-90);
}
@media only screen and (max-width:767px){
	.box-concept{
		padding-bottom: var(--margin-85);
	}
	.box-concept__logo{
		max-width: 28rem;
		margin: var(--margin-50) auto 0;
	}
	.box-concept .box-lead{
		margin-top: var(--margin-20);
	}
	html[lang="ja"] .box-concept .txt-lead{
		font-size: var(--font-size-12);
	}
	html[lang="en"] .box-concept .txt-lead{
		font-size: var(--font-size-13);
	}
}


/* box-theme */
.box-theme{
	padding-top: var(--margin-60);
}
.box-theme .wrp-container.sm{
	padding: 0 var(--margin-20);
}
@media only screen and (max-width:767px){
	.box-theme{
		padding-top: var(--margin-40);
	}
	.box-theme .wrp-container.sm{
		padding: 0 4.651vw;
	}
}

/* box-catheter */
.box-catheter{
	margin-top: var(--margin-55);
	padding-top: var(--margin-60);
}
.box-catheter__main{
	max-width: 78rem;
	margin: 0 auto;
}
.box-catheter .grid-row{
	margin: var(--margin-50) var(--margin-50) 0;
}
.box-catheter .grid-row + .txt-lead{
	margin-top: var(--margin-45);
}
.box-catheter .wrp-container.sm{
	padding: 0 var(--margin-20);
}
@media only screen and (min-width:768px) and (max-width:1199px){
	.box-catheter .grid-col--6{
		width: 50%;
	}
}
@media only screen and (max-width:767px){
	.box-catheter{
		margin-top: var(--margin-50);
		padding-top: var(--margin-40);
	}
	.box-catheter .grid-row{
		margin: var(--margin-40) 0 0;
	}
	.box-catheter .grid-row + .txt-lead{
		margin-top: var(--margin-20);
	}
	.box-catheter .wrp-container.sm{
		padding: 0 4.651vw;
	}
}

/* box-zone */
.box-zone{
	margin-top: var(--margin-240);
	padding-top: var(--margin-60);
}
.box-zone__buttons{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: var(--margin-180);
}
.box-zone__buttons a{
	display: inline-block;
	margin: 0 var(--margin-30);
	transition: all .3s ease;
}
.no-touchevents .box-zone__buttons a:hover{
	opacity: 0.7;
}
.box-zone__buttons + .txt-lead{
	margin-top: var(--margin-150);
}
@media only screen and (max-width:767px){
	.box-zone{
		margin-top: var(--margin-40);
		padding-top: var(--margin-40);
	}
	.box-zone__buttons{
		margin: var(--margin-60) calc(-1 * var(--margin-30)) 0;
	}
	.box-zone__buttons a{
		margin: 0 var(--margin-15);
	}
	.box-zone__buttons + .txt-lead{
		margin-top: var(--margin-50);
	}
}

/*>>> 2-4-12. Panel    [pnl-***]*/

/*>>> 2-4-13. Media    [mda-***]*/

/*>>> 2-4-14. Form     [frm-***]*/

/*>>> 2-4-15. Error    [err-***]*/

/*>>> 2-4-16. UI*/


/* -----------------------------------------------
*> [3. Layout]
-------------------------------------------------- */

/*>> 3-1. #l-document
-------------------------------------------------- */
.l-document{
	position: relative;
	min-height: 100%;
	box-sizing: border-box;
	padding-top: var(--margin-85);
}
@media only screen and (max-width:767px){
	.l-document{
		padding-top: var(--margin-48);
	}
}

/*>> 3-2. #l-header
-------------------------------------------------- */
.l-header{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	background: var(--color-white1);
	border-bottom: solid 0.1rem var(--color-red1);
	height: var(--margin-85);
	box-sizing: border-box;
	transition: background 0.3s ease;
}
.is-sticky .l-header{
	background: rgba(255, 255, 255, 0.2);
	backdrop-filter: blur(var(--margin-30));
	-webkit-backdrop-filter: blur(var(--margin-30));
}
.l-header__wrapper{
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: var(--margin-5) var(--margin-30) var(--margin-5) var(--margin-10);
	box-sizing: border-box;
}
.l-header__left a{
	display: inline-block;
	transition: all .3s ease;
}
.no-touchevents .l-header__left a:hover{
	opacity: 0.7;
}
.l-header__left a img{
	height: var(--margin-40);
	width: auto;
}
.l-header__right{
	display: flex;
	align-items: center;
}
.l-header__logo{
	display: inline-block;
	transition: all .3s ease;
}
.no-touchevents .l-header__logo:hover{
	opacity: 0.7;
}
.l-header__logo img{
	height: var(--margin-20);
	width: auto;
}
.l-header__lang{
	margin: 0 var(--margin-45);
}
.l-header__lang ul{
	display: block;
}
.l-header__lang ul li{
	display: inline-block;
	position: relative;
	line-height: 1;
}
.l-header__lang ul li::before{
	content: "";
	height: var(--margin-15);
	width: var(--margin-1);
	background: var(--color-gray2);
	display: inline-block;
	margin: 0 var(--margin-15);
	position: relative;
	top: 0.05em;
}
.l-header__lang ul li:first-child::before{
	display: none;
}
.l-header__lang ul li a{
	display: inline-block;
	color: var(--color-gray2);
	font-size: var(--font-size-18);
	line-height: 1;
	position: relative;
	transition: all .3s ease;
	outline: none;
}
.l-header__lang ul li.active a::after{
	content: "";
	width: var(--margin-20);
	height: var(--margin-1);
	background: var(--color-red1);
	display: inline-block;
	position: absolute;
	bottom: -0.5rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.no-touchevents .l-header__lang ul li a:hover{
	text-decoration: none;
	color: var(--color-red1);
}
.l-header__bar{
	width: var(--margin-24);
	height: var(--margin-24);
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: all .3s ease;
}
.no-touchevents .l-header__bar:hover{
	opacity: 0.7;
}
.l-header__barInner{
	width: var(--margin-18);
	height: var(--margin-12);
	position: relative;
}
.l-header__barInner span{
	display: inline-block;
	height: var(--margin-2);
	width: var(--margin-18);
	background: var(--color-red1);
	position: absolute;
	left: 0;
}
.l-header__barInner span:nth-of-type(1){
	top: 0;
}
.l-header__barInner span:nth-of-type(2){
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.l-header__barInner span:nth-of-type(3){
	bottom: 0;
}
@media only screen and (min-width:768px) and (max-width:991px){
	.l-header__wrapper{
		padding-left: 1.563vw;
		padding-right: 1.563vw;
	}
	.l-header__lang {
		margin: 0 2.344vw;
	}
}
@media only screen and (max-width:767px){
	.l-header{
		height: var(--margin-48);
	}
	.l-header__wrapper{
		padding: var(--margin-10) var(--margin-10);
	}
	.l-header__left a img{
		height: var(--margin-25);
	}
	.l-header__logo img{
		height: var(--margin-8);
	}
	.l-header__lang ul li a{
		font-size: var(--font-size-10);
	}
	.l-header__lang{
		margin: 0 var(--margin-12);
	}
	.l-header__lang ul li.active a::after{
		width: var(--margin-12);
		bottom: -0.3rem;
	}
	.l-header__lang ul li::before{
		height: var(--margin-10);
		margin: 0 var(--margin-8);
		top: 0.1em;
	}
}/* endMedia */

/*>> 3-3. #l-container
-------------------------------------------------- */
#l-container{

}

/*>>> 3-3-1. #l-main
-------------------------------------------------- */
#l-main{

}

/*>>> 3-3-2. #l-sub
-------------------------------------------------- */


/*>> 3-4. #l-footer
-------------------------------------------------- */
.l-footer{
	background: var(--color-white1);
	border-top: solid var(--margin-1) var(--color-red1);
	box-sizing: border-box;
}
.l-footer__wrapper{
	padding: var(--margin-85) var(--margin-30) var(--margin-25) var(--margin-85);
}
@media only screen and (min-width:768px) and (max-width:1199px){
	.l-footer__wrapper{
		padding-left: 1.563vw;
		padding-right: 1.563vw;
	}
}
@media only screen and (max-width:767px){
	.l-footer__wrapper{
		padding: var(--margin-35) var(--margin-20) var(--margin-10);
	}
}

/*>> 3-4. OverLayerConfig [z-index]
-------------------------------------------------- */
.nav-global-menu {
	z-index: 110;
}
#l-header{
	z-index: 100;
}
/*>> 3-5. Project
-------------------------------------------------- */
.section-title{
	display: flex;
	align-items: center;
	padding: var(--margin-5) var(--margin-20);
	position: relative;
	z-index: 1;
}
.section-title + .wrp-container.sm{
	margin-top: var(--margin-100);
}
@media only screen and (max-width:767px){
	.section-title{
		padding-right: 0;
		padding-left: var(--margin-45);
		justify-content: flex-end;
		overflow: hidden;
	}
	.section-title figure{
		margin-right: calc(-1 * var(--margin-8));
	}
	.section-title + .wrp-container.sm{
		margin-top: var(--margin-50);
	}
}

.lnk-image{
	text-align: center;
	margin-top: var(--margin-85);
}
.lnk-image a{
	display: inline-block;
	transition: all .3s ease;
}
.no-touchevents .lnk-image a:hover{
	opacity: 0.7;
}
.lnk-image + .txt-lead{
	margin-top: var(--margin-55);
}
.lnk-image + .txt-subtitle{
	margin-top: var(--margin-160);
}
.block-orange .lnk-image{
	margin-top: var(--margin-15);
}
.block-orange .lnk-image img{
	max-width: 32.3rem;
}
@media only screen and (max-width:767px){
	.lnk-image{
		margin-top: var(--margin-50);
	}
	.lnk-image + .txt-lead{
		margin-top: var(--margin-40);
	}
	.lnk-image + .txt-subtitle{
		margin-top: var(--margin-60);
	}
	.lnk-image a img{
		max-width: 57.674vw;
		margin: 0 auto;
	}
	.block-orange .lnk-image{
		margin-top: var(--margin-10);
	}
	.block-orange .lnk-image img{
		max-width: 50.442vw;
	}
}

.block-white{
	position: relative;
	margin-top: 13.542vw;
	padding: 3.646vw 0 0;
	overflow: hidden;
}
.block-white__bgLeft,
.block-white__bgRight{
	pointer-events: none;
	position: absolute;
	top: -16.375vw;
	font-size: 0;
	opacity: 0.1;
}
.block-white__bgLeft img,
.block-white__bgRight img{
	width: 12.813vw;
}
.block-white__bgLeft{
	left: -5.052vw;
}
.block-white__bgRight{
	right: -5.052vw;
}
@media only screen and (min-width:768px) and (max-width:1140px){
	.block-white__bgLeft,
	.block-white__bgRight{
		top: 59.625vw;
	}
}
@media only screen and (max-width:767px){
	.block-white{
		margin-top: var(--margin-50);
		padding: var(--margin-40) 0 0;
	}
	.block-white__bgLeft,
	.block-white__bgRight{
		display: none;
	}
}

.block-gray{
	margin-top: var(--margin-265);
	padding-bottom: var(--margin-75);
	position: relative;
}
.block-gray::before{
	content: "";
	display: block;
	width: 2.083vw;
	height: 100%;
	background: var(--color-gray1);
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
}
.block-gray .section-title{
	background: var(--color-gray1);
}
.block-gray .zone2025-02 img{
	max-width: 52.6rem;
}
.block-gray .zone2025-03 img{
	max-width: 43rem;
}
@media only screen and (max-width:767px){
	.block-gray{
		margin-top: var(--margin-40);
		padding-bottom: var(--margin-25);
	}
	.block-gray::before{
		width: var(--margin-10);
	}
	.block-gray .wrp-container{
		padding: 0 10.465vw;
	}
	.block-gray .zone2025-03 img{
		max-width: 40vw;
	}
}

.block-orange{
	position: relative;
	padding-bottom: var(--margin-60);
}
.block-orange::before{
	content: "";
	display: block;
	width: 2.083vw;
	height: 100%;
	background: var(--color-orange2);
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
}
.block-orange .section-title{
	background: var(--color-orange2);
}
.block-orange .zone2050-02{
	padding: 0 var(--margin-55);
}
.block-orange .zone2050-03{
	margin-top: var(--margin-50);
	padding: 0 var(--margin-55);
}
.block-orange .zone2050-03{
	margin-top: var(--margin-50);
	padding: 0 var(--margin-55);
}
.block-orange .zone2050-04{
	margin-top: var(--margin-60);
}
@media only screen and (max-width:767px){
	.block-orange{
		padding-bottom: var(--margin-30);
	}
	.block-orange::before{
		width: var(--margin-10);
	}
	.block-orange .zone2050-03{
		margin-top: var(--margin-15);
	}
	.block-orange .zone2050-04{
		padding: 0 var(--margin-20);
		margin-top: var(--margin-20);
	}
	.block-orange .lnk-image{
		padding: 0 var(--margin-50);
	}
	.block-orange .wrp-container{
		padding: 0 10.465vw;
	}
	.block-orange .zone2050-02{
		padding: 0 var(--margin-35);
	}
	.block-orange .zone2050-03{
		padding: 0 var(--margin-35);
	}
	.block-orange .section-title figure {
		margin-right: calc(-1* var(--margin-12));
	}
}
@media only screen and (max-width:375px){
	.block-orange .lnk-image{
		padding: 0 var(--margin-20);
	}
}

.block-blue{
	position: relative;
}
.block-blue::before{
	content: "";
	display: block;
	width: 2.083vw;
	height: 100%;
	background: var(--color-blue2);
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
}
.block-blue .section-title{
	background: var(--color-blue2);
}
.block-blue .zone21xx-02{
	padding: 0 var(--margin-45);
}
@media only screen and (max-width:767px){
	.block-blue::before{
		width: var(--margin-10);
	}
	.block-blue .wrp-container{
		padding: 0 10.465vw;
	}
	.block-blue .section-title figure {
		margin-right: calc(-1* var(--margin-15));
	}
	.block-blue .zone21xx-02{
		padding: 0 var(--margin-30);
	}
}

.block-map{
	margin-top: var(--margin-60);
	padding: var(--margin-60) 0 var(--margin-215);
}
.block-map .map01{
	padding: 0 var(--margin-75);
}
.block-map .lnk-image{
	width: 90%;
}
@media only screen and (max-width:767px){
	.block-map{
		margin-top: var(--margin-40);
		padding: var(--margin-40) 0 var(--margin-75);
	}
	.block-map .map01{
		padding: 0 var(--margin-25);
	}
	.block-map .wrp-container{
		padding: 0 10.465vw;
	}
}

/* -----------------------------------------------
*> [4. Print Style]
-------------------------------------------------- */
@media print{
*,
*::before,
*::after{
	background: var(--color-white1) !important;
	color: var(--color-black1) !important;
	box-shadow: none !important;
	text-shadow: none !important;
}
a,
a:visited{
	text-decoration: underline;
}
a[href]::after{
	content: " (" attr(href) ")";
}
abbr[title]::after{
	content: " (" attr(title) ")";
}
a[href^="#"]::after,
a[href^="javascript:"]::after{
	content: "";
}
pre{
	white-space: pre-wrap !important;
}
pre,
blockquote{
	border: 0.1rem solid var(--color-gray1);
	page-break-inside: avoid;
}

thead{
	display: table-header-group;
}
tr,
img{
	page-break-inside: avoid;
}
p,
h2,
h3{
	orphans: 3;
	widows: 3;
}
h2,
h3{
	page-break-after: avoid;
}

}/* endMedia */