﻿@charset "UTF-8";
article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section{display:block}a,hr{padding:0}abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,ul,var,video{box-sizing:border-box;margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0}ins,mark{background-color:#ff9;color:#000}body{line-height:1}ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;font-size:100%;vertical-align:baseline;background:0 0}ins{text-decoration:none}mark{font-style:italic;font-weight:700}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{height:1px;border:0;border-top:1px solid #ccc;margin:1em 0}input,select{vertical-align:middle}
/* ============================================================

============================================================ */
html{
	width:100%;
	height:100%;
	-webkit-text-size-adjust:none;
	-webkit-font-smoothing: antialiased;
	font-size:62.5%;
}
body{
	width:100%;
	font-family:-apple-system, BlinkMacSystemFont, Helvetica Neue, Helvetica, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
	line-height:1.8em;
	font-size:1.6rem;
	color:#333;
	background:#fff;
}
h1,h2,h3,h4,h5,h6{
	font-weight:normal;
}
a{
	color:#333;
	cursor:pointer;
	transition:opacity 0.2s ease 0s, color 0.2s ease 0s;
	/*text-decoration:none;*/
	text-decoration:underline;
}
a:hover{
	opacity:0.7;
}
img{
	vertical-align:top;
}
small{
	font-size:0.9em;
}
.text_center{
	text-align:center;
}
.text_right{
	text-align:right !important;
}
.text_left{
	text-align:left !important;
}
.text_red{
	color:#de3023 !important;
}
a.text_red:hover{
	color:#FF6955 !important;
}
.text_blue{
	color:#19528a !important;
}
.text_yellow{
	color:#e0a72a !important;
}
.text_yellow2{
	color:#f1bc1a !important;
}
.text_gray{
	color:#555 !important;
}
.text_meeting{
	color:#e0a72a !important;
}
.text_greenfile{
	color:#1aab4a !important;
}
.text_entrance{
	color:#d24726 !important;
}
.text_progress{
	color:#944924 !important;
}
.text_sup{
	font-size:0.6em;
	vertical-align:super;
}
.text_attention{
	font-size:0.8em;
	line-height:1.6em;
}
.text_bold,
.text_bold *,
.text_heavy,
.text_heavy *{
	font-family:'Zen Maru Gothic';
	font-weight:700;
	font-feature-settings:"palt" 1;
}
.text_heavy,
.text_heavy *{
	font-weight:900;
}
.text_heading{
	margin-bottom:35px;
	font-size:3.2rem;
	line-height:1.3em;
	font-feature-settings:"palt" 1;
	letter-spacing:0.05em;
}
.text_nowrap{
	white-space:nowrap;
}
.text_highlight {
	background: linear-gradient(transparent 80%, #fff800 0%);
	line-height: 1.3em;
}
img{
	display:block;
	max-width:100%;
	min-height:auto;
}
img.inline{
	display:inline-block;
}
.inline{
	display:inline-block;
}
.img_icon{
	display:inline-block;
	width:100%;
	max-width:0.9em;
	margin:0 0 0 0.4em;
	vertical-align:middle;
	position:relative;
	top: -0.12em;
}
.alpha{
	backface-visibility:hidden;
	transition:opacity 0.2s ease 0s;
	zoom:1;
}
.alpha:hover{
	opacity:0.6;
}
.inview{
	backface-visibility:hidden;
}
.fadein{
	backface-visibility:hidden;
	transition:opacity 0.8s ease 0.6s, top 0.8s ease 0.6s;
	opacity:0;
	position:relative;
	top:40px;
}
.fadein.visible{
	opacity:1;
	top:0;
}
.bn_cta{
	display:inline-block;
	box-sizing:border-box;
	border:solid 4px #fff;
	padding:25px 70px 25px 40px;
	position:relative;
	color:#fff;
	vertical-align:middle;
	font-size:2.8rem;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: normal;
	font-feature-settings:"palt" 1;
	border-radius:100px;
	line-height:1.2;
	text-decoration:none;
	text-align:center;
	cursor:pointer;
	overflow:hidden;
	background:linear-gradient(90deg,rgba(231, 56, 13, 1) 0%, rgba(255, 145, 0, 1) 100%);
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.2));
	transition:background-color 0.2s ease 0s, filter 0.2s ease 0s, color 0.2s ease 0s;
}
.cta_set.mainvisual_cta .bn_cta{
	font-size:3.6rem;
}
.bn_cta:after{
	position:absolute;
	content:"";
	background:url(../../../../_lp/2025_01/assets/img/icon_arrow_right_white.svg) no-repeat center center/cover;
	top:50%;
	right:25px;
	transform:translateY(-50%);
	width:3.4rem;
	height:2.4rem;
}
.bn_cta.bn_cta_border{
	border:none;
}
.bn_cta.bn_cta_border:before{
	display:block;
	position:absolute;
	content:"";
	border:solid 2px #fff;
	border-radius:100px;
	top:5px;
	bottom:5px;
	left:5px;
	right:5px;
}
/*.bn_cta:hover,*/
.cta_wrap:hover{
	opacity:1;
	filter: drop-shadow(0px 0px 5px rgba(255,255,255,0.8));
}
.bn_cta.meeting,
.bn_cta.greenfile,
.bn_cta.entrance{
	top:0;
	transition:opacity 0.2s ease 0s, top 0.2s ease 0s, filter 0.2s ease 0s;
}
.bn_cta.meeting{
	border:solid 1px #e0a72a;
	color:#d39313;
}
.bn_cta.greenfile{
	border:solid 1px #1eac4a;
	color:#1eac4a;
}
.bn_cta.entrance{
	border:solid 1px #d34727;
	color:#d34727;
}
.bn_cta.meeting:hover,
.bn_cta.greenfile:hover,
.bn_cta.entrance:hover{
	top:-3px;
	opacity:0.6;
	filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.5));
}
.cta_set{
	display:flex;
	align-items:center;
	justify-content:space-between;
	max-width:640px;
	margin:0 auto;
	padding-bottom:1.5%;
	position:relative;
	top:0;
	transition:top 0.2s ease 0s;
	text-decoration:none;
	cursor:pointer;
	z-index:10;
}
.cta_set:hover{
	top:-3px;
	opacity:1;
}
.cta_set .cta_mockup{
	width:49.5%;
	position:absolute;
	top:-25px;
	left:-60px;
	z-index:20;
}
.cta_set.mainvisual_cta .cta_mockup{
	width:28.7%;
	top:-20px;
	left:140px;
}
.cta_set .cta_wrap{
	width:100%;
	padding:15px;
	position:relative;
	overflow:hidden;
}
.cta_set .cta_time{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap:.2rem;
	color:#f26107;
	background:#f26107;
	border-radius:50%;
	font-size:1.6rem;
	font-weight:700;
	width:11.8rem;
	height:11.8rem;
	position:absolute;
	left:14px;
	top:50%;
	transform:translateY(-50%);
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.2));
	z-index:10;
}
.cta_set .cta_time:before{
	display:block;
	width:12.8rem;
	height:12.8rem;
	background:#fff;
	border:solid 4px #fff;
	border-radius:50%;
	position:absolute;
	content:"";
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	z-index:-1;
}
.cta_set .cta_time:after{
	display:block;
	width:11.6rem;
	height:11.6rem;
	border:solid 6px #f26107;
	background:#fff;
	border-radius:50%;
	position:absolute;
	content:"";
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	z-index:-1;
}
.cta_set .cta_time .cta_time_num{
	font-size:6rem;
	font-family: 'Zen Maru Gothic';
}
.cta_set .cta_time .cta_time_unit{
	font-size:1.6rem;
}
.cta_set .cta_wrap .bn_cta{
	display:block;
	width:100%;
	position:relative;
	z-index:1;
	text-align:right;
}
.cta_set .cta_wrap .bn_cta span{
	display:block;
	font-size:2.1rem;
}
.cta_set .cta_wrap .bn_cta .bn_cta_border{
	position:absolute;
	content:"";
	left:0;
	top:0;
	border:solid 4px #fff;
	width:100%;
	height:100%;
}
.cta_pop{
	display:inline-block;
	position:relative;
	left:50%;
	transform:translateX(-50%);
	z-index:1;
	margin-bottom:10px;
	padding:12px 20px 14px;
	border-radius:30px;
	background:#e86905;
	color:#fff;
	font-size:2rem;
	font-weight:700;
	line-height:1;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
	span{
		color:#fff800;
	}
}
.cta_pop:after{
	content:"";
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 8px 0 8px;
	border-color: #e86905 transparent transparent transparent;
	position:absolute;
	bottom:-12px;
	left:50%;
	margin-left:-16px;
}
.link_external{
	color: #e0a72a !important;
}
.link_external:after{
	content:"";
	display:inline-block;
	width:0.9em;
	height:0.9em;
	margin:0 0 0 4px;
	background:url(../../../../_lp/2025_01/assets/img/icon_external_yellow.svg) no-repeat center center/cover;
}

