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: "Noto Sans JP", 'ヒラギノ角ゴ 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";
	letter-spacing: 2px;
}
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: "Roboto", 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: #2e60ee;
}
.txt_blue_grd {
	color: #2e60ee;
	background-image: -moz-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.cor_yellow {
	color: #fff600;
}
.cor_red {
	color: #ce579e;
}
.cor_white {
	color: #fff;
}
.bg_white {
	background: #fff;
}
.bg_blue {
	background: #2e60ee;
}
.bg_red {
	background: #ce579e;
}
.bg_gray {
	background: #f0f0f0;
}
.bg_blue_grd {
	background-image: -moz-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
}

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

#header {
	position: fixed;
	width: 100%;
	box-sizing: border-box;
	z-index: 999;
	padding: 10px 0;
	transition: background-color 0.3s ease, box-shadow 0.3s ease;
}
#header.scrolled {
	background-color: rgba(255, 255, 255, 0.98);
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}
#header .header_w {
	justify-content: space-between;
	align-items: center;
}
#header .logo {
	align-items: center;
}
#header p {
	font-size: 1.4rem;
	letter-spacing: 1px;
	margin-left: 10px;
}
#header .btns {
	align-items: center;
	margin-left: 20px;
}
#header .btn_i {
	margin-left: 10px;
}
@media screen and (max-width: 750px) {
	#header {
		padding-left: 0;
		position: absolute;
		width: 100vw;
	}
	#header .logo {
		width: 33%;
	}
	#header .btns a {
		width: 180px;
		margin-left: 7px;
	}
	#header .tel_btn img {
		filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.25));
	}
}

#main_v {
	background-image: url(../images/fv_bg.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	/* margin-top: 90px; */
	padding-top: 70px;
	padding-bottom: 50px;
	text-align: center;
}
@media screen and (max-width: 750px) {
	#main_v {
		margin-top: 0;
		background: none;
		padding-top: 65px;
		padding-bottom: 0;
	}

	#main_v .in {
		width: 100%;
	}
}

#client{
	padding: 50px 0;
}
#client .sec_ttl{
	text-align: center;
	margin-bottom: 30px;
}
.client_logo_w{
	height: 60px;
	margin-inline: auto;
	margin-top: 22px;
	display: flex;
	overflow-x: hidden;
}
.client_logo_w img {
	animation: loop_animation_left 15s linear infinite;
	white-space: nowrap;
	max-width: 200%;
}
@keyframes loop_animation_left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes scale {
    0% {
        transform:scale(1.0);
    }
    20% {
        transform:scale(1.2);
    }
    40% {
        transform: scale(1.0);
    }
}
@media screen and (max-width: 750px) {
	#client {
		padding: 0px 0 30px;
	}
	.client_logo_w {
		height: auto;
	}
}

#about{
	/*background-image: url(../images/about_bg@x2.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;*/
	padding: 80px 0;
}
#about .sec_ttl_w{
	margin-bottom: 20px;
}
#about .sec_ttl_w .en{
	font-size: 7.0rem;
	line-height: 1;
	font-weight: 500;
	margin-bottom: 10px;
	position: relative;
}
#about .sec_ttl_w .en::before{
	content: "";
	width: 50vw;
	height: 1px;
	background-image: -moz-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	position: absolute;
	top: 50%;
	right: 102%;
}
#about .sec_ttl_w .sec_ttl{
	font-size: 2.2rem;
	font-weight: 500;
}
#about .imgarea{
	flex-shrink: 0;
	margin-left: 30px;
}
@media screen and (max-width: 750px) {
	#about{
		padding: 40px 0;
	}
	#about .sec_ttl_w .en {
		font-size: 5.0rem;
		padding-left: 20px;
	}
	#about .sec_ttl_w .en::before{
		right: 97%;
	}
	#about .imgarea {
		flex-shrink: unset;
		margin-left: 0;
		margin-top: 40px;
	}
}

.sec_ttl_w_02{
	text-align: center;
	margin-bottom: 50px;
}
.sec_ttl_w_02:before{
	content: "";
	width: 1px;
	height: 40px;
	display: block;
	margin: 0 auto 20px;
	background-image: -moz-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
}
.sec_ttl_w_02 .en{
	font-size: 2.6rem;
}
.sec_ttl_w_02 .sec_ttl{
	font-size: 3.6rem;
	font-weight: 600;
	line-height: 1.25;
}
@media screen and (max-width: 750px) {
	.sec_ttl_w_02{
		margin-bottom: 40px;
	}
	.sec_ttl_w_02:before{
		margin-bottom: 10px;
	}
	.sec_ttl_w_02 .en{
		font-size: 2.0rem;
	}
	.sec_ttl_w_02 .sec_ttl{
		font-size: 2.8rem;
	}
}

