bbr,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{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:0 0}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}nav ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:0 0}ins{background-color:#ff9;color:#000;text-decoration:none}mark{background-color:#ff9;color:#000;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{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}.clearfix::after{content:"";display:block;clear:both}

html {
	font-size: 62.5%;
}
* {
	max-height: 99999px;
}
body {
	font-family: "Zen Kaku Gothic Antique", '繝偵Λ繧ｮ繝手ｧ偵ざ Pro W3', 'Hiragino Kaku Gothic Pro', '繝｡繧､繝ｪ繧ｪ', 'Meiryo', '貂ｸ繧ｴ繧ｷ繝�け', 'Yu Gothic', '�ｭ�ｳ �ｰ繧ｴ繧ｷ繝�け', 'MS PGothic', sans-serif;
	-webkit-text-size-adjust: 100%;
	font-size: 1.6rem;
	color: #333;
	font-weight: 500;
	line-height: 1.75;
	font-feature-settings: "palt";
}
img,video {
	vertical-align: bottom;
	max-width: 100%;
}
li {
	list-style: none;
}
a {
	text-decoration: none;
	color: #555;
}
a:hover {
	opacity: 0.6;
}
.en {
	font-family: "Montserrat", sans-serif;
}
#wrap {
	overflow: hidden;
}
.relative {
	position: relative;
}
.absolute {
	position: absolute;
}
.inline {
	display: inline-block;
}
.left {
	float: left;
}
.right {
	float: right;
}
.pc {
	display: block;
}
.sp {
	display: none;
}
.tab {
	display: none;
}
.in {
	width: 1200px;
	margin: 0 auto;
	position: relative;
	z-index: 3;
}
.in_in {
	width: 1000px;
	margin: 0 auto;
	position: relative;
	z-index: 3;
}
.flex {
	display: flex;
}
.flex_w {
	flex-wrap: wrap;
}
.palt {
	font-feature-settings: "palt";
}
@media screen and (max-width: 750px) {
	body {
		font-size: 1.4rem;
		letter-spacing: 1px;
	}
	#wrap {
		width: 100vw;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.tab {
		display: none;
	}
	.in,.in_in {
		width: 94%;
		margin: 0 auto;
	}
	.flex_w_sp {
		flex-wrap: wrap;
	}
}

.cor_blue{
	color: #1377ca;
}
.cor_red {
	color: #df3535;
}
.cor_green {
	color: #00ca04;
}
.cor_yellow {
	color: #fec830;
}
.cor_white{
	color: #fff;
}
.bg_blue{
	background: #1377ca;
}
.bg_red {
	background: #df3535;
}
.bg_green {
	background: #00ca04;
}
.bg_white {
	background: #fff;
}
.bg_yellow_02{
	background: #fbf8f1;
}

#header{
	position: absolute;
	width: 100%;
	padding: 20px 0;
}
#header .logo{}
#header .logo img{
	width: 252px;
}
@media screen and (max-width: 750px) {
	#header{
		padding: 10px 0;
	}
	#header .logo{
		text-align: center;
	}
	#header .logo img{
		width: 200px;
	}
}

#main_v{
	background: url(../images/fv_bg.jpg);
	background-size: cover;
	background-position: center;
	padding: 60px 0 60px;
}
#main_v .l_area{
	width: 53%;
	position: relative;
	z-index: 2;
}
#main_v .baloon{
	position: relative;
	width: 558px;
	margin-bottom: 10px;
}
#main_v .baloon .txt{
    position: absolute;
    top: 34px;
    /* left: 50%; */
    width: 514px;
    text-align: center;
    font-weight: 600;
    letter-spacing: 0;
	font-size: 3.6rem;
}
#main_v .baloon .txt span.l_txt{
	font-size: 4.2rem;
}
#main_v .baloon .txt span.s_txt {
	font-size: 2.8rem;
}
#main_v .main_copy{
	font-size: 6.6rem;
    letter-spacing: 0;
    font-weight: 600;
    line-height: 1.5;
	margin-bottom: 10px;
}
#main_v .main_copy .zabuton{
	color: #fff;
	line-height: 1;
	padding: 5px 0;
	display: inline-block;
}
#main_v .main_copy .s_txt{
	font-size: 5.2rem;
}
#main_v .mid_txt_01{
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	text-align: center;
	font-size: 3.6rem;
	font-weight: 600;
	padding-top: 5px;
	margin-bottom: 20px;
}
#main_v .mid_txt_01 span{
	background-image: radial-gradient(circle at center, orange 20%, transparent 20%); /* 点の色とサイズ調整 */
	background-position: top right;
	background-repeat: repeat-x;
	background-size: 1em 0.3em;
	padding-top: 2px;
}
#main_v .mid_txt_02_w{
	margin-bottom: 30px;
}
#main_v .mid_txt_02_01{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 10px;
	filter: drop-shadow(0px 0px 4px #fbf9f3) drop-shadow(0px 0px 4px #fbf9f3)drop-shadow(0px 0px 4px #fbf9f3)drop-shadow(0px 0px 4px #fbf9f3);
}
#main_v .mid_txt_02_01 span{
	font-size: 2.8rem;
}
#main_v .mid_txt_02_02{
	font-size: 4.0rem;
	font-weight: 600;
	line-height: 1;
	filter: drop-shadow(0px 0px 4px #fbf9f3) drop-shadow(0px 0px 4px #fbf9f3)drop-shadow(0px 0px 4px #fbf9f3)drop-shadow(0px 0px 4px #fbf9f3);
}
#main_v .mid_txt_02_02 span{
	font-size: 3.4rem;
}
#main_v .r_area{
    position: absolute;
    right: 0;
    top: -40px;
}
#main_v .bottom_list_w{
	position: relative;
	z-index: 2;
	justify-content: space-between;
}
#main_v .bottom_list_w li{
	width: 32.5%;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	padding: 10px;
	box-sizing: border-box;
	border-radius: 100px;
	font-size: 2.0rem;
	font-weight: 600;
	display: flex;
	align-items: center;
}
#main_v .bottom_list_w li:before{
	display: block;
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 100%;
    border: 6px solid #1377ca;
	flex-shrink: 0;
}
#main_v .bottom_list_w li span{
	width: 100%;
	text-align: center;
}
@media screen and (max-width: 750px) {
	#main_v{
		background: url(../images/fv_bg_sp.jpg);
		padding: 40px 0 30px;
	}
	#main_v .l_area{
		width: 100%;
		margin-bottom: 10px;
	}
	#main_v .baloon{
		width: 100%;
		margin-bottom: 0;
	}
	#main_v .baloon .txt{
		width: 100%;
		font-size: 2.8rem;
		top: 24px;
		line-height: 1;
	}
	#main_v .baloon .txt span.l_txt {
		font-size: 3.6rem;
	}
	#main_v .baloon .txt span.s_txt {
		font-size: 2.2rem;
	}
	#main_v .main_copy{
		font-size: 3.8rem;
	}
	#main_v .main_copy .s_txt{
		font-size: 2.6rem;
	}
	#main_v .main_copy .zabuton{
		letter-spacing: -1px;
	}
	#main_v .mid_txt_01{
		letter-spacing: 0;
		font-size: 2.2rem;
		margin-bottom: 15px;
	}
	#main_v .mid_txt_02_w{
		margin-bottom: 0;
	}
	#main_v .mid_txt_02_01{
		font-size: 1.4rem;
		letter-spacing: -1.5px;
		margin-bottom: 5px;
	}
	#main_v .mid_txt_02_01 span {
		font-size: 1.75rem;
	}
	#main_v .mid_txt_02_02{
		font-size: 2.4rem;
		letter-spacing: -1.5px;
	}
	#main_v .mid_txt_02_02 span {
		font-size: 2.0rem;
	}
	#main_v .r_area {
        position: relative;
        top: 0;
        width: 100vw;
        left: -11px;
    }
	#main_v .bottom_list_w {
		position: absolute;
		z-index: 2;
		justify-content: space-between;
		width: 100%;
		bottom: -70px;
	}
	#main_v .bottom_list_w li {
        display: block;
        width: 32%;
        border-radius: 10px;
        font-size: 1.4rem;
        padding: 20px 3px;
		letter-spacing: -0.5px;
    }
	#main_v .bottom_list_w li:before{
		margin: 0 auto 10px;
	}
	#main_v .bottom_list_w li > span{
		text-align: center;
		display: block;
		line-height: 1.25;
	}
}