/* =====================================
contents_wrapper
===================================== */
.contents_wrapper{
	width:100%;
	position:relative;
}
.contents_wrapper.bg_grad{
	background: linear-gradient(to right, #ffddd1 0%,#fff2be 50%,#def0c0 100%);
}
.contents_inner{
	width:100%;
	max-width:1080px;
	padding-top:90px;
	padding-bottom:90px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:border-box;
	position:relative;
}
@media screen and (max-width:1200px){
	.contents_inner{
		padding-left:2%;
		padding-right:2%;
	}
}
.contents_circle_bottom:after{
	content:"";
	display:block;
	width:100%;
	height:calc(100/1400 * 100vw);
	position:absolute;
	bottom:calc(100% - (21/300 * 100vw));
	left:0;
	background: url(../../../../_lp/2025_01/assets/img/img_circle_bottom.svg) no-repeat center center/auto;
}
.contents_wave_top:before,
.contents_wave_bottom:before{
	content:"";
	display:block;
	width:100%;
	height:24px;
	position:absolute;
	top:0;
	left:0;
	background: url(../../../../_lp/2025_01/assets/img/img_wave_top.svg) repeat-x center center/auto;
}
.contents_wave_bottom:before{
	top:auto;
	bottom:0;
	background: url(../../../../_lp/2025_01/assets/img/img_wave_bottom.svg) repeat-x center center/auto;
}
.contents_wave_top.white:before{
	background: url(../../../../_lp/2025_01/assets/img/img_wave_top_white.svg) repeat-x center center/auto;
}
.contents_heading{
	margin:10px 0 40px;
	text-align:center;
}
.contents_heading_en{
	display:inline-block;
	margin:0 0 20px;
	position:relative;
	z-index:1;
	padding:6px 15px 8px;
	border-radius:10px;
	background:#e0a72a;
	color:#fff;
	font-size:2.4rem;
	letter-spacing:0.1em;
	line-height:1;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
}
.contents_heading_en:after{
	content:"";
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 14px 14px 0 14px;
	border-color: #e0a72a transparent transparent transparent;
	position:absolute;
	bottom:-14px;
	left:50%;
	margin-left:-14px;
}
.contents_heading_en.white{
	background:#fff;
	color:#e0a72a;
}
.contents_heading_en.white:after{
	border-color: #fff transparent transparent transparent;
}
.contents_heading_ja{
	font-size:4.5rem;
	line-height:1.2em;
}
.contents_heading_ja.medium{
	font-size:3rem;
}
.contents_heading_ja .text_number{
	font-size:calc(4.5rem * 1.5);
	letter-spacing:-.1em;
}
.heading_logo{
	display:inline-block;
	width:4.5em;
	margin:5px 0.2em 0;
	vertical-align: bottom;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}

/* =====================================
header
===================================== */
#header{
	display:flex;
	width:100%;
	height:75px;
	padding:0;
	position:fixed;
	top:0;
	z-index:100;
	box-sizing:border-box;
	background:#fff;
	transition:box-shadow 0.3s ease 0.3s, background 0.3s ease 0.3s;
}
.header_inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:1rem;
	max-width:1080px;
	padding:0;
}
@media screen and (max-width:1080px){
	.header_inner{
		padding:0 2%;
	}
}
.header_logo_wrap{
	display:flex;
	align-items:center;
	gap:2rem;
	width:45%;
}
.header_logo{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	flex-grow:1;
	width:24.5rem;
	border-radius:10px 0 0 10px;
	box-sizing:border-box;
}
.header_logo_service{
	width:12.8rem;
}
.header_logo_rvsta{
	margin-left:1rem;
	width:10.6rem;
}
.header_textlink{
	font-size:1.3rem;
	line-height:1.2;
	text-decoration:underline;
}
.header_button{
	display:flex;
	gap:9px;
	width:53.2%;
}
.header_button > li{
	width:calc((100% / 3) - 6px);
}
.header_button a{
	display:flex;
	justify-content:space-between;
	align-items:center;
	border-style:solid;
	border-width:2px;
	border-radius:50px;
	box-sizing:border-box;
	font-weight:bold;
	font-size:1.4rem;
	line-height:1.2;
	text-decoration:none;
	padding:1.1rem .4rem 1.1rem 2.4rem;
	height:4.5rem;
}
.header_button .header_document{
	color:#fff;
	background:#e86905;
	border-color:#e86905;
	.icon_service,
	.icon_login{
		display:inline-block;
		width:2rem;
		position:relative;
		vertical-align:middle;
	}
	.icon_arrow{
		margin-right:.5rem;
		width:1.4em;
	}
}
.header_button .header_consult{
	color:#e86905;
	background:#fff;
	border-color:#e86905;
	.icon_service,
	.icon_login{
		display:inline-block;
		width:2rem;
		position:relative;
		vertical-align:middle;
	}
	.icon_arrow{
		margin-right:.5rem;
		width:1.4em;
	}
}
.header_button .header_login{
	color:#1eac4a;
	background:#fff;
	border-color:#1eac4a;
	padding-left:.4rem;
	.icon_service,
	.icon_login{
		display:inline-block;
		width:2.2rem;
		position:relative;
		vertical-align:middle;
	}
	.icon_login{
		margin:0 .6rem;
		width:1.4rem;
	}
}

/* =====================================
contents_mainvisual
===================================== */
#contents_mainvisual{
	background:#fff;
	background: url(../../../../_lp/2025_01/assets/img/img_mainvisual_bg.webp) no-repeat center center/cover;
}
#contents_mainvisual > .contents_inner{
	display:flex;
	justify-content:space-between;
	align-items:center;
	flex-direction:row-reverse;
	margin-top:75px;
	padding-top:70px;
	padding-bottom:50px;
}
.mv_fadein{
	backface-visibility:hidden;
	transition:opacity 0.8s ease 0.8s, top 0.8s ease 0.8s;
	opacity:0;
	position:relative;
	right:-15px;
	top:40px;
}
@media screen and (min-width:1401px){
	.mv_fadein{
		right:-33px;
	}
}
body.loaded_mv .mv_fadein{
	opacity:1;
	top:0;
}
.mainvisual_text{
	width:52.3%;
	flex-shrink:0;
	padding:30px;
	border-radius:30px;
	position:relative;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
	background:#fff;
}
.mainvisual_text_service{
	margin:0 0 10px;
	font-size:3rem;
	font-family: "Noto Sans JP", sans-serif;
	font-feature-settings:"palt";
	font-weight: 700;
	font-style: normal;
	line-height:1.2;
}
.mainvisual_text_service .mainvisual_text_bold{
	font-size:calc(3rem * 1.6);
}
.mainvisual_text_service .mainvisual_text_bold_green{
	color:#1eac4a;
	font-size:calc(3rem * 2);
}
.mainvisual_text_logo{
	max-width:390px;
	margin-bottom:25px;
}
@media screen and (min-width:1860px){
	.mainvisual_text_service{
		font-size:2vw;
	}
	.mainvisual_text_logo{
		max-width:60%;
	}
}
.mainvisual_image{
	flex-grow:1;
	box-sizing:border-box;
	position:relative;
	overflow:hidden;
	/*transition:opacity 1.5s cubic-bezier(0.87, 0, 0.13, 1) 0.8s, top 1s ease 0.8s;*/
}
.mainvisual_image_ui{
	width: 84%;
	position: absolute;
	top: 10%;
	left: 7.6%;
	border-radius: 3px;
}
.contents_mainvisual_bottom:after{
	content:"";
	display:block;
	width:100%;
	height:calc(100/1400 * 100vw);
	position:absolute;
	top:calc(100% - (21/300 * 100vw));
	left:0;
	background: url(../../../../_lp/2025_01/assets/img/img_mainvisual_bottom.svg) no-repeat center center/auto;
}

/* =====================================
contents_prize
===================================== */
#contents_prize .contents_inner{
	padding-top:30px;
	padding-bottom:0;
}
#contents_prize .prize_point{
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	gap:20px;
	max-width:720px;
	margin:0 auto;
	padding-top:0;
	padding-bottom:10px;
	/*filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));*/
}
#contents_prize .prize_badge{
	backface-visibility:hidden;
	opacity:0;
	position:relative;
	top:40px;
}
#contents_prize .prize_01{
	width: 24.5rem;
	transition:opacity 0.8s ease 1.4s, top 0.8s ease 1.4s;
}
#contents_prize .prize_02{
	width: 20.5rem;
	transition:opacity 0.8s ease 1.7s, top 0.8s ease 1.7s;
}
#contents_prize .prize_03{
	width: 20.5rem;
	transition:opacity 0.8s ease 2s, top 0.8s ease 2s;
}
#contents_prize .prize_point.visible .prize_badge{
	opacity:1;
	top:0;
}
.prize_bg{
	width:100%;
	position:absolute;
	top:0;
}

/* =====================================
contents_safety
===================================== */
#contents_safety{
	background:#fff;
}
#contents_safety .contents_inner{
	padding-top:40px;
	padding-bottom:30px;
}
#contents_safety .contents_heading_ja span{
	color:#1eac4a;
}
#contents_safety .safety_item{
	margin-top:70px;
}
#contents_safety .safety_item_list{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	column-gap:20px;
	row-gap:55px;
}
#contents_safety .safety_item_list > li{
	background:#f2f2f2;
	border-radius:30px;
	font-size:2rem;
	font-weight:700;
	padding:90px 26px 26px;
	text-align:center;
	width: calc((100% - 40px) / 3);
	position:relative;
}
#contents_safety .safety_item_list .safety_icon{
	width:10rem;
	position:absolute;
	top: -30px;
	left:50%;
	transform:translateX(-50%);
}
.safety_bg{
	width:100%;
	z-index:0;
	position:absolute;
	left:0;
	bottom:0;
}