#concerns{
	padding: 0 0 80px;
}
#concerns .concerns_w{
	gap:15px;
}
#concerns .concerns_w li{
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	width: 49.35%;
	padding: 13px;
	box-sizing: border-box;
	border-radius: 10px 0 10px 10px;
	font-weight: 500;
}
#concerns .concerns_w li .check{
	margin-right: 10px;
}
#concerns .imgarea {
	position: absolute;
	right: 100px;
	bottom: -80px;
}
@media screen and (max-width: 750px) {
	#concerns{
		padding-bottom: 30px;
	}
	#concerns .concerns_w li{
		width: 100%;
	}
	#concerns .concerns_w li .check {
		margin-right: 10px;
		width: 22px;
	}
	#concerns .concerns_w li p{
		line-height: 1.5;
		margin-top: 3px;
	}
	#concerns .imgarea {
		position: relative;
		right: 0;
		bottom: 10px;
	}
}

.solution{
	background-image: url(../images/solution_bg@x2.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 50px;
	position: relative;
}
.solution:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-right: 50px solid transparent;
	border-left: 50px solid transparent;
	border-top: 30px solid #f0f0f0;
	border-bottom: 0;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0px);
}
.solution .txt{
	font-size: 3.6rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 30px;
}
.solution .txt span{
	border-bottom: 4px solid #ff9;
}
.solution .imgarea{
	text-align: center;
}
@media screen and (max-width: 750px) {
	.solution .txt {
		font-size: 2.0rem;
		margin-bottom: 20px;
	}
	.solution .txt span{
		border-bottom: 2px solid #ff9;
	}
}

#reason{
	background-image: url(../images/reason_bg@x2.jpg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: 70px;
}
#reason .sec_ttl_w_02{
	margin-bottom: 60px;
}
#reason .reason_w{
	justify-content: space-between;
}
#reason .reason_i {
	width: 32%;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	position: relative;
	border-radius: 10px;
	padding: 40px 20px 30px;
	box-sizing: border-box;
	text-align: center;
}
#reason .reason_i .num {
	font-size: 3.0rem;
	font-weight: 600;
	line-height: 1;
	position: absolute;
	left: 0;
	top: -13px;
	width: 100%;
	text-align: center;
}
#reason .reason_i .imgarea{
	margin-bottom: 20px;
}
@media screen and (max-width: 750px) {
	#reason{
		padding-bottom: 20px;
	}
	#reason .reason_i{
		width: 100%;
		margin-bottom: 40px;
	}
}

#service{
	padding-bottom: 80px;
}
#service .service_i{
	position: relative;
	margin-bottom: 60px;
}
#service .service_i:nth-last-of-type(1){
	margin-bottom: 0;
}
#service .service_i .imgarea{
	width: 620px;
	height: 100%;
}
#service .service_i:nth-of-type(2n) .imgarea{
	margin-left: auto;
}
#service .service_i .imgarea img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#service .service_i .txtarea{
	width: 630px;
	position: absolute;
	top:40px;
	right: 0;
}
#service .service_i:nth-of-type(2n) .txtarea{
	right: auto;
	left: 0;
}
#service .service_i .txtarea .sub_ttl_w{
	padding: 10px;
	padding-left: 20px;
	align-items: center;
}
#service .service_i .txtarea .sub_ttl_w .num{
	padding-right: 10px;
	margin-right: 10px;
	border-right: 1px solid #fff;
	font-size: 2.2rem;
}
#service .service_i .txtarea .sub_ttl_w h3{
	font-size: 2.4rem;
	font-weight: 600;
}
#service .service_i .txtarea .txt{
	padding-left: 100px;
    padding-top: 40px;
}
#service .service_i:nth-of-type(2n) .txtarea .txt{
	padding-left: 0;
	padding-right: 100px;
    padding-top: 40px;
}
#service .service_i .txtarea_w{
 	padding-left: 80px;
 	padding-top: 20px;
}
#service .service_i:nth-of-type(2n) .txtarea_w{
	padding-left: 0;
	padding-right: 80px;
}
#service .service_i .txtarea_w .l_txt{
	margin-bottom: 20px;
}
#service .service_i .txtarea_w ul{
	gap:5px;
}
#service .service_i .txtarea_w ul li{
	width: 49%;
	border: 1px solid #cecece;
	font-size: 1.4rem;
	align-items: center;
	padding: 5px;
	box-sizing: border-box;
}
#service .service_i .txtarea_w ul li:before{
	content: "";
	width: 6px;
	height: 6px;
	background-image: -moz-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	background-image: -ms-linear-gradient(0deg, rgb(45, 89, 238) 0%, rgb(61, 175, 244) 100%);
	flex-shrink: 0;
	border-radius: 100px;
}
#service .service_i .txtarea_w ul li p{
	width: 100%;
	text-align: center;
}
#service .service_i .txtarea_w .s_txt {
	font-size: 1.4rem;
	border-left: #2e60ee 2px solid;
	padding-left: 20px;
}
@media screen and (max-width: 750px) {
	#service{
		padding-bottom: 30px;
	}
	#service .service_i .imgarea {
        width: 100vw;
        height: auto;
        position: relative;
        left: -4%;
    }
	#service .service_i .txtarea {
		width: 100%;
		position: relative;
		top: -20px;
		right: 0px;
	}
	#service .service_i .txtarea .sub_ttl_w .num{
		font-size: 1.6rem;
    	letter-spacing: 2px;
	}
	#service .service_i .txtarea .sub_ttl_w h3 {
		font-size: 1.8rem;
		letter-spacing: 2px;
	}
	#service .service_i .txtarea .txt,
	#service .service_i:nth-of-type(2n) .txtarea .txt {
		padding-left: 20px;
		padding-top: 20px;
		padding-right: 20px;
	}
	#service .service_i {
		position: relative;
		margin-bottom: 20px;
	}
	#service .service_i:nth-of-type(2n) .imgarea {
		margin-left: 0;
		left: -11px;
	}
	#service .service_i .txtarea_w{
		padding-left: 0;
	}
	#service .service_i:nth-of-type(2n) .txtarea_w{
		padding-right: 0;
	}
	#service .service_i .txtarea_w ul li{
		width: 100%;
	}
	#service .service_i .txtarea_w .s_txt{
		font-size: 1.2rem;
		border-left: #2e60ee 2px solid;
		padding-left: 10px;
	}
}
@media screen and (max-width: 750px) {}