.cta{
	background: url(../images/cta_bg.jpg);
	background-size: cover;
	background-position: center;
	padding: 30px 0;
}
.cta .cta_w{
	padding: 0 30px;
	border-radius: 15px;
}
.cta .cta_w .cta_h_w{
	width: 665px;
	margin: auto;
	padding: 25px 0 0;
}
.cta .cta_w .cta_h_w .ttl_w{
	text-align: center;
	display: table;
	margin:0 auto 25px;
}
.cta .cta_w .cta_h_w .ttl_w:after{
	content: "";
	display: block;
	width: 100%;
	height: 8px;
	background-image: repeating-linear-gradient(-45deg,#f5a623 25%,transparent 25%,transparent 50%,#f5a623 50%,#f5a623 75%,transparent 75%);
	background-size: 6px 6px;
}
.cta .cta_w .cta_h_w .ttl_w .ttl{
	font-size: 3.4rem;
	line-height: 1.25;
}
.cta .cta_w .cta_h_w .ttl_w .ttl .s_txt{
	font-size: 2.6rem;
}
.cta .cta_w .cta_h_w .cta_h_b{
	position: relative;
	padding-bottom: 20px;
}
.cta .cta_w .cta_h_w .line_ttl{
	font-size: 2.4rem;
	text-align: center;
	font-weight: 600;
	line-height: 1;
	padding: 8px 0;
	margin-bottom: 10px;
}
.cta .cta_w .cta_h_w .cta_h_b .txt{}
.cta .cta_w .cta_h_w .cta_h_b .imgarea {
	position: absolute;
	right: 30px;
	bottom: 0;
	width: 140px;
}
.cta .cta_w .cta_btn_w{
	border-top: 1px solid #ccc;
	justify-content: center;
	padding: 30px 0 20px;
	align-items: center;
}
.cta .cta_w .cta_btn_w .cta_btn_i{
	width: 40%;
	margin: 0 10px;
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn{
	width: 100%;
	display: flex;
	justify-content: center;
	position: relative;
	align-items: center;
	font-size: 1.8rem;
	align-items: center;
	line-height: 1;
	padding: 15px;
	box-sizing: border-box;
	min-height: 60px;
	border-radius: 100px;
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn:after{
	content: "";
	display: block;
	width: 35px;
	height: 35px;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0,-50%);
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn .icon{
	width: 28px;
	display: inline-block;
	margin-right: 10px;
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn.cta_btn_i_line{
	box-shadow: 0px 5px 10px 0px rgba(0, 202, 4, 0.31);
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn.cta_btn_i_line:after{
	background-image: url(../images/cta_btn_arr.png);
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn.cta_btn_i_mail {
	box-shadow: 0px 5px 10px 0px rgba(255, 116, 149, 0.31);
}
.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn.cta_btn_i_mail:after {
	background-image: url(../images/cta_btn_arr_02.png);
}
.cta .cta_w .cta_btn_w .cta_btn_i .u_txt{
	text-align: center;
	margin-top: 10px;
}
@media screen and (max-width: 750px) {
	.cta{
		background: url(../images/cta_bg_sp.jpg);
		background-size: cover;
		background-position: center;
		padding: 30px 0;
	}
	.cta.cta_fv_u{
		padding-top: 60px;
	}
	.cta .cta_w{
		padding: 0 15px;
	}
	.cta .cta_w .cta_h_w{
		width: 100%;
	}
	.cta .cta_w .cta_h_w .ttl_w .ttl{
		font-size: 2.4rem;
	}
	.cta .cta_w .cta_h_w .ttl_w .ttl .s_txt {
		font-size: 1.8rem;
	}
	.cta .cta_w .cta_h_w .line_ttl{
		font-size: 1.8rem;
		text-align: left;
		padding: 8px;
	}
	.cta .cta_w .cta_h_w .cta_h_b .txt {
		width: 62%;
		line-height: 1.3;
	}
	.cta .cta_w .cta_h_w .cta_h_b .imgarea{
		right: 0;
	}
	.cta .cta_w .cta_btn_w .cta_btn_i {
		width: 100%;
		margin: 0;
		margin-bottom: 15px;
	}
	.cta .cta_w .cta_btn_w{
		padding: 20px 0 20px;
	}
	.cta .cta_w .cta_btn_w .cta_btn_i:nth-last-of-type(1){
		margin-bottom: 0;
	}
	.cta .cta_w .cta_btn_w .cta_btn_i .u_txt {
		text-align: center;
		margin-top: 6px;
		font-size: 1.2rem;
	}
	.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn{
		font-size: 1.6rem;
		min-height: 55px;
	}
	.cta .cta_w .cta_btn_w .cta_btn_i .cta_btn_i_btn:after{
		width: 30px;
    	height: 30px;
	}
}

#trouble{
	background: #f0f0f0;
	overflow: hidden;
	position: relative;
}
#trouble:after{
	content: "";
	display: block;
	width: 100%;
	height: 20px;
	background: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
}
#trouble .ttl_w{
	margin-bottom: 5px;
	position: relative;
	top: -15px;
	text-align: center;
}
#trouble .ttl_w .baloon{
	display: table;
	position: relative;
	padding: 10px 15px;
	padding-top: 20px;
	border-radius: 100%;
	text-align: center;
	font-weight: 600;
	font-size: 2.0rem;
	margin:0 auto 0px;
}
#trouble .ttl_w .baloon:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 12px 10px 0 10px;
    border-color: #fff transparent transparent transparent;
    position: absolute;
    top: 94%;
    left: 50%;
    transform: translate(-50%, 0px);
}
#trouble .ttl_w .ttl{
	font-size: 3.2rem;
	font-weight: 600;
	letter-spacing: 2px;
}
#trouble .ttl_w .ttl .l_txt{
	font-size: 3.8rem;
}
#trouble .ttl_w .ttl .line {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5' viewBox='0 0 10 5'%3E%3Cpath d='M0 4 Q2.5 1 5 4 Q7.5 7 10 4' stroke='%23ff8a00' stroke-width='2' fill='none'/%3E%3C/svg%3E") repeat-x bottom left;
	background-size: 10px 10px;
	padding-bottom: 5px;
}
#trouble .imgarea{
	text-align: center;
}
@media screen and (max-width: 750px) {
	#trouble .ttl_w .baloon{
		font-size: 1.6rem;
	}
	#trouble .ttl_w{
		margin-bottom: 10px;
	}	
	#trouble .ttl_w .ttl{
		font-size: 2.8rem;
	}
	#trouble .ttl_w .ttl .l_txt {
		font-size: 3.4rem;
	}
}

#logo{
	padding: 20px 0 30px;
}
#logo .ttl{
	text-align: center;
	margin-bottom: 40px;
}
#logo .ttl span{
	font-size: 2.6rem;
	display: inline-block;
	padding: 5px 10px;
	line-height: 1;
}
#logo .logo_lis_w{
	gap: 10px;
}
@media screen and (max-width: 750px) {
	#logo .ttl {
		text-align: center;
		margin-bottom: 30px;
	}
	#logo .ttl span{
		font-size: 2.2rem;
	}
	#logo .logo_lis_w{
		justify-content: center;
	}
	#logo .logo_lis_w li{
		width: 48%;
	}
}