/* =====================================
contents_strength
===================================== */
#contents_strength{
	background: linear-gradient(to bottom,  #f1faf2 0%,#ccebcd 54%,#d1e59e 100%);
}
#contents_strength .contents_inner{
	padding-top:200px;
}
#contents_strength .contents_heading{
	margin:0 0 60px;
}
#contents_strength .contents_heading_ja strong{
	display:block;
	margin:.3em 0 0;
}
#contents_strength .contents_heading_ja strong span{
	color:#1eac4a;
}
.strength_heading_deco{
	display:inline-block;
	position:relative;
}
.strength_heading_deco:before,
.strength_heading_deco:after{
	content:"";
	display:block;
	width:16px;
	height:25px;
	position:absolute;
	bottom:3px;
}
.strength_heading_deco:before{
	left:-30px;
	background:url(../../../../_lp/2025_01/assets/img/img_strength_heading_deco_left.webp) no-repeat center center/contain;
}
.strength_heading_deco:after{
	right:-30px;
	background:url(../../../../_lp/2025_01/assets/img/img_strength_heading_deco_right.webp) no-repeat center center/contain;
}
.contents_strength_top{
	position:relative;
}
.contents_strength_top:after{
	content:"";
	display:block;
	width:100%;
	height:calc(100/1400 * 100vw);
	position:absolute;
	top:0;
	left:0;
	background: url(../../../../_lp/2025_01/assets/img/img_strength_top.svg) no-repeat center center/auto;
}
.strength_item_inner{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:stretch;
	gap:20px;
}
.strength_item{
	display:flex;
	justify-content:space-between;
	flex-direction:row-reverse;
	width:calc(100% / 2 - 10px);
	padding:30px;
	box-sizing:border-box;
	background:#fff;
	border-radius:20px;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.strength_item:first-child{
	width:100%;
}
.strength_item_image{
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	width:44%;
}
.strength_item:first-child .strength_item_image{
	width:32%;
}
.strength_item_text{
	width:55%;
}
.strength_item:first-child .strength_item_text{
	width:65%;
}
.strength_item_num{
	color:#fff;
	display:inline-block;
	margin:0 0 10px;
	padding:6px 12px 8px;
	border-radius:10px;
	background:#1eac4a;
	font-size:2.1rem;
	font-weight:700;
	letter-spacing:0.05em;
	span{
		display:inline-block;
		margin:-10px 0 0 6px;
		font-size:3rem;
		vertical-align:middle;
	}
}
.strength_item_title{
	margin:0 0 20px;
	font-size:3.3rem;
	line-height:1.2em;
	min-width:47rem;
	span{
		color:#1eac4a;
	}
}
@media screen and (min-width:769px) and (max-width:1400px){
	.strength_item_title{
		min-width:40vw;
	}
}
.strength_item_desc{
	text-align:justify;
}
.strength_item_desc small{
	display:block;
	margin:0.5em 0 0 0;
	line-height:1.6em;
}
.strength_item_desc a{
	color:#1eac4a;
}
#contents_strength .cta_set{
	margin-top:80px;
}

/* =====================================
contents_price
===================================== */
#contents_price{
	background:#f8f9f2;
}
#contents_price .contents_inner{
	padding-top:40px;
	padding-bottom:40px;
}
#contents_price .contents_heading_ja span{
	color:#1eac4a;
}
#contents_price .price_item_list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:stretch;
	gap:20px;
	margin:0 auto 50px;
}
#contents_price .price_item_list > li{
	background:#fff;
	border:solid 2px #1eac4a;
	border-radius:3rem;
	font-size:3.3rem;
	padding:40px 35px;
	text-align:center;
	position:relative;
	width: calc((100% - 20px) / 2);
}
#contents_price .price_item_list > li:first-child{
	width:100%;
}
#contents_price .price_item_list > li:nth-child(2):before{
	position:absolute;
	content:"";
	background:url(../../../../_lp/2025_01/assets/img/icon_plus_white.svg) no-repeat center center/contain;
	width:34px;
	height:34px;
	right:-28px;
	top:50%;
	transform:translateY(-50%);
	z-index:2;
}
#contents_price .price_item_list > li:nth-child(2):after{
	position:absolute;
	content:"";
	background:#1eac4a;
	border-radius:50%;
	width:67px;
	height:67px;
	right:-44px;
	top:50%;
	transform:translateY(-50%);
	z-index:1;
}
#contents_price .price_item_dl dt{
	border-bottom:dotted 3px #b3b3b3;
	margin-bottom:30px;
	padding-bottom:30px;
}
#contents_price .price_item_price{
	font-size:6rem;
	color:#1eac4a;
}
#contents_price .price_item_label{
	display:inline;
	background:#1eac4a;
	color:#fff;
	border-radius:10px;
	font-size:1.8rem;
	padding:0 12px 3px;
	vertical-align:4px;
}
#contents_price .price_notice{
	margin-bottom:70px;
}
#contents_price .price_notice_dl{
	display:table;
	line-height:1.2em;
	width:100%;
}
#contents_price .price_notice_dl dt{
	display:table-cell;
	background:#d8f2e0;
	border-radius:10px;
	font-weight:700;
	padding:0 26px;
	text-align:center;
	vertical-align:middle;
	width:132px;
}
#contents_price .price_notice_dl dd{
	display:table-cell;
	font-size:1.4rem;
	font-weight:500;
	padding-left:20px;
	width:calc(100% - 132px - 20px);
}
#contents_price .price_notice_dl .price_notice_title{
	font-weight:700;
}
#contents_price .price_notice_ol{
	list-style: none;
	margin-bottom:24px;
}
#contents_price .price_notice_list li{
	font-feature-settings:"palt" 1;
	padding-left:0.8em;
	position:relative;
}
#contents_price .price_notice_list li:before{
	position:absolute;
	content:"•";
	display:block;
	left:0;
	top:-1px;
	vertical-align:top;
}

/* =====================================
contents_flow
===================================== */
#contents_flow{
	background:#fff;
}
#contents_flow .contents_inner{
	padding-bottom:0;
}
#contents_flow .contents_heading_ja span{
	color:#1eac4a;
}
#contents_flow .scroll-hint::-webkit-scrollbar{
  width:3px;
	height:6px;
}
#contents_flow .scroll-hint::-webkit-scrollbar-track{
  background-color:#f2f2f2;
  border-radius:3px;
}
#contents_flow .scroll-hint::-webkit-scrollbar-thumb{
  background-color:#1eac4a;
  border-radius:3px;
}
#contents_flow .flow_table{
	border-collapse:separate;
	border-spacing:10px;
	max-width:108rem;
}
#contents_flow .flow_table_step{
	color:#fff;
	background:#1eac4a;
	border-radius:10px;
	padding:10px 5px;
	width:17%;
}
#contents_flow .flow_table .flow_table_step:nth-child(2){
	width:auto;
}
#contents_flow .flow_table_title{
	display:flex;
	flex-direction:column;
	justify-content:space-around;
	align-items:center;
	min-height:78px;
}
#contents_flow .flow_table_title dt{
	display:flex;
	justify-content:center;
	align-items:center;
	color:#1eac4a;
	background:#fff800;
	border-radius:30px;
	font-size:1.4rem;
	line-height:1.2;
	letter-spacing:.05em;
	padding:0 10px;
	width:13.8rem;
}
#contents_flow .flow_table_title dt em{
	font-size:2.5rem;
	font-style:normal;
	letter-spacing:0;
}
#contents_flow .flow_table_title dd{
	font-size:2rem;
	line-height:1.2;
}
#contents_flow .flow_table_title dd span{
	font-size:1.3rem;
}
#contents_flow .flow_table_example{
	background:#f2f2f2;
	border-radius:10px;
	font-size:1.8rem;
	font-weight:700;
	line-height:1.6;
	padding:10px;
	text-align:center;
	vertical-align:middle;
	width:16%;
}
#contents_flow .flow_table_example span{
	color:#1eac4a;
}
#contents_flow .flow_table_description{
	border:solid 2px #1eac4a;
	border-radius:10px;
	font-size:1.5rem;
	font-feature-settings:"palt" 1;
	line-height:1.6;
	vertical-align:middle;
	padding:20px;
	height:100%;
	position:relative;
}
#contents_flow .flow_table_description > p:first-child{
	margin-bottom:1em;
}
#contents_flow .flow_table_image{
	margin:0 auto 7rem;
	height:16.1rem;
}
#contents_flow .flow_table_arrow_right:after{
	position:absolute;
	content:"";
	background:url(../../../../_lp/2025_01/assets/img/icon_arrow_right_black_border.svg) no-repeat center center/contain;
	width:44px;
	height:38px;
	top:50%;
	right:-30px;
	transform:translateY(-50%);
	z-index:1;
}
#contents_flow .flow_table_arrow_caption{
	position:absolute;
	top:40%;
	right:-35px;
	transform:translateY(-50%);
	color:#1eac4a;
	font-size:1.6rem;
	line-height:1.2;
	text-align:center;
  -webkit-text-stroke: 6px #fff;
  text-stroke: 6px #fff;
  paint-order: stroke;
	z-index:2;
}
#contents_flow .flow_table_sub:not(:last-child){
	margin-bottom:1em;
}
#contents_flow .flow_arrow{
	display:block;
	color:#1eac4a;
	padding-left:1.2em;
	position:relative;
	text-decoration:underline;
}
#contents_flow .flow_arrow:before{
	position:absolute;
	content:"";
	background:url(../../../../_lp/2025_01/assets/img/icon_arrow_right_green.svg) no-repeat center center/contain;
	width:18px;
	height:14px;
	top:.3em;
	left:0;
}
#contents_flow .flow_text_bold{
	font-weight:700;
}