#team {
	background-image: url(../images/team_bg.jpg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: 70px;
}
#team .team_i{
	margin-bottom: 40px;
}
#team .team_i:nth-last-of-type(1){
	margin-bottom: 0;
}
#team .team_i:nth-of-type(2n){
	flex-direction: row-reverse;
}
#team .team_i .imgarea{
	flex-shrink: 0;
	margin-right: 30px;
}
#team .team_i:nth-of-type(2n) .imgarea {
	flex-shrink: 0;
	margin-right: 0px;
	margin-left: 30px;
}
#team .team_i .txtarea{
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	margin-top: 30px;
	padding: 30px;
	border-radius: 0 20px 20px 20px;
}
#team .team_i .txtarea .name{
	font-size: 2.4rem;
	margin-bottom: 10px;
	font-weight: 600;
	line-height: 1.5;
}
#team .team_i .txtarea .job_ttl{
	margin-bottom: 5px;
}
#team .team_i .txtarea .lang_w{
	margin-bottom: 25px;
}
#team .team_i .txtarea .lang_w .tag{
	padding: 0 10px;
	margin-right: 10px;
}
#team .team_i .txtarea .d_txt{
	padding-top: 20px;
	border-top: 1px solid #e8e8e8;
}
@media screen and (max-width: 750px) {
	#team .team_i .imgarea {
		flex-shrink: 0;
		margin-right: 0;
		width: 100%;
		text-align: center;
	}
	#team .team_i .imgarea img{
		width: 50%;
	}
	#team .team_i .txtarea{
		margin-top: 20px;
	}
}

.cta{
	background-image: url(../images/cta_bg@x2.jpg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 70px;
	position: relative;
}
.cta:after {
	content: "";
	width: 100%;
	height: 80px;
	background: #fff;
	display: block;
	position: absolute;
	bottom: 0;
}
.cta .cta_w{
	border-radius: 15px;
	box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
	padding: 40px;
	padding-left: 60px;
	padding-right: 364px;
}
.cta .cta_w .txtarea{}
.cta .cta_w .txtarea p{
	font-size: 2.2rem;
	text-align: center;
	margin-bottom: 30px;
	line-height: 1.5;
	font-weight: 700;
}
.cta .cta_w .imgarea{
    position: absolute;
    right: 40px;
    bottom: 0;
}
@media screen and (max-width: 750px) {
	.cta{
		padding-top: 30px;
	}
	.cta .cta_w {
		border-radius: 15px;
		box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);
		padding: 30px;
		padding-left: 20px;
		padding-right: 20px;
	}
	.cta .cta_w .txtarea p {
		font-size: 1.6rem;
		text-align: left;
		margin-bottom: 30px;
		line-height: 1.5;
		font-weight: 700;
		padding-right: 33%;
	}
	.cta .cta_w .imgarea {
		position: absolute;
		right: -19px;
		bottom: auto;
		width: 40%;
		top: 14px;
	}
}

