﻿@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_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;
	padding:20px 30px 20px 40px;
	position:relative;
	color:#333;
	vertical-align:middle;
	font-size:3rem;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: normal;
	font-feature-settings:"palt" 1;
	border-radius:34px;
	line-height:1;
	text-decoration:none;
	text-align:center;
	cursor:pointer;
	overflow:hidden;
	background:#fff;
	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;
}
.bn_cta:hover{
	opacity:1;
	background:#fff;
	color:#555;
	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:600px;
	margin:0 auto;
	position:relative;
	top:0;
	transition:top 0.2s ease 0s;
	text-decoration:none;
	cursor:pointer;
}
.cta_set:hover{
	top:-3px;
	opacity:1;
}
.cta_mockup{
	width:54%;
	position:absolute;
	left:-3%;
	z-index:2;
}
.cta_wrap{
	width:100%;
	padding:15px;
	border-radius:50px;
	position:relative;
	overflow:hidden;
	/*margin-left:48%;*/
	background: linear-gradient(to right,  #ffcc00 50%,#74dc0a 80%);
}
.cta_wrap:after{
	content:"";
	display:block;
	width:100%;
	height:100%;
	border-radius:50px;
	position:absolute;
	top:0;
	left:0;
	z-index:0;
	background:#fff;
	mix-blend-mode: overlay;
	opacity:0;
	transition:opacity 0.3s ease 0s;
}
.cta_set:hover .cta_wrap:after{
	opacity:0.7;
}
.cta_wrap .bn_cta{
	display:block;
	width:100%;
	position:relative;
	z-index:1;
	text-align:right;
}
.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(/cms/wp-content/themes/buildee/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:1200px;
	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_wave_top:before,
.contents_wave_bottom:before{
	content:"";
	display:block;
	width:100%;
	height:24px;
	position:absolute;
	top:0;
	left:0;
	background: url(/_lp/2024_01/assets/img/img_wave_top.svg) repeat-x center center/auto;
}
.contents_wave_bottom:before{
	top:auto;
	bottom:0;
	background: url(/_lp/2024_01/assets/img/img_wave_bottom.svg) repeat-x center center/auto;
}
.contents_wave_top.white:before{
	background: url(/_lp/2024_01/assets/img/img_wave_top_white.svg) repeat-x center center/auto;
}
.contents_heading{
	margin:0 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.9rem;
	line-height:1.2em;
}
.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{
	width:100%;
	padding:0;
	position:fixed;
	top:0;
	z-index:100;
	box-sizing:border-box;
	background:rgba(255,255,255,0);
	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:10px;
	max-width:100%;
	padding:6px 10px 6px 0;
}
.header_login{
	display:inline-block;
	padding:0.4em 0.8em 0.4em 0.4em;
	border-radius:10px;
	box-sizing:border-box;
	background:#fff;
	font-weight:bold;
	font-size:1.4rem;
	text-decoration:none;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
	.icon_service,
	.icon_login{
		display:inline-block;
		width:1.5em;
		position:relative;
		top:-0.12em;
		vertical-align:middle;
	}
	.icon_login{
		width:0.9em;
	}
}
.header_logo{
	display:flex;
	align-items:flex-end;
	justify-content:space-between;
	flex-grow:1;
	max-width:210px;
	padding:10px 10px 10px 1.5em;
	border-radius:0 10px 10px 0;
	box-sizing:border-box;
	background:#fff;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.header_logo_service{
	width:53%;
}
.header_logo_rvsta{
	width:44%;
}

/* =====================================
contents_mainvisual
===================================== */
#contents_mainvisual{
	background:#fff;
	background: url(/_lp/2024_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;
	max-width:80%;
	padding-top:110px;
	padding-bottom:50px;
}
@media screen and (max-width:1860px){
	#contents_mainvisual > .contents_inner{
		max-width:1280px;
	}
}
.mv_fadein{
	backface-visibility:hidden;
	transition:opacity 0.8s ease 0.8s, top 0.8s ease 0.8s;
	opacity:0;
	position:relative;
	top:40px;
}
body.loaded_mv .mv_fadein{
	opacity:1;
	top:0;
}
.mainvisual_text{
	width:55%;
	flex-shrink:0;
	padding:25px;
	border-radius:30px;
	position:relative;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
	background:#fff;
	text-align:center;
}
.mainvisual_text_catch{
	max-width:440px;
	margin:-75px auto 15px;
	position:relative;
}
.mainvisual_text_service{
	margin:0 0 20px;
	font-size:4rem;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: normal;
	line-height:1;
}
.mainvisual_text_logo{
	max-width:390px;
	margin:0 auto 25px;
}
.mainvisual_text_point{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	flex-direction:row;
	grid-gap:15px;
	margin:0 auto 40px;
	li{
		padding:0 0 0 1.5em;
		background: url(/_lp/2024_01/assets/img/icon_check_greenfile_02.svg) no-repeat center left/1.1em;
		font-size:2.1rem;
		font-weight:bold;
		line-height: 1;
	}
}
@media screen and (min-width:1860px){
	.mainvisual_text_service{
		font-size:2vw;
	}
	.mainvisual_text_logo{
		max-width:60%;
	}
	.mainvisual_text_point{
		li{
			font-size:1.2vw
		}
	}
}
.mainvisual_image{
	flex-grow:1;
	padding:0 0 0 2%;
	box-sizing:border-box;
	position:relative;
	/*transition:opacity 1.5s cubic-bezier(0.87, 0, 0.13, 1) 0.8s, top 1s ease 0.8s;*/
}
.mainvisual_image_ui{
	width: 81%;
	position: absolute;
	top: 10%;
	left: 11.2%;
	border-radius: 3px;
}
.mainvisual_prize .contents_inner{
	display:flex;
	justify-content:space-between;
	align-items:center;
	max-width:740px;
	padding-top:0;
	padding-bottom:10px;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.mainvisual_prize_badge{
	backface-visibility:hidden;
	opacity:0;
	position:relative;
	top:40px;
}
.mainvisual_prize_01{
	width: 32%;
	transition:opacity 0.8s ease 1.4s, top 0.8s ease 1.4s;
}
.mainvisual_prize_02{
	width: 32%;
	transition:opacity 0.8s ease 1.7s, top 0.8s ease 1.7s;
}
.mainvisual_prize_03{
	width: 32%;
	transition:opacity 0.8s ease 2s, top 0.8s ease 2s;
}
.mainvisual_prize.visible .mainvisual_prize_badge{
	opacity:1;
	top:0;
}
.mainvisual_prize_bg{
	width:100%;
	position:absolute;
	bottom:0;
}

/* =====================================
contents_problem
===================================== */
#contents_problem{
	background:#eeeeee;
}
#contents_problem .contents_inner{
	padding-top:40px;
	padding-bottom:0;
}
#contents_problem .contents_heading_ja span{
	color:#555ba0;
}
.problem_item_wrap{
	max-width:950px;
	margin:0 auto;
	position:relative;
	z-index: 1;
}
.problem_item_wrap figure{
	position:absolute;
}
.problem_item_wrap figure:not(#problem_item_figure){
	position:absolute;
	backface-visibility:hidden;
	opacity:0;
	margin-top:30px;
}
.problem_item_wrap.visible figure:not(#problem_item_figure){
	opacity:1;
	margin-top:0;
}
#problem_item_figure{
	width:46.5%;
	left:25.5%;
	bottom:0;
}
#problem_item_01{
	width:27.5%;
	left:0;
	top:34%;
	transition:opacity 0.8s ease 1s, margin-top 0.8s ease 1s;
}
#problem_item_02{
	width:38%;
	left:11%;
	top:1%;
	transition:opacity 0.8s ease 1.4s, margin-top 0.8s ease 1.4s;
}
#problem_item_03{
	width:38%;
	right:11%;
	top:0;
	transition:opacity 0.8s ease 1.8s, margin-top 0.8s ease 1.8s;
}
#problem_item_04{
	width: 33.2%;
	right:0;
	top:33%;
	transition:opacity 0.8s ease 2.2s, margin-top 0.8s ease 2.2s;
}
.problem_arrow{
	width:100%;
	z-index:0;
	position:absolute;
	left:0;
	bottom:0;
}

