@charset "utf-8";

@font-face {
	font-family: "SukhumvitSet";
	font-weight: 700;
	src: url("../font/SukhumvitSet-Bold.woff2") format("woff2"),
		 url("../font/SukhumvitSet-Bold.woff") format("woff"),
		 url("../font/SukhumvitSet-Bold.ttf") format("truetype");
	font-display: fallback;
}

/* 変数 */
:root {
	/* フォント */
	--font_color:#1a1a1a;
	--link_blue: #2271b1;/* 一般的なデフォルトのリンクテキストの色 */
	--font_gray: #333;
	--font_primary:"noto-sans-cjk-jp", '游ゴシック体','YuGothic',sans-serif;
	--mincho:'游明朝 Medium','Yu Mincho Medium','游明朝','YuMincho',serif;
	--en:Helvetica,"Helvetica Neue",Arial,"noto-sans-cjk-jp","游ゴシック体","YuGothic",sans-serif;
	--sukhumvit-set:"SukhumvitSet",sans-serif;

	/* 色 */
	--navy:#282d46;
	--red:#c50e23;
	--orange: #f8b62d;
	--gray:#bfc0c0;

	/* ボーダー汎用指定 */
	--border_primary: 1px solid var(--gray);

	/* シャドウ */
	--shadow_primary: 0 0 1rem 0 rgba(0, 0, 0, 0.2);
	--btn_shadow: 0 .5rem .9rem 0 rgba(0, 0, 0, 0.2);
	--hover_btn_shadow: 0 0 0 0 rgba(0, 0, 0, 0.2);
	--hover_btn_pos: translateY(.3rem);

	/* vwの値をスクロールバーを含めて考慮 */
	--js_windowWidth:100vw;/* JSで書き換え。（ウインドウ幅-スクロールバー）px */
	--js_vw:1vw;/* JSで書き換え。(（ウインドウ幅-スクロールバー）/100)pxで、vwのように使用する。 */
}

@media screen and (max-width:768px){
	:root {--shadow_primary: 0 0 .75rem 0 rgba(0, 0, 0, 0.2);
		--btn_shadow: 0 .3rem .6rem 0 rgba(0, 0, 0, 0.2);
		--hover_btn_pos: translateY(.2rem);
	}
}