#omakase{
	background: url(../images/solution_bg.jpg);
	background-size: cover;
	background-position: center;
	padding: 30px 0;
	position: relative;
}
#omakase:before{
	content: "";
	display: block;
	width: 100%;
	height: 80px;
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
}
#omakase .txtarea{
	margin-right: 20px;
	margin-top: 30px;
}
#omakase .txtarea .ttl_w {
	margin-bottom: 20px;
}
#omakase .txtarea .ttl_w .ttl_top{
	margin-bottom: 10px;
}
#omakase .txtarea .ttl_w .ttl_top .w{
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 1;
	padding: 5px 10px;
	display: inline-block;
	position: relative;
}
#omakase .txtarea .ttl_w .ttl_top .w span{
	position: relative;
	z-index: 2;
}
#omakase .txtarea .ttl_w .ttl_top .w:before {
	content: "";
	display: block;
	background: url(../images/solution_ttl_deco.png);
	width: 29px;
	height: 17px;
	background-size: cover;
	background-position: center;
	position: absolute;
	right: -10px;
	top: -10px;
	transform: rotate(10deg);
}
#omakase .txtarea .ttl_w .ttl_top .w:after {
	content: "";
	display: block;
	width: 94%;
	height: 8px;
	background-image: repeating-linear-gradient(-45deg, #fed86a 25%, transparent 25%, transparent 50%, #fed86a 50%, #fed86a 75%, transparent 75%);
	background-size: 6px 6px;
	position: absolute;
	bottom: 4px;
}
#omakase .txtarea .ttl_w .ttl{
	
}
#omakase .txtarea .ttl_w .ttl .ttl_txt{
	display: inline-block;
	font-size: 4.0rem;
	line-height: 1;
	padding: 5px 10px;
	box-shadow: 0px 5px 9px 0px rgba(19, 119, 202, 0.15);
}
#omakase .txtarea .ttl_w .ttl .s_txt{
	font-size: 3.4rem;
}
#omakase .txtarea .discount_w{
	justify-content: space-between;
}
#omakase .txtarea .discount_w .discont_i{
	width: 48%;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	border-radius: 10px;
	padding:20px 10px;
	box-sizing: border-box;
}
#omakase .txtarea .discount_w .discont_i .discont_i_top_txt{
	text-align: center;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 10px;
}
#omakase .txtarea .discount_w .discont_i .discont_i_top_txt span{
	font-size: 1.8rem;
}
#omakase .txtarea .discount_w .discont_i .discont_i_top_num{
	font-size: 2.6rem;
	line-height: 1;
	text-align: center;
}
#omakase .txtarea .discount_w .discont_i .discont_i_top_num .l_txt{
	font-size: 4.4rem;
}
#omakase .imgarea{
	width: 55%;
	flex-shrink: 0;
}
#omakase .btn_w{
	justify-content: center;
	padding: 30px 0 20px;
	align-items: center;
}
#omakase .btn_w .btn_i{
	width: 40%;
	margin: 0 10px;
}
#omakase .btn_w .btn_i .btn_i_btn{
	width: 100%;
	display: flex;
	justify-content: center;
	position: relative;
	align-items: center;
	font-size: 1.8rem;
	align-items: center;
	line-height: 1;
	padding: 15px;
	box-sizing: border-box;
	min-height: 60px;
	border-radius: 100px;
	box-shadow: 0px 5px 10px 0px rgba(19, 119, 202, 0.31);
}
#omakase .btn_w .btn_i .btn_i_btn:after{
	content: "";
	display: block;
	width: 35px;
	height: 35px;
	background-size: cover;
	background-position: center;
	position: absolute;
	top: 50%;
	right: 10px;
	transform: translate(0,-50%);
	background-image: url(../images/cta_btn_arr_03.png);
}
@media screen and (max-width: 750px) {
	#omakase{
		background: url(../images/solution_bg_sp.jpg);
		background-size: cover;
		background-position: center;
	}
	#omakase .omakase_w{
		flex-direction: column-reverse;
	}
	#omakase .txtarea {
        margin-top: 0px;
        margin-right: 0px;
        
    }
	#omakase .txtarea .ttl_w{
		margin-top:0;
		position: relative;
        left: -5%;
		z-index: 3;
	}
	#omakase .txtarea .ttl_w .ttl_top .w{
		font-size: 2.0rem;
	    padding: 7px 10px 7px 20px;
	}
	#omakase .txtarea .ttl_w .ttl_top .w:after{
		width: 89%;
	}
	#omakase .txtarea .ttl_w .ttl_top .w:before{
		right: -4px;
    	top: -6px;
	}
	#omakase .txtarea .ttl_w .ttl .ttl_txt{
		font-size: 3.2rem;
		padding: 5px 10px 5px 20px;
		width: 97%;
	}
	#omakase .txtarea .ttl_w .ttl .s_txt {
		font-size: 2.6rem;
	}
	#omakase .txtarea .discount_w .discont_i .discont_i_top_txt{
		font-size: 1.8rem;
		margin-bottom: 5px;
	}
	#omakase .txtarea .discount_w .discont_i .discont_i_top_txt span {
		font-size: 1.6rem;
	}
	#omakase .txtarea .discount_w .discont_i .discont_i_top_num{
		font-size: 1.8rem;
	}
	#omakase .txtarea .discount_w .discont_i .discont_i_top_num .l_txt {
		font-size: 3.7rem;
	}
	#omakase .imgarea {
		width: 100%;
		flex-shrink: 0;
	}
	#omakase .btn_w{
		padding-bottom: 0;
	}
	#omakase .btn_w .btn_i {
		width: 100%;
		margin: 0 10px;
	}
	#omakase .btn_w .btn_i .btn_i_btn{
		font-size: 1.4rem;
		min-height: 55px;
	}
	#omakase .btn_w .btn_i .btn_i_btn:after{
		width: 30px;
		height: 30px;
	}
}