/* =====================================
contents_solution
===================================== */
#contents_solution{
	background: linear-gradient(to bottom,  #f1faf2 0%,#ccebcd 54%,#d1e59e 100%);
}
#contents_solution .contents_inner{
	padding-top:40px;
}
#contents_solution .contents_heading{
	margin:0 0 70px;
}
#contents_solution .contents_heading_ja strong{
	display:block;
	margin:0.3em 0 0;
	font-size:1.5em;
}
#contents_solution .contents_heading_ja strong span{
	color:#1eac4a;
}

.solution_item{
	display:flex;
	justify-content:space-between;
	flex-direction:row-reverse;
	max-width:1080px;
	margin:0 auto 30px;
	padding:35px;
	box-sizing:border-box;
	background:#fff;
	border-radius:20px;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.solution_item_image{
	width:32%;
}
.solution_item_text{
	width:65%;
}
.solution_item_num{
	display:inline-block;
	margin:0 0 10px;
	padding:12px 12px 10px;
	border-radius:15px;
	background:#f4f4f4;
	line-height:1;
	letter-spacing:0.1em;
	span{
		display:inline-block;
		margin:-10px 0 0 6px;
		color:#1eac4a;
		font-size:4rem;
		vertical-align:middle;
	}
}
.solution_item_title{
	margin:0 0 20px;
	font-size:3.8rem;
	line-height:1.2em;
	span{
		color:#1eac4a;
	}
}
.solution_item_desc small{
	display:block;
	margin:0.5em 0 0 0;
	line-height:1.6em;
}

#contents_solution .cta_set{
	margin-top:80px;
}