/* =====================================
contents_evidence
===================================== */
#contents_evidence{
	background:linear-gradient(90deg,rgba(107, 190, 96, 1) 0%, rgba(146, 200, 107, 1) 100%);
}
#contents_evidence .contents_inner{
	padding-bottom:50px;
}
#contents_evidence .contents_inner:after{
	position:absolute;
	content:"";
	left:50%;
	bottom:-22px;
	transform:translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 23.5px 0 23.5px;
	border-color: #82c466 transparent transparent transparent;
	z-index:5;
}
#contents_evidence .contents_heading{
	margin:0;
}
#contents_evidence .contents_heading_ja{
	font-size:3.3rem;
}
#contents_evidence .evidence_heading_image{
	margin:60px auto 20px;
	width:52rem;
}
.contents_evidence_bottom:before{
	content:"";
	display:block;
	width:100%;
	height:calc(100/1400 * 100vw);
	position:absolute;
	top:calc(100% - (21/300 * 100vw));
	left:0;
	background: url(../../../../_lp/2025_01/assets/img/img_evidence_bottom.svg) no-repeat center center/cover;
}

/* =====================================
contents_data
===================================== */
#contents_data{
}
#contents_data .data_item_list_wrap{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	margin-bottom:36px;
}
#contents_data .data_item_list{
	text-align:center;
	width:calc(100% / 2 - 10px);
}
#contents_data .data_item_list:not(:last-child){
	border-right:dotted 3px #b3b3b3;
}
#contents_data .data_item_list h3{
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:2.7rem;
	margin-bottom:36px;
}
#contents_data .data_icon_build{
	width:4.6rem;
	height:5rem;
}
#contents_data .data_icon_met{
	width:5rem;
	height:4.1rem;
}
#contents_data .data_item_list p{
	font-size:2.7rem;
}
#contents_data .data_item_list p span{
	color:#1eac4a;
	font-size:10rem;
}
.data_item_text{
	font-size:1.4rem;
	line-height:1.2;
	text-align:center;
}

/* =====================================
contents_point
===================================== */
#contents_point{
	background:#f8f9f2;
}
#contents_point .contents_heading_ja strong span{
	color:#1eac4a;
}
.point_popular_badge{
	max-width:600px;
	margin:0 auto;
}
.point_popular{
	box-sizing:border-box;
	border-radius:30px;
}
.point_popular_entry {
	width: 31%;
	padding: 30px;
	margin: 0 10px;
	box-sizing: border-box;
	background: #fff;
	border-radius: 30px;
}
.point_popular_entry .text_bold,
.point_popular_entry .text_bold a{
	font-family: inherit;
}
.point_popular_entry a:not(:hover):not(.bn_cta){
	text-decoration:none !important;
	color:#111 !important;
}
.point_popular_entry_thumb {
	display: block;
	margin: 0 0 15px;
	box-sizing: border-box;
}
.point_popular_entry_thumb img{
	width: 100%;
	max-width: unset;
}
.point_popular_entry_cat {
	margin: 0 0 5px;
}
.point_popular_entry_cat .info_entry_cat_link{
	display:inline-block;
	margin:0.2em 0;
	padding:5px 10px;
	box-sizing:border-box;
	text-align:center;
	font-size:1.2rem;
	font-weight:bold;
	color:#595959;
	border-radius:11px;
	line-height:1;
	background:#ddd;
	white-space: nowrap;
	text-decoration:none;
}
.point_popular_entry_cat .info_entry_cat_link:hover{
	color:inherit;
}
.point_popular_entry_time{
	margin:0 0 5px 0;
	line-height:1;
}
.point_popular_entry_title:not(:last-child) {
	margin: 0 0 20px;
}
.point_popular_entry_title a {
	display: block;
	font-size: 1.6rem;
	line-height: 1.4em;
	color: #111;
	text-decoration:none;
}
.point_popular_entry_title a:hover{
	color:#d69d00;
	opacity:1;
}
.point_popular_slide .slick-list{
	mask-image:linear-gradient(to right, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, 1) 20%, rgba(255, 255, 255, 1) 80%, rgba(255, 255, 255, 0) 90%);
}
.point_popular_slide .slick-prev,
.point_popular_slide .slick-next{
	display:block;
	width:20px;
	height:38px;
	top:50%;
	margin-top:-19px;
	-webkit-transform:none;
	-ms-transform:none;
	transform:none;
	z-index:1;
	opacity:1;
	transition:opacity 0.2s ease 0s;
}
.point_popular_slide .slick-prev{
	left:50px;
}
.point_popular_slide .slick-next{
	right:50px;
}
.point_popular_slide .slick-prev:hover,
.point_popular_slide .slick-next:hover{
	opacity:0.7;
}
.point_popular_slide .slick-prev:before,
.point_popular_slide .slick-next:before{
	display:block;
	content:"" !important;
	width:58px;
	height:58px;
	background:url(../../../../_lp/2025_01/assets/img/img_slider_prev.webp) no-repeat center center/ contain;
	opacity:1;
}
.point_popular_slide .slick-next:before{
	background:url(../../../../_lp/2025_01/assets/img/img_slider_next.webp) no-repeat center center/ contain;
}

/* =====================================
contents_download
===================================== */
#contents_download{
	background: linear-gradient(to bottom,  #d4eed3 0%, #dbeab3 100%);
}
#contents_download .heading_logo{
	width: 5.5em;
	margin: -12px 0.2em 0;
	vertical-align: middle;
}
.download_slide{
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	flex-direction:row;
	max-width:760px;
	margin:0 auto 30px;
}
.download_slide figure{
	width:49%;
	margin:0.5% 0 !important;
	border:solid 1px #eee;
}
.download_slide .slick-dots li button:before{
	font-size:4rem;
}
.download_point{
	margin:0 auto;
}
.download_point p{
	display:inline-block;
	margin:0 0.5em 0.6em;
	font-size:2.7rem;
	line-height:1;
}
.download_point p .img_icon{
	margin:0 0.3em 0 0;
}
.download_point_more{
	margin:0 0 50px;
}
.download_form_pop{
	display:inline-block;
	position:relative;
	z-index:1;
	padding:12px 20px 14px;
	border-radius:30px;
	background:#e86905;
	color:#fff;
	font-size:3.2rem;
	line-height:1;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
	span{
		color:#fff800;
	}
}
.download_form_pop:after{
	content:"";
	display:block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 16px 0 16px;
	border-color: #e86905 transparent transparent transparent;
	position:absolute;
	bottom:-16px;
	left:50%;
	margin-left:-16px;
}
.download_form_wrap{
	max-width:760px;
	margin:-30px auto 0;
	padding:60px 20px 20px;
	box-sizing:border-box;
	position:relative;
	border-radius:40px;
	background:#fff;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
}
.download_form_slogan{
	margin:0 0 40px;
	font-size:3.4rem;
	line-height:1.2em;
}