#reason{
	padding: 70px 0;
	background: url(../images/reason_bg.jpg);
	background-size: cover;
	background-position: center;
}
#reason .ttl_w{
	display: table;
	margin:0 auto 50px;
	text-align: center;
	position: relative;
}
#reason .ttl_w .ttl_txt_w{
	position: relative;
	z-index: 3;
	filter: drop-shadow(0px 0px 4px #fff) drop-shadow(0px 0px 4px #fff)drop-shadow(0px 0px 4px #fff)drop-shadow(0px 0px 4px #fff);
}
#reason .ttl_w .ttl_top_txt{
	line-height: 1;
	margin-bottom: 10px;
	font-weight: 600;
}
#reason .ttl_w .ttl_top_txt > span{
	font-size: 3.6rem;
	display: inline-block;
	padding: 5px 10px;
}
#reason .ttl_w .ttl_top_txt .s_txt{
	font-size: 3.0rem;
}
#reason .ttl_w .ttl{
	font-size: 4.8rem;
	line-height: 1;
}
#reason .ttl_w .ttl .s_txt{
	font-size: 4.0rem;
}
#reason .ttl_w .ttl_deco {
	position: absolute;
}
#reason .ttl_w .ttl_deco_01 {
	width: 200px;
	right: -140px;
	top: -40px;
}
#reason .ttl_w .ttl_deco_02 {
	width: 180px;
	left: -140px;
	top: -40px;
}
#reason .reason_i{
	margin-bottom: 30px;
}
#reason .reason_i:nth-of-type(2n){
	flex-direction: row-reverse;
}
#reason .reason_i:nth-last-of-type(1){
	margin-bottom: 0;
}
#reason .reason_i .txtarea{
	width: 100%;
	margin-right: 30px;
}
#reason .reason_i:nth-of-type(2n) .txtarea {
	width: 100%;
	margin-right: 0;
	margin-left: 30px;
}
#reason .reason_i .txtarea .sub_ttl_w{}
#reason .reason_i .txtarea .sub_ttl_w .num{
	line-height: 1;
	position: relative;
	margin-bottom: 20px;
}
#reason .reason_i .txtarea .sub_ttl_w .num span{
	color: #fff;
	-webkit-text-stroke: 5px #df3535;
	paint-order: stroke fill;
	font-size: 3.2rem;
	letter-spacing: 2px;
	position: relative;
	z-index: 2;
	display: inline-block;
	padding-right: 20px;
}
#reason .reason_i .txtarea .sub_ttl_w .num:after {
	background: #333333;
	height: 1px;
	width: 63%;
	display: block;
	content: "";
	position: absolute;
	left: 180px;
	top: 50%;
}
#reason .reason_i .sub_ttl_w .sub_ttl{
	margin-bottom: 20px;
}
#reason .reason_i .sub_ttl_w .sub_ttl span{
	font-size: 2.8rem;
	line-height: 1;
	display: inline-block;
	font-weight: 600;
	padding: 5px 10px;
}
#reason .reason_i .imgarea {
	width: 48%;
	flex-shrink: 0;
}
@media screen and (max-width: 750px) {
	#reason{
		padding: 60px 0;
		background: url(../images/reason_bg_sp.jpg);
		background-size: cover;
		background-position: center;
	}
	#reason .ttl_w{
		margin-bottom: 40px;
	}
	#reason .ttl_w .ttl_top_txt{
		margin-bottom: 10px;
	}
	#reason .ttl_w .ttl_top_txt > span{
		font-size: 2.6rem;
		display: inline-block;
		padding: 5px 10px;
	}
	#reason .ttl_w .ttl_top_txt .s_txt {
		font-size: 2.2rem;
	}
	#reason .ttl_w .ttl{
		font-size: 3.4rem;
	}
	#reason .ttl_w .ttl .s_txt {
		font-size: 2.8rem;
	}
	#reason .ttl_w .ttl_deco_02 {
		width: 142px;
		left: -80px;
		top: -40px;
	}
	#reason .ttl_w .ttl_deco_01 {
		width: 150px;
		right: -80px;
		top: -30px;
	}
	#reason .reason_i .txtarea{
		margin-right: 0;
		margin-bottom: 20px;
	}
	#reason .reason_i:nth-of-type(2n) .txtarea{
		margin-left: 0;
	}

	#reason .reason_i .txtarea .sub_ttl_w .num{
		margin-bottom: 15px;
	}
	#reason .reason_i .txtarea .sub_ttl_w .num span{
		font-size: 2.8rem;
	}
	#reason .reason_i .txtarea .sub_ttl_w .num:after {
		width: 53%;
		left: auto;
		top: 50%;
		right: 0;
	}
	#reason .reason_i .sub_ttl_w .sub_ttl span{
		font-size: 2.2rem;
		padding: 5px;
	}
	#reason .reason_i .sub_ttl_w .sub_ttl {
		margin-bottom: 10px;
	}
	#reason .reason_i .imgarea {
		width: 100%;
		flex-shrink: 0;
	}
}

#case{
	background: #f0f0f0;
	padding: 60px 0;
}
#case .ttl_w{
	align-items: center;
	justify-content: center;
}
#case .ttl_w .txtarea{}
#case .ttl_w .txtarea .ttl{
	margin-bottom: 10px;
}
#case .ttl_w .txtarea .ttl span{
	background: #676767;
	display: inline-block;
	line-height: 1;
	font-size: 3.2rem;
	font-weight: 600;
	padding: 5px 10px;
	margin-bottom: 5px;
}
#case .ttl_w .txtarea .txt{
	font-weight: 600;
}
#case .ttl_w .imgarea{
    width: 220px;
    flex-shrink: 0;
}
#case .case_w{}
#case .case_w .case_i{
	width: 100%;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	border-radius: 15px;
	overflow: hidden;
	margin-bottom: 30px;
}
#case .case_w .case_i:nth-last-of-type(1){
	margin-bottom: 0;
}
#case .case_w .case_i .txt_w{
	width: 100%;
}
#case .case_w .case_i .case_c_w{
	padding: 0 20px 30px;
	align-items: flex-end;
}
#case .case_w .case_i .case_c_w .txt_w{
}
#case .case_w .case_i .case_c_w .sub_ttl_w{
	align-items: flex-end;
	margin-bottom: 20px;
}
#case .case_w .case_i .case_c_w .sub_ttl_w .num{
	width: 60px;
	margin-right: 15px;
}
#case .case_w .case_i .case_c_w .sub_ttl_w .sub_ttl{}
#case .case_w .case_i .case_c_w .sub_ttl_w .sub_ttl span{
	background: linear-gradient(transparent 60%, #fec830 50%);
	font-size: 2.6rem;
	font-weight: 600;
}
#case .case_w .case_i .case_c_w .lead{
	margin-bottom: 10px;
}
#case .case_w .case_i .case_c_w .cause_w{
	border: 2px solid #676767;
	align-items: center;
}
#case .case_w .case_i .case_c_w .cause_w .ttl{
	background: #676767;
	writing-mode: vertical-rl;
	text-orientation: mixed;
	padding: 20px 5px;
	letter-spacing: 5px;
	margin-right: 20px;
	flex-shrink: 0;
	position: relative;
	padding-right: 0;
}
#case .case_w .case_i .case_c_w .cause_w .ttl:after {
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 42px solid transparent;
	border-bottom: 42px solid transparent;
	border-left: 15px solid #676767;
	border-right: 0;
	position: absolute;
	left: 100%;
	top: 0;
}
#case .case_w .case_i .case_c_w .cause_w .txt{
	line-height: 1.5;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
#case .case_w .case_i .case_c_w .img_w{
	justify-content: space-between;
	width: 48%;
	margin-left: 20px;
	flex-shrink: 0;
}
#case .case_w .case_i .case_c_w .img_w .img_i{
	width: 49.5%;
}
#case .case_w .case_i .case_c_w .img_w .img_i .txt{
	margin-bottom: 10px;
	text-align: center;
}
#case .case_w .case_i .case_c_w .img_w .img_i .txt span {
	padding-bottom: 5px;
}
#case .case_w .case_i .case_c_w .img_w .img_i .txt .cor_red{
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5' viewBox='0 0 10 5'%3E%3Cpath d='M0 4 Q2.5 1 5 4 Q7.5 7 10 4' stroke='%23df3535' stroke-width='2' fill='none'/%3E%3C/svg%3E") repeat-x bottom left;
	background-size: 10px 10px;
}
#case .case_w .case_i .case_c_w .img_w .img_i .txt .cor_blue {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='5' viewBox='0 0 10 5'%3E%3Cpath d='M0 4 Q2.5 1 5 4 Q7.5 7 10 4' stroke='%231377ca' stroke-width='2' fill='none'/%3E%3C/svg%3E") repeat-x bottom left;
	background-size: 10px 10px;
}
#case .case_w .case_i .u_area{
	padding: 25px;
}
#case .case_w .case_i .u_area h4{
	font-size: 2.8rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 20px;
	text-align: center;
}
#case .case_w .case_i .u_area h4 span{
	background: linear-gradient(transparent 60%, rgba(255,255,255,0.2) 50%);
}
#case .case_w .case_i .u_area .txt{
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.5;
}
#case .case_w .case_i .u_area .txt_02{
	font-size: 1.4rem;
	margin-top: 15px;
	line-height: 1.5;
	text-align: center;
}
@media screen and (max-width: 750px) {
	#case{
		padding: 40px 0;
	}
	#case .ttl_w{
		position: relative;
		display: block;
		margin-bottom: 30px;
	}
	#case .ttl_w .imgarea {
        position: absolute;
        width: 150px;
        flex-shrink: 0;
        top: 20px;
        right: 0;
    }
	#case .ttl_w .txtarea .ttl{
		position: relative;
		left: -5%;
	}
	#case .ttl_w .txtarea .ttl span{
		font-size: 2.2rem;
		padding-left: 20px;
	}
	#case .ttl_w .txtarea .txt {
		font-weight: 600;
		line-height: 1.5;
		font-size: 1.6rem;
	}
	#case .case_w .case_i .case_c_w{
		padding: 0px 15px 20px;
	}
	#case .case_w .case_i .case_c_w .cause_w{
		margin-bottom: 10px;
	}
	#case .case_w .case_i .case_c_w .cause_w .ttl:after {
		border-top: 40px solid transparent;
		border-bottom: 40px solid transparent;
	}
	#case .case_w .case_i .case_c_w .sub_ttl_w .num{
		width: 45px;
	}
	#case .case_w .case_i .case_c_w .sub_ttl_w .sub_ttl span{
		font-size: 2.0rem;
	}
	#case .case_w .case_i .case_c_w .sub_ttl_w{
		margin-bottom: 15px;
	}
	#case .case_w .case_i .case_c_w .lead {
		line-height: 1.5;
	}

	#case .case_w .case_i .case_c_w .img_w{
		width: 100%;
		margin-left: 0;
	}
	#case .case_w .case_i .u_area h4{
		font-size: 2.2rem;
	}
	#case .case_w .case_i .u_area {
		padding: 20px 15px;
	}
	#case .case_w .case_i .u_area .txt{
		font-size: 1.6rem;
	}
	#case .case_w .case_i .u_area .txt_02 {
    	font-size: 1.2rem;
    	margin-top: 10px;
	}
}