/* =====
	base
======================================================== */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{
	margin: 0;padding: 0;border: 0;font: inherit;font-size: 100%;vertical-align: baseline;
}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section{display:block;}
html{line-height:1;}
ul,ol,summary{list-style-type: none;}
summary::-webkit-details-marker{
	/* Safari-デフォルトの三角形を削除*/
	display: none;
}
table{border-collapse:collapse;border-spacing:0;}
caption,th,td{text-align:left;font-weight:normal;vertical-align:middle;}
q,blockquote{quotes:none;}
q:before,q:after,blockquote:before,blockquote:after{content:"";content:none;}
a img{border:none;}
img{vertical-align: bottom;border: none;max-width: 100%;height: auto;}
img[src*=".svg"]{width:100%;}
picture{display:block;width:100%;height:100%;}
video{max-width:100%;}
a{cursor:pointer;color:inherit;word-break:break-all;text-decoration:none;transition:.4s;}
button{
	display: block;
	color: var(--font_color);
	padding: 0;
	background-color: transparent;
	transition: .4s;
}
*,:before,:after{-webkit-box-sizing:border-box;box-sizing:border-box;}
input,button,select,textarea{
	-o-appearance: none;/*Opera対応*/
	-webkit-appearance: none;/*Google Chrome/Safari対応*/
	-moz-appearance: none;/*Firefox対応*/
	appearance: none;
	font: inherit;
	border: none;
	border-radius: 0;
	outline: none;
}
input::-webkit-calendar-picker-indicator{/* datalistタグの矢印 （たぶん消えない） */
	display: none; /* iOS対策 */
    appearance: none; /* SafariやChrome用 */
    -webkit-appearance: none; /* Safari用 */
    opacity: 0; /* 念のため */
    pointer-events: none; /* 矢印がクリックできないようにする */
}
input::-webkit-list-button{/* datalistタグの矢印iOS（これで消える） */
	content: none;
}
textarea{resize:none;}
input[type='checkbox'],input[type='radio']{display:none;}
input[type='submit'],input[type='button'],label,button,select,summary{cursor:pointer;}
select::-ms-expand{display:none;}
input::placeholder{color:#777;}

/* =====
	フォントサイズ制御
======================================================== */
html{font-size:62.5%;}/* 1.6remで16px */
/* 以降 (XXpx/16)×0.625 */
@media screen and (max-width:1200px){
	html{
		font-size:58.59%;/* 1.6remで15px */
	}
}
@media screen and (max-width:1024px){
	html {
		font-size:54.69%;/* 1.6remで14px */
	}
}
/* 以降、375pxで14pxにしたいので、bodyは1.4remで指定 */
/* font-size100%時、1.4rem=22.4pxなので、XXpx/22.4=目的の％ */
@media screen and (max-width:768px){
	html{
		font-size:83.125%;/* 375px時の1.33倍 */
	}
}
@media screen and (max-width:540px){
	html{
		font-size:calc(2.667*var(--js_vw));/* 375pxで10px 1.4remで14px 2.667vwの代わり */
	}
}

/* =====
	body
======================================================== */
body{
	font-family:var(--font_primary);
	color:var(--font_color);
	font-size:1.6rem;
	font-weight:400;
	letter-spacing:0;
	line-height:1.75;
	word-wrap:normal;
}
@media screen and (max-width:768px){
	body{font-size:1.4rem;}/* 375pxのとき14px */
}

/* =====
	字体
======================================================== */
.mincho{font-family:var(--mincho);font-weight:500;}
.en{font-family:var(--en);}

/* =====
	文字サイズ（PC/SP 8px〜40px）
======================================================== */
.fz8{font-size:0.8rem}.fz9{font-size:0.9rem}.fz10{font-size:1rem}.fz11{font-size:1.1rem}.fz12{font-size:1.2rem}.fz13{font-size:1.3rem}.fz14{font-size:1.4rem}.fz15{font-size:1.5rem}.fz16{font-size:1.6rem}.fz17{font-size:1.7rem}.fz18{font-size:1.8rem}.fz19{font-size:1.9rem}.fz20{font-size:2rem}.fz21{font-size:2.1rem}.fz22{font-size:2.2rem}.fz23{font-size:2.3rem}.fz24{font-size:2.4rem}.fz25{font-size:2.5rem}.fz26{font-size:2.6rem}.fz27{font-size:2.7rem}.fz28{font-size:2.8rem}.fz29{font-size:2.9rem}.fz30{font-size:3rem}.fz31{font-size:3.1rem}.fz32{font-size:3.2rem}.fz33{font-size:3.3rem}.fz34{font-size:3.4rem}.fz35{font-size:3.5rem}.fz36{font-size:3.6rem}.fz37{font-size:3.7rem}.fz38{font-size:3.8rem}.fz39{font-size:3.9rem}.fz40{font-size:4rem}@media screen and (max-width:768px){.fz8sp{font-size:0.8rem}.fz9sp{font-size:0.9rem}.fz10sp{font-size:1rem}.fz11sp{font-size:1.1rem}.fz12sp{font-size:1.2rem}.fz13sp{font-size:1.3rem}.fz14sp{font-size:1.4rem}.fz15sp{font-size:1.5rem}.fz16sp{font-size:1.6rem}.fz17sp{font-size:1.7rem}.fz18sp{font-size:1.8rem}.fz19sp{font-size:1.9rem}.fz20sp{font-size:2rem}.fz21sp{font-size:2.1rem}.fz22sp{font-size:2.2rem}.fz23sp{font-size:2.3rem}.fz24sp{font-size:2.4rem}.fz25sp{font-size:2.5rem}.fz26sp{font-size:2.6rem}.fz27sp{font-size:2.7rem}.fz28sp{font-size:2.8rem}.fz29sp{font-size:2.9rem}.fz30sp{font-size:3rem}.fz31sp{font-size:3.1rem}.fz32sp{font-size:3.2rem}.fz33sp{font-size:3.3rem}.fz34sp{font-size:3.4rem}.fz35sp{font-size:3.5rem}.fz36sp{font-size:3.6rem}.fz37sp{font-size:3.7rem}.fz38sp{font-size:3.8rem}.fz39sp{font-size:3.9rem}.fz40sp{font-size:4rem}}

/* =====
	文字太さ 装飾
======================================================== */
.fw100{font-weight:100;}.fw200{font-weight:200;}.fw300{font-weight:300;}.fw400{font-weight:400;}.fw500{font-weight:500;}.fw600{font-weight:600;}.fw700{font-weight:700;}.fw800{font-weight:800;}.fw900{font-weight:900;}

.underline{text-decoration:underline;}
a.underline:hover{text-decoration:none;}

.text--white{color:#fff;}
.text--gray{color:var(--font_gray);}
.text--red{color:var(--red);}

.marker{background:linear-gradient(transparent 75%,#fff100 75%);}

@media screen and (min-width: 769px) {
	a[href*="tel:"] {
		pointer-events: none;
	}
}

/* =====
	並び
======================================================== */
.tal{text-align:left;}.tac{text-align:center;}.tar{text-align:right;}.taj{text-align:justify;}
@media screen and (max-width: 768px){.tal-sp{text-align:left;}.tac-sp{text-align:center;}.tar-sp{text-align:right;}.taj-sp{text-align:justify;}}

/* =====
	リストなど　擬似要素装飾
======================================================== */
/* 「※」 */
.attention-mark{
	position:relative;
	padding-left:1.1em;
}
.attention-mark::before{
	content:"\0203B";
	position:absolute;
	left: 0;
}
span.attention-mark{
	display: inline-block;
}

/* 「・」 */
.disc > li,.disc-mark{
	line-height:1.5;
	padding-left:1.33em;
	position:relative;
}
.disc > li:not(:nth-last-of-type(1)){
	margin-bottom:.33em;
}
.disc > li::before, .disc-mark::before{
	content:"・";
	position:absolute;
	left:.25em;
}
span.disc-mark{
	display: inline-block;
}

/* 「⚫︎」 */
.circle > li,.circle-mark{
	line-height:1.5;
	padding-left:1.33em;
	position:relative;
}
.circle > li:not(:nth-last-of-type(1)){
	margin-bottom: .33em;
}
.circle > li::before,.circle-mark::before{
	content:"";
	display:block;
	width:.625em;
	height:.625em;
	background-color:var(--main_color);
	border-radius:50%;
	position:absolute;
	left:0;
	top:.3em;
}

/* 「01.」 */
.num-list{
	counter-reset:num-list;
}
.num-list > li{
	counter-increment:num-list;
	line-height:1.5;
	padding-left:1.5em;
	position:relative;
}
.num-list > li:not(:nth-last-of-type(1)){
	margin-bottom:.33em;
}
.num-list li::before{
	content:counter(num-list, decimal-leading-zero)".";
	position:absolute;
	left: 0;
}

/* =====
	インナー
======================================================== */
.inner{margin-inline:auto;}
.inner.primary{width:92%;max-width:120rem;}
.inner.secondary{width:94.6%;max-width:148rem;}

@media screen and (max-width:768px){
	.inner.secondary{width:94%;}
	.inner.sp670,
	.inner.primary.sp670,
	.inner.secondary.sp670{
		width: 89.4%;
	}
	.inner.sp690,
	.inner.primary.sp690,
	.inner.secondary.sp690{
		width: 92%;
	}
}/* 705/750 */

/* =====
	余白（padding上下、margin上下　8~160px（8の倍数と10の倍数あり））
======================================================== */
.pt8{padding-top:0.8rem}.pt10{padding-top:1rem}.pt16{padding-top:1.6rem}.pt20{padding-top:2rem}.pt24{padding-top:2.4rem}.pt30{padding-top:3rem}.pt32{padding-top:3.2rem}.pt40{padding-top:4rem}.pt48{padding-top:4.8rem}.pt50{padding-top:5rem}.pt56{padding-top:5.6rem}.pt60{padding-top:6rem}.pt64{padding-top:6.4rem}.pt70{padding-top:7rem}.pt72{padding-top:7.2rem}.pt80{padding-top:8rem}.pt88{padding-top:8.8rem}.pt90{padding-top:9rem}.pt96{padding-top:9.6rem}.pt100{padding-top:10rem}.pt104{padding-top:10.4rem}.pt110{padding-top:11rem}.pt112{padding-top:11.2rem}.pt120{padding-top:12rem}.pt128{padding-top:12.8rem}.pt130{padding-top:13rem}.pt136{padding-top:13.6rem}.pt140{padding-top:14rem}.pt144{padding-top:14.4rem}.pt150{padding-top:15rem}.pt152{padding-top:15.2rem}.pt160{padding-top:16rem}
.pb8{padding-bottom:0.8rem}.pb10{padding-bottom:1rem}.pb16{padding-bottom:1.6rem}.pb20{padding-bottom:2rem}.pb24{padding-bottom:2.4rem}.pb30{padding-bottom:3rem}.pb32{padding-bottom:3.2rem}.pb40{padding-bottom:4rem}.pb48{padding-bottom:4.8rem}.pb50{padding-bottom:5rem}.pb56{padding-bottom:5.6rem}.pb60{padding-bottom:6rem}.pb64{padding-bottom:6.4rem}.pb70{padding-bottom:7rem}.pb72{padding-bottom:7.2rem}.pb80{padding-bottom:8rem}.pb88{padding-bottom:8.8rem}.pb90{padding-bottom:9rem}.pb96{padding-bottom:9.6rem}.pb100{padding-bottom:10rem}.pb104{padding-bottom:10.4rem}.pb110{padding-bottom:11rem}.pb112{padding-bottom:11.2rem}.pb120{padding-bottom:12rem}.pb128{padding-bottom:12.8rem}.pb130{padding-bottom:13rem}.pb136{padding-bottom:13.6rem}.pb140{padding-bottom:14rem}.pb144{padding-bottom:14.4rem}.pb150{padding-bottom:15rem}.pb152{padding-bottom:15.2rem}.pb160{padding-bottom:16rem}
.mt8{margin-top:0.8rem}.mt10{margin-top:1rem}.mt16{margin-top:1.6rem}.mt20{margin-top:2rem}.mt24{margin-top:2.4rem}.mt30{margin-top:3rem}.mt32{margin-top:3.2rem}.mt40{margin-top:4rem}.mt48{margin-top:4.8rem}.mt50{margin-top:5rem}.mt56{margin-top:5.6rem}.mt60{margin-top:6rem}.mt64{margin-top:6.4rem}.mt70{margin-top:7rem}.mt72{margin-top:7.2rem}.mt80{margin-top:8rem}.mt88{margin-top:8.8rem}.mt90{margin-top:9rem}.mt96{margin-top:9.6rem}.mt100{margin-top:10rem}.mt104{margin-top:10.4rem}.mt110{margin-top:11rem}.mt112{margin-top:11.2rem}.mt120{margin-top:12rem}.mt128{margin-top:12.8rem}.mt130{margin-top:13rem}.mt136{margin-top:13.6rem}.mt140{margin-top:14rem}.mt144{margin-top:14.4rem}.mt150{margin-top:15rem}.mt152{margin-top:15.2rem}.mt160{margin-top:16rem}
.mb8{margin-bottom:0.8rem}.mb10{margin-bottom:1rem}.mb16{margin-bottom:1.6rem}.mb20{margin-bottom:2rem}.mb24{margin-bottom:2.4rem}.mb30{margin-bottom:3rem}.mb32{margin-bottom:3.2rem}.mb40{margin-bottom:4rem}.mb48{margin-bottom:4.8rem}.mb50{margin-bottom:5rem}.mb56{margin-bottom:5.6rem}.mb60{margin-bottom:6rem}.mb64{margin-bottom:6.4rem}.mb70{margin-bottom:7rem}.mb72{margin-bottom:7.2rem}.mb80{margin-bottom:8rem}.mb88{margin-bottom:8.8rem}.mb90{margin-bottom:9rem}.mb96{margin-bottom:9.6rem}.mb100{margin-bottom:10rem}.mb104{margin-bottom:10.4rem}.mb110{margin-bottom:11rem}.mb112{margin-bottom:11.2rem}.mb120{margin-bottom:12rem}.mb128{margin-bottom:12.8rem}.mb130{margin-bottom:13rem}.mb136{margin-bottom:13.6rem}.mb140{margin-bottom:14rem}.mb144{margin-bottom:14.4rem}.mb150{margin-bottom:15rem}.mb152{margin-bottom:15.2rem}.mb160{margin-bottom:16rem}@media screen and (max-width:768px){
	.pt8sp{padding-top:0.8rem}.pt10sp{padding-top:1rem}.pt16sp{padding-top:1.6rem}.pt20sp{padding-top:2rem}.pt24sp{padding-top:2.4rem}.pt30sp{padding-top:3rem}.pt32sp{padding-top:3.2rem}.pt40sp{padding-top:4rem}.pt48sp{padding-top:4.8rem}.pt50sp{padding-top:5rem}.pt56sp{padding-top:5.6rem}.pt60sp{padding-top:6rem}.pt64sp{padding-top:6.4rem}.pt70sp{padding-top:7rem}.pt72sp{padding-top:7.2rem}.pt80sp{padding-top:8rem}.pt88sp{padding-top:8.8rem}.pt90sp{padding-top:9rem}.pt96sp{padding-top:9.6rem}.pt100sp{padding-top:10rem}.pt104sp{padding-top:10.4rem}.pt110sp{padding-top:11rem}.pt112sp{padding-top:11.2rem}.pt120sp{padding-top:12rem}.pt128sp{padding-top:12.8rem}.pt130sp{padding-top:13rem}.pt136sp{padding-top:13.6rem}.pt140sp{padding-top:14rem}.pt144sp{padding-top:14.4rem}.pt150sp{padding-top:15rem}.pt152sp{padding-top:15.2rem}.pt160sp{padding-top:16rem}
	.pb8sp{padding-bottom:0.8rem}.pb10sp{padding-bottom:1rem}.pb16sp{padding-bottom:1.6rem}.pb20sp{padding-bottom:2rem}.pb24sp{padding-bottom:2.4rem}.pb30sp{padding-bottom:3rem}.pb32sp{padding-bottom:3.2rem}.pb40sp{padding-bottom:4rem}.pb48sp{padding-bottom:4.8rem}.pb50sp{padding-bottom:5rem}.pb56sp{padding-bottom:5.6rem}.pb60sp{padding-bottom:6rem}.pb64sp{padding-bottom:6.4rem}.pb70sp{padding-bottom:7rem}.pb72sp{padding-bottom:7.2rem}.pb80sp{padding-bottom:8rem}.pb88sp{padding-bottom:8.8rem}.pb90sp{padding-bottom:9rem}.pb96sp{padding-bottom:9.6rem}.pb100sp{padding-bottom:10rem}.pb104sp{padding-bottom:10.4rem}.pb110sp{padding-bottom:11rem}.pb112sp{padding-bottom:11.2rem}.pb120sp{padding-bottom:12rem}.pb128sp{padding-bottom:12.8rem}.pb130sp{padding-bottom:13rem}.pb136sp{padding-bottom:13.6rem}.pb140sp{padding-bottom:14rem}.pb144sp{padding-bottom:14.4rem}.pb150sp{padding-bottom:15rem}.pb152sp{padding-bottom:15.2rem}.pb160sp{padding-bottom:16rem}
	.mt8sp{margin-top:0.8rem}.mt10sp{margin-top:1rem}.mt16sp{margin-top:1.6rem}.mt20sp{margin-top:2rem}.mt24sp{margin-top:2.4rem}.mt30sp{margin-top:3rem}.mt32sp{margin-top:3.2rem}.mt40sp{margin-top:4rem}.mt48sp{margin-top:4.8rem}.mt50sp{margin-top:5rem}.mt56sp{margin-top:5.6rem}.mt60sp{margin-top:6rem}.mt64sp{margin-top:6.4rem}.mt70sp{margin-top:7rem}.mt72sp{margin-top:7.2rem}.mt80sp{margin-top:8rem}.mt88sp{margin-top:8.8rem}.mt90sp{margin-top:9rem}.mt96sp{margin-top:9.6rem}.mt100sp{margin-top:10rem}.mt104sp{margin-top:10.4rem}.mt110sp{margin-top:11rem}.mt112sp{margin-top:11.2rem}.mt120sp{margin-top:12rem}.mt128sp{margin-top:12.8rem}.mt130sp{margin-top:13rem}.mt136sp{margin-top:13.6rem}.mt140sp{margin-top:14rem}.mt144sp{margin-top:14.4rem}.mt150sp{margin-top:15rem}.mt152sp{margin-top:15.2rem}.mt160sp{margin-top:16rem}
	.mb8sp{margin-bottom:0.8rem}.mb10sp{margin-bottom:1rem}.mb16sp{margin-bottom:1.6rem}.mb20sp{margin-bottom:2rem}.mb24sp{margin-bottom:2.4rem}.mb30sp{margin-bottom:3rem}.mb32sp{margin-bottom:3.2rem}.mb40sp{margin-bottom:4rem}.mb48sp{margin-bottom:4.8rem}.mb50sp{margin-bottom:5rem}.mb56sp{margin-bottom:5.6rem}.mb60sp{margin-bottom:6rem}.mb64sp{margin-bottom:6.4rem}.mb70sp{margin-bottom:7rem}.mb72sp{margin-bottom:7.2rem}.mb80sp{margin-bottom:8rem}.mb88sp{margin-bottom:8.8rem}.mb90sp{margin-bottom:9rem}.mb96sp{margin-bottom:9.6rem}.mb100sp{margin-bottom:10rem}.mb104sp{margin-bottom:10.4rem}.mb110sp{margin-bottom:11rem}.mb112sp{margin-bottom:11.2rem}.mb120sp{margin-bottom:12rem}.mb128sp{margin-bottom:12.8rem}.mb130sp{margin-bottom:13rem}.mb136sp{margin-bottom:13.6rem}.mb140sp{margin-bottom:14rem}.mb144sp{margin-bottom:14.4rem}.mb150sp{margin-bottom:15rem}.mb152sp{margin-bottom:15.2rem}.mb160sp{margin-bottom:16rem}
}

/* =====
	文字余白（padding上下、margin上下　0.33em〜5em）
======================================================== */
.pt025em{padding-top:.25em}.pt033em{padding-top:.33em}.pt05em{padding-top:.5em}.pt066em{padding-top:.66em}.pt075em{padding-top:.75em}.pt1em{padding-top:1em}.pt125em{padding-top:1.25em}.pt133em{padding-top:1.33em}.pt15em{padding-top:1.5em}.pt166em{padding-top:1.66em}.pt175em{padding-top:1.75em}.pt2em{padding-top:2em}.pt225em{padding-top:2.25em}.pt233em{padding-top:2.33em}.pt25em{padding-top:2.5em}.pt266em{padding-top:2.66em}.pt275em{padding-top:2.75em}.pt3em{padding-top:3em}.pt325em{padding-top:3.25em}.pt333em{padding-top:3.33em}.pt35em{padding-top:3.5em}.pt366em{padding-top:3.66em}.pt375em{padding-top:3.75em}.pt4em{padding-top:4em}.pt425em{padding-top:4.25em}.pt433em{padding-top:4.33em}.pt45em{padding-top:4.5em}.pt466em{padding-top:4.66em}.pt475em{padding-top:4.75em}.pt5em{padding-top:5em}
.pb025em{padding-bottom:.25em}.pb033em{padding-bottom:.33em}.pb05em{padding-bottom:.5em}.pb066em{padding-bottom:.66em}.pb075em{padding-bottom:.75em}.pb1em{padding-bottom:1em}.pb125em{padding-bottom:1.25em}.pb133em{padding-bottom:1.33em}.pb15em{padding-bottom:1.5em}.pb166em{padding-bottom:1.66em}.pb175em{padding-bottom:1.75em}.pb2em{padding-bottom:2em}.pb225em{padding-bottom:2.25em}.pb233em{padding-bottom:2.33em}.pb25em{padding-bottom:2.5em}.pb266em{padding-bottom:2.66em}.pb275em{padding-bottom:2.75em}.pb3em{padding-bottom:3em}.pb325em{padding-bottom:3.25em}.pb333em{padding-bottom:3.33em}.pb35em{padding-bottom:3.5em}.pb366em{padding-bottom:3.66em}.pb375em{padding-bottom:3.75em}.pb4em{padding-bottom:4em}.pb425em{padding-bottom:4.25em}.pb433em{padding-bottom:4.33em}.pb45em{padding-bottom:4.5em}.pb466em{padding-bottom:4.66em}.pb475em{padding-bottom:4.75em}.pb5em{padding-bottom:5em}
.mt025em{margin-top:.25em}.mt033em{margin-top:.33em}.mt05em{margin-top:.5em}.mt066em{margin-top:.66em}.mt075em{margin-top:.75em}.mt1em{margin-top:1em}.mt125em{margin-top:1.25em}.mt133em{margin-top:1.33em}.mt15em{margin-top:1.5em}.mt166em{margin-top:1.66em}.mt175em{margin-top:1.75em}.mt2em{margin-top:2em}.mt225em{margin-top:2.25em}.mt233em{margin-top:2.33em}.mt25em{margin-top:2.5em}.mt266em{margin-top:2.66em}.mt275em{margin-top:2.75em}.mt3em{margin-top:3em}.mt325em{margin-top:3.25em}.mt333em{margin-top:3.33em}.mt35em{margin-top:3.5em}.mt366em{margin-top:3.66em}.mt375em{margin-top:3.75em}.mt4em{margin-top:4em}.mt425em{margin-top:4.25em}.mt433em{margin-top:4.33em}.mt45em{margin-top:4.5em}.mt466em{margin-top:4.66em}.mt475em{margin-top:4.75em}.mt5em{margin-top:5em}
.mb025em{margin-bottom:.25em}.mb033em{margin-bottom:.33em}.mb05em{margin-bottom:.5em}.mb066em{margin-bottom:.66em}.mb075em{margin-bottom:.75em}.mb1em{margin-bottom:1em}.mb125em{margin-bottom:1.25em}.mb133em{margin-bottom:1.33em}.mb15em{margin-bottom:1.5em}.mb166em{margin-bottom:1.66em}.mb175em{margin-bottom:1.75em}.mb2em{margin-bottom:2em}.mb225em{margin-bottom:2.25em}.mb233em{margin-bottom:2.33em}.mb25em{margin-bottom:2.5em}.mb266em{margin-bottom:2.66em}.mb275em{margin-bottom:2.75em}.mb3em{margin-bottom:3em}.mb325em{margin-bottom:3.25em}.mb333em{margin-bottom:3.33em}.mb35em{margin-bottom:3.5em}.mb366em{margin-bottom:3.66em}.mb375em{margin-bottom:3.75em}.mb4em{margin-bottom:4em}.mb425em{margin-bottom:4.25em}.mb433em{margin-bottom:4.33em}.mb45em{margin-bottom:4.5em}.mb466em{margin-bottom:4.66em}.mb475em{margin-bottom:4.75em}.mb5em{margin-bottom:5em}
@media screen and (max-width:768px){
	.pt025em_sp{padding-top:.25em}.pt033em_sp{padding-top:.33em}.pt05em_sp{padding-top:.5em}.pt066em_sp{padding-top:.66em}.pt075em_sp{padding-top:.75em}.pt1em_sp{padding-top:1em}.pt125em_sp{padding-top:1.25em}.pt133em_sp{padding-top:1.33em}.pt15em_sp{padding-top:1.5em}.pt166em_sp{padding-top:1.66em}.pt175em_sp{padding-top:1.75em}.pt2em_sp{padding-top:2em}.pt225em_sp{padding-top:2.25em}.pt233em_sp{padding-top:2.33em}.pt25em_sp{padding-top:2.5em}.pt266em_sp{padding-top:2.66em}.pt275em_sp{padding-top:2.75em}.pt3em_sp{padding-top:3em}.pt325em_sp{padding-top:3.25em}.pt333em_sp{padding-top:3.33em}.pt35em_sp{padding-top:3.5em}.pt366em_sp{padding-top:3.66em}.pt375em_sp{padding-top:3.75em}.pt4em_sp{padding-top:4em}.pt425em_sp{padding-top:4.25em}.pt433em_sp{padding-top:4.33em}.pt45em_sp{padding-top:4.5em}.pt466em_sp{padding-top:4.66em}.pt475em_sp{padding-top:4.75em}.pt5em_sp{padding-top:5em}
	.pb025em_sp{padding-bottom:.25em}.pb033em_sp{padding-bottom:.33em}.pb05em_sp{padding-bottom:.5em}.pb066em_sp{padding-bottom:.66em}.pb075em_sp{padding-bottom:.75em}.pb1em_sp{padding-bottom:1em}.pb125em_sp{padding-bottom:1.25em}.pb133em_sp{padding-bottom:1.33em}.pb15em_sp{padding-bottom:1.5em}.pb166em_sp{padding-bottom:1.66em}.pb175em_sp{padding-bottom:1.75em}.pb2em_sp{padding-bottom:2em}.pb225em_sp{padding-bottom:2.25em}.pb233em_sp{padding-bottom:2.33em}.pb25em_sp{padding-bottom:2.5em}.pb266em_sp{padding-bottom:2.66em}.pb275em_sp{padding-bottom:2.75em}.pb3em_sp{padding-bottom:3em}.pb325em_sp{padding-bottom:3.25em}.pb333em_sp{padding-bottom:3.33em}.pb35em_sp{padding-bottom:3.5em}.pb366em_sp{padding-bottom:3.66em}.pb375em_sp{padding-bottom:3.75em}.pb4em_sp{padding-bottom:4em}.pb425em_sp{padding-bottom:4.25em}.pb433em_sp{padding-bottom:4.33em}.pb45em_sp{padding-bottom:4.5em}.pb466em_sp{padding-bottom:4.66em}.pb475em_sp{padding-bottom:4.75em}.pb5em_sp{padding-bottom:5em}
	.mt025em_sp{margin-top:.25em}.mt033em_sp{margin-top:.33em}.mt05em_sp{margin-top:.5em}.mt066em_sp{margin-top:.66em}.mt075em_sp{margin-top:.75em}.mt1em_sp{margin-top:1em}.mt125em_sp{margin-top:1.25em}.mt133em_sp{margin-top:1.33em}.mt15em_sp{margin-top:1.5em}.mt166em_sp{margin-top:1.66em}.mt175em_sp{margin-top:1.75em}.mt2em_sp{margin-top:2em}.mt225em_sp{margin-top:2.25em}.mt233em_sp{margin-top:2.33em}.mt25em_sp{margin-top:2.5em}.mt266em_sp{margin-top:2.66em}.mt275em_sp{margin-top:2.75em}.mt3em_sp{margin-top:3em}.mt325em_sp{margin-top:3.25em}.mt333em_sp{margin-top:3.33em}.mt35em_sp{margin-top:3.5em}.mt366em_sp{margin-top:3.66em}.mt375em_sp{margin-top:3.75em}.mt4em_sp{margin-top:4em}.mt425em_sp{margin-top:4.25em}.mt433em_sp{margin-top:4.33em}.mt45em_sp{margin-top:4.5em}.mt466em_sp{margin-top:4.66em}.mt475em_sp{margin-top:4.75em}.mt5em_sp{margin-top:5em}
	.mb025em_sp{margin-bottom:.25em}.mb033em_sp{margin-bottom:.33em}.mb05em_sp{margin-bottom:.5em}.mb066em_sp{margin-bottom:.66em}.mb075em_sp{margin-bottom:.75em}.mb1em_sp{margin-bottom:1em}.mb125em_sp{margin-bottom:1.25em}.mb133em_sp{margin-bottom:1.33em}.mb15em_sp{margin-bottom:1.5em}.mb166em_sp{margin-bottom:1.66em}.mb175em_sp{margin-bottom:1.75em}.mb2em_sp{margin-bottom:2em}.mb225em_sp{margin-bottom:2.25em}.mb233em_sp{margin-bottom:2.33em}.mb25em_sp{margin-bottom:2.5em}.mb266em_sp{margin-bottom:2.66em}.mb275em_sp{margin-bottom:2.75em}.mb3em_sp{margin-bottom:3em}.mb325em_sp{margin-bottom:3.25em}.mb333em_sp{margin-bottom:3.33em}.mb35em_sp{margin-bottom:3.5em}.mb366em_sp{margin-bottom:3.66em}.mb375em_sp{margin-bottom:3.75em}.mb4em_sp{margin-bottom:4em}.mb425em_sp{margin-bottom:4.25em}.mb433em_sp{margin-bottom:4.33em}.mb45em_sp{margin-bottom:4.5em}.mb466em_sp{margin-bottom:4.66em}.mb475em_sp{margin-bottom:4.75em}.mb5em_sp{margin-bottom:5em}
}

/* =====
	フレックス
======================================================== */
.flex{display:flex;flex-wrap:wrap;}
.flex_pc{display:flex;flex-wrap:wrap;}/* 768以下block */
@media screen and (max-width:768px){.flex_pc{display:block;}}

.flex-nowrap{flex-wrap:nowrap;}

.fd-rr{flex-direction:row-reverse;}
.fd-c{flex-direction:column;}
.fd-cr{flex-direction:column-reverse;}

.ai-fs{align-items:flex-start;}
.ai-fe{align-items:flex-end;}
.ai-c{align-items:center;}

.jc-fs{justify-content:flex-start;}
.jc-fe{justify-content:flex-end;}
.jc-c{justify-content:center;}
.jc-sb{justify-content:space-between;}
.jc-sa{justify-content:space-around;}

/* =====
	アニメーション
======================================================== */
/* === フェードイン === */
.fade, .fade-down{
	opacity: 0;
}

.animation.fade{animation:fade-up .8s ease forwards;}/* 下から上へ */
.animation.fade-down{animation:fade-down .8s ease forwards;}/* 上から下へ */
@keyframes fade-up{
	from {
		opacity: 0;
		transform: translateY(2em);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes fade-down{
	from {
		opacity: 0;
		transform: translateY(-2em);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* =====
	アニメーション時間差
======================================================== */
.animation.delay01{animation-delay:.1s!important;}
.animation.delay02{animation-delay:.2s!important;}
.animation.delay03{animation-delay:.3s!important;}
.animation.delay04{animation-delay:.4s!important;}
.animation.delay05{animation-delay:.5s!important;}
.animation.delay06{animation-delay:.6s!important;}
.animation.delay07{animation-delay:.7s!important;}
.animation.delay08{animation-delay:.8s!important;}
.animation.delay09{animation-delay:.9s!important;}
.animation.delay10{animation-delay:1s!important;}
.animation.delay11{animation-delay:1.1s!important;}
.animation.delay12{animation-delay:1.2s!important;}
.animation.delay13{animation-delay:1.3s!important;}
.animation.delay14{animation-delay:1.4s!important;}
.animation.delay15{animation-delay:1.5s!important;}
.animation.delay16{animation-delay:1.6s!important;}
.animation.delay17{animation-delay:1.7s!important;}
.animation.delay18{animation-delay:1.8s!important;}
.animation.delay19{animation-delay:1.9s!important;}
.animation.delay20{animation-delay:2s!important;}
.animation.delay21{animation-delay:2.1s!important;}
.animation.delay22{animation-delay:2.2s!important;}
.animation.delay23{animation-delay:2.3s!important;}
.animation.delay24{animation-delay:2.4s!important;}
.animation.delay25{animation-delay:2.5s!important;}
.animation.delay26{animation-delay:2.6s!important;}
.animation.delay27{animation-delay:2.7s!important;}
.animation.delay28{animation-delay:2.8s!important;}
.animation.delay29{animation-delay:2.9s!important;}
.animation.delay30{animation-delay:3s!important;}
.animation.delay31{animation-delay:3.1s!important;}
.animation.delay32{animation-delay:3.2s!important;}
.animation.delay33{animation-delay:3.3s!important;}
.animation.delay34{animation-delay:3.4s!important;}
.animation.delay35{animation-delay:3.5s!important;}
.animation.delay36{animation-delay:3.6s!important;}
.animation.delay37{animation-delay:3.7s!important;}
.animation.delay38{animation-delay:3.8s!important;}
.animation.delay39{animation-delay:3.9s!important;}
.animation.delay40{animation-delay:4s!important;}
.animation.clip.delay01{transition-delay:.1s!important;}
.animation.clip.delay02{transition-delay:.2s!important;}
.animation.clip.delay03{transition-delay:.3s!important;}
.animation.clip.delay04{transition-delay:.4s!important;}
.animation.clip.delay05{transition-delay:.5s!important;}
.animation.clip.delay06{transition-delay:.6s!important;}
.animation.clip.delay07{transition-delay:.7s!important;}
.animation.clip.delay08{transition-delay:.8s!important;}
.animation.clip.delay09{transition-delay:.9s!important;}
.animation.clip.delay10{transition-delay:1s!important;}
.animation.clip.delay11{transition-delay:1.1s!important;}
.animation.clip.delay12{transition-delay:1.2s!important;}
.animation.clip.delay13{transition-delay:1.3s!important;}
.animation.clip.delay14{transition-delay:1.4s!important;}
.animation.clip.delay15{transition-delay:1.5s!important;}
.animation.clip.delay16{transition-delay:1.6s!important;}
.animation.clip.delay17{transition-delay:1.7s!important;}
.animation.clip.delay18{transition-delay:1.8s!important;}
.animation.clip.delay19{transition-delay:1.9s!important;}
.animation.clip.delay20{transition-delay:2s!important;}
.animation.clip.delay21{transition-delay:2.1s!important;}
.animation.clip.delay22{transition-delay:2.2s!important;}
.animation.clip.delay23{transition-delay:2.3s!important;}
.animation.clip.delay24{transition-delay:2.4s!important;}
.animation.clip.delay25{transition-delay:2.5s!important;}
.animation.clip.delay26{transition-delay:2.6s!important;}
.animation.clip.delay27{transition-delay:2.7s!important;}
.animation.clip.delay28{transition-delay:2.8s!important;}
.animation.clip.delay29{transition-delay:2.9s!important;}
.animation.clip.delay30{transition-delay:3s!important;}
.animation.clip.delay31{transition-delay:3.1s!important;}
.animation.clip.delay32{transition-delay:3.2s!important;}
.animation.clip.delay33{transition-delay:3.3s!important;}
.animation.clip.delay34{transition-delay:3.4s!important;}
.animation.clip.delay35{transition-delay:3.5s!important;}
.animation.clip.delay36{transition-delay:3.6s!important;}
.animation.clip.delay37{transition-delay:3.7s!important;}
.animation.clip.delay38{transition-delay:3.8s!important;}
.animation.clip.delay39{transition-delay:3.9s!important;}
.animation.clip.delay40{transition-delay:4s!important;}

.animation.duration01{animation-duration:.1s;}
.animation.duration02{animation-duration:.2s;}
.animation.duration03{animation-duration:.3s;}
.animation.duration04{animation-duration:.4s;}
.animation.duration05{animation-duration:.5s;}
.animation.duration06{animation-duration:.6s;}
.animation.duration07{animation-duration:.7s;}
.animation.duration08{animation-duration:.8s;}
.animation.duration09{animation-duration:.9s;}
.animation.duration10{animation-duration:1s;}

@media screen and (max-width: 768px) {
	.animation.delay_pc{animation-delay:0s!important;}
	.animation.clip.delay_pc{transition-delay:0s!important;}
	.animation.delay01sp{animation-delay:.1s!important;}
	.animation.delay02sp{animation-delay:.2s!important;}
	.animation.delay03sp{animation-delay:.3s!important;}
	.animation.delay04sp{animation-delay:.4s!important;}
	.animation.delay05sp{animation-delay:.5s!important;}
	.animation.delay06sp{animation-delay:.6s!important;}
	.animation.delay07sp{animation-delay:.7s!important;}
	.animation.delay08sp{animation-delay:.8s!important;}
	.animation.delay09sp{animation-delay:.9s!important;}
	.animation.delay10sp{animation-delay:1s!important;}
	.animation.delay11sp{animation-delay:1.1s!important;}
	.animation.delay12sp{animation-delay:1.2s!important;}
	.animation.delay13sp{animation-delay:1.3s!important;}
	.animation.delay14sp{animation-delay:1.4s!important;}
	.animation.delay15sp{animation-delay:1.5s!important;}
	.animation.delay16sp{animation-delay:1.6s!important;}
	.animation.delay17sp{animation-delay:1.7s!important;}
	.animation.delay18sp{animation-delay:1.8s!important;}
	.animation.delay19sp{animation-delay:1.9s!important;}
	.animation.delay20sp{animation-delay:2s!important;}
	.animation.delay21sp{animation-delay:2.1s!important;}
	.animation.delay22sp{animation-delay:2.2s!important;}
	.animation.delay23sp{animation-delay:2.3s!important;}
	.animation.delay24sp{animation-delay:2.4s!important;}
	.animation.delay25sp{animation-delay:2.5s!important;}
	.animation.delay26sp{animation-delay:2.6s!important;}
	.animation.delay27sp{animation-delay:2.7s!important;}
	.animation.delay28sp{animation-delay:2.8s!important;}
	.animation.delay29sp{animation-delay:2.9s!important;}
	.animation.delay30sp{animation-delay:3s!important;}
	.animation.delay31sp{animation-delay:3.1s!important;}
	.animation.delay32sp{animation-delay:3.2s!important;}
	.animation.delay33sp{animation-delay:3.3s!important;}
	.animation.delay34sp{animation-delay:3.4s!important;}
	.animation.delay35sp{animation-delay:3.5s!important;}
	.animation.delay36sp{animation-delay:3.6s!important;}
	.animation.delay37sp{animation-delay:3.7s!important;}
	.animation.delay38sp{animation-delay:3.8s!important;}
	.animation.delay39sp{animation-delay:3.9s!important;}
	.animation.delay40sp{animation-delay:4s!important;}
	.animation.clip.delay01sp{transition-delay:.1s!important;}
	.animation.clip.delay02sp{transition-delay:.2s!important;}
	.animation.clip.delay03sp{transition-delay:.3s!important;}
	.animation.clip.delay04sp{transition-delay:.4s!important;}
	.animation.clip.delay05sp{transition-delay:.5s!important;}
	.animation.clip.delay06sp{transition-delay:.6s!important;}
	.animation.clip.delay07sp{transition-delay:.7s!important;}
	.animation.clip.delay08sp{transition-delay:.8s!important;}
	.animation.clip.delay09sp{transition-delay:.9s!important;}
	.animation.clip.delay10sp{transition-delay:1s!important;}
	.animation.clip.delay11sp{transition-delay:1.1s!important;}
	.animation.clip.delay12sp{transition-delay:1.2s!important;}
	.animation.clip.delay13sp{transition-delay:1.3s!important;}
	.animation.clip.delay14sp{transition-delay:1.4s!important;}
	.animation.clip.delay15sp{transition-delay:1.5s!important;}
	.animation.clip.delay16sp{transition-delay:1.6s!important;}
	.animation.clip.delay17sp{transition-delay:1.7s!important;}
	.animation.clip.delay18sp{transition-delay:1.8s!important;}
	.animation.clip.delay19sp{transition-delay:1.9s!important;}
	.animation.clip.delay20sp{transition-delay:2s!important;}
	.animation.clip.delay21sp{transition-delay:2.1s!important;}
	.animation.clip.delay22sp{transition-delay:2.2s!important;}
	.animation.clip.delay23sp{transition-delay:2.3s!important;}
	.animation.clip.delay24sp{transition-delay:2.4s!important;}
	.animation.clip.delay25sp{transition-delay:2.5s!important;}
	.animation.clip.delay26sp{transition-delay:2.6s!important;}
	.animation.clip.delay27sp{transition-delay:2.7s!important;}
	.animation.clip.delay28sp{transition-delay:2.8s!important;}
	.animation.clip.delay29sp{transition-delay:2.9s!important;}
	.animation.clip.delay30sp{transition-delay:3s!important;}
	.animation.clip.delay31sp{transition-delay:3.1s!important;}
	.animation.clip.delay32sp{transition-delay:3.2s!important;}
	.animation.clip.delay33sp{transition-delay:3.3s!important;}
	.animation.clip.delay34sp{transition-delay:3.4s!important;}
	.animation.clip.delay35sp{transition-delay:3.5s!important;}
	.animation.clip.delay36sp{transition-delay:3.6s!important;}
	.animation.clip.delay37sp{transition-delay:3.7s!important;}
	.animation.clip.delay38sp{transition-delay:3.8s!important;}
	.animation.clip.delay39sp{transition-delay:3.9s!important;}
	.animation.clip.delay40sp{transition-delay:4s!important;}

	.animation.duration_pc{animation-duration:0s!important;}
	.animation.duration01sp{animation-duration:.1s;}
	.animation.duration02sp{animation-duration:.2s;}
	.animation.duration03sp{animation-duration:.3s;}
	.animation.duration04sp{animation-duration:.4s;}
	.animation.duration05sp{animation-duration:.5s;}
	.animation.duration06sp{animation-duration:.6s;}
	.animation.duration07sp{animation-duration:.7s;}
	.animation.duration08sp{animation-duration:.8s;}
	.animation.duration09sp{animation-duration:.9s;}
	.animation.duration10sp{animation-duration:1s;}
}


/************************************************************************
	ページ共通
**************************************************************************/
main{
	padding-top: 14.8rem;/* ヘッダーの高さ */
}
footer,main,.is-hmb--open{
	overflow: hidden;
}

@media screen and (max-width: 1024px) {
	main{
		padding-top: 14.4rem;
	}
}

@media screen and (max-width: 768px) {
	main{
		padding-top: 12.19rem;
	}
}

/* =====
	その他汎用
======================================================== */
.is-full img,.is-full picture{width:100%;}/* 画像100%用div */

.hidden{overflow:hidden;}

.dib,.dib-pc{display:inline-block;}/* テキスト改行位置をコントロールしたい時 */

.is-sp{display:none;}/* PC/SP表示切り替え */

.c-bg--gray{/* 背景グレーセクション */
	background-color: #eff1f4;
}

.margin-inline--auto{margin-inline: auto;}

@media screen and (max-width: 768px){
	.is-pc{display:none;}.is-sp{display:block;}
	.dib-pc{display:inline;}.dib-sp{display:inline-block;}
}

/* =====
	タイトル
======================================================== */
/* c-title01
-------------------------------------------------------- */
.c-title01{
	display: flex;
	align-items: center;
	font-size: 2.4rem;
	line-height: 1.5;
}

.c-title01 .sub{
	flex-shrink: 0;
	font-family: var(--sukhumvit-set);
	font-size: 2.5em;/* 60/24 */
	font-weight: 700;
	text-transform: uppercase;
	line-height: 1;
	padding-right: .5em;
	position: relative;
}
.c-title01 .sub .no_capitalize{
	text-transform: none;
}

.c-title01 .sub::after{
	content: "";
	display: block;
	width: .2em;/* 12/60 */
	height: .9em;
	border-left: 2px solid var(--red);
	border-right: 2px solid var(--orange);
	position: absolute;
	right: 0;
	top: 0;
}

.c-title01 .main{
	font-weight: 100;
	padding-left: .66em;
}

@media screen and (max-width: 768px) {
	.c-title01{
		font-size: 1.2rem;
	}
}

/* c-title02
-------------------------------------------------------- */
.c-title02{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	padding-left: 1em;
	position: relative;
}
.c-title02::before{
	content: "";
	display: block;
	width: .4em;
	height: 1em;
	background-color: var(--main_color);
	position: absolute;
	left: 0;
	top: .25em;
}

@media screen and (max-width: 768px) {
	.c-title02{
		font-size: 1.8rem;
	}
}

/* =====
	ボタン
======================================================== */
/* c-btn01
-------------------------------------------------------- */
.c-btn01{
	display: block;
	color: #fff;
	text-align: center;
	line-height: 1.5;
	width: 100%;
	max-width: 40rem;
	padding: 1.25em 2.7em;
	border-radius: .5rem;
	box-shadow: var(--btn_shadow);
	background-color: var(--navy);
	position: relative;
	transition: box-shadow .4s, transform .4s;
}
.c-btn01:hover{
	box-shadow: var(--hover_btn_shadow);
	transform: var(--hover_btn_pos);
}

.c-btn01::before{
	content: "";
	display: block;
	width: 1.4em;/* 22/16 */
	height: 1.4em;
	-webkit-mask: url(../img/cmn/icon-bubble.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-bubble.svg) no-repeat center/contain;
	background-color: currentColor;
	position: absolute;
	left: 1.3em;
	top: calc(50% - .7em);
}
.c-btn01.icon--megaphone::before{
	-webkit-mask-image: url(../img/cmn/icon-megaphone.svg);
	mask-image: url(../img/cmn/icon-megaphone.svg);
}
.c-btn01.icon--none::before{
	display: none;
}

@media screen and (max-width: 768px) {
	.c-btn01{
		font-size: 1.6rem;
		max-width: 33rem;
		padding: 1em 2.2em;
		border-radius: .25rem;
	}
	.c-btn01::before{
		width: 1.12em;/* 36/32 */
		height: 1.12em;
		left: 1em;
		top: calc(50% - .56em);
	}
}

/* c-btn02
-------------------------------------------------------- */


@media screen and (max-width: 768px) {
	
}

/* =====
	クッキー
======================================================== */
#cookie-notice {
	font-size: 1.8rem;
	z-index: 999;
}
#cookie-notice .cn-button {
	color: #1a1a1a;
	background: #00ff00;
	border-radius: .6rem;
	line-height: 1;
	padding: 1rem 1.5rem;
}
.cn-close-icon {
	opacity: 1;
}
.cn-close-icon:before,
.cn-close-icon:after {
	background: #fff;
}
@media screen and (max-width: 768px) {
	.page_content { padding: 6rem 0; }
	.c_section { padding: 4rem 0; }
	#cookie-notice {
		font-size: 1.4rem;
	}
}

/* =====
	ローダー
======================================================== */
#loader{
    display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
    background-color: #fff;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

#loader .inner{
	max-width: 500px;
	width: 80%;
	padding: 5rem 0;
	margin: auto;
	position: relative;
	animation: loader_logo 1s ease .7s forwards;
	opacity: 0;
	transform: translateY(25%);
}

#loader .logo img{
	width: 100%;
}

@media (max-width: 768px) {
	
	#loader .inner{
		width: 86%;
		padding: 3rem 0;
		border-radius: 1.5rem;
	}

}

@keyframes loader_logo {
	0% {
		opacity: 0;
		transform: translateY(25%);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

/************************************************************************
	ヘッダー
**************************************************************************/
header{
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 50;
	transition: background-color .4s;
}

.hd__main{
	display: grid;
	grid-template-columns: 23.5rem 1fr 24.5rem 15rem;
	grid-template-rows: 1fr 1fr;
	background-color: #fff;
	border-bottom: var(--border_primary);
	position: relative;
	z-index: 1;
}

.hd__logo{
	grid-row: 1/3;
}
.hd__logo a{
	display: flex;
	align-items: center;
	padding: 0 7.5%;
	height: 100%;
}

.hd__catch{
	grid-row: 1/3;
	align-self: center;
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--red);
	line-height: 1.5;
	letter-spacing: .04em;
	padding: 0 1.5%;
}
.hd__catch .is-big{
	font-size: 1.7143em;/* 24/14 */
}

.hd__sub--sp{
	display: none;
}

@media screen and (max-width: 960px) {
	.hd__main{
		grid-template-columns: 23.5rem 1fr 23.5rem 14rem;
	}
}

@media screen and (max-width: 768px) {
	.hd__main{
		grid-template-columns: 1fr 4rem calc(4rem + .8rem) 6rem 6rem;
		grid-template-rows: auto;
		border-bottom: none;
	}

	.hd__logo{
		grid-row: 1/2;
	}
	.hd__logo a{
		max-width: 15rem;
		padding: 0 2% 0 7.5%;
	}

	.hd__main .hd__catch{
		display: none;
	}

	.hd__sub--sp{
		display: block;
		border-top: var(--border_primary);
		background-color: #fff;
		position: relative;
		z-index: -1;
		transition: transform .4s;
	}

	.hd__catch{
		font-size: 1.18rem;
		text-align: center;
		padding: .9em 1%;
	}
	.is-scroll .hd__sub--sp{
		transform: translateY(-110%);
	}
	/* .is-scroll.is-up .hd__sub--sp{
		transform: translateY(0);
	} */

	
}

/* =====
	ボタン系
======================================================== */
/* 電話
-------------------------------------------------------- */
.hd__tel{
	grid-row: 2/3;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--navy);
	padding-inline: 2.6em;
	border-left: var(--border_primary);
	position: relative;
}
.hd__tel:hover{
	text-decoration: underline;
	opacity: .7;
}

.hd__tel::before{
	content: "";
	display: block;
	width: 1.3em;/* 19/15 */
	height: 1.3em;
	background: url(../img/cmn/icon-tel.svg) no-repeat center/contain;
	position: absolute;
	left: 1.2em;
	top: calc(50% - .65em);
}

@media screen and (max-width: 768px) {
	.hd__tel{
		grid-row: 1/2;
		padding: 0;
		border: none;
	}
	.hd__tel::before{
		width: 2rem;
		height: 2rem;
		margin: auto;
		position: static;
	}

	.hd__tel .text{
		display: none;
	}
}

/* お問い合わせ
-------------------------------------------------------- */
.hd__contact{
	grid-column: 4/5;
	grid-row: 1/3;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
	padding: 1em 0 .9em;
	background-color: var(--navy);
	position: relative;
}
.hd__contact:hover{
	opacity: .7;
}

.hd__contact::before{
	content: "";
	display: block;
	width: 1.4em;/* 21/15 */
	height: 1.3em;/* 19/15 */
	margin-bottom: .33em;
	-webkit-mask: url(../img/cmn/icon-mail.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-mail.svg) no-repeat center/contain;
	background-color: #fff;
}



@media screen and (max-width: 768px) {
	.hd__contact{
		grid-column: auto;
		grid-row: 1/2;
		margin-right: .8rem;
		background-color: transparent;
	}

	.hd__contact::before{
		width: 1.8rem;
		height: 2rem;
		margin: auto;
		background-color: var(--navy);
	}

	.hd__contact .text{
		display: none;
	}
}

/* 無料ダウンロード資料
-------------------------------------------------------- */
.hd__download{
	grid-row: 1/2;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--red);
	font-size: 1.5rem;
	font-weight: 700;
	padding-right: 1.2em;
	border-left: var(--border_primary);
	border-bottom: var(--border_primary);
	position: relative;
}
.hd__download:hover{
	opacity: .7;
	text-decoration: underline;
}

.hd__download::before{
	content: "";
	display: block;
	width: 1.4em;/* 21/15 */
	height: 1.3em;/* 19/15 */
	margin-right: 1.3em;
	-webkit-mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	background-color: var(--red);
}

@media screen and (max-width: 768px) {
	.hd__download{
		flex-direction: column;
		font-size: 1rem;
		font-weight: 700;
		color: #fff;
		width: 6rem;
		height: 7rem;
		padding: 1rem 0 .66rem;
		border: none;
		background-color: var(--red);
	}
	.hd__download::before{
		width: 1.8rem;
		height: 1.8rem;
		margin: auto;
		background-color: #fff;
	}

	.hd__download::after{
		content: "無料DL資料";
	}

	.hd__download .text{
		display: none;
	}
}



/* =====
	ナビ
======================================================== */
/* ナビのメイン部分
-------------------------------------------------------- */
#hd-nav{
	background-color: #fff;
	position: relative;
	z-index: 0;
	transition: transform .4s;
}
.is-scroll #hd-nav{
	transform: translateY(-110%);
}
.is-scroll.is-up #hd-nav{
	transform: translateY(0);
}