#works{
	padding-bottom: 70px;
}
#works .works_w{
	position: relative;
}
#works .works_i{
	border: 1px solid #e8e8e8;
	padding: 30px;
	border-radius: 20px;
	box-sizing: border-box;
}
#works .works_i > .flex{}
#works .works_i .imgarea{
	flex-shrink: 0;
	margin-right: 30px;
}
#works .works_i .txtarea{}
#works .works_i .txtarea h3{
	font-size: 2.4rem;
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 20px;
}
#works .works_i .txtarea .lang_w{
	margin-bottom: 20px;
}
#works .works_i .txtarea .lang_w .tag{
	padding: 0 15px;
	margin-right: 15px;
}
.swiper-button-prev{
	left: -50px;
	top: 50%;
	transform: translate(0,-50%);
}
.swiper-button-next{
	right: -50px;
	top: 50%;
	transform: translate(0,-50%);
}
@media screen and (max-width: 750px) {
	#works .works_i{
		padding: 30px 20px;
	}
	#works .works_i .imgarea {
		flex-shrink: unset;
		margin-right: 0;
		width: 100%;
		text-align: center;
		margin-bottom: 20px;
		padding:0 30px;
	}
	#works .works_i .txtarea h3 {
		font-size: 1.8rem;
		margin-bottom: 20px;
	}
}

#flow{
	padding-bottom: 80px;
}
@media screen and (max-width: 750px) {
	#flow{
		padding-bottom: 60px;
	}
	#flow .in{
		width: 100%;
	}
}

#faq{
	background-image: url(../images/team_bg.jpg);
	background-position: top;
	background-repeat: no-repeat;
	background-size: cover;
	padding-bottom: 70px;
}
.faq_w{
}
.faq_i {
	border-radius: 10px;
	margin-bottom: 30px;
	transition: 0.5s;
}
.faq_i.open {
	border-radius: 10px;
}
.faq_i .ico {
	display: flex;
	width: 40px;
	height: 40px;
	align-items: center;
	justify-content: center;
	border-radius: 100%;
	margin-right: 20px;
	font-weight: 600;
	flex-shrink: 0;
	line-height: 1;
	font-size: 2.4rem;
}
.faq_i h3 {
	font-size: 1.8rem;
	margin-top: 5px;
	font-weight: 600;
	color: #fff;
}
.faq_i p {
	margin-top: 5px;
}
.faq_i .q {
	position: relative;
	cursor: pointer;
	padding: 20px;
	padding-right: 40px;
	border-radius: 20px 20px 0 20px;
	line-height: 1.5;
}
.faq_i .q:after {
	content: "×";
	font-size: 1.8rem;
	font-weight: 900;
	position: absolute;
	top: 44%;
	right: 30px;
	transform: rotate(45deg) translate(0, -50%);
	color: #fff;
	transition: 0.5s;
}
.faq_i.open .q:after {
	top: 50%;
	right: 18px;
	transform: rotate(0) translate(0, -50%);
}
.faq_i .a {
	padding-top: 30px;
	display: none;
}
.faq_i .a a{
	text-decoration: underline;
}
@media screen and (max-width: 750px) {
	#faq {
		position: relative;
		padding-bottom: 20px;
	}
	.faq_w .sub_ttl{
		font-size: 2.0rem;
	}
	.faq_i {
		border-radius: 30px;
	}
	.faq_i .q .flex {
		padding-right: 30px;
	}
	.faq_i h3 {
		margin-top: 0;
		font-size: 1.4rem;
	}
	.faq_i .ico {
		width: 30px;
		height: 30px;
		margin-right: 20px;
	}
}

#form{
	padding-bottom: 70px;
}
#form .sec_ttl{
	margin-bottom: 40px;
	text-align: center;
}
#form .form_w{

}
#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: #ce579e;
	color: #fff;
	border-radius: 5px;
	width: 300px;
	font-size: 1.8rem;
	padding: 20px;
	box-sizing: border-box;
	display: block;
	margin: 10px 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: 40px;
}
.submit_text {
	font-size: 15px;
}
#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 .form_w{
	}
	.submit_text {
		font-size: 14px;
	}
	#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));
	}
}

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

footer{
	padding: 10px;
	text-align: center;
}
@media screen and (max-width: 900px) {
	footer{
		padding-bottom: 90px;
		font-size: 1.4rem;
	}
}

@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;
	}
}

.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: #2e60ee;
    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
    }
}