#line_section{
	padding: 50px 0 50px;
	background: url(../images/line_bg.jpg);
	background-size: cover;
	background-position: center;
}
#line_section .in_in{
	width: 545px;
}
#line_section .ttl_w{
	position: relative;
	margin-bottom: 25px;
}
#line_section .ttl_w .txt_w{}
#line_section .ttl_w .txt_w .top_txt{
	font-size: 2.4rem;
	margin-bottom: 10px;
}
#line_section .ttl_w .txt_w .ttl{
	font-size: 3.2rem;
	line-height: 1.25;
}
#line_section .ttl_w .txt_w .ttl span{
	margin-bottom: 5px;
	display: inline-block;
	padding: 5px 10px;
}
#line_section .ttl_w .imgarea{
    position: absolute;
    right: -80px;
    bottom: -110px;
}
#line_section .cir_txt_ww{
	position: relative;
	z-index: 2;
	align-items: center;
	justify-content: center;
	margin-bottom: 25px;
}
#line_section .cir_txt_ww .cir_txt_w{}
#line_section .cir_txt_ww .cir_txt_w li{
	width: 144px;
	height: 144px;
	border: 2px solid #1377ca;
	align-items: center;
	justify-content: center;
	line-height: 1.25;
	text-align: center;
	font-size: 2.0rem;
	border-radius: 100%;
	margin-right: 15px;
	font-weight: 600;
}
#line_section .cir_txt_ww .m{
	font-size: 2.0rem;
	flex-shrink: 0;
	font-weight: 600;
}
#line_section .line_section_bottom{}
#line_section .line_section_bottom h3{
	text-align: center;
	margin-bottom: 15px;
}
#line_section .line_section_bottom h3 span{
	font-size: 2.6rem;
	line-height: 1;
	display: inline-block;
	padding: 5px 10px;
	font-weight: 600;
}
#line_section .line_section_bottom .txt{
	font-size: 1.8rem;
	text-align: center;
	line-height: 1.5;
	font-weight: 600;
}
@media screen and (max-width: 750px) {
	#line_section{
		padding: 25px 0 30px;
		background: url(../images/line_bg_sp.jpg);
		background-size: cover;
		background-position: center;
	}
	#line_section .in_in{
		width: 94%;
	}
	#line_section .ttl_w{
		margin-bottom: 15px;
	}
	#line_section .ttl_w .txt_w .top_txt{
		font-size: 1.6rem;
	}
	#line_section .ttl_w .txt_w .ttl{
		font-size: 2.2rem;
	}
	#line_section .ttl_w .txt_w .ttl span{
		padding: 5px;
		margin-bottom: 2px;
	}
	#line_section .ttl_w .imgarea {
		position: absolute;
		right: -20px;
		bottom: -20px;
		width: 200px;
	}
	#line_section .cir_txt_ww{
		margin-bottom: 15px;
	}
	#line_section .cir_txt_ww .cir_txt_w li{
		width: 90px;
    	height: 90px;
		letter-spacing: 0px;
		margin-right: 5px;
		font-size: 1.5rem;
	}
	#line_section .cir_txt_ww .m {
		font-size: 1.6rem;
		flex-shrink: 0;
	}
	#line_section .line_section_bottom h3 span {
    	font-size: 2.2rem;
	}
	#line_section .line_section_bottom .txt {
		font-size: 1.35rem;
		text-align: center;
		line-height: 1.5;
		letter-spacing: 0px;
	}
}

#voice{
	background-image: repeating-linear-gradient(-45deg, #e6eef5 0px, #e6eef5 20px, #e0eaf3 15px, #e0eaf3 40px);
	padding: 70px 0 60px;
}
.en_ttl_w{
	margin-bottom: 70px;
	position: relative;
}
.en_ttl_w .ttl{
	line-height: 1;
	text-align: center;
	position: relative;
	z-index: 2;
}
.en_ttl_w .ttl span{
	display: inline-block;
	padding: 5px 10px;
	font-size: 3.2rem;
	font-weight: 600;
}
.en_ttl_w .en{
	position: absolute;
    opacity: 0.3;
    font-size: 12rem;
    top: 50%;
    left: 50%;
	font-weight: 600;
    transform: translate(-50%, -50%);
	line-height: 1;
}
#voice .voice_w{
	padding-bottom: 40px;
}
#voice .swiper-wrapper {
	align-items: stretch;
}
#voice .voice_w .voice_i{
	border: 1px solid #d0d0d0;
	padding:20px 15px;
	border-radius: 15px;
	box-sizing: border-box;
	display: flex;
    flex-direction: column;
    height: auto;
    box-sizing: border-box;
}
#voice .voice_w .voice_i .voice_i_top{
	margin-bottom: 15px;
}
#voice .voice_w .voice_i .voice_i_top .num{
	margin-bottom: 5px;
}
#voice .voice_w .voice_i .voice_i_top .num span{
	font-size: 1.8rem;
	line-height: 1;
	display: inline-block;
	padding: 2px 10px;
	border-radius: 100px;
}
#voice .voice_w .voice_i .voice_i_top .voice_ttl{
	font-size: 2.2rem;
	line-height: 1.3;
}
#voice .voice_w .voice_i .imgarea{
	margin-bottom: 15px;
	height: 260px;
}
#voice .voice_w .voice_i .imgarea img{
	object-fit: cover;
	object-position: center;
	width: 100%;
	height: 100%;
}
#voice .voice_w .voice_i .comment_w {
    flex: 1;
    display: flex;
    flex-direction: column;
}
#voice .voice_w .voice_i .comment_w h4{
	position: relative;
	margin-bottom: 5px;
}
#voice .voice_w .voice_i .comment_w h4 span{
	line-height: 1;
	display: inline-block;
	background: #fff;
	padding-right: 10px;
	font-size: 2.0rem;
	font-weight: 600;
	position: relative;
	z-index: 2;
}
#voice .voice_w .voice_i .comment_w h4:after{
	content: "";
	height: 1px;
	width: 100%;
	background: #1377ca;
	position: absolute;
	top: 50%;
	left: 0;
}
#voice .voice_w .voice_i .comment_w .txt {
	flex: 1;
}
#voice .swiper-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1px;
}
#voice .swiper-pagination-bullet {
  width: 24px;
  height: 4px;
  border-radius: 0px;
  background: #b0d0e8;
  opacity: 1;
  transition: all 0.3s;
}
#voice .swiper-pagination-bullet-active {
  width: 48px;
  background: #1377ca;
}
@media screen and (max-width: 750px) {
	#voice{
		padding: 50px 0 40px;
	}
	#voice .in{
		width: 100%;
	}
	.en_ttl_w{
		margin-bottom: 50px;
		position: relative;
	}
	.en_ttl_w .ttl{
		line-height: 1;
		text-align: center;
		position: relative;
		z-index: 2;
	}
	.en_ttl_w .ttl span{
		font-size: 2.5rem;
	}
	.en_ttl_w .en{
		font-size: 8.5rem;
	}
	.en_ttl_w .en.l{
		font-size: 7.0rem;
	}
	#voice .voice_w .voice_i .voice_i_top .num span{
		font-size: 1.5rem;
	}
	#voice .voice_w .voice_i .voice_i_top .voice_ttl{
		font-size: 2.0rem;
	}
}