#hd-nav > ul{
	width: 92%;
	max-width: 106rem;
	margin-inline: auto;
}

#hd-nav > ul > li{
	position: relative;
}

#hd-nav > ul > li > a,
.hd-nav__trigger{
	display: block;
	padding: 1.2em .9em 1.3em;
	position: relative;
}

#hd-nav > ul > li a{
	text-decoration: underline solid transparent;
	text-underline-offset: .1em; /* 文字との距離 */
}
#hd-nav > ul > li a:hover{
	text-decoration-color: var(--red);
}

.hd-nav__trigger{
	cursor: pointer;
	transition: color .4s;
}
.hd-nav__trigger:hover{
	color: var(--navy);
}
.hd-nav__trigger::after{
	content: "";
	display: block;
	width: .6em;/* 9/16 */
	height: .4em;/* 5/16 */
	background: url(../img/cmn/hd-nav-arrow.svg) no-repeat center/contain;
	position: absolute;
	right: 0;
	top: calc(50% - .2em);
	transition: top .4s;
}
.hd-nav__trigger:hover::after{
	top: 50%;
}

@media screen and (max-width: 1024px) {
	#hd-nav > ul{
		font-size: 1.5rem;
		width: 94.6%;
	}

	#hd-nav > ul > li > a,
	.hd-nav__trigger{
		display: block;
		padding: 1.2em .5em 1.3em;
		position: relative;
	}
}