/* フォームハンドラー用CSS
========================= */
.contents_form_flex{
	display:flex;
	justify-content:space-between;
}
.contents_form_flex .contents_form_input{
	width:48%;
	margin:0 0 20px;
}
.contents_form_input{
	margin:0 auto 20px;
}
.contents_form_input label:not(.checkbox){
	display:inline-block;
	margin:0 0 6px;
	font-weight:bold;
	line-height:1;
}
.contents_form_input label .notice{
	display:inline-block;
	margin:0 0 0 4px;
	color:#de3023;
	font-size:0.8em;
}
.contents_form_split{
	display:block;
	width:100%;
	height:1px;
	margin:30px auto 25px;
	border:none;
	outline:none;
	background:#ddd;
}
.contents_form_set input::placeholder{
	color:#777;
}
.contents_form_set{
	input:focus::-webkit-input-placeholder {
		color: transparent;
	}
	input:focus::-moz-placeholder {
		color: transparent;
	}
	input:focus::-ms-input-placeholder {
		color: transparent;
	}
	input:focus::placeholder {
		color: transparent;
	}
}
.contents_form_set input:not([type=checkbox]):not([type=submit]):not([type=button]),
.contents_form_set textarea{
	display:inline-block;
	width:100%;
	padding:8px;
	box-sizing:border-box;
	font-size:1.5rem;
	text-transform:none;
	border:solid 1px #ddd;
	border-radius:4px;
	background:#fafafa;
	box-shadow:inset 0 1px 3px rgba(0,0,0,.05);
	-webkit-appearance:none;
	transition:background 0.2s ease 0s;
	font-family: inherit;
}
.contents_form_set input:not([type=checkbox]):not([type=submit]):not([type=button]):focus,
.contents_form_set textarea:focus{
	text-decoration:none;
	outline:none;
	background:#fff;
}
.contents_form_set input:not([type=checkbox]):not([type=submit]):not([type=button]).error,
.contents_form_set textarea.error,
.contents_form_set select.error{
	background:rgba(255,0,0,0.2);
	border:solid 1px #FF0000;
}
@media screen and (min-width:769px) {
	.contents_form_set select{
		display:inline-block;
		width:auto;
		min-width:150px;
		padding:8px 20px 8px 8px;
		box-sizing:border-box;
		font-size:1.5rem;
		text-transform:none;
		border:solid 1px #ddd;
		border-radius:4px;
		background:#fafafa;
		box-shadow:inset 0 1px 3px rgba(0,0,0,.05);
		-webkit-appearance:none;
		transition:background 0.2s ease 0s;
		-webkit-appearance:none;
		-moz-appearance:none;
		appearance:none;
	}
	.contents_form_set select.wide{
		width:100%;
	}
	.contents_form_set select::-ms-expand {
		display:none;
	}
	.contents_form_set .select_wrap{
		position:relative;
	}
	.contents_form_set .select_wrap:after {
		content:'';
		display:block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 11px 6.5px 0 6.5px;
		border-color: #bbbbbb transparent transparent transparent;
		position:absolute;
		right:10px;
		top:12px;
	}
}
.contents_form_set .checkbox_wrap >p{
	display:inline-block;
	margin:0 20px 0 0;
}
.contents_form_set label.checkbox{
	display:inline-block;
	line-height:1;
}
.contents_form_set .checkbox_wrap [type="checkbox"]:not(:checked),
.contents_form_set .checkbox_wrap [type="checkbox"]:checked {
	position:absolute;
	left:-9999px;
}
.contents_form_set .checkbox_wrap [type="checkbox"]:not(:checked) + label,
.contents_form_set .checkbox_wrap [type="checkbox"]:checked + label {
	position:relative;
	padding-left:1.6em;
	cursor:pointer;
	word-break: break-all;
}
.contents_form_set .checkbox_wrap [type="checkbox"]:not(:checked) + label:before,
.contents_form_set .checkbox_wrap [type="checkbox"]:checked + label:before {
	content:'';
	position:absolute;
	left:0;
	top: -3px;
	width:1.25em;
	height:1.25em;
	background:#F4F4F4;
	border:solid 1px #ddd;
	border-radius:4px;
	box-shadow:inset 0 1px 3px rgba(0,0,0,.1);
}
.contents_form_set .checkbox_wrap [type="checkbox"]:not(:checked) + label:after,
.contents_form_set .checkbox_wrap [type="checkbox"]:checked + label:after {
	content:'\2713\0020';
	position:absolute;
	top:0;
	left:.15em;
	font-size:1.3em;
	line-height:0.8;
	color:#09ad7e;
	transition:all .2s;
	font-family:'Noto Sans JP';
}
.contents_form_set .checkbox_wrap [type="checkbox"]:not(:checked) + label:after {
	opacity:0;
	transform:scale(0);
}
.contents_form_set .checkbox_wrap [type="checkbox"]:checked + label:after {
	opacity:1;
	transform:scale(1);
}
.contents_form_set .valid_msg{
	display: block;
	padding:2px 0 0;
	color:#de3023;
	font-weight:bold;
	line-height: 1.2em;
}
.contents_form_set .bn_cta,
.contents_form_set input[type=submit],
.contents_form_set input[type=button]{
	cursor:pointer;
	appearance:none;
	-webkit-appearance:none;
	outline:none;
}

.float_banner_close {
	width: 14px;
	height: 14px;
	padding: 10px;
	position: absolute;
	top: 0;
	right: 0;
	cursor: pointer;
	filter: drop-shadow(0px 0px 1px rgba(0,0,0,0.5));
}
.formhandler_tooltip{
	display:block;
	width:100%;
	position:absolute;
	top:-80px;
	left:0;
	z-index:10;
	opacity:0;
	text-align:center;
	transition:top 0.3s ease 0s, opacity 0.3s ease 0s;
	pointer-events:none;
	user-select:none;
	-moz-user-select:none;
	-webkit-user-select:none;
	-ms-user-select:none;
}
.formhandler_tooltip.visible{
	opacity:1;
	top:-95px;
}
@media screen and (max-width: 980px) {
	.formhandler_tooltip.visible{
		top:-115px;
	}
}
.formhandler_tooltip_inner{
	display:inline-block;
	box-sizing: border-box;
	border-radius: 10px;
	background: #f4f4f4;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.2));
	&:after{
		content:"";
		display:block;
		width: 0;
		height: 0;
		position:absolute;
		left:50%;
		margin-left:-10px;
		border-style: solid;
		border-width: 10px 10px 0 10px;
		border-color: #f4f4f4 transparent transparent transparent;
	}
}
.formhandler_tooltip_header{
	padding:7px 3px 5px;
	box-sizing:border-box;
	background:#01a699;
	border-radius:10px 10px 0 0;
	color:#fff;
	line-height:1;
	font-weight:bold;
	font-size:1.7rem;
	.img_icon{
		font-size:1.3em;
	}
}
.formhandler_tooltip_body{
	box-sizing:border-box;
	padding:7px 10px;
	font-size:1.35rem;
	line-height:1.4em;
}
.contents_formhandler_form_heading{
	max-width:600px;
	box-sizing: border-box;
	position: relative;
	margin: 0 0 1em;
	padding: 0 0 18px;
	font-size: 2rem;
	font-weight: bold;
}
.contents_formhandler_form_heading.wide{
	max-width:100%;
}
.contents_formhandler_form_heading:before, .contents_formhandler_form_heading:after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #ccc;
	position: absolute;
	left: 0;
	bottom: 0;
}
.contents_formhandler_form_heading:after {
	width: 10%;
	left:45%;
	background: #f1bc1a;
}
.contents_formhandler_form_autofill{
	max-width:600px;
	padding:20px 0 0;
}
.contents_formhandler_form_autofill .bn_cta{
	max-width:280px;
	padding:18px 15px 18px 35px;
	font-size:1.5rem;
	background:url(../../../../_lp/2025_01/assets/img/icon_mail.svg) no-repeat center left 18px/18px #fff;
}
.contents_formhandler_form_autofill .bn_cta:hover{
	background:url(../../../../_lp/2025_01/assets/img/icon_mail_hover.svg) no-repeat center left 18px/18px #f1bc1a;
}
#autofill_input{
	display:none;
}
.autofill_modal .modaal-container{
	background:none;
	box-shadow:none;
}
.autofill_input_inner{
	max-width: 500px;
	margin: 0 auto;
	background:#fff;
	border-radius:10px;
}
.autofill_input_title{
	padding:15px;
	box-sizing: border-box;
	border-radius:10px 10px 0 0;
	position:relative;
	line-height:1;
	background:#f1bc1a;
	text-align:center;
}
.autofill_input_form{
	padding:20px;
	box-sizing: border-box;
}
#autofill_text{
	width:100%;
	margin:0 auto 10px;
}
.contents_formhandler_required{
	margin:0 0 0.5em;
	font-size:1.3rem;
}
.contents_formhandler_form_main{
	max-width:600px;
	margin:0 auto;
	padding:0 0 30px;
	box-sizing: border-box;
	text-align:left;
}
.contents_formhandler_form_main .contents_form_input{
	position:relative;
}
.contents_formhandler_form_main .checkbox_wrap{
	margin-top:7px;
	font-size:0.95em;
}
.contents_formhandler_form_main .checkbox_wrap >p {
	display: block;
	margin: 0 20px 2px 0;
}
.contents_formhandler_form_main.contents_form_set input:not([type=checkbox]):not([type=submit]):not([type=button]),
.contents_formhandler_form_main.contents_form_set textarea{
	padding:9px 8px;
}
.contents_formhandler_form_main.contents_form_set input.short{
	max-width:242px;
}
.contents_formhandler_form_main .bn_submit{
	display:inline-block;
	max-width:450px;
	box-sizing:border-box;
	padding:20px 35px 20px 25px;
	position:relative;
	z-index:1;
	top:0;
	overflow:hidden;
	color:#fff !important;
	vertical-align:middle;
	font-weight:bold;
	font-size:2rem;
	border-radius:28px;
	border:solid 2px #d69d00;
	line-height:1;
	letter-spacing:0.03em;
	text-decoration:none;
	text-align:center;
	cursor:pointer;
	font-feature-settings:"palt" 1;
	letter-spacing:0.05em;
	background:url(../../../../_lp/2025_01/assets/img/icon_arrow_white.svg) no-repeat center right 10px/13px #1d90d6;
	box-shadow:1px 4px 0px 0px rgba(24,89,137,0.9);
	border:none;
	cursor: pointer;
	appearance: none;
	-webkit-appearance: none;
	outline: none;
	transition:top 0.2s ease 0s, opacity 0.2s ease 0s, box-shadow 0.2s ease 0s, border 0.4s ease 0s, color 0.1s ease 0s, background 0.2s ease 0.2s;
}
.contents_formhandler_form_main .bn_submit:hover{
	top:-3px;
	opacity:1;
	box-shadow: 0px 4px 7px 0px rgba(24,89,137,0.9);
	color:#fff !important;
	background:url(../../../../_lp/2025_01/assets/img/icon_arrow_white.svg) no-repeat center right 10px/13px #10adfc;
}
.contents_formhandler_form_main .bn_submit:before{
	content:"";
	display:block;
	background:#10adfc;
	width:100%;
	height:100%;
	opacity:1;
	position:absolute;
	left:-50%;
	top:0;
	z-index:-1;
	border-radius:29px;
	transition:left 0.3s ease 0s, opacity 0.1s ease 0.3s;
}
.contents_formhandler_form_main .bn_submit:hover:before{
	width:100%;
	left:0;
	opacity:0;
}
_:-ms-lang(x)::-ms-backdrop, .bn_submit:before{
	display:none;
}
_:-ms-input-placeholder, :root .bn_submit:before{
	display:none;
}