#price {
	padding: 70px 0 60px;
}
#price .price_top_w{
	background-image: repeating-linear-gradient(-45deg, #fecd43 0px, #fecd43 20px, #fec830 15px, #fec830 40px);
	width: 80%;
	margin: auto;
	padding: 20px;
	border-radius: 15px;
	justify-content: space-between;
	margin-bottom: 30px;
}
#price .price_top_w .price_top_i{
	border-radius: 10px;
	width: 32.5%;
	padding: 15px;
	box-sizing: border-box;
	font-weight: 600;
}
#price .price_top_w .price_top_i dt{
	text-align: center;
	padding-bottom: 10px;
	margin-bottom: 5px;
	border-bottom: 1px solid #d0d0d0;
}
#price .price_top_w .price_top_i dd{
	line-height: 1.5;
	text-align: center;
	height: 48px;
	justify-content: center;
	align-items: center;
	display: flex;
}
.b_line_ttl_w{
	margin-bottom: 30px;
}
.b_line_ttl_w .b_line_ttl{
	position: relative;
	text-align: center;
}
.b_line_ttl_w .b_line_ttl span{
	padding: 5px 15px;
	position: relative;
	z-index: 2;
	font-size: 2.4rem;
	display: inline-block;
}
.b_line_ttl_w .b_line_ttl::after{
	content: "";
	display: block;
	height: 1px;
	width: 100%;
	background: #1377ca;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 40%;
}
#price .price_case_w{
	justify-content: space-between;
}
#price .price_case_w .price_case_i{
	width: 32.5%;
}
#price .price_case_w .price_case_i .price_case_i_top{
	position: relative;
	margin-bottom: 15px;
}
#price .price_case_w .price_case_i .price_case_i_top .txtarea{
	position: absolute;
	top: 20px;
	z-index: 2;
}
#price .price_case_w .price_case_i .price_case_i_top .txtarea h4{
	margin-bottom: 10px;
}
#price .price_case_w .price_case_i .price_case_i_top .txtarea h4 span{
	font-size: 2.0rem;
	display: inline-block;
	padding: 5px;
	line-height: 1;
	margin-bottom: 2px;
}
#price .price_case_w .price_case_i .price_case_i_top .txtarea .t_t_mid{
	font-size: 1.4rem;
	line-height: 1.3;
	font-weight: 600;
}
#price .price_case_w .price_case_i .price_case_i_top .txtarea .t_t_mid span{
	background: linear-gradient(transparent 70%, #fec830 50%);
}
#price .price_case_w .price_case_i .price_case_i_top .imgarea{
	text-align: right;
}
#price .price_case_w .price_case_i .price_case_i_top .imgarea img{
	width: 60%;
}
#price .price_case_w .price_case_i .mid_txt{
	line-height: 1.5;
	text-align: center;
	margin-bottom: 10px;
	font-weight: 600;
}
#price .price_case_w .price_case_i .ex_w{
	margin-bottom: 20px;
}
#price .price_case_w .price_case_i .ex_w h4{
	margin-bottom: 5px;
}
#price .price_case_w .price_case_i .ex_w h4 span{
	font-size: 1.4rem;
	line-height: 1;
	padding: 3px 20px;
	display: inline-block;
	border-radius: 100px;
}
#price .price_case_w .price_case_i .ex_w .ex_lis_w{
	justify-content: space-between;
}
#price .price_case_w .price_case_i .ex_w .ex_lis_w li{
	width: 49%;
	border-bottom: 1px solid #d0d0d0;
	padding-bottom: 5px;
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}
#price .price_case_w .price_case_i .ex_w .ex_lis_w li::before{
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	background: #1377ca;
	border-radius: 100px;
	margin-right: 5px;
}
#price .price_case_w .price_case_i .result_price{
	background-image: repeating-linear-gradient(-45deg, #fecd43 0px, #fecd43 20px, #fec830 15px, #fec830 40px);
	border-radius: 10px;
	padding: 20px;
	text-align: center;
}
#price .price_case_w .price_case_i .result_price .top_txt{
	text-align: center;
	margin-bottom: 5px;
	font-weight: 600;
}
#price .price_case_w .price_case_i .result_price .price_num{
	font-size: 1.8rem;
	line-height: 1;
}
#price .price_case_w .price_case_i .result_price .price_num .en{
	font-size: 3.0rem;
	line-height: 1;
}
#price .price_case_w .price_case_i .result_price .result_price_i{
	padding: 15px;
	border-radius: 5px;
	background: #fff;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 750px) {
	#price{
		padding: 50px 0 40px;
	}
	#price .price_top_w{
		padding: 13px;
		box-sizing: border-box;
		width: 100%;
	}
	#price .price_top_w .price_top_i{
		width: 100%;
		margin-bottom: 5px;
	}
	#price .price_top_w .price_top_i:nth-last-of-type(1){
		margin-bottom: 0;
	}
	#price .price_top_w .price_top_i dt{
		margin-bottom: 10px;
	}
	#price .price_top_w .price_top_i dd{
		height: auto;
	}
	.b_line_ttl_w .b_line_ttl::after{
		width: 100%;
	}
	#price .price_case_w .price_case_i{
		width: 100%;
		margin-bottom: 30px;
	}
	#price .price_case_w .price_case_i:nth-last-of-type(1){
		margin-bottom: 0;
	}
	#price .price_case_w .price_case_i .price_case_i_top .txtarea {
		position: absolute;
		top: 50%;
		transform: translate(0px, -50%);
	}
}