@media screen and (max-width: 768px) {
	#hd-nav{
		display: flex;
		color: var(--font_color);
		width: 100%;
		min-height: 100dvh;
		height: 100%;
		padding: 10rem 0 4rem;
		background-color: rgba(40,45,70,.3);
		position: fixed;
		right: -120%;
		top: 0;
		z-index: -1;
		transition: right .4s;
		overflow: hidden;
	}
	.is-hmb--open #hd-nav{
		right: 0;
	}
	.is-scroll #hd-nav{
		transform: none;
	}
	.is-scroll.is-up #hd-nav{
		transform: none;
	}
	

	#hd-nav > ul{
		overflow: auto;
		width: 94%;
		padding: 3rem 1rem 2rem;
		max-height: calc(100dvh - 14rem);
		margin-inline: auto;
		background-color: #eff1f4;
	}

	#hd-nav > ul > li > a,
	.hd-nav__trigger{
		font-size: 1.5rem;
		font-weight: 700;
		padding: 1em calc(.5em + 3%) 1em calc(2em + 3%);
		position: relative;
	}

	.hd-nav__trigger::after{
		width: 1em;
		height: .6em;
		background-image: url(../img/cmn/ft_nav-arrow.svg);
		right: 3%;
		top: calc(50% - .3em);
		transition: transform .4s;
	}
	.hd-nav__trigger:hover::after{
		top: calc(50% - .3em);
	}
	.is-acc--open .hd-nav__trigger::after{
		transform: scale(1, -1);
	}

	#hd-nav > ul > li > a::before,
	.hd-nav__trigger::before{
		content: "";
		display: block;
		width: 1.4em;
		height: 1.4em;
		background: url(../img/cmn/ft_icon-service.svg) no-repeat center/contain;
		position: absolute;
		left: 3%;
		top: calc(50% - .7em);
	}
	#hd-nav > ul > li > a.icon--bubble::before,
	.hd-nav__trigger.icon--bubble::before{
		background-image: url(../img/cmn/ft_icon-bubble.svg);
	}
	#hd-nav > ul > li > a.icon--megaphone::before,
	.hd-nav__trigger.icon--megaphone::before{
		background-image: url(../img/cmn/ft_icon-megaphone.svg);
	}
	#hd-nav > ul > li > a.icon--pencil::before,
	.hd-nav__trigger.icon--pencil::before{
		background-image: url(../img/cmn/ft_icon-pencil.svg);
	}
	#hd-nav > ul > li > a.icon--member::before,
	.hd-nav__trigger.icon--member::before{
		background-image: url(../img/cmn/ft_icon-member.svg);
	}
	#hd-nav > ul > li > a.icon--human::before,
	.hd-nav__trigger.icon--human::before{
		background-image: url(../img/cmn/ft_icon-human.svg);
	}

	#hd-nav > ul > li{
		border-bottom: var(--border_primary);
		transition: background-color .4s;
	}
	#hd-nav > ul > li:nth-of-type(1){
		border-top: var(--border_primary);
	}
	#hd-nav > ul > li.has-child.is-acc--open{
		background-color: #dde2e9;
	}

	#hd-nav > ul > li a:hover{
		text-decoration-color: currentColor;
	}

}