/* =====================================
contents_point
===================================== */
#contents_point{
	background:#f8f9f2;
}
#contents_point .contents_inner{
	padding-top:40px;
}
.point_popular_badge{
	max-width:440px;
	margin:0 auto;
}
.point_popular{
	padding:3%;
	padding-top:70px;
	margin-top:-40px;
	box-sizing:border-box;
	border-radius:30px;
	background:#eff1e4;
}
.point_popular_slide{
	padding:0 30px;
	box-sizing:border-box;
}
.point_popular_slide_item{
	max-width:900px;
	margin:0 auto;
	padding:4%;
	box-sizing:border-box;
	border-radius:15px;
	background:#fff;
	filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
}
.point_popular_slide_title{
	margin:0 0 3%;
	font-size:3.5rem;
	line-height:1;
}
.point_popular_slide_title .label{
	display:inline-block;
	margin:0 10px 0 0;
	padding:7px;
	position:relative;
	top:-4px;
	border-radius:10px;
	background:#1eac4a;
	color:#fff;
	line-height:1;
	font-size:0.5em;
}
.point_popular_slide_body{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.point_popular_slide_logo{
	width:45%;
	text-align:center;
}
.point_popular_slide_logo img{
	display:inline-block;
}
.point_popular_slide_text{
	width:53%;
	line-height:2em;
	font-size:0.98em;
}

.point_popular_slide .slick-dots{
	margin-bottom:-15px;
}
.point_popular_slide .slick-dots li button:before{
	opacity:1;
	color:#ccc;
	font-size: 13px;
}
.point_popular_slide .slick-dots li.slick-active button:before{
	opacity:1;
	color:#1eac4a;
}
.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:0;
}
.point_popular_slide .slick-next{
	right:0;
}
.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:20px;
	height:38px;
	background:url(/_lp/2024_01/assets/img/icon_arrow_prev.svg) no-repeat center center transparent;
	opacity:1;
}
.point_popular_slide .slick-next:before{
	background:url(/_lp/2024_01/assets/img/icon_arrow_next.svg) no-repeat center center transparent;
}