.contents_formhandler_form_main .form_privacy_notice{
	margin:20px 0 0;
	text-align:left;
}
#body .contents_formhandler_form_main .gyr_replace_button{
	display:inline-block !important;
	margin-left:auto !important;
	margin-right:auto !important;
}
.contents_form_input.with_marker{
	display: flex;
	align-items: flex-start;
	justify-content:flex-start;
}
.form_required_marker{
	display:inline-block;
	padding:6px;
	border-radius:10px;
	position: relative;
	top: 5px;
	margin:0 10px 0 0;
	font-size:1.2rem;
	line-height:1;
	color:#fff;
	background:#DE3023;
	white-space:nowrap;
}
.form_required_marker.inline{
	position:static;
}
.form_required_marker.gray{
	background:#888;
}
.contents_form_input.with_marker > div{
	flex-grow:1;
}
#form_checkbox_STEnotfound{
	margin:0 auto;
}
#form_STEnotfound_wrap{
	max-height:0;
	padding-top:0;
	opacity:0;
	overflow:hidden;
}
#form_STEnotfound_wrap.visible{
	max-height:1000px;
	padding-top:30px;
	opacity:1;
	transition:max-height 0.5s ease 0s, padding-top 0.5s ease 0s, opacity 0.5s ease 0s;
}
#form_STEnotfound_wrap .contents_form_input:last-child{
	margin-bottom:0;
}
#form_select_site_wrap{
	max-height:0;
	margin:0;
	opacity:0;
	overflow:hidden;
	transition:max-height 0.5s ease 0s, margin 0.5s ease 0s, opacity 0.5s ease 0s;
}
#form_select_site_wrap.visible{
	max-height:100px;
	margin: 0 auto 20px;
	opacity:1;
}
.contents_formhandler_thanks{
	width:100%;
	max-width:900px;
	margin:0 auto;
	padding:40px 20px;
	box-sizing:border-box;
	border-radius:10px;
	/*background:#fff;*/
}
.contents_formhandler_thanks_inner .paragraph:not(:last-child){
	margin:0 0 2em;
}
.contents_formhandler_thanks_inner p:not(:last-child){
	margin:0 0 1em;
}
.contents_formhandler_thanks_inner hr{
	display:block;
	width:100%;
	height:1px;
	padding:0;
	margin:2em 0;
	border:none;
	border-bottom:dashed 1px #ccc;
	background:none;
}
.contents_formhandler_thanks_inner p.formhandler_thanks_heading_lv2{
	margin: 0 0 0.6em;
	padding:0.1em 0 0.1em 0.3em;
	border-left:solid 4px #f1bc1a;
	font-size: 1.2em;
	font-weight:bold;
	line-height: 1.3em;
	&.text_red{
		border-color:#de3023;
	}
}
.formhandler_thanks_banner_service{
	display:inline-block;
	max-width:650px;
	margin:0 0 2em;
	img{
		border-radius:8px;
	}
}
.formhandler_banner_heading{
	padding:0.7em 0.5em 0.7em;
	color:#fff;
	background:#de3023;
	font-size: 1.3em;
	font-weight:bold;
	line-height: 1.3em;
	border-radius:0.3em;
}


@media screen and (max-width: 768px) {
	.contents_formhandler_form{
	}
	.contents_formhandler_form_heading{
		padding:15px 5px;
		font-size:1.6rem;
	}
	.contents_formhandler_form_autofill{
		padding:20px 0 0;
	}
	.contents_formhandler_form_autofill .bn_cta{
		padding:13px 15px 13px 35px;
		font-size:1.4rem;
	}
	.autofill_modal .modaal-content-container{
		padding:0;
	}
	.form_required_marker{
		padding:4px;
		border-radius:6px;
		top: 7px;
		margin:0 6px 0 0;
		font-size:1rem;
		vertical-align:middle;
	}
	.contents_formhandler_form_main{
		padding:0;
		box-sizing: border-box;
	}
	.contents_formhandler_form_main.contents_form_set input.short{
		max-width:100%;
	}
	.contents_formhandler_form_main .bn_cta{
		font-size:1.8rem;
	}
	.contents_formhandler_thanks{
		padding:10px 20px 30px;
	}
	.contents_formhandler_thanks_inner{
		text-align:left;
	}
	.contents_formhandler_thanks .contents_formhandler_form_heading {
		font-size: 1.8rem;
	}
	.contents_formhandler_thanks_inner nav{
		padding:20px 0 0;
	}
}

/* =====================================
shiryo
===================================== */
.shiryo{
	position:fixed;
	top:50%;
	right:0;
	transform:translateY(-50%);
	z-index:100;
	transition:opacity 0.3s ease 0s;
	opacity:0;
	pointer-events:none;
	background:#e86905;
	border:solid 4px #fff;
	border-right:none;
	border-radius:30px 0 0 30px;
	filter: drop-shadow(8px 0px 10px rgba(0,0,0,0.2));
	width:16.4rem;
}
.shiryo.is-show{
	opacity:1;
	pointer-events:auto;
}
.shiryo_button{
	color:#fff;
	display:block;
	font-size:2.6rem;
	line-height:1.2;
	padding:40px 10px 15px;
	text-decoration:none;
	text-align:center;
}
.shiryo_mockup{
	position:absolute;
	left:-20px;
	top:-40px;
	width:17.7rem;
}
.shiryo_catch{
	display:block;
	font-size:1.5rem;
	margin-bottom:10px;
	position:relative;
}
.shiryo_catch:before,
.shiryo_catch:after{
	content:"";
	display:block;
	width:15px;
	height:17px;
	position:absolute;
	bottom:-3px;
}
.shiryo_catch:before{
	left:2px;
	background:url(../../../../_lp/2025_01/assets/img/img_shiryo_catch_left.webp) no-repeat center center/contain;
}
.shiryo_catch:after{
	right:2px;
	background:url(../../../../_lp/2025_01/assets/img/img_shiryo_catch_right.webp) no-repeat center center/contain;
}

/* =====================================
contents_top_option
===================================== */
#contents_top_option{
	background:linear-gradient(to right, #e6e6e6 21%, #f5f5f5 21%);
}
#contents_top_option .contents_inner{
	display:flex;
	justify-content:space-between;
	padding-top:0;
	padding-bottom:0;
	max-width:1200px;
}
#contents_top_option .text_title_lv5,
#contents_top_option .top_option_nav_copy{
	font-weight:700;
}
.top_option_heading{
	display:flex;
	justify-content:center;
	align-items:center;
	width:15%;
	background:#e6e6e6;
}
.top_option_heading_inner{
	width:100%;
}
.top_option_heading_logo{
	max-width:140px;
	margin:0 auto 10px;
}
.top_option_nav{
	display:flex;
	flex-wrap:wrap;
	flex-direction:row;
	justify-content:flex-start;
	width:85%;
	padding:2% 2% 0;
	box-sizing:border-box;
	background:#f5f5f5;
}
.top_option_nav_item{
	display:block;
	width:24%;
	margin:0 1% 2% 0;
	padding: 20px 28px 20px 15px;
	position:relative;
	top:0;
	box-sizing:border-box;
	color:#111;
	text-decoration:none;
	background:url(../img/icon_arrow_banner.svg) no-repeat center right/18px #fff;
	border-radius:10px;
	box-shadow: 1px 1px 0px 0px rgba(0,0,0,0.15);
	transition:top 0.2s ease 0s, opacity 0.2s ease 0s, box-shadow 0.2s ease 0s;
}
.top_option_nav_item:hover{
	color:inherit;
	top:-3px;
	opacity:1;
	box-shadow: 0px 2px 7px 0px rgba(0,0,0,0.3);
}
.top_option_nav_item.greenfile{
	background-image:url(../img/icon_arrow_banner_greenfile.svg);
}
.top_option_nav_item.entrance{
	background-image:url(../img/icon_arrow_banner_entrance.svg);
}
.top_option_nav_item.progress{
	background-image:url(../img/icon_arrow_banner_progress.svg);
}
.top_option_nav_copy{
	margin:0 0 13px;
	padding:0 0 13px;
	border-bottom:solid 1px #ddd;
	font-size:1.65rem;
	line-height:1;
}
.top_option_nav_logo{
	padding:0 5px;
	box-sizing:border-box;
}

/* =====================================
footer
===================================== */
#footer .contents_inner{
	padding-top:40px;
	padding-bottom:10px;
}
.footer_logo{
	display:block;
	width:100%;
	max-width:160px;
	margin:0 auto 25px;
}
.footer_logo_logo img{
	width:100%;
}
#footer .text_attention{
	font-size:1.1rem;
}

/* =====================================
thanks
===================================== */
#contents_mainvisual.mainvisual_thanks > .contents_inner{
	display:block;
	padding-top:40px;
	padding-bottom:30px;
}
.mainvisual_thanks_slogan{
	width:80%;
	max-width:400px;
	margin:0 auto;
}
#contents_thanks .contents_inner{
	padding-top:0;
	margin-top:-40px;
}
#contents_thanks .text_bold,
#contents_thanks .text_heavy{
	font-family: -apple-system, BlinkMacSystemFont, Helvetica Neue, Helvetica, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴPro W3", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴPro", "ヒラギノ角ゴ ProN W3", Meiryo, メイリオ, sans-serif;
}
#contents_thanks .bn_cta{
	padding:20px 50px;
	color:#333;
	font-size:1.7rem;
}