/* ホバー表示要素
-------------------------------------------------------- */
.hd-nav__child{
	white-space: nowrap;
	width: fit-content;
	padding: 1.25rem 3rem 1.25rem 2rem;
	border: var(--border_primary);
	background-color: #fff;
	position: absolute;
	top: calc(100% - 1.5rem);
	left: 0;
	z-index: 1;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity .4s, visibility .4s, top .4s;
}
.has-child:hover .hd-nav__child{
	top: calc(100% - .5rem);
	opacity: 1;
	visibility: visible;
	pointer-events: all;
}


@media screen and (min-width: 769px) {
	.hd-nav__child{
		display: block !important;
	}
}

.hd-nav__child::before,
.hd-nav__child::after{
	content: "";
	display: block;
	width: 1.6rem;
	height: 2rem;
	position: absolute;
	left: 1.8rem;
	clip-path: polygon(0 100%, 66% 0, 100% 100%);
}
.hd-nav__child::before{
	background-color: var(--gray);
	bottom: 100%;
}
.hd-nav__child::after{
	background-color: inherit;
	bottom: calc(100% - 3px);
}

.hd-nav__child > ul{
	font-size: 1.2rem;
}
.hd-nav__child > ul > li a{
	display: block;
	padding: .25em 0 .25em 1.25em;
	text-underline-offset: .2em; /* 文字との距離 */
}

@media screen and (max-width: 1024px) {
	.hd-nav__child > ul{
		font-size: 1.3rem;
	}
}

@media screen and (max-width: 768px) {
	.hd-nav__child{
		display: none;
		white-space: auto;
		width: 100%;
		padding: 0rem 2rem 1.25rem 2rem;
		border: none;
		background-color: transparent;
		position: static;
		top: auto;
		left: auto;
		z-index: 1;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
		transition: none;
	}
	.has-child:hover .hd-nav__child{
		top: auto;
		opacity: 1;
		visibility: visible;
		pointer-events: all;
	}

	.hd-nav__child::before,
	.hd-nav__child::after{
		display: none;
	}

	.hd-nav__child > ul > li{
		font-size: 1.3rem;
		position: relative;
	}
	.hd-nav__child > ul > li::before{
		content: "";
		display: block;
		width: .32em;
		height: .32em;
		border-radius: 50%;
		background-color: currentColor;
		position: absolute;
		left: 0;
		top: 1em;
	}

	.hd-nav__child > ul > li a{
		padding: .4em 0 .4em 1.25em;
	}
	
}


/* =====
	ハンバーガー
======================================================== */
#hmb{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 7rem;
	padding: 1rem 0 .66rem;
	color: #fff;
	background-color: var(--navy);
	cursor: pointer;
	transition: opacity .4s;
	position: relative;
}
#hmb:hover{
	opacity: .7;
}

#hmb::after{
	content: "menu";
	display: block;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}
.is-hmb--open #hmb::after{
	content: "close";
}

.hmb-bar_wrap{
	display: block;
	width: 4rem;
	height: 1.8rem;
	margin: auto;
	position: relative;
	transition: .4s;
}

.hmb-bar_wrap span{
	display: inline-block;
	width: 100%;
	height: 2px;
	background-color: #fff;
	position: absolute;
	right: 0;
	transition: .4s;
}
.is-hmb--open .hmb-bar_wrap span{
	background-color: #fff;
}


.hmb-bar_wrap span:nth-of-type(1){
	top: 0;
}
.hmb-bar_wrap span:nth-of-type(2){
	bottom: 0;
}

.is-hmb--open .hmb-bar_wrap span:nth-of-type(1){
	top: 46%;
	transform: rotate(-33deg);
}
.is-hmb--open .hmb-bar_wrap span:nth-of-type(2){
	bottom: 46%;
	transform: rotate(33deg);
}

@media screen and (min-width: 769px) {
	#hmb{
		display: none;
	}
}


/************************************************************************
	グローバル
**************************************************************************/
#global{
	display: -webkit-box;
	display: flex;
	color: #fff;
	width: 100%;
	min-height: 100dvh;
	height: 100%;
	background-color: rgba(19,43,104,.2);
	position: fixed;
	right: -120%;
	top: 0;
	z-index: 40;
	transition: .4s;
	overflow: auto;
}
.is-hmb--open #global{
	right: 0;
}

#global .container{
	width: fit-content;
	height: fit-content;
	min-height: 100%;
	padding: 10rem 4rem;
	margin-left: auto;
	background-color: var(--main_color);
}

.gl-nav{
	margin-bottom: 3rem;
}
.gl-nav li{
	margin-bottom: .5em;
}
.gl-nav li a{
	display: block;
	padding: .25em 0;
	position: relative;
}
.gl-nav li a:hover{
	opacity: 1;
}

.gl-nav li a .text{
	display: inline-block;
	position: relative;
}
.gl-nav li a .text::after{
	content: "";
	display: block;
	width: 0;
	height: 1px;
	background-color: #fff;
	position: absolute;
	bottom: .05em;
	left: 0;
	transition: width .4s;
}
.gl-nav li a:hover .text::after{
	width: 100%;
}

@media screen and (min-width: 769px) {
	#global{
		display: none;
	}
}




/************************************************************************
	フッター
**************************************************************************/
/* =====
	フッターナビ
======================================================== */
#ft-nav{
	background-color: #eff1f4;
}

.ft-nav--top{
	padding: 9rem 0 4rem;
	border-bottom: var(--border_primary);
}
.ft-nav--bottom{
	padding: 4.5rem 0 4rem;
}

#ft-nav .inner{
	width: 92%;
	max-width: 120rem;
}

.ft-nav__to-top{
	display: block;
	font-weight: 700;
	margin-bottom: 1.5em;
}

.ft-nav__container{
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	column-gap: .5rem;
}

.ft-nav__column.ft-nav__column02{
	grid-column: 3/5;
}

@media screen and (max-width: 1024px) {
	#ft-nav .inner{
		width: 66rem;
	}

	.ft-nav__container{
		grid-template-columns: repeat(2, 1fr);
		column-gap: 2rem;
		row-gap: 3.2rem;
	}

	.ft-nav__column.ft-nav__column02{
		grid-column: 1/3;
	}
}

@media screen and (max-width: 768px) {
	.ft-nav--top{
		padding: 2.75rem 0 0;
		border: none;
	}
	.ft-nav--bottom{
		padding: 0 0 3rem;
	}
	
	#ft-nav .inner{
		width: 94%;
	}
	
	.ft-nav__to-top{
		margin-bottom: 1em;
	}
	
	.ft-nav__container{
		display: block;
	}
	
	.ft-nav__column.ft-nav__column02{
		grid-column: auto;
	}
}


/* 中身
-------------------------------------------------------- */
.ft-nav__parent{
	display: block;
	font-weight: 700;
	padding: .25em 0 .25em 2em;
	margin-bottom: 1.15em;
	position: relative;
}
.ft-nav__column .ft-nav__parent:nth-last-of-type(1){
	margin-bottom: 0;
}

.ft-nav__parent::before{
	content: "";
	display: block;
	width: 1.4em;
	height: 1.4em;
	background: url(../img/cmn/ft_icon-bubble.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: .5em;
}
.ft-nav__parent.icon--human::before{background-image: url(../img/cmn/ft_icon-human.svg);}
.ft-nav__parent.icon--download::before{background-image: url(../img/cmn/ft_icon-download.svg);}
.ft-nav__parent.icon--mail::before{background-image: url(../img/cmn/ft_icon-mail.svg);}
.ft-nav__parent.icon--megaphone::before{background-image: url(../img/cmn/ft_icon-megaphone.svg);}
.ft-nav__parent.icon--pencil::before{background-image: url(../img/cmn/ft_icon-pencil.svg);}
.ft-nav__parent.icon--member::before{background-image: url(../img/cmn/ft_icon-member.svg);}
.ft-nav__parent.icon--service::before{background-image: url(../img/cmn/ft_icon-service.svg);}
.ft-nav__parent.icon--monitor::before{background-image: url(../img/cmn/ft_icon-monitor.svg);}
.ft-nav__parent.icon--panel::before{background-image: url(../img/cmn/ft_icon-panel.svg);}

.ft-nav__child__flex{
	display: flex;
	flex-wrap: wrap;
}

.ft-nav__child__wrap{
	padding: .4em 0 0 2.25em;
}
.ft-nav__child__flex .ft-nav__child__wrap{
	width: 50%;
}

.ft-nav__child__box{
	margin-top: 2em;
}
.ft-nav__child__wrap .ft-nav__child__box:nth-of-type(1){
	margin-top: 0;
}

.ft-nav__child__title{
	font-size: 1.4rem;
	font-weight: 700;
	color: var(--red);
	margin-bottom: .2em;
}

.ft-nav__child__list.is-pad > li{
	margin-bottom: .5em;
}

.ft-nav__child__list > li a{
	display: block;
	width: fit-content;
	padding: .25em .25em .25em 1.5em;
	position: relative;
}
.ft-nav--bottom .ft-nav__child__list > li a{
	font-size: 1.4rem;
	color: #333;
	padding-block: .2em;
}

.ft-nav__child__list > li a:hover{
	text-decoration: underline;
}

.ft-nav__child__list > li a::before{
	content: "";
	display: block;
	width: .32em;/* 5/16 */
	height: .32em;
	border-radius: 50%;
	background-color: currentColor;
	position: absolute;
	left: 0;
	top: 1em;
}

@media screen and (max-width: 1200px) {
	.ft-nav__child__flex .ft-nav__child__wrap{
		width: 100%;
		margin-top: 2em;
	}
	.ft-nav__child__flex .ft-nav__child__wrap:nth-of-type(1){
		margin-top: 0;
	}
}

@media screen and (max-width: 1024px) {
	.ft-nav__child__flex .ft-nav__child__wrap{
		width: 50%;
		margin-top: 0;
	}
}

@media screen and (max-width: 768px) {
	.ft-nav__column{
		position: relative;
		z-index: 1;
		transition: .4s;
	}
	.ft-nav__column::before{
		content: "";
		display: block;
		width: 110%;
		height: 100%;
		background-color: transparent;
		position: absolute;
		left: -5%;
		top: 0;
		z-index: -1;
		transition: background-color .4s;
	}
	.ft-nav__column.is-acc--open::before{
		background-color: #dde2e9;
	}

	.ft-nav__parent{
		font-size: 1.3rem;
		padding: .75em 0 .75em 2em;
		margin-bottom: 0;
		position: relative;
	}
	.ft-nav__parent::before{
		top: .85em;
	}

	.ft-nav__trigger{
		cursor: pointer;
	}
	.ft-nav__trigger::after{
		content: "";
		display: block;
		width: 1.16em;/* 28/24 */
		height: .72em;/* 17/24 */
		background: url(../img/cmn/ft_nav-arrow.svg) no-repeat center/contain;
		position: absolute;
		right: 0;
		top: calc(50% - .36em);
		transition: transform .4s;
	}
	.is-acc--open .ft-nav__trigger::after{
		transform: scale(1, -1);
	}

	.ft-nav__child__flex,
	.ft-nav__child__wrap{
		display: none;
	}
	.ft-nav__child__flex > .ft-nav__child__wrap{
		display: block;
	}
	
	.ft-nav__child__wrap{
		padding: 0 0 1em 2.25em;
	}
	.ft-nav__child__flex .ft-nav__child__wrap{
		width: 100%;
	}

	.ft-nav__child__box{
		margin-top: 1em;
	}
	
	.ft-nav__child__title{
		font-size: 1.3rem;
	}

	.ft-nav__child__list.is-pad > li{
		margin-bottom: 0;
	}
	
	.ft-nav__child__list > li a{
		font-size: 1.2rem;
	}
	.ft-nav--bottom .ft-nav__child__list > li a{
		font-size: 1.2rem;
		padding: .25em .25em .25em 1.5em;
	}
}


/* =====
	フッターCTA
======================================================== */
.ft__cta-wrap{
	padding: 4rem 0;
	background: var(--navy);
}

.ft__cta__list{
	display: grid;
	grid-template-columns: repeat(4, 23.4%);
	justify-content: space-between;
	width: 92%;
	max-width: 120rem;
	margin-inline: auto;
}

.ft__cta__list > li a{
	display: block;
}
.ft__cta__list > li a:hover{
	opacity: .7;
}

.ft__cta__list > li a img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 280/120;
}

@media screen and (max-width: 768px) {
	.ft__cta__list{
		grid-template-columns: repeat(2, 47.8%);
		row-gap: 1.8rem;
		width: 94%;
	}
}

/* =====
	アドレス　ボタン
======================================================== */

/* アドレス
-------------------------------------------------------- */
.ft__bottom__address-wrap{
	flex-shrink: 0;
	width: 37.6rem;
}

.ft__logo{
	display: block;
	width: 100%;
}
.ft__logo:hover{
	opacity: .7;
}
.ft__logo img{
	width: 100%;
}

.ft__bottom__address-box{
	padding-left: 1.5rem;
	margin-top: 2.8rem;
}
.ft__bottom__address__title{
	font-size: 2rem;
	font-weight: 700;
}

@media screen and (max-width: 768px) {
	.ft__bottom__address-wrap{
		width: 100%;
	}
	
	.ft__logo{
		max-width: 22.2rem;
		margin-inline: auto;
	}
	
	.ft__bottom__address-box{
		padding-left: 0;
		text-align: center;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	.ft__bottom__address__title{
		font-size: 1.5rem;
		font-weight: 700;
	}
}


/* ボタン
-------------------------------------------------------- */
.ft__bottom__btn-wrap{
	width: calc(96% - 37.6rem);
	max-width: 60rem;
}

.ft__bottom__btn{
	display: block;
	font-size: 1.8rem;
	color: var(--red);
	text-align: center;
	padding: .66em 3em .66em 3em;
	margin-top: 1em;
	border-radius: .5rem;
	border: 2px solid currentColor;
	position: relative;
}
.ft__bottom__btn.contact{
	color: #fff;
	border: none;
	background-color: var(--navy);
}

.ft__bottom__btn:nth-of-type(1){
	margin-top: 0;
}

.ft__bottom__btn:hover{
	opacity: .7;
}

.ft__bottom__btn::before{
	content: "";
	display: block;
	width: 1.12em;/* 21/18 */
	height: 1.12em;
	-webkit-mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	background-color: currentColor;
	position: absolute;
	left: 1em;
	top: calc(50% - .56em);
}
.ft__bottom__btn.contact::before{
	-webkit-mask-image: url(../img/cmn/icon-download.svg);
	mask-image: url(../img/cmn/icon-download.svg);
}

.ft__bottom__btn .sub{
	letter-spacing: .06em;
}
.ft__bottom__btn .main{
	font-size: 1.334em;/* 24/18 */
	font-weight: 700;
}

@media screen and (max-width: 960px) {
	.ft__bottom__btn{
		font-size: 1.6rem;
	}
}

@media screen and (max-width: 768px) {
	.ft__bottom__btn-wrap{
		width: 100%;
		max-width: 33rem;
		margin-top: 3.25rem;
		margin-inline: auto;
	}
	
	.ft__bottom__btn{
		font-size: 1.08rem;
		padding: .66em 3em .66em 3em;
		margin-top: 1.25em;
		border-radius: .25rem;
		border-width: 1px;
	}

	.ft__bottom__btn::before{
		width: 1.2em;/* 26/21.6 */
		height: 1.2em;
		left: calc(1em + 4%);
		top: calc(50% - .6em);
	}
}

/* =====
	コピーライト
======================================================== */
.ft__copyright-wrap{
	font-size: 1.4rem;
	text-align: center;
	color: #737373;
	text-align: center;
	padding: 1rem 0.45rem;
	border-top: var(--border_primary);
}


@media screen and (max-width: 768px) {
	.ft__copyright-wrap{
		font-size: 1rem;
		padding: 2rem 0.45rem 1rem;
	}
	.ft__copyright{
		margin-top: .75em;
	}
}


/************************************************************************
	トップページ
**************************************************************************/
/* =====
	MV
======================================================== */
#t-mv__swiper .swiper-slide a{
	display: block;
}
#t-mv__swiper .swiper-slide a:hover{
	opacity: .7;
}
#t-mv__swiper .swiper-slide img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	#t-mv{
		padding-top: 3.75rem;
		background: url(../img/top/cta-bg_sp.png) no-repeat center/cover;
	}
	#t-mv__swiper{
		margin-top: 1.5rem;
	}
}