/* =====================================
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_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:#1eac4a;
	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: #1eac4a 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;
}

.contents_formhandler_form{
}
.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/2024_01/assets/img/icon_mail.svg) no-repeat center left 18px/18px #fff;
}
.contents_formhandler_form_autofill .bn_cta:hover{
	background:url(/_lp/2024_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/2024_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/2024_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;
	}
}

/* =====================================
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{
		display:inline-block;
		box-sizing:border-box;
		padding:16px 20px;
		position:relative;
		color:#333;
		vertical-align:middle;
		font-size:2rem;
		border-radius:34px;
		line-height:1;
		text-decoration:none;
		text-align:center;
		cursor:pointer;
		overflow:hidden;
		font-feature-settings:"palt" 1;
		background:#fff;
		filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.2));
		transition:background-color 0.2s ease 0s, filter 0.2s ease 0s;
	}
	.bn_cta:hover{
		opacity:1;
		background:#fff;
		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{
		max-width:100%;
	}
	.cta_set:hover{
		top:-3px;
		opacity:1;
	}
	.cta_mockup{
		width:44%;
	}
	#contents_mainvisual .cta_mockup{
		width:39%;
	}
	.cta_wrap{
		padding:10px;
		border-radius:37px;
	}
	.cta_wrap:after{
		border-radius:37px;
	}
	.cta_wrap .bn_cta{
		text-align:right !important;
	}


	/* =====================================
	header
	===================================== */
	#header,
	#header.scroll{
		position:fixed;
		width:100%;
		padding:10px 0;
	}

	.header_inner{
		/*flex-direction: row-reverse;*/
		justify-content: space-between;
		padding:0 2% 0 0 !important;
	}
	.header_login{
		margin:0;
		font-size:1.2rem;
	}
	.header_logo{
		max-width:120px;
		padding:10px;
		border-radius:0 10px 10px 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/2024_01/assets/img/img_wave_top.svg) repeat-x center top/40%;
	}
	.contents_wave_bottom:before{
		background: url(/_lp/2024_01/assets/img/img_wave_bottom.svg) repeat-x center bottom/40%;
	}
	.contents_wave_top.white:before{
		background: url(/_lp/2024_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:2.6rem;
		line-height:1.2em;
	}
	.heading_logo{
		width:5em;
	}


	/* =====================================
	contents_mainvisual
	===================================== */
	#contents_mainvisual{
		background: url(/_lp/2024_01/assets/img/img_mainvisual_bg.webp) no-repeat center center/cover;
	}
	#contents_mainvisual > .contents_inner{
		display:block;
		max-width:100%;
		padding-top:85px;
		padding-bottom:20px;
	}
	
	.mainvisual_text{
		width:100%;
		flex-shrink:0;
		padding:15px;
		border-radius:20px;
	}
	.mainvisual_text_catch{
		max-width:440px;
		margin:-50px auto 10px;
		position:relative;
	}
	.mainvisual_text_service{
		margin:0 0 10px;
		font-size:2rem;
	}
	.mainvisual_text_logo{
		max-width:80%;
		margin:0 auto 25px;
	}
	.mainvisual_text_point{
		grid-gap:10px;
		margin:0 auto 10px;
		li{
			font-size:1.5rem;
		}
	}

	.mainvisual_image{
		width:70%;
		margin:0 auto 10px;
		padding:0;
	}
	.mainvisual_image_ui {
		left: 9.2%;
	}
	.mainvisual_prize{
		overflow:hidden;
	}
	.mainvisual_prize .contents_inner{
		padding-bottom:5px;
	}
	.mainvisual_prize_01{
		width: 33%;
	}
	.mainvisual_prize_02{
		width: 33%;
	}
	.mainvisual_prize_03{
		width: 33%;
	}

		/* =====================================
		contents_problem
		===================================== */
	#contents_problem .contents_inner{
		padding:30px 1% 0;
	}

	/* =====================================
	contents_solution
	===================================== */
	#contents_solution .contents_heading{
		margin:0 0 30px;
	}
	#contents_solution .contents_heading_ja strong{
		font-size:1.3em;
	}
	.solution_item{
		display:block;
		margin:0 auto 15px;
		padding:15px;
		border-radius:10px;
	}
	.solution_item_image{
		width:60%;
		margin:0 auto 10px;
	}
	.solution_item_text{
		width:100%;
		text-align:center;
	}
	.solution_item_num {
		margin: 0 0 5px;
		font-size:1.3rem;
		padding: 10px 10px 8px;
		border-radius: 10px;
		span{
			font-size:2.5rem;
		}
	}
	.solution_item_title{
		margin:0 0 10px;
		font-size:2.5rem;
	}
	.solution_item_desc{
		text-align:left;
	}
	
	#contents_solution .cta_set{
		margin-top:30px;
	}

	
	/* =====================================
	contents_point
	===================================== */

	.point_popular{
		padding:0;
		margin:0;
		background:none;
	}
	.point_popular_slide{
		padding:0 20px;
	}
	.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-dots{
		margin-bottom:-5px;
		left: 0;
	}
	.point_popular_slide .slick-prev,
	.point_popular_slide .slick-next{
		width:16px;
		margin-top:-19px;
	}
	.point_popular_slide .slick-prev{
		left:-4px;
	}
	.point_popular_slide .slick-next{
		right:-4px;
	}
	.point_popular_slide .slick-prev:before,
	.point_popular_slide .slick-next:before{
		width:16px;
	}

	/* =====================================
	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;
		}
	}
	
	/* =====================================
	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;
	}

}