/* ============================================================
Responsive
============================================================ */
@media screen and (min-width:769px){
	.pc_hide{
		display:none !important;
	}
}
@media screen and (max-width:768px) {
	.sp_hide{
		display:none !important;
	}
	body{
		font-size:1.5rem;
		line-height:1.6em;
	}

	.bn_cta,
	#contents_mainvisual .bn_cta{
		padding:1.2rem 3.2rem 1.2rem 2rem;
		font-size:1.7rem;
		border-radius:34px;
		border-width:2px;
		line-height:1.3;
	}
	.bn_cta:after{
		right:1.2rem;
		width:1.7rem;
		height:1.2rem;
	}
	.bn_cta.bn_cta_border{
		text-align:center !important;
		padding:.8rem 3.2rem .8rem 18rem !important;
	}
	.bn_cta.bn_cta_border:before{
		border-width:1px;
		top:3px;
		bottom:3px;
		left:3px;
		right:3px;
	}
	.bn_cta.meeting,
	.bn_cta.greenfile,
	.bn_cta.entrance{
		top:0;
		transition:opacity 0.2s ease 0s, top 0.2s ease 0s, filter 0.2s ease 0s;
	}
	.bn_cta.meeting{
		border:solid 1px #e0a72a;
		color:#d39313;
	}
	.bn_cta.greenfile{
		border:solid 1px #1eac4a;
		color:#1eac4a;
	}
	.bn_cta.entrance{
		border:solid 1px #d34727;
		color:#d34727;
	}
	.bn_cta.meeting:hover,
	.bn_cta.greenfile:hover,
	.bn_cta.entrance:hover{
		top:-3px;
		opacity:0.6;
		filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.5));
	}
	.cta_set{
		max-width:100%;
	}
	.cta_set:hover{
		top:-3px;
		opacity:1;
	}
	.cta_set .cta_wrap{
		padding:1rem .5rem;
	}
	.cta_set .cta_wrap .bn_cta span{
		font-size:1.2rem;
	}
	.cta_set .cta_mockup{
		width:21rem;
		top:-15px;
		left:-10px;
	}
	#contents_mainvisual .cta_mockup{
		width:32%;
    top:-12px;
    left:50px;
	}
	.cta_wrap{
		border-radius:37px;
	}
	.cta_wrap:after{
		border-radius:37px;
	}
	.cta_wrap .bn_cta{
		text-align:right;
	}
	.cta_pop{
		margin-bottom:5px;
		padding:7px 12px;
		border-radius:15px;
		font-size:1.4rem;
	}
	.cta_pop:after{
		border-width: 6px 4px 0 4px;
		bottom:-6px;
		margin-left:-8px;
	}


	/* =====================================
	header
	===================================== */
	#header,
	#header.scroll{
		position:fixed;
		width:100%;
		padding:10px 0;
	}
	#header{
		height:auto;
	}
	.header_inner{
		flex-direction: column;
		padding:0 5% !important;
	}
	.header_logo_wrap{
		justify-content:space-between;
		gap:2rem;
		width:100%;
	}
	.header_logo{
		justify-content:flex-start;
		border-radius:0 10px 10px 0;
		width:50%;
	}
	.header_textlink{
		text-align:center;
	}
	.header_button{
		gap:.5rem;
		width:100%;
	}
	.header_button > li{
		width:calc(100% / 3);
	}
	.header_button a{
		justify-content:center;
		margin:0;
		padding-right:.6rem;
		padding-left:1.1rem;
		font-size:1.2rem;
		line-height:1.2;
		text-align:center;
	}
	.header_button .header_document .icon_arrow{
		margin-right:0;
		margin-left:8%;
	}
	.header_button .header_consult .icon_arrow{
		margin-right:0;
		margin-left:8%;
	}
	.header_button .header_login{
		justify-content:space-between;
		padding-left:0;
	}
	.header_button .header_login .icon_arrow{
		padding-left:2%;
	}
	.header_button .header_login .icon_login{
		margin:0;
	}

	/* =====================================
	contents_wrapper
	===================================== */
	.contents_inner{
		padding-left:5%;
		padding-right:5%;
		padding-top:40px;
		padding-bottom:40px;
	}
	.contents_wave_top:before,
	.contents_wave_bottom:before{
		background: url(../../../../_lp/2025_01/assets/img/img_wave_top.svg) repeat-x center top/40%;
	}
	.contents_wave_bottom:before{
		background: url(../../../../_lp/2025_01/assets/img/img_wave_bottom.svg) repeat-x center bottom/40%;
	}
	.contents_wave_top.white:before{
		background: url(../../../../_lp/2025_01/assets/img/img_wave_top_white.svg) repeat-x center top/40%;
	}
	.contents_heading{
		margin:0 0 30px;
		text-align:center;
	}
	.contents_heading_en{
		margin:0 0 15px;
		font-size:1.8rem;
	}
	.contents_heading_en:after{
		border-width: 10px 10px 0 10px;
		bottom:-10px;
		margin-left:-10px;
	}
	.contents_heading_ja{
		font-size:3rem;
		line-height:1.2em;
	}
	.contents_heading_ja.medium{
		font-size:2rem;
	}
	.contents_heading_ja .text_number{
		font-size:calc(3rem * 1.5);
		letter-spacing:-.15em;
	}
	.heading_logo{
		width:5em;
	}


	/* =====================================
	contents_mainvisual
	===================================== */
	#contents_mainvisual{
		background: url(../../../../_lp/2025_01/assets/img/img_mainvisual_bg.webp) no-repeat center center/cover;
	}
	#contents_mainvisual > .contents_inner{
		display:block;
		max-width:100%;
		margin-top:12.8rem;
		padding-top:2rem;
		padding-bottom:5rem;
	}
	.mv_fadein{
		right:auto;
	}
	.mainvisual_text{
		width:100%;
		flex-shrink:0;
		padding:15px;
		border-radius:20px;
	}
	.mainvisual_text_service{
		margin:0 0 10px;
		font-size:1.8rem;
		text-align:center;
	}
	.mainvisual_text_service .mainvisual_text_bold{
		font-size:calc(1.8rem * 1.6);
	}
	.mainvisual_text_service .mainvisual_text_bold_green{
		color:#1eac4a;
		font-size:calc(1.8rem * 2);
	}
	.mainvisual_text_logo{
		max-width:80%;
		margin:0 auto 25px;
	}

	.mainvisual_image{
		width:70%;
		margin:0 auto 20px;
		padding:0;
	}
	.mainvisual_prize{
		overflow:hidden;
	}
	.mainvisual_prize .contents_inner{
		padding-bottom:5px;
	}
	#contents_prize .prize_point{
		gap:.5rem;
		padding-bottom:0;
	}
	#contents_prize .prize_01{
		width: calc(245/750*100vw);
	}
	#contents_prize .prize_02{
		width: calc(205/750*100vw);
	}
	#contents_prize .prize_03{
		width: calc(205/750*100vw);
	}

	/* =====================================
	contents_safety
	===================================== */
	#contents_safety .contents_inner{
		padding-top:20px;
	}
	#contents_safety .contents_heading{
		margin:0 0 15px;
	}
	#contents_safety .safety_item{
		margin-top:15px;
	}
	#contents_safety .safety_item_list{
		gap:10px;
	}
	#contents_safety .safety_item_list > li{
		display:flex;
		align-items:center;
		font-size:1.6rem;
		padding:15px;
		width:100%;
	}
	#contents_safety .safety_item_list .safety_icon{
		position:relative;
		top:auto;
		left:auto;
		transform:none;
		width:8rem;
		height:8rem;
	}
	#contents_safety .safety_item_list .safety_text{
		display:flex;
		justify-content:center;
		width:100%;
	}

	/* =====================================
	contents_strength
	===================================== */
	#contents_strength .contents_inner{
		padding-top:60px;
		padding-bottom:60px;
	}
	#contents_strength .contents_heading{
		margin:0 0 30px;
	}
	#contents_strength .contents_heading_ja strong{
		font-size:3rem;
	}
	.strength_heading_deco:before,
	.strength_heading_deco:after{
		width:9px;
		height:14px;
	}
	.strength_heading_deco:before{
		left:-20px;
		background:url(../../../../_lp/2025_01/assets/img/img_strength_heading_deco_left_sp.webp) no-repeat center center/contain;
	}
	.strength_heading_deco:after{
		right:-20px;
		background:url(../../../../_lp/2025_01/assets/img/img_strength_heading_deco_right_sp.webp) no-repeat center center/contain;
	}
	.strength_item{
		flex-direction:column;
		margin:0 auto;
		padding:15px;
		border-radius:10px;
		width:100%;
	}
	.strength_item:first-child .strength_item_text{
		width:100%;
	}
	.strength_item_image{
		width:60%;
		margin:0 auto 10px;
		order:3;
	}
	.strength_item:first-child .strength_item_image{
		width:60%;
	}
	.strength_item_text{
		text-align:left;
		width:100%;
	}
	.strength_item_num {
		margin: 0 0 10px;
		font-size:1.3rem;
		padding: 4px 10px 3px;
		border-radius: 5px;
		span{
			font-size:2.5rem;
		}
	}
	.strength_item_title{
		margin:0 0 10px;
		font-size:2rem;
		min-width:100%;
	}
	.strength_item_desc{
		font-size:1.3rem;
		line-height:1.4;
	}
	#contents_strength .cta_set{
		margin-top:30px;
	}
	.cta_set .cta_time{
		gap:0;
		font-size:1.2rem;
		line-height:.8;
		width:6rem;
		height:6rem;
		left:.7rem;
	}
	.cta_set .cta_time:before{
		width:6.6rem;
		height:6.6rem;
		border-width:2px;
	}
	.cta_set .cta_time:after{
		display:block;
		width:6rem;
		height:6rem;
		border-width:3px;
	}
	.cta_set .cta_time .cta_time_num{
		font-size:3rem;
	}
	.cta_set .cta_time .cta_time_unit{
		font-size:1.2rem;
	}

	/* =====================================
	contents_price
	===================================== */
	#contents_price .price_item_list{
		gap:1rem;
		margin-bottom:30px;
	}
	#contents_price .price_item_list > li{
		border-width:1px;
		border-radius:1.5rem;
		font-size:1.6rem;
		letter-spacing:-.02em;
		padding: 1.5rem 0;
		width:calc((100% - 1rem) / 2);
	}
	#contents_price .price_item_list > li:nth-child(2):before{
		width:17px;
		height:17px;
		right:-14px;
	}
	#contents_price .price_item_list > li:nth-child(2):after{
		width:33px;
		height:33px;
		right:-22px;
	}
	#contents_price .price_item_dl dt{
		border-bottom-width:2px;
		margin-right:19px;
		margin-left:19px;
		margin-bottom:15px;
		padding-bottom:15px;
	}
	#contents_price .price_item_price{
		font-size:3rem;
		letter-spacing:-.04em;
	}
	#contents_price .price_item_label{
		font-size:.9rem;
		padding:.2rem .4rem;
		border-radius:3px;
		vertical-align:.2rem;
	}
	#contents_price .price_notice{
		margin-bottom:30px;
	}
	#contents_price .price_notice_dl dt{
		border-radius:5px;
		width:70px;
	}
	#contents_price .price_notice_dl dd{
		padding-left:10px;
		width:calc(100% - 70px - 10px);
	}