/* スワイパー矢印
-------------------------------------------------------- */
.swiper-button-prev,
.swiper-button-next{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 7rem;
	height: 7rem;
	border-radius: 50%;
	background-color: rgba(255,255,255,.7);
	box-shadow: var(--shadow_primary);
	transition: opacity .4s, background-color .4s;
}
.swiper-button-prev{
	transform: scale(-1,1);
}

.swiper-button-prev:hover,
.swiper-button-next:hover{
	background-color: rgba(255,255,255,.8);
}

.swiper-button-prev::after,
.swiper-button-next::after{
	content: "";
	display: block;
	width: 40%;
	height: 40%;
	-webkit-mask: url(../img/cmn/arrow01.svg) no-repeat center/contain;
	mask: url(../img/cmn/arrow01.svg) no-repeat center/contain;
	background-color: var(--gray);
	transition: background-color .4s;
}
.swiper-button-prev:hover::after,
.swiper-button-next:hover::after{
	background-color: var(--red);
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled{
	opacity: 0;
}

@media screen and (max-width: 768px) {
	#t-mv__swiper .swiper-button-prev,
	#t-mv__swiper .swiper-button-next{
		display: none;
	}
}

/* =====
	CTA
======================================================== */
.t-cta{
	color: #fff;
	padding: 5rem 0 3.25rem;
	background: url(../img/top/cta-bg.png) no-repeat center/cover;
}

@media screen and (max-width: 768px) {
	.t-cta{
		padding: 2.25rem 0 5rem;
		background: none;
	}
}


/* 左
-------------------------------------------------------- */
.t-cta .t-cta__container--left{
	width: 53rem;
}

.t-cta__title{
	font-size: 2.6rem;
	font-weight: 700;
	color: #fff;
	line-height: 1.5;
}
.t-cta__title .is-big{
	font-size: 1.385em;/* 36/26 */
}

.t-cta__btn-wrapper{
	margin-top: 1.75rem;
}
.t-cta__btn-block{
	width: 49%;
}

.t-cta__btn__supple{
	text-align: center;
	position: relative;
}
.t-cta__btn__supple::before{
	content: "\FF3C";
	display: inline-block;
	margin-right: .1em;
}
.t-cta__btn__supple::after{
	content: "\FF0F";
	display: inline-block;
	margin-left: .1em;
}

.t-cta__btn{
	display: block;
	font-size: 1.5rem;
	font-weight: 700;
	color: var(--red);
	text-align: center;
	padding: .8em 2.7em;
	border-radius: .5rem;
	box-shadow: var(--btn_shadow);
	background-color: #fff;
	position: relative;
}
.t-cta__btn.contact{
	color: #fff;
	background-color: var(--navy);
}

.t-cta__btn:hover{
	opacity: .7;
	box-shadow: var(--hover_btn_shadow);
	transform: var(--hover_btn_pos);
}

.t-cta__btn::before{
	content: "";
	display: block;
	width: 1.2em;
	height: 1em;
	-webkit-mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-download.svg) no-repeat center/contain;
	background-color: currentColor;
	position: absolute;
	left: 1.4em;
	top: calc(50% - .5em);
}
.t-cta__btn.contact::before{
	-webkit-mask-image: url(../img/cmn/icon-mail.svg);
	mask-image: url(../img/cmn/icon-mail.svg);
}


@media screen and (max-width: 960px) {
	.t-cta .t-cta__container--left{
		width: 45rem;
	}

	.t-cta__title{
		font-size: 2.2rem;
	}

	.t-cta__btn{
		font-size: 1.4rem;
	}
}


@media screen and (max-width: 768px) {
	.t-cta .t-cta__container--left{
		width: 100%;
	}
	
	.t-cta__title{
		font-size: 1.5rem;
		text-align: center;
	}
	.t-cta__title .is-middle{
		font-size: 1.633em;/* 49/30 */
	}
	.t-cta__title .is-big{
		font-size: 2em;/* 60/30 */
	}

	.t-cta__btn-wrapper{
		margin-top: 0;
	}
	.t-cta__btn-block{
		width: 49%;
	}
	
	.t-cta__btn{
		padding: 3.2em .8em 1em;
		border-radius: .25rem;
	}
	
	.t-cta__btn::before{
		left: calc(50% - .6em);
		top: 1.66em;
	}
	.t-cta__btn.contact::before{
		-webkit-mask-image: url(../img/cmn/icon-mail.svg);
		mask-image: url(../img/cmn/icon-mail.svg);
	}
}


/* 右
-------------------------------------------------------- */
.t-cta .t-cta__container--right{
	padding-top: .85%;
	width: calc(96% - 53rem);
	max-width: 58rem;
}
.t-cta .t-cta__container--right h3{
	font-size: 2rem;
	font-weight: 700;
	color: #fff;
	letter-spacing: .1em;
}

.t-cta .t-cta__container--right .list{
	display: grid;
	grid-template-columns: repeat(3, max-content);
	justify-content: space-between;
	row-gap: .3em;
	font-size: 1.4rem;
	max-width: 48rem;
	padding-top: 1.4em;
}

.t-cta .t-cta__container--right .list li{
	display: flex;
	align-items: center;
	line-height: 1;
	min-height: 2em;
	padding: 0 .5em 0 2em;
	position: relative;
}