#flow .flow_head{
	padding: 40px 0 40px;
	background: #fbf8f1;
	overflow: hidden;
}
#flow .flow_head .in_in {
	width: 545px;
}
#flow .flow_head .ttl_w{
	position: relative;
	margin-bottom: 25px;
}
#flow .flow_head .ttl_w .txt_w{
	margin-left: auto;
	display: table;
}
#flow .flow_head .ttl_w .txt_w .top_txt{
	font-size: 2.4rem;
	margin-bottom: 10px;
	padding-left: 90px;
}
#flow .flow_head .ttl_w .txt_w .ttl{
	font-size: 3.2rem;
	line-height: 1.25;
}
#flow .flow_head .ttl_w .txt_w .ttl > span{
	margin-bottom: 5px;
	display: inline-block;
	padding: 5px 10px;
	padding-left: 90px;
}
#flow .flow_head .ttl_w .txt_w .ttl .s_txt{
	font-size: 2.6rem;
}
#flow .flow_head .ttl_w .imgarea {
	position: absolute;
	left: 0;
	bottom: -85px;
	width: 310px;
}
#flow .flow_head .ttl_w .deco{
	position: absolute;
}
#flow .flow_head .ttl_w .deco_01{
    width: 70px;
    top: -10px;
    left: 110px;
}
#flow .flow_head .ttl_w .deco_02 {
	width: 50px;
	right: -30px;
	bottom: -10px;
}
#flow .flow_head .ttl_w .deco_03 {
	width: 50px;
	top: 0;
	right: -80px;
}
#flow .flow_c {
	margin-top: -30px;
	position: relative;
	z-index: 3;
}
#flow .flow_c .flow_c_w{
	justify-content: center;
	gap: 1rem;
}
#flow .flow_c .flow_c_w .flow_c_i{
	background: #e6f0f8;
	width: 32.5%;
	border-radius: 15px;
	padding: 20px;
	box-sizing: border-box;
}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h{
	margin-bottom: 15px;
	align-items: center;
}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .imgarea{
	width: 25%;
	margin-right: 15px;
}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .txtarea{}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .txtarea .num{
	width: 85px;
	margin-bottom: 10px;
}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .txtarea h3{
	font-size: 2.0rem;
	font-weight: 600;
	line-height: 1.25;
}
#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .txtarea h3 .s_txt{
	font-size: 1.6rem;
}
#flow .flow_c .flow_c_w .flow_c_i .u_area{}
#flow .flow_c .flow_c_w .flow_c_i .u_area .l_txt{
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 10px;
}
#flow .flow_c .flow_c_w .flow_c_i .u_area .txt{
	font-size: 1.4rem;
	line-height: 1.5;
}
@media screen and (max-width: 750px) {
	#flow .flow_head{
		padding: 20px 0 20px;
	}
	#flow .flow_head .in_in {
		width: 94%;
	}
	#flow .flow_head .ttl_w .imgarea {
        position: absolute;
        left: -25px;
        bottom: -25px;
        width: 192px;
    }
	#flow .flow_head .ttl_w .txt_w .top_txt{
		font-size: 2.0rem;
		padding-left: 50px;
		margin-bottom: 5px;
	}
	#flow .flow_head .ttl_w .txt_w .ttl > span{
		padding-left: 50px;
	}
	#flow .flow_head .ttl_w .txt_w .ttl{
		font-size: 2.5rem;
	}
	#flow .flow_head .ttl_w .txt_w .ttl{
		font-size: 2.5rem;
	}
	#flow .flow_head .ttl_w .txt_w .ttl .s_txt {
		font-size: 2.0rem;
	}
	#flow .flow_head .ttl_w .deco_01 {
		width: 45px;
		top: 0px;
		left: 47px;
	}
	#flow .flow_head .ttl_w .deco_02 {
		width: 50px;
		right: -15px;
		bottom: -10px;
	}
	#flow .flow_head .ttl_w .deco_03 {
		width: 30px;
		top: -23px;
		right: -10px;
	}
	#flow .flow_c .flow_c_w .flow_c_i{
		width: 100%;
	}
	#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .txtarea h3{
		font-size: 1.8rem;
	}
	#flow .flow_c .flow_c_w .flow_c_i .flow_c_i_h .imgarea{
		width: 30%;
	}
}

.line_bnr{
	padding: 60px 0;
	text-align: center;
}
@media screen and (max-width: 750px) {
	.line_bnr{
		padding: 40px 0;
	}
}

#item{
	background: #fbf8f1;
	padding: 60px 0 60px;
}
#item .ttl_w{
	display: table;
	margin:0 auto 40px;
	text-align: center;
	position: relative;
}
#item .ttl_w .ttl_txt_w{
	position: relative;
	z-index: 3;
	filter: drop-shadow(0px 0px 4px #fff) drop-shadow(0px 0px 4px #fff)drop-shadow(0px 0px 4px #fff)drop-shadow(0px 0px 4px #fff);
}
#item .ttl_w .ttl_top_txt{
	line-height: 1;
	margin-bottom: 10px;
	font-weight: 600;
}
#item .ttl_w .ttl_top_txt > span{
	font-size: 3.6rem;
	display: inline-block;
	padding: 5px 10px;
}
#item .ttl_w .ttl_top_txt .s_txt{
	font-size: 3.0rem;
}
#item .ttl_w .ttl{
	font-size: 3.8rem;
	line-height: 1.3;
}
#item .ttl_w .ttl .l_txt{
	font-size: 4.4rem;
	background: linear-gradient(transparent 70%, #fec830 50%);
}
#item .ttl_w .ttl_deco {
	position: absolute;
}
#item .ttl_w .ttl_deco_01 {
	width: 160px;
	right: -60px;
	top: -20px;
}
#item .ttl_w .ttl_deco_02 {
	width: 160px;
	left: -80px;
	top: -15px;
}
#item .item_lis_01_w{
	gap: 0.75rem;
	margin-bottom: 20px;
}
#item .item_lis_01_w li{
	width: 19.5%;
	box-sizing: border-box;
	border: 1px solid #d0d0d0;
	align-items: center;
	line-height: 1.25;
	height: 60px;
	padding: 10px;
}
#item .item_lis_01_w li:before {
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border: 3px solid #1377ca;
	border-radius: 100%;
	flex-shrink: 0;
	margin-right: 5px;
}
#item .item_lis_02_w{
	gap: 0.75rem;
}
#item .item_lis_02_w .item_lis_02_i{
	width: 24.5%;
	position: relative;
	margin-bottom: 20px;
}
#item .item_lis_02_w .item_lis_02_i .txt{
	padding: 5px;
	position: absolute;
	width: 90%;
	z-index: 2;
	text-align: center;
	left: 50%;
	transform: translate(-50%,0);
	bottom: -15px;
	font-weight: 600;
}
@media screen and (max-width: 750px) {
	#item {
		padding: 40px 0 40px;
	}
	#item .ttl_w{
		margin-bottom: 30px;
	}
	#item .ttl_w .ttl_top_txt > span{
		font-size: 2.6rem;
	}
	#item .ttl_w .ttl_top_txt .s_txt {
		font-size: 2.0rem;
	}
	#item .ttl_w .ttl{
		font-size: 2.2rem;
	}
	#item .ttl_w .ttl .l_txt {
		font-size: 2.8rem;
	}
	#item .ttl_w .ttl_deco_02 {
		width: 130px;
		left: -70px;
		top: -25px;
	}
	#item .ttl_w .ttl_deco_01 {
		width: 130px;
		right: -60px;
		top: -25px;
	}
	#item .item_lis_01_w li{
		width: 48.5%;
		font-size: 1.2rem;
	}
	#item .item_lis_02_w .item_lis_02_i{
		width: 48.5%;
	}
}

#form{
	padding: 60px 0 60px;
	background: url(../images/cta_bg.jpg);
    background-size: cover;
    background-position: center;
}
#form .sec_ttl{
	margin-bottom: 40px;
	text-align: center;
}
#form .form_w{
	padding: 40px;
	border-radius: 20px;
}
#form table{
	width: 100%;
}
#form table th{
	width: 25%;
	text-align: left;
	padding: 10px 0;
	vertical-align: middle;
}
#form table td{
	padding: 10px 0;
	vertical-align: middle;
}
#form input[type="text"],
#form input[type="tel"],
#form input[type="email"]{
	width: 100%;
	box-sizing: border-box;
	height: 50px;
	padding: 10px;
	font-size: 1.6rem;
	font-weight: 600;
}
#form select{
	width: 100%;
	height: 50px;
	font-size: 1.6rem;
}
#form label{
	align-items:center;
	margin-right: 20px;
}
#form label input[type="checkbox"]{
	margin-right: 5px;
}
#form .textarea_w{
	margin-top: 20px;
}
#form textarea{
	width: 100%;
	box-sizing: border-box;
	height: 150px;
	padding: 10px;
}
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
input[type="submit"]{
	background: #df3535;
	color: #fff;
	border-radius: 5px;
	width: 300px;
	font-size: 1.8rem;
	padding: 20px;
	box-sizing: border-box;
	display: block;
	margin:40px auto 0;
}
input[type="submit"]:hover{
	opacity: 0.6;
}
#form .file,
#form .date{
  margin-bottom: 10px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