/* =====================================
	contents_flow
	===================================== */
	#contents_flow .contents_inner{
		padding-left:2%;
		padding-right:2%;
		padding-bottom:20px;
	}
	#contents_flow .flow_table{
		width:108rem;
	}

	/* =====================================
	contents_evidence
	===================================== */
	#contents_evidence .contents_inner{
		padding-bottom:30px;
	}
	#contents_evidence .contents_inner:after{
		bottom:-13px;
		border-width: 14px 13px 0 13px;
	}
	#contents_evidence .contents_heading{
		margin:0;
	}
	#contents_evidence .contents_heading_ja{
		font-size:1.7rem;
	}
	#contents_evidence .evidence_heading_image{
		margin:10px auto;
	}
	.contents_evidence_bottom:before{
		height:calc(100/1400 * 100vw);
	}

	/* =====================================
	contents_data
	===================================== */
	#contents_data .data_item_list{
		width:auto;
	}
	#contents_data .data_item_list:not(:last-child){
		margin-right:1.2rem;
		padding-right:1.2rem;
	}
	#contents_data .data_item_list h3{
		font-size:1.4rem;
		margin-bottom:1.8rem;
	}
	#contents_data .data_item_list h3 img{
		margin-right:.4rem;
	}
	#contents_data .data_icon_build{
		width:2.3rem;
		height:2.5rem;
	}
	#contents_data .data_icon_met{
		width:2.5rem;
		height:2rem;
	}
	#contents_data .data_item_list p{
		font-size:1.4rem;
	}
	#contents_data .data_item_list p span{
		font-size:5rem;
	}
	.data_item_text{
		text-align:left;
	}

	/* =====================================
	contents_point
	===================================== */
	.point_popular{
		padding:0;
		margin:0;
		background:none;
	}
	.point_popular_slide{
		padding:0;
	}
	.point_popular_slide_item{
		padding:20px;
		filter:none;
	}
	.point_popular_slide_title{
		font-size:1.9rem;
	}
	.point_popular_slide_body{
		display:block;
	}
	.point_popular_slide_logo{
		width:60%;
		margin:0 auto;
	}
	.point_popular_slide_text{
		width:100%;
		line-height:1.9em;
		font-size:1.4rem;
	}
	.point_popular_slide .slick-list{
		mask-image:none;
	}
	.point_popular_slide .slick-dots{
		margin-bottom:-5px;
		left: 0;
	}
	.point_popular_slide .slick-prev,
	.point_popular_slide .slick-next{
		width:4.5rem;
		height:4.5rem;
	}
	.point_popular_slide .slick-prev:before,
	.point_popular_slide .slick-next:before{
		width:4.5rem;
		height:4.5rem;
	}
	.point_popular_slide .slick-prev{
		left:-10px;
	}
	.point_popular_slide .slick-next{
		right:-10px;
	}

	/* =====================================
	contents_download
	===================================== */
	#contents_download{
	}
	.download_slide{
		display:block;
		margin:0 0 50px !important;
	}
	.download_slide figure{
		width:100%;
		margin:0 !important;
	}
	.download_point p{
		font-size:1.8rem;
	}
	.download_point_more{
		margin:0 0 30px;
	}
	.download_form_pop{
		font-size:2rem;
	}
	.download_form_pop:after{
		border-width: 12px 12px 0 12px;
		bottom:-12px;
		margin-left:-12px;
	}
	.download_form_wrap{
		margin:-30px auto 0;
		padding:50px 15px 15px;
	}
	.download_form_slogan{
		margin:0 0 20px;
		font-size:1.7rem;
	}
	
	/* フォームハンドラー用CSS
	========================= */
	@media screen and (max-width: 768px) {
	.contents_form_input{
		margin:0 auto 15px;
	}
	.contents_form_split{
		margin:25px auto 20px;
	}

	.contents_form_set{
		font-size:1.4rem;
	}
	.contents_form_set .checkbox_wrap >p{
		display:inline-block;
		margin:0 0.5em 0.5em 0;
	}
	.contents_formhandler_form_main .bn_submit{
		display:block;
		width:100%;
		padding: 11px 20px;
		white-space: normal;
		font-size:1.6rem;
		line-height:1.4em;
	}

	.contents_form_set select{
		display:block;
		width:100%;
		padding:8px;
		box-sizing:border-box;
		font-size:1.5rem;
		text-transform:none;
		border:solid 1px #ddd;
		border-radius:4px;
		background:#fafafa;
		color:#333;
	}
		.contents_formhandler_form_heading{
			padding:15px 5px;
			font-size:1.6rem;
		}
		.contents_formhandler_form_autofill{
			padding:20px 0 0;
		}
		.contents_formhandler_form_autofill .bn_cta{
			padding:13px 15px 13px 35px;
			font-size:1.4rem;
		}
		.autofill_modal .modaal-content-container{
			padding:0;
		}
		.form_required_marker{
			padding:4px;
			border-radius:6px;
			top: 7px;
			margin:0 6px 0 0;
			font-size:1rem;
			vertical-align:middle;
		}
		.contents_formhandler_form_main{
			padding:0;
			box-sizing: border-box;
		}
		.contents_formhandler_form_main.contents_form_set input.short{
			max-width:100%;
		}
		.contents_formhandler_thanks{
			padding:10px 20px 30px;
		}
		.contents_formhandler_thanks_inner{
			text-align:left;
		}
		.contents_formhandler_thanks .contents_formhandler_form_heading {
			font-size: 1.8rem;
		}
		.contents_formhandler_thanks_inner nav{
			padding:20px 0 0;
		}
	}

	/* =====================================
	shiryo
	===================================== */
	.shiryo{
		border-width:2px;
		border-radius:15px 0 0 15px;
		width:auto;
	}
	.shiryo_button{
		font-size:1.9rem;
		line-height:1.2;
		padding:40px 10px 15px;
	}
	.shiryo_mockup{
		left:-10px;
		top:-25px;
		width:13.3rem;
	}
	.shiryo_catch{
		font-size:1.1rem;
		margin-bottom:5px;
	}
	.shiryo_catch:before,
	.shiryo_catch:after{
		width:calc(15px * 0.75);
		height:calc(17px * 0.75);
	}
	.shiryo_catch:before{
		left:-2px;
	}
	.shiryo_catch:after{
		right:-2px;
	}

	/* =====================================
	contents_top_option
	===================================== */
	#contents_top_option{
		background:#f5f5f5;
	}
	#contents_top_option .contents_inner{
		display:block;
		padding-top:30px;
		padding-bottom:20px;
	}
	.top_option_heading{
		display:block;
		width:100%;
		margin:0 0 15px;
		background:transparent;
	}
	.top_option_heading_logo{
		max-width:120px;
		margin:0 auto 5px;
	}
	.top_option_nav{
		justify-content: space-between;
		width:100%;
		padding:0;
	}
	.top_option_nav_item{
		width:48%;
		margin:0 0 4%;
		padding:10px 20px 10px 10px;
		background:url(../img/icon_arrow_banner.svg) no-repeat center right/14px #fff;
		border-radius:6px;
	}
	.top_option_nav_copy{
		margin:0 0 10px;
		padding:0 0 10px;
		font-size:1.2rem;
	}

	/* =====================================
	footer
	===================================== */
	#footer .contents_inner{
		padding-top:40px;
		padding-bottom:10px;
	}
	.footer_logo{
		display:block;
		width:100%;
		max-width:160px;
		margin:0 auto 25px;
	}
	.footer_logo_logo img{
		width:100%;
	}
	#footer .text_attention{
		font-size:1.1rem;
	}

	/* =====================================
	thanks
	===================================== */
	#contents_mainvisual.mainvisual_thanks > .contents_inner{
		padding-top:80px;
		padding-bottom:20px;
	}
	.mainvisual_thanks_slogan{
		width:70%;
	}
	#contents_thanks .contents_inner{
		padding-top:0;
		margin-top:0;
	}
	#contents_thanks .bn_cta{
		display:block;
		padding:20px;
	}

}