.t-cta .t-cta__container--right .list li::before{
	content: "";
	display: block;
	width: 1.44em;/* 20/14 */
	height: 1.44em;
	background: url(../img/top/area-icon01.svg) no-repeat center/contain;
	position: absolute;
	left: 0;
	top: calc(50% - .72em);
}
.t-cta .t-cta__container--right .list li:nth-of-type(2):before{
	background-image: url(../img/top/area-icon02.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(3):before{
	background-image: url(../img/top/area-icon03.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(4):before{
	background-image: url(../img/top/area-icon04.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(5):before{
	background-image: url(../img/top/area-icon05.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(6):before{
	background-image: url(../img/top/area-icon06.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(7):before{
	background-image: url(../img/top/area-icon07.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(8):before{
	background-image: url(../img/top/area-icon08.svg);
}
.t-cta .t-cta__container--right .list li:nth-of-type(9):before{
	background-image: url(../img/top/area-icon09.svg);
}

@media screen and (min-width: 1601px) {
	.t-cta .t-cta__container--right .list li br.control{
		display: none;
	}
}
.t-cta .t-cta__container--right .list li br.control{
	display: block;
}

.t-cta .t-cta__container--right a.underline{
	text-underline-offset: .4em;
}

@media screen and (max-width: 960px) {
	.t-cta .t-cta__container--right{
		padding-top: 0;
		width: calc(98% - 45rem);
		max-width: none;
	}
}

@media screen and (max-width: 768px) {
	.t-cta .t-cta__container--right{
		padding-top: 3rem;
		width: 100%;
		max-width: none;
	}
	.t-cta .t-cta__container--right h3{
		font-size: 1.8rem;
		text-align: center;
	}
	
	.t-cta .t-cta__container--right .list{
		row-gap: .75em;
		font-size: 1.3rem;
		max-width: 48rem;
	}
	
	.t-cta .t-cta__container--right .list li{
		padding: 0 .5em 0 2.25em;
	}
	.t-cta .t-cta__container--right .list li::before{
		width: 1.8em;
		height: 1.8em;
		top: calc(50% - .9em);
	}
}

/* =====
	クライアント実績
======================================================== */

/* リスト
-------------------------------------------------------- */
.t-results__container{
	margin-top: 8rem;
	border-radius: .5rem .5rem 0 0;
	border: 1px solid var(--font_gray);
	background-color: #fff;
	position: relative;
	overflow: hidden;
}
#t-results .t-results__container:nth-of-type(1){
	margin-top: 4.5rem;
}

.t-results__list__title{
	font-size: 1.8rem;
	color: #fff;
	text-align: center;
	padding: .5em;
	margin-top: -1px;
	background-color: var(--navy);
	position: relative;
}
.t-results__list__title::before{
	content: "";
	display: inline-block;
	vertical-align: text-bottom;
	width: 1.4em;
	height: 1.4em;
	margin-right: .5em;
	background: url(../img/top/icon-results02.svg) no-repeat center/contain;
}
.t-results__container.other .t-results__list__title::before{
	background-image: url(../img/top/icon-results03.svg);
}

.t-results__list{
	display: grid;
	grid-template-columns: repeat(10, calc(92%/10));
	row-gap: 1rem;
	justify-content: space-between;
	width: 94.6%;
	height: 23rem;
	margin: 2.5rem auto 0;
	position: relative;
	overflow: hidden;
}
.t-results__list::after{
	content: "";
	display: block;
	width: 100%;
	height: 5rem;
	position: absolute;
	bottom: 0;
	background-image: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0) 100%);
	pointer-events: none;
}
.t-results__container.is-open .t-results__list::after{
	display: none;
}

.t-results__list > li a{
	display: block;
}
.t-results__list > li a:hover{
	opacity: .7;
}
.t-results__list > li a img{
	width: 100%;
}

.t-results__more-btn{
	display: block;
	font-weight: 700;
    color: #ea5415;
	letter-spacing: .025em;
    text-align: center;
	text-decoration: underline;
	text-underline-offset: .2em;
    width: 100%;
    padding: .5em 2.7em;
    background-color: #fff;
    position: relative;
	z-index: 2;
    transition: opacity .4s;
}
.t-results__more-btn:hover{
	opacity: .7;
}

.t-results__more-btn::before{
	content: "もっと見る";
}
.t-results__container.is-open .t-results__more-btn::before{
	content: "閉じる";
}

.t-results__more-btn::after{
	content: "";
	display: inline-block;
	vertical-align: bottom;
	width: 1em;
	height: 1.6em;
	margin-left: .5em;
	-webkit-mask: url(../img/cmn/arrow02_under.svg) no-repeat center / contain;
	mask: url(../img/cmn/arrow02_under.svg) no-repeat center / contain;
	background-color: currentColor;
	transition: transform .4s;
}
.t-results__container.is-open .t-results__more-btn::after{
	transform: scale(1, -1);
}

@media screen and (max-width: 768px) {
	.t-results__container{
		margin-top: 5rem;
	}
	#t-results .t-results__container:nth-of-type(1){
		margin-top: 3rem;
	}

	.t-results__list__title{
		font-size: 1.6rem;
		border-radius: .25rem;
	}

	.t-results__list{
		grid-template-columns: repeat(5, calc(92%/5));
		height: 25rem;
		margin-top: 2rem;
	}

	.t-results__more-btn{
		max-width: 33rem;
		padding: 1em 2.2em;
		border-radius: .25rem;
	}
}

/* =====
	支援実績/お客様の声
======================================================== */
/* タイトル部分
-------------------------------------------------------- */
.c-title_wrapper{
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.c-btn01.is-c-title_wrapper--outside{
	display: none;
}

@media screen and (max-width: 1100px) {
	/* 無理矢理なので、セクションタイトルの文言変更などあった際は要確認 */
	.c-title_wrapper{
		display: block;
	}

	.c-title_wrapper .c-btn01{
		display: none;
	}

	.c-btn01.is-c-title_wrapper--outside{
		display: block;
		margin-top: 2.5em;
		margin-inline: auto;
	}
}

@media screen and (max-width: 768px) {
	.c-btn01.is-c-title_wrapper--outside{
		margin-top: 1.5em;
	}
}

/* リスト
-------------------------------------------------------- */
.c-results__list.is--grid{
	display: grid;
	grid-template-columns: repeat(3, min(33.5rem, 32.4%));
	justify-content: space-between;
	row-gap: 5rem;
}

.c-results__list > li a{
	display: block;
}
.c-results__list > li a:hover{
	opacity: .7;
}

.c-results__list__thumb{
	border: 1px solid #b5b5b5;
}
.c-results__list__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 330/198;
}

.c-results__list__title{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 1em;
}
.swiper-wrapper .c-results__list__title{
	margin-bottom: auto;
}

.c-results__list__text{
	font-weight: 100;
	margin-top: .8em;
	/* 行数指定 */
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}
a:hover .c-results__list__text{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.c-results__list.is--grid{
		grid-template-columns: 100%;
		row-gap: 4.5rem;
	}

	.c-results__list__title{
		font-size: 1.5rem;
	}
	.c-results__list__text{
		font-size: 1.3rem;
	}
}


/* スワイパー
-------------------------------------------------------- */
.t-swiper--primary__area{
	max-width: 1800px;
	margin: 3.5rem calc(50% - (50 * var(--js_vw))) 0;
}
.t-swiper--primary{
	--swiper_bg_color: #fff;
	width: 98.75%;/* 左1.25%余白 */
	padding-block: 1rem;
	margin-left: auto;
	margin-right: 0;
}
.c-bg--gray .t-swiper--primary{
	--swiper_bg_color: #eff1f4;
}

.t-swiper--primary .swiper-slide{
	opacity: .5;
}
.t-swiper--primary .swiper-slide.swiper-slide-fully-visible,
.t-swiper--primary .swiper-slide.swiper-slide-active{
	opacity: 1;
}
/*
	最後のスライドまできたとき、ウィンドウ幅によっては.swiper-slide-fully-visibleが判定されないので、
	「その時visibleになっている一番左のスライドから数えて◯番目のスライド」と指定する。
	※ブレークポイントごとにcmn.jsのスワイパーのslidesPerViewを要参照。
	
	【もっと具体的に説明】
	slidesPerView:4.3;　のとき、最後のスライドまで到達すると、並びは
	「一番左はちょっと隠れてる」→①active→②next→③visible→④visible　になるはずが
	④がウィンドウ幅によってはvisible判定にならない時があるので、
	「②.swiper-slide-next」の隣の「③.swiper-slide-fully-visible」の隣の「④.swiper-slide」を指定する。

	最後のスライドまで到達していないときは
	①active→②next→③visible→④visible→⑤ちょっと隠れてる
	の並びになるので、↓のCSSは④のスライドに適用され⑤はopacityがかかるからOK。
*/
.t-swiper--primary .swiper-slide-next + .swiper-slide-fully-visible + .swiper-slide{
	opacity: 1;
}
@media screen and (max-width: 1300px) {
	.t-swiper--primary .swiper-slide-next + .swiper-slide-fully-visible + .swiper-slide{
		opacity: .5;
	}
	.t-swiper--primary .swiper-slide-next + .swiper-slide{
		opacity: 1;
	}
}
@media screen and (max-width: 1024px) {
	.t-swiper--primary .swiper-slide-next + .swiper-slide{
		opacity: .5;
	}
	.t-swiper--primary .swiper-slide-next{
		opacity: 1;
	}
}

@media screen and (max-width: 768px) {
	.t-swiper--primary .swiper-slide-next + .swiper-slide,
	.t-swiper--primary .swiper-slide{
		opacity: 1;
	}

	.t-swiper--primary .swiper-button-prev,
	.t-swiper--primary .swiper-button-next{
		display: none;
	}
}


@media screen and (min-width: 1801px) {
	.t-swiper--primary__area{
		width: 150%;
		margin: 4.5rem 0 0 -25%;
	}
	.t-swiper--primary::before,
	.t-swiper--primary::after{
		content: "";
		display: block;
		width: 2rem;
		height: 100%;
		background-image: linear-gradient(90deg, var(--swiper_bg_color) 0%, var(--swiper_bg_color) 25%, transparent 100%);;
		position: absolute;
		top: 0;
		z-index: 5;
	}
	.t-swiper--primary::before{
		left: -1px;
	}
	.t-swiper--primary::after{
		right: -1px;
		transform: scale(-1,1);
	}
}

/* =====
	セミナー情報/企業レポート
======================================================== */
/* リスト
-------------------------------------------------------- */
.c-seminar__list > li a{
	display: block;
	box-shadow: var(--shadow_primary);
	background-color: #fff;
}
.c-seminar__list > li a:hover{
	opacity: .7;
	box-shadow: var(--hover_btn_shadow);
	transform: var(--hover_btn_pos);
}

.c-seminar__list__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 330/186;
}

.c-seminar__list__text-wrapper{
	padding: 2rem 5% 3.5rem;
}

.c-seminar__list__date__box{
	--state_color: var(--font_color);
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.is--recruiting .c-seminar__list__date__box{
	--state_color: var(--red);
}

.c-seminar__list__state,
.c-seminar__list__date{
	margin-bottom: .25em;
}

.c-seminar__list__state{
	flex-shrink: 0;
	font-size: .75em;/* 12/16 */
	color: #fff;
	padding: .35em .55em;
	margin-right: 1em;
	background-color: var(--state_color);
}
.c-seminar__list__date{
	color: var(--state_color);
	flex-grow: 1;
}

.c-seminar__list__title{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: .75em;
}

.c-seminar__list__text{
	margin-top: .5em;
	/* 行数指定 */
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
a:hover .c-seminar__list__text{
	text-decoration: underline;
}


@media screen and (max-width: 768px) {
	.c-seminar__list__text-wrapper{
		padding: 1.5rem 5% 3.5rem;
	}

	.c-seminar__list__date__box{
		font-size: 1.44rem;
	}

	.c-seminar__list__title{
		font-size: 1.62rem;
		margin-top: 1em;
	}
	
	.c-seminar__list__text{
		font-size: 1.44rem;
	}
	#t-seminar .c-btn01.is-c-title_wrapper--outside{
		margin-top: 2.5em;
	}
}

/* =====
	ECノウハウコラム/資料
======================================================== */
.t-column__area{
	display: grid;
	grid-template-columns: repeat(2, 48.4%);
	justify-content: space-between;
	row-gap: 5rem;
	margin-top: 4rem;
}

.t-column__area-block{
	--block_color: var(--red);
}
.t-column__area-block.column--orange{
	--block_color: var(--orange);
}

.t-column__area-block__title{
	display: block;
	font-size: 2rem;
	font-weight: 700;
	padding: .45em 2em .45em 0;
	border-bottom: 5px solid var(--block_color);
	position: relative;
}
.t-column__area-block__title:hover{
	opacity: .7;
}

.t-column__area-block__title::after{
	content: "";
	display: block;
	width: 1.6em;
	height: 1em;
	-webkit-mask: url(../img/cmn/arrow02.svg) no-repeat center/contain;
	mask: url(../img/cmn/arrow02.svg) no-repeat center/contain;
	background-color: var(--block_color);
	position: absolute;
	right: .2em;
	top: calc(50% - .5em);
}

@media screen and (max-width: 768px) {
	.t-column__area{
		grid-template-columns: 100%;
		row-gap: 2.5rem;
		margin-top: 4rem;
		margin-inline: calc(50% - calc(50 * var(--js_vw)));
	}

	.t-column__area-block__title{
		font-size: 1.5rem;
		padding: .2em calc(2em + 3%) .2em 3%;
		border-width: 3px;
	}

	.t-column__area-block__title::after{
		width: 1.34em;/* 40/30 */
		height: .54em;/* 16/30 */
		right: 3%;
		top: calc(50% - .27em);
	}
}


/* リスト
-------------------------------------------------------- */
.c-column__list > li{
	border-bottom: var(--border_primary);
}
.c-column__list > li:nth-last-of-type(1){
	border-bottom: none;
}

.c-column__list > li a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1.4rem 2%;
}
.c-column__list > li a:hover{
	opacity: .7;
}

.c-column__list__thumb{
	flex-shrink: 0;
	width: 8rem;
	border: var(--border_primary);
	overflow: hidden;
}
.c-column__list__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 400/290;
	transition: transform .4s;
}

a:hover .c-column__list__thumb img{
	transform: scale(1.1);
}

.c-column__list__title{
	width: calc(96% - 8rem);
}
a:hover .c-column__list__title{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.c-column__list > li a{
		padding: 1rem 3%;
	}

	.c-column__list__thumb{
		width: 4rem;
	}

	.c-column__list__title{
		font-size: 1.3rem;
		width: calc(96% - 4rem);
	}
}

/* =====
	TRUEコンサルティングサービス一覧
======================================================== */
/* リスト
-------------------------------------------------------- */
.t-seminar__list{
	display: grid;
	grid-template-columns: repeat(3, 32.5%);
	row-gap: 6rem;
	justify-content: space-between;
	margin-top: 7rem;
}

.t-seminar__list > li{
	display: inherit;
    grid-template-rows: subgrid;
	grid-row: span 2;
	row-gap: 0;
}
.t-seminar__list > li a{
	display: inherit;
	grid-template-rows: inherit;
    grid-row: inherit;
	box-shadow: var(--shadow_primary);
	background-color: #fff;
}
.t-seminar__list > li a:hover{
	box-shadow: var(--hover_btn_shadow);
	transform: var(--hover_btn_pos);
}

.t-seminar__list__thumb{
	overflow: hidden;
}
.t-seminar__list__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 390/300;
	transition: transform .4s;
}
a:hover .t-seminar__list__thumb img{
	transform: scale(1.05);
}

.t-seminar__list__title__wrapper{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	min-height: 5em;
	padding: .66em .2em 1.8em;
	position: relative;
}
.t-seminar__list__title__wrapper::after{
	content: "";
	display: block;
	width: 1em;
	height: .6em;
	background: url(../img/cmn/hd_nav-arrow.svg) no-repeat center/contain;
	position: absolute;
	left: calc(50% - .5em);
	bottom: 1em;
}

.t-seminar__list__title{
	font-weight: 700;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.t-seminar__list{
		grid-template-columns: repeat(2, 49%);
		row-gap: 3rem;
		margin-top: 4rem;
	}

	.t-seminar__list__title__wrapper{
		font-size: 1.4rem;
		min-height: 6.2em;/* 174/28 */
	}

}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}

/* =====
	新着情報/セミナー情報
======================================================== */
.t-news__area{
	display: grid;
	grid-template-columns: repeat(2, 48.4%);
	justify-content: space-between;
	row-gap: 5rem;
	margin-top: 3rem;
}

.t-news__area-block{
	--block_color: #282d45;
}
.t-news__area-block.news--orange{
	--block_color: #ea5514;
}

.t-news__area-block__title{
	display: block;
	font-size: 2rem;
	font-weight: 700;
	padding: .45em 2em .45em 0;
	border-bottom: 5px solid var(--block_color);
	position: relative;
}
.t-news__area-block__title:hover{
	opacity: .7;
}

.t-news__area-block__title::after{
	content: "";
	display: block;
	width: 1.6em;
	height: 1em;
	-webkit-mask: url(../img/cmn/arrow02.svg) no-repeat center/contain;
	mask: url(../img/cmn/arrow02.svg) no-repeat center/contain;
	background-color: var(--block_color);
	position: absolute;
	right: .2em;
	top: calc(50% - .5em);
}

.t-news__area-block .c-seminar-news__list,
.t-news__area-block .c-news__list{
	max-height: 48rem;
	overflow: auto;
}

@media screen and (max-width: 768px) {
	.t-news__area{
		grid-template-columns: 100%;
		row-gap: 4.5rem;
		margin-top: 4rem;
		margin-inline: calc(50% - calc(50 * var(--js_vw)));
	}
	
	.t-news__area-block__title{
		font-size: 1.5rem;
		padding: .2em calc(2em + 3%) .2em 3%;
		border-width: 3px;
	}
	.t-news__area-block__title::after{
		width: 1.34em;/* 40/30 */
		height: .54em;/* 16/30 */
		right: 3%;
		top: calc(50% - .27em);
	}

	.t-news__area-block .c-seminar-news__list,
	.t-news__area-block .c-news__list{
		max-height: 36rem;
	}
}


/* セミナー情報
-------------------------------------------------------- */
.c-seminar-news__list > li{
	border-bottom: var(--border_primary);
}
.c-seminar-news__list > li:nth-last-of-type(1){
	border-bottom: none;
}

.c-seminar-news__list > li a{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 2rem 2%;
}
.c-seminar-news__list > li a:hover{
	opacity: .7;
}

.c-seminar-news__list__thumb{
	flex-shrink: 0;
	width: 8rem;
	border: var(--border_primary);
	overflow: hidden;
}
.c-seminar-news__list__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 80/112;
	transition: transform .4s;
}

a:hover .c-seminar-news__list__thumb img{
	transform: scale(1.1);
}

.c-seminar-news__list__text-wrap{
	width: calc(96% - 8rem);
}

.c-seminar-news__list__state{
	font-size: 1.4rem;
	color: var(--red);
	line-height: 1.3;
	width: fit-content;
	padding: .1em .5em 0;
	border: 1px solid currentColor;
}

.c-seminar-news__list__title{
	font-weight: 700;
	margin-top: .75em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.c-seminar-news__list__text{
	font-size: 1.4rem;
	color: #535353;
	margin-top: .25em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
a:hover .c-seminar-news__list__text{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.c-seminar-news__list > li a{
		padding: 2rem 3% 1.5rem;
	}

	.c-seminar-news__list__thumb{
		width: 4rem;
	}

	.c-seminar-news__list__text-wrap{
		width: calc(92% - 4rem);
	}

	.c-seminar-news__list__state{
		font-size: 1.05rem;
	}
	
	.c-seminar-news__list__title{
		font-size: 1.3rem;
	}
	
	.c-seminar-news__list__text{
		font-size: 1.2rem;
		margin-top: .15em;
	}
}

/* 新着情報
-------------------------------------------------------- */
.c-news__list > li{
	border-bottom: var(--border_primary);
}
.c-news__list > li:nth-last-of-type(1){
	border-bottom: none;
}

.c-news__list > li a,
.c-news__list > li .no--link{
	display: block;
	padding: 2rem 5%;
}
.c-news__list > li a:hover{
	opacity: .7;
}

.c-news__list__date{
	font-size: 1.5rem;
	font-weight: 700;
	color: #535353;
}

.c-news__list__title{
	font-size: 1.4rem;
	color: #535353;
	margin-top: .5em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
a:hover .c-news__list__title{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.c-news__list__date{
		font-size: 1.3rem;
	}
	.c-news__list__title{
		font-size: 1.2rem;
		margin-top: .25em;
	}
}


/************************************************************************
	下層ページ共通
**************************************************************************/
/* ページタイトル部分
-------------------------------------------------------- */
#l-head{
	padding-block: 4.5rem;
	background: url(../img/cmn/l-head_bg.png) no-repeat center/cover;
}
.l-head__title{
	font-size: 4.8rem;
	font-weight: 700;
	line-height: 1.5;
	color: #fff;
	text-shadow: 0 .5rem .5rem rgba(0, 0, 0, .1);
	width: fit-content;
	padding-inline: 1.5em;
	margin-inline: auto;
	position: relative;
}
.l-head__title::before{
	content: "";
	display: block;
	width: .9em;
	height: .9em;
	background: url(../img/cmn/icon-bubble.svg) no-repeat center/contain;
	filter: drop-shadow(0 .5rem .5rem rgba(0, 0, 0, .1));
	position: absolute;
	left: 0;
	top: calc(50% - .4em);
}

.l-head__title.icon--download::before{
	background-image: url(../img/cmn/icon-download-wh.svg);
}

@media screen and (max-width: 768px) {
	#l-head{
		padding-block: 3rem;
		background-image: url(../img/cmn/l-head_bg_sp.png);
	}
	.l-head__title{
		font-size: 2.4rem;
	}
}


/* パンクズ
-------------------------------------------------------- */
#breadcrumb{
	display: flex;
	flex-wrap: wrap;
	font-size: .98em;/* 15.69/16 */
	width: 92%;
	max-width: 120rem;
	padding-block: 2.5rem;
	margin-inline: auto;
}

#breadcrumb > li{
	padding-left: 2.5em;
	margin-bottom: .5em;
	position: relative;
}

#breadcrumb > li:nth-of-type(1){
	padding-left: 0;
}

#breadcrumb > li:nth-last-of-type(1){
	color: #b5b5b5;
}

#breadcrumb > li::before{
	content: "\FF1E";
	display: block;
	position: absolute;
	left: 1em;
	top: 0;
}
#breadcrumb > li:nth-of-type(1)::before{
	display: none;
}

#breadcrumb > li.is-long{/* 記事タイトルなど */
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

#breadcrumb > li a{
	display: block;
}
#breadcrumb > li a:hover{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	#breadcrumb{
		font-size: 1.2rem;
		padding-block: 1rem;
	}

	#breadcrumb > li{
		margin-bottom: 0;
	}
}



/************************************************************************
	支援実績/お客様の声
**************************************************************************/
/* =====
	支援実績
======================================================== */
#voice-results .c-results__list{
	width: 92.5%;
	margin-inline: auto;
	margin-top: 7rem;
}

@media screen and (max-width: 768px) {
	#voice-results .c-results__list{
		width: 88.66%;/* 594/670 */
		margin-top: 4rem;
	}
}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}