#form label{
	display: inline-block;
}
#form .file span,
#form .date span{
  margin-right: 10px;
}
#form .submit_w{
	text-align: center;
	margin-top: 20px;
}
#form button{
	border: none;
	background: none;
}
#form button:hover{
	opacity: 0.6;
}
#form .submit_w img{
	width: 400px;
}
.form_w .check_w{
	align-items: center;
	justify-content: center;
	margin-top: 10px;
}
input[type="checkbox"] {
	position: relative;
	width: 20px;
	height: 20px;
	border: 1px solid #000;
	vertical-align: -5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	flex-shrink: 0;
	margin-right: 10px;
	margin-top: 5px;
	background: #fff;
}
input[type="checkbox"]:checked:before {
	position: absolute;
	top: 0px;
	left: 4px;
	transform: rotate(50deg);
	width: 6px;
	height: 12px;
	border-right: 2px solid #ed1b24;
	border-bottom: 2px solid #ed1b24;
	content: '';
}
input[type="checkbox"] {
	border-radius: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
@media screen and (max-width: 900px) {
	#form{
		background: url(../images/cta_bg_sp.jpg);
		background-size: cover;
		background-position: center;
	}
	#form .form_w{
		padding:30px 20px;
	}
	#form .sec_ttl_w{
		margin-bottom: 0;
	}
	#form table th,
	#form table td{
		display: block;
	}
	#form table th{
		border-bottom: 0px;
		padding-bottom: 0;
		width: 100%;
	}
	.contact_h{
		padding: 30px 10px;
	}
	.contact_h .txt{
		font-size: 1.4rem;
		padding: 0 15px;
	}
	.contact_h .cta_btns a{
		margin: 0 5px;
	}
	.contact_h .cta_btns a img{
		filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.25));
	}
}

#column {
    padding: 70px 0 60px;
}
#column .column_w{
	justify-content: space-between;
}
#column .column_w .column_i{
	width: 32.5%;
}
#column .column_w .column_i .imgarea{
	margin-bottom: 10px;
	width: 100%;
	height: 220px;
}
#column .column_w .column_i .imgarea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}
#column .column_w .column_i .txtarea{}
#column .column_w .column_i .txtarea h3{
	font-size: 1.8rem;
	line-height: 1.5;
	margin-bottom: 5px;
}
#column .column_w .column_i .txtarea .date{
	margin-bottom: 5px;
}
#column .column_w .column_i .txtarea .txt{
	font-size: 1.4rem;
	line-height: 1.5;
}
@media screen and (max-width: 750px) {
	#column .column_w .column_i{
		width: 100%;
		margin-bottom: 15px;
	}
	#column .column_w .column_i a{
		display: flex;
	}
	#column .column_w .column_i .imgarea {
		margin-bottom: 10px;
		width: 40%;
		height: 100px;
		flex-shrink: 0;
		margin-right: 10px;
	}
	#column .column_w .column_i .txtarea h3 {
		font-size: 1.4rem;
		line-height: 1.25;
		margin-bottom: 5px;
	}
	#column .column_w .column_i .txtarea .txt{
		font-size: 1.2rem;
	}

}


#faq{
	padding: 70px 0 60px;
}
#faq h2{
	text-align: center;
	margin-bottom: 40px;
}
#faq h2 img{
	width: 550px;
}
.faq_i {
	padding: 30px;
	border-radius: 10px;
	margin-bottom: 20px;
	border: 1px solid #8d8d8d;
	transition: 0.5s;
	background: #fff;
}
.faq_i .ico {
	background: #1377ca;
	color: #fff;
	display: flex;
	width: 40px;
	height: 40px;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	margin-right: 20px;
	font-weight: 600;
	flex-shrink: 0;
}
.faq_i .a .ico{
	background: #df3535;
}
.faq_i h3 {
	margin-top: 5px;
	font-weight: 600;
	padding-right: 20px;
}

.faq_i p.l_txt{
	font-weight: 600;
	margin-top: 5px;
}
.faq_i p.s_txt {
	margin-top: 10px;
}

.faq_i .q {
	position: relative;
	cursor: pointer;
}

.faq_i .q:after {
	content: "×";
	font-size: 1.8rem;
	font-weight: 900;
	position: absolute;
	top: 50%;
	right: 0;
	transform: rotate(45deg) translate(-10px, -50%);
	color: #333;
}

.faq_i.open .q:after {
	top: 50%;
	right: -1%;
	transform: rotate(0) translate(0, -50%);
}

.faq_i .a {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #e3e3e3;
	display: none;
	font-weight: 500;
}
@media screen and (max-width: 1000px) {
	.faq_i {
		border-radius: 10px;
		padding: 5% 5%;
	}
	.faq_i .q .flex {
		padding-right: 30px;
	}
	.faq_i h3 {
		margin-top: 0;
	}
	.faq_i .ico {
		width: 30px;
		height: 30px;
		margin-right: 20px;
	}
}

#company{
	padding: 70px 0 60px;
}

#company table{
	border-radius: 10px;
	margin:40px auto 0;
	border-bottom: 2px solid #e8e8e8;
	width: 100%;
}

#company table th{
	text-align: left;
	font-weight: 600;
	padding: 20px 20px;
	border-top: 2px solid #e8e8e8;
	width: 25%;
}

#company table td{
	border-top: 2px solid #e8e8e8;
	text-align: left;
	padding: 20px 20px;
}
#company .btn_w{
	text-align: center;
	margin-top: 40px;
}

@media screen and (max-width: 750px){
	#company{
		padding: 60px 0;
	}
	#company table{
		width: 100%;

	}
	#company table th,
	#company table td{
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	#company table th{
		border-bottom: 0px;
		padding-bottom: 15px;
	}
	#company table td{
		border-top: 0px;
		padding-top: 0;
	}
}

@media screen and (max-width: 900px) {
	.fixed_foot{
		padding: 5px;
		position: fixed;
		width: 100%;
		background: #fff;
		bottom:0;
		box-sizing: border-box;
		z-index: 999;
	}
	.fixed_foot .ttl{
		padding: 0 15px 5px;
	}
	.fixed_foot .flex{
		justify-content:space-between;
	}
	.fixed_foot a{
		display:block;
		padding: 3px;
	}
}

footer {
	text-align: center;
	padding: 15px;
	background: #333;
	color: #fff;
}

footer {
	padding: 10px;
	text-align: center;
}

@media screen and (max-width: 900px) {
	footer {
		padding-bottom: 150px;
		font-size: 1.4rem;
	}
}


.thanks #main_v {
    padding: 200px 0;
    text-align: center;
	background: none;
}

.thanks #main_v .icon {
    text-align: center;
    margin-bottom: 15px
}

.thanks #main_v .icon img {
    width: 40px
}

.thanks #main_v h1 {
    font-size: 2.8rem;
    margin-bottom: 20px;
}

.thanks #main_v .btn_w {
    text-align: center;
    margin-top: 40px
}

.thanks #main_v .btn_w a,
.btn-return{
    display: inline-block;
    background: #254673;
    padding: 10px 20px;
    width: 300px;
    box-sizing: border-box;
    border-radius: 100px;
    border-bottom: #115976 3px solid;
    color: #fff
}

@media screen and (max-width: 750px) {
    .thanks #main_v {
        padding:100px 0;
        text-align: center
    }
}

.fade-up {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}