/* =====
	お客様の声
======================================================== */
#voice-voice{
	border-top: 1px solid #000;
}
#voice-voice .c-title_wrapper{
	align-items: flex-end;
}
#voice-voice .c-title_wrapper .c-btn01{
	margin-right: 2%;
}

@media screen and (max-width: 768px) {
	
}


/* リスト
-------------------------------------------------------- */
.c-voice__list.is--grid{
	display: grid;
	grid-template-columns: repeat(3, min(33.5rem, 32.4%));
	justify-content: space-between;
	row-gap: 5rem;
}

#voice-voice .c-voice__list{
	width: 92.5%;
	margin-inline: auto;
	margin-top: 5rem;
}

.c-voice__list > li{
	display: inherit;
    grid-template-rows: subgrid;
    grid-row: span 3;/* パーツの数 */
	row-gap: 0;
}

.c-voice__list > li a{
	display: inherit;
    grid-template-rows: inherit;
    grid-row: inherit;
	background-color: #fff;
}
.c-voice__list > li a:hover{
	opacity: .7;
}

.c-voice__list__thumb img{
	width: 100%;
	aspect-ratio: 16/9;
	overflow: hidden;
	object-fit: cover;
}

.c-voice__list__text-wrapper{
	display: inherit;
    grid-template-rows: inherit;
    grid-row: span 2;
	padding: 1.5rem 4% 3rem;
}

.c-voice__list__title{
	font-size: 1.8rem;
	font-weight: 700;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}
.c-voice__list__text{
	margin-top: .25em;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}
.c-voice__list > li a:hover .c-voice__list__text{
	text-decoration: underline;
}

@media screen and (max-width: 768px) {
	.c-voice__list.is--grid{
		grid-template-columns: 100%;
		row-gap: 4.5rem;
	}
	#voice-voice .c-voice__list{
		width: 88.66%;/* 594/670 */
		margin-top: 4rem;
	}
}

/* =====
	
======================================================== */

@media screen and (max-width: 768px) {
	
}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}

/* =====
	
======================================================== */

@media screen and (max-width: 768px) {
	
}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}


/************************************************************************
	無料ダウンロード資料
**************************************************************************/
/* =====
	タブボタン
======================================================== */
.download-list__tab-btn__wrapper{
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	row-gap: .5rem;
	margin-top: 5rem;
	border-bottom: 2px solid var(--navy);
}

.download-list__tab-btn__wrapper a{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	font-weight: 700;
	min-height: 3.2em;
	line-height: 1.5;
	border-radius: 1rem 1rem 0 0;
	transition: background-color .4s;
}
.download-list__tab-btn__wrapper a:hover{
	background-color: #eff1f4;
}
.download-list__tab-btn__wrapper a.is--active{
	color: #fff;
	background-color: var(--navy);
}
.download-list__tab-btn__wrapper a span{
	display: block;
}

@media screen and (max-width: 768px) {
	.download-list__tab-btn__wrapper{
		grid-template-columns: repeat(3, 1fr);
		row-gap: 1rem;
		column-gap: .5rem;
		width: 106%;/* 730/690 */
		margin-top: 4rem;
		margin-left: -3%;
		padding-bottom: 3rem;
		border: none;
		position: relative;
	}
	.download-list__tab-btn__wrapper::after{
		content: "";
		display: block;
		width: 104%;
		height: 1px;
		background-color: var(--navy);
		position: absolute;
		left: -2%;
		bottom: 0;
	}

	.download-list__tab-btn__wrapper a{
		font-size: 1.4rem;
		min-height: 3.57em;/* 100/28 */
		padding: .5rem .75rem;
		border-radius: .5rem;
		background-color: #eff1f4;
	}
}


/* =====
	リスト
======================================================== */
.download-list{
	display: grid;
	grid-template-columns: repeat(3, min(38rem, 32.4%));
	justify-content: space-between;
	margin-top: 7rem;
}

.download-list > li{
	display: inherit;
    grid-template-rows: subgrid;
    grid-row: span 4;/* パーツの数 */
	margin-bottom: 8rem;
}

.download-list > li > a{
	display: inherit;
    grid-template-rows: inherit;
    grid-row: inherit;
	row-gap: 1.75rem;
}
.download-list > li > a:hover{
	opacity: .7;
}

.download-list__thumb{
	background-color: #eff1f4;
	position: relative;
}
.download-list__thumb::before{
	content: "";
	display: block;
	padding-top: 63.16%;
}
.download-list__thumb img{
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: contain;
	position: absolute;
	inset: 0;
}

.download-list__cat{
	font-size: 1.8rem;
	font-weight: 700;
	width: fit-content;
	padding: .25em .75em;
	background-color: #e5e5e5;
}

.download-list__title{
	font-size: 2rem;
	font-weight: 700;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.download-list__btn{
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
	color: var(--red);
	padding: .75em calc(10% + 1.2em);
	border: 1px solid var(--red);
	border-radius: 5em;
	position: relative;
	transition: color .4s, background-color .4s;
}
a:hover .download-list__btn{
	color: #fff;
	background-color: var(--red);
}
.download-list__btn::before{
	content: "";
	display: block;
	width: 1.2em;
	height: 1.2em;
	-webkit-mask: url(../img/cmn/icon-download02.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-download02.svg) no-repeat center/contain;
	background-color: currentColor;
	position: absolute;
	left: 10%;
	top: calc(50% - .6em);
}

@media screen and (max-width: 768px) {
	.download-list{
		grid-template-columns: 100%;
		margin-top: 3rem;
	}
	.download-list > li{
		margin-bottom: 7rem;
	}

	.download-list__cat{
		font-size: 1.5rem;
	}

	.download-list__title{
		font-size: 1.8rem;
	}

	.download-list__btn{
		font-size: 1.5rem;
	}
}

/* =====
	ページナビ
======================================================== */
.wp-pagenavi{
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	font-size: 2.4rem;
	font-weight: 500;
	color: #b5b5b5;
	width: fit-content;
	max-width: 100%;
	padding: 2em;
	margin-inline: auto;
	position: relative;
	z-index: 1;
}
.wp-pagenavi a, .wp-pagenavi span{
	display: block;
	line-height: 1;
	letter-spacing: 0;
	padding: .5em;
	margin: 0 .2em;
}

.wp-pagenavi .current{
	font-weight: 700;
	color: var(--red);
	position: relative;
}
.wp-pagenavi .current::after{
	content: "";
	display: block;
	width: 1em;
	height: 1px;
	background-color: currentColor;
	position: absolute;
	bottom: 0;
	left: calc(50% - .5em);
}
.wp-pagenavi .page:hover{
	color: var(--red);
}

.wp-pagenavi .previouspostslink, .wp-pagenavi .nextpostslink{
	text-indent: -999999999999px;
	width: 1.5em;
	height: 1.5em;
	position: absolute;
	top: calc(50% - .75em);
}
.wp-pagenavi .previouspostslink{
	left: 0;
}
.wp-pagenavi .nextpostslink{
	right: 0;
}

.wp-pagenavi .previouspostslink::before, .wp-pagenavi .nextpostslink::before{
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	-webkit-mask: url(../img/cmn/arrow03.svg) no-repeat center/contain;
	mask: url(../img/cmn/arrow03.svg) no-repeat center/contain;
	background-color: #b3b3b3;
	position: absolute;
	left: 0;
	top: 0;
	transition: background-color .4s;
}
.wp-pagenavi .previouspostslink::before{
	transform: scale(-1,1);
}
.wp-pagenavi .previouspostslink:hover::before, .wp-pagenavi .nextpostslink:hover::before{
	background-color: var(--red);
}


@media screen and (max-width: 768px) {
	.wp-pagenavi{
		font-size: 1.8rem;
		padding: 0 2em;
	}
}


/************************************************************************
	無料ダウンロード資料　詳細
**************************************************************************/
/* =====
	冒頭
======================================================== */
#download-article{
	padding: 8rem 0 10rem;
}

.download-article__title-wrap{
	width: 92%;
	max-width: 120rem;
	padding-bottom: 1.75rem;
	margin-inline: auto;
	position: relative;
}
.download-article__title-wrap::after{
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background-color: var(--navy);
	position: absolute;
	left: 0;
	bottom: 0;
}

#download-article__title{
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.5;
	color: #333;
	margin-top: .25em;
}

.download-article__thumb{
	width: 90%;
	max-width: 72rem;
	margin: 3.75rem auto 0;
}
.download-article__thumb img{
	width: 100%;
}

@media screen and (max-width: 768px) {
	#download-article{
		padding: 3.5rem 0 5rem;
	}

	.download-article__title-wrap{
		width: 100%;
		max-width: none;
		padding: 0 4% 1rem;
	}
	.download-article__title-wrap::after{
		height: 1px;
	}

	#download-article .download-list__cat{
		font-size: 1.35rem;
	}

	#download-article__title{
		font-size: 1.5rem;
		line-height: 1.75;
		margin-top: .75em;
	}

	.download-article__thumb{
		width: 96%;
		max-width: none;
		margin: 2.5rem auto 0;
	}
}


/* =====
	ダウンロードはこちら
======================================================== */
.download-article__container{
	width: 92%;
	max-width: 120rem;
	margin: 6rem auto 0;
	border-radius: 1rem;
	background-color: #eff1f4;
}

.download-article__container__line-guidance{
	font-size: 1.8rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
	padding: 1em;
	border-radius: 1rem 1rem 0 0;
	background-color: var(--navy);
	position: relative;
}
.download-article__container__line-guidance::after{
	content: "";
	display: block;
	width: 1.4em;
	height: .6em;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: var(--navy);
	position: absolute;
	left: calc(50% - .7em);
	top: calc(100% - 1px);
}

.download-article__inner{
	width: 92%;
	max-width: 102rem;
	padding: 5rem 0 7rem;
	margin-inline: auto;
}

.download-article__sub-title{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	padding: .25em 2% .75em;
}




@media screen and (max-width: 768px) {
	.download-article__container{
		width: 100%;
		max-width: none;
		margin: 5rem auto 0;
		border-radius: .5rem;
	}

	.download-article__container__line-guidance{
		font-size: 1.4rem;
		padding: .6em;
		border-radius: .5rem .5rem 0 0;
	}

	.download-article__inner{
		padding: 3rem 0 7rem;
	}

	.download-article__sub-title{
		font-size: 1.5rem;
		line-height: 1.75;
		padding: 0 0 1em;
	}

}


/* エディタ部分
-------------------------------------------------------- */
.download-article__content{
	padding: 2.75rem 2%;
	border-top: 1px solid #b5b5b5;
}

.download-article__content > *{
	margin-top: 2.75rem;
}
.download-article__content > *:nth-of-type(1){
	margin-top: 0;
}

@media screen and (max-width: 768px) {
	.download-article__content{
		font-size: 1.3rem;
		padding: 1.75rem 0;
		border-top: 1px solid #b5b5b5;
	}

	.download-article__content > *{
		margin-top: 2.25rem;
	}
}


/* =====
	フォーム
======================================================== */
/* テーブル
-------------------------------------------------------- */
#download-form{
	padding: 0 1.5%;
	margin: 3rem auto 0;
}

.download-form_table{
	font-size: 1.8rem;
	width: 100%;
}

.download-form_table th{
	font-weight: 700;
	vertical-align: text-top;
	width: 24rem;
	padding: 1.15em .5em 1.15em 0;
	position: relative;
}
.download-form_table th.required::after{
	content: "\203B";
	font-size: .89em;/* 16/18 */
	color: var(--red);
}

.download-form_table td{
	width: calc(100% - 24rem);
	padding: .6em 0;
}

@media screen and (max-width: 768px) {
	#download-form{
		padding: 0;
		margin: 3rem auto 0;
	}

	.download-form_table,
	.download-form_table tbody,
	.download-form_table tr,
	.download-form_table th,
	.download-form_table td{
		display: block;
		width: 100%;
	}
	.download-form_table{
		font-size: 1.35rem;
	}

	.download-form_table th{
		padding: 2.75em 0 .5em;
		position: relative;
	}
	.download-form_table td{
		padding: 0;
	}
}


/* input系の成形
-------------------------------------------------------- */
#download-form #mailformpro input[type="text"], #download-form #mailformpro input[type="email"], #download-form #mailformpro input[type="tel"], #download-form #mailformpro input[type="date"], #download-form #mailformpro textarea, #contact_form form select{
	color: var(--font_color);
	width: 100%;
	padding: 1em .5em;
	border: 1px solid #b5b5b5;
	box-shadow: none;
}
#download-form #mailformpro textarea{
	width: 100% !important;
	height: 11.1em !important;/* 200/18 */
}
.mfp_element_all {
    max-width: 100% !important;
}

@media screen and (max-width: 768px) {
	#download-form #mailformpro input[type="text"], #download-form #mailformpro input[type="email"], #download-form #mailformpro input[type="tel"], #download-form #mailformpro input[type="date"], #download-form #mailformpro textarea, #contact_form form select{
		padding: .75em .5em;
	}

	#download-form #mailformpro textarea{
		height: 14.8em !important;/* 200/13.5 */
	}
}


/* ボタン
-------------------------------------------------------- */
.download-form__attention{
	text-align: center;
	letter-spacing: .08em;
	margin-top: 1em;
}
.download-form__attention:nth-of-type(1){
	margin-top: 1.75em;
}

.download-form__submit-wrap{
	max-width: 37rem !important;/* 370/18 */
	width: 80%;
	margin: 2rem auto 0;
}
#download-form #mailformpro .mfp_element_submit{
	display: block;
	font-size: 1.8rem;
	font-weight: 700;
	text-shadow: none;
	letter-spacing: 0;
	color: #fff;
	text-align: center;
	max-width: none !important;
	width: 100%;
	padding: .75em calc(15% + 1.2em);
	background: var(--red);
	position: relative;
	border-radius: 5em;
	border: 1px solid var(--red);
	transition: color .4s, background-color .4s;
}
#download-form #mailformpro .mfp_element_submit:hover{
	color: var(--red);
	background-color: #fff;
}
#download-form #mailformpro .mfp_element_submit::before{
	content: "";
	display: block;
	width: 1.2em;
	height: 1.2em;
	-webkit-mask: url(../img/cmn/icon-download02.svg) no-repeat center/contain;
	mask: url(../img/cmn/icon-download02.svg) no-repeat center/contain;
	background-color: currentColor;
	position: absolute;
	left: 15%;
	top: calc(50% - .6em);
}

#download-form #mailformpro .mfp_element_submit:hover{
	box-shadow: none;
}

@media screen and (max-width: 768px) {
	.download-form__attention{
		font-size: 1.2rem;
		line-height: 2;
		letter-spacing: 0;
	}

	.download-form__submit-wrap{
		max-width: 27.5rem !important;
		width: 80%;
	}

	#download-form #mailformpro .mfp_element_submit{
		font-size: 1.35rem;
	}

}


/* 確認画面
-------------------------------------------------------- */
div.mfp_buttons{
	display: flex;
	align-items: center;
	justify-content: center;
}

@media screen and (max-width: 768px) {

}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}


/************************************************************************
	
**************************************************************************/
/* =====
	
======================================================== */

@media screen and (max-width: 768px) {
	
}


/* 
-------------------------------------------------------- */


@media screen and (max-width: 768px) {

}