﻿/* RESET CSS */
article, aside, details, figcaption, figure, footer, header, hgroup, img, menu, nav, section {display: block;}
a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, 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, output, p, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {margin: 0;padding: 0;border: 0;font: inherit;vertical-align: baseline;}
body {line-height: 1;}
ol, ul {list-style: none;}
img {padding: 0;max-width: 100%;height: auto;}
* {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
a[href^="tel:"] {pointer-events: none;text-decoration: none;color: #666;}
/*-------- Basic --------*/
html {font-size: 62.5%;/*ページ内リンクスムーズスクロール*/scroll-behavior: smooth;}
body {width: 100%;font-size: 2rem;color: #333;line-height: 1.7;-webkit-font-feature-settings: 'palt'1;font-feature-settings: 'palt'1;font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;font-weight: 500;overflow-x: hidden;/*background: #FEFFF6;background: #f7f5e0;*/}
.body_wrap {width: 960px; margin: 0 auto; background: #fff;}
/*---電話番号PC時リンク無し----*/
a[href^="tel:"] {pointer-events: none;text-decoration: none;color: #666;}
/*--- Clearfix ---*/
.clearfix::before, .clearfix::after {content: " ";display: table;}
.clearfix::after {clear: both;}
.clearfix {*zoom: 1;}
/*--- Float ---*/
.img_right {float: right;padding: 0 0 2rem 2rem;}
.img_right2 {float: right;padding: 0 0 2rem 2rem;}
.img_left {float: left;padding: 0 2rem 2rem 0;}
.img_center {margin: 0 auto;}
/*--- PC・SP表示調整 ---*/
.pc {display: block;}
.sp {display: none;}
/* ---Font--- */
.u {text-decoration: underline;text-decoration-skip-ink: none;text-underline-position: under;}
.b {font-weight: bold;}
.blue {color: #6dc6ff;}
.blue2{color:#2d2c8f;}
.purple{color: #04078f;}
.black {color: #1F0001;}
.r {color:#FF6000;}
.gr{color: #018249;}
.y {color:#ffee98;}
.y2 {color: #F4F87D;}
.w {color: #fff;}
.txt_c {text-align: center;}
.txt_c_pc {text-align: center;}
.txt_r {text-align: right;}
.txt_l {text-align: left;}
.xxxsmall {font-size: 40%;}
.xxsmall {font-size: 50%;}
.xsmall {font-size: 60%;}
.pc_small90 {font-size: 90%;}
.small {font-size: 80%;}
.large {font-size: 120%;}
.xlarge {font-size: 130%;}
.xxlarge {font-size: 150%;}
.xxxlarge {font-size: 155%;}
.xxxxlarge {font-size: 160%;}
.xxxxxlarge {font-size: 200%;}
.pc_large120 {font-size: 120%;}
.lh_12 {line-height: 1.2;}
.lh_13 {line-height: 1.3;}
.lh_15 {line-height: 1.5;}
.sans {font-family:'Noto Sans JP', sans-serif;font-weight: 700;letter-spacing: 1px;}
.serif {font-family: 'Noto Serif JP', "serif";font-weight: 900;letter-spacing: 1px;}
.caption {width:100%;padding:1rem;margin:0 auto;background:#333;color:#fff;font-weight:bold;line-height:1.4;text-align:center;}
.middle {margin: 2rem auto !important;}
.bottom {margin: 0 0 2rem !important;}
.top {margin: 2rem 0 0 !important;}
.right {margin: 0 2rem 0 0;}
.left {margin: 0 0 0rem 2rem;}
.no_bottom {margin-bottom:0 !important;}
.up{vertical-align: super;
font-size: 60%;}
.img_arrow {margin: 0 auto 2rem;}
/* グラデーション */
.gradation_g {color:#f9db7f;background:linear-gradient( to bottom , #F4DD69 0%, #E7B151 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.gradation_g2 {color:#FFDE78;background:-webkit-linear-gradient(0deg, #6a473f, #987d2d, #6a473f);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.gra_or {color:#d54c08s;background:linear-gradient(to bottom, #eb8807, #d54c08);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.gra_bl {color:#d54c08s;background:linear-gradient(to bottom, #008ba6, #0059aa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}
.mark {background:linear-gradient(transparent 50%, #f4ebb4 50%);}
.mark2 {background: linear-gradient(transparent 75%, #0d0d80 76%);}
/*-----0.9emはグラデ開始位置（上から下に数字が大きくなる）、20pxはグラデの縦幅----*/
.mark_y {font-weight: bold;background: linear-gradient(transparent 0.9em, #FFDBB0 0, #FFDBB0 calc(0.9em + 20px) , transparent 0);}
.mark_b {font-weight: bold;background:#04192d;color: #fff;padding: .1em .2em 0em;display: inline-block;line-height: 1.2;}
.mark_gr {font-weight: bold;background:#2b2b2b;color: #fff;padding: .1em .2em 0em;display: inline-block;line-height: 1.2;}
.mark_w {font-weight: bold;background: #FFDBB0;color: #2a2a2a;padding: .01em .2em;display: inline-block;line-height: 1;}
.mark_r {font-weight: bold;background: #D54C08;color: #fff;padding: .1em .1em;display: inline-block;line-height: 1;}
.mark_y2 {font-weight: bold;display: inline-block;background: linear-gradient(transparent 0.9em, #FFDBB0 0, #FFDBB0 calc(7.4em + 20px), transparent 0);}
.txt_sdw{text-shadow: 1px 2px 3px #222;}
.txt_sdw2{text-shadow: 1px 2px 3px #fff;}
/* flex */
.flex {display: -webkit-flex;display: -moz-flex;display: flex;flex-wrap: wrap;justify-content: space-between;}
.flex_center {justify-content: center;align-items: center;}
.flex_column {flex-direction:column;align-items: center;}
/*.flex + .flex {margin-top: 2rem;}*/
/* 注釈 */
.notice {padding-top:1rem;font-size:1.1rem;text-align:right;font-weight:400;font-family:sans-serif;color:#8a8a8a;width: 100%;}
.notice2 {padding-top:1rem;font-size:1.5rem;font-weight:400;font-family:sans-serif;color:#8a8a8a;letter-spacing:1px;}
.notice2 li{padding-left: 1em;text-indent: -1em;}
.thanks_notice{font-size: 80%;}
/*--------prihead--------*/
#prihead {z-index: 20;position: fixed;width: 100%;font-size: 2rem;font-weight: bold;text-align: center;background: #e9f4ff;}
#prihead #CDT {width: 960px;padding: 1rem 0;margin: 0 auto;color: #050533;line-height: 1.2;font-family: Verdana, Roboto, "Droid Sans", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif, monospace;}
#prihead #CDT .count_num {display: inline-block;padding: 0 .4rem;margin: 0 .4rem;border-radius: 3px;color: #0a0f25;font-size: 150%;background: #fff;}
/*--------Header--------*/
.prihead{background: #fff;width: 750px;margin: 0 auto;padding: 2rem;align-items: center;}
.header_logo{/*width: 10%;*/}
header h1 img {margin: 0 auto;}
.header_inner {width: 960px;margin: 0 auto;position: relative;}
/*head1*/
header h1.header1 {
	width: 100%;
	margin: 0 auto;
	min-height: 100px;
	/*background: linear-gradient(to right, #019024,#028661);*/
	background: url(../img/contact-head-bg.jpg)no-repeat center/cover;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	line-height: 100px;
	font-size: 3rem;
	text-align: center;
}
.header_form {background: #00061C;padding: 0 0 1rem;}
/* ---------------------------------------------------------------*/
/*・テキスト装飾*/
.underline {
	line-height: 1.5;
	border-bottom: 2px solid #6c1217;
	border-image: linear-gradient(to right, transparent, #FFE4A2 20%, #FFE4A2 80%, transparent);
	border-image-slice: 1;
}
.dot {font-weight: bold; border-bottom: 3px dotted #018249; display: table; margin: 0 auto; line-height: 1.5;}

/*--------カルーセル--------*/
/* external css: flickity.css */
/** {-webkit-box-sizing: border-box; box-sizing: border-box;}
.gallery { background: #EEE;padding: 3rem;}
.gallery-cell {

  counter-increment: gallery-cell;
}*/
.swiper-container {
  /* wrapperのサイズを調整 */
	overflow: hidden;
}
.swiper-slide {
  /* スライドのサイズを調整、中身のテキスト配置調整、背景色 */
	height: 400px;
}
/*--------Section / sub_head / sec_inner--------*/
section {padding: 7rem 0 0;}
.sub_head {font-size: 3rem;font-weight: 900; line-height: 1.3;text-align: center;font-family:'Noto Sans JP', sans-serif;-webkit-font-feature-settings: 'palt'1;font-feature-settings: 'palt'1; margin: 0 auto 5rem;position: relative;letter-spacing: 1px;z-index: 1;}
.sub_head img{margin: 0 auto;}
.sub_head_bg {color: #fff;font-weight: bold;line-height: 1.3;text-align: center;-webkit-font-feature-settings: 'palt'1;font-feature-settings: 'palt'1;margin: 0 auto 5rem;position: relative;letter-spacing: 2px;z-index: 1;background:#d54c08;background: linear-gradient(to right, #eb7807, #d54c08);padding: 3rem 0;}
.sub_head_bg:after {posoition: absolute;content: "";bottom: -20px;left: 50%;width: 0;height: 0;border-style: solid;border-width:20px 20px 0 20px;border-color: #e06208 transparent transparent transparent;transform: translateX(-50%);}
.sec_inner {padding: 0 0 10rem;margin: 0 auto;z-index: 0}
h3{
	color: #018249;
	background: #EAFBF4;
	border-left:2px solid;
	margin: 5rem 0 3rem;
	padding: .5rem 0 .5rem 2rem;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2.4rem;
	
}
/*以下他プロモのCSSを記載*/
/*---------------------------------------*/
.bg_gr{background: #eafbf4;}
.bg_gray{background: #ebebeb;}
.bg_y{background: #f8f7bd;}
.lead{
	position: relative;
	background: #018249;
	color: #fff;
	padding: 3rem 1rem;
	text-align: center;
	font-family:'Noto Sans JP', sans-serif;
	line-height: 1.3;
	font-size: 3rem;
}
.lead:after {
	position: absolute;
	content: "";
	bottom: -19px;
	left: 50%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 20px 0 20px;
	border-color: #018249 transparent transparent transparent;
	transform: translateX(-50%);
}
/*--sec1-------------------------------------*/
/*オートコンプリート*/
.ui-autocomplete { position:absolute!important; background:#fff; list-style:none; border-radius:1rem; overflow:hidden; z-index:10;}
.ui-autocomplete li { border-bottom:1px solid #ccc; padding:1rem; font-family:inherit!important; text-align:left;}
.ui-state-focus { background:#F8F7BD; }
.ui-helper-hidden-accessible { display:none!important; }
/*google form*/
.google_form{padding: 5rem 3rem;border-bottom:1px solid #e1e1e1;align-items: center;}
.google_form:last-of-type{border-bottom:none;}
/*.google_form{display: none;}*/
.error{
	margin-top: .5rem;
	color: #FF6000;
	font-weight: bold;
	font-size: 60%;
}
.switch.flex{justify-content: center;gap:2rem;}
.switch button{width: 25%;margin-top: 5rem;}
.prev{background: #919191;}
.prev.center{margin: 5rem auto 0;width: 25%;}
.next{background: #ffeb34; color: #363636;}
.send{background: #018249;color: #fff;}
/*.google_form{display: none;}

     .google_form.active {
            display: block;
        }*/
/*.google_form + .google_form{margin-top: 2rem;}*/
.form_quwstion{width: 30%;color: #018249;font-weight: bold;line-height: 1.5;font-size: 1.7rem;}
.required_label{
	width: 7%;
	display: inline;
	background: #FF7700;
	color: #fff;
	border-radius:5px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	font-size: 1.4rem;
}
.form_answer{width: 60%;/*justify-content: flex-start;*/text-align: center;}
.form_answer + .form_quwstion{margin-top: 4rem;}
.form_answer_txt{width: 100%;background: #F5F5F5;border:none;border-radius:10px;padding: 1rem;font-size: 1.9rem;}
textarea{font: unset;resize: vertical;min-height: 80px;}

label{
	display: block;
	cursor: pointer;
	position: relative;
	font-size: 90%;
	padding-left: 4rem;
	text-align:left;
}
label::before,label::after { content: ""; display: block; position: absolute;}
label::before {
	background-color: #fff;
	border-radius: 0%;
	border: 1px solid #ddd;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
	top: 50%;
	left: 5px;
}
label::after {
	border-bottom: 2px solid #018249;
	border-left: 2px solid #018249;
	opacity: 0;/*チェックマークの初期値*/
	height: 5px;
	width: 10px;
	transform: rotate(-45deg);
	top: 12px;
	left: 10px;
}
/*ラジオボタンにチェックしたらチェックマークが出現*/
input:checked + label::after{opacity: 1;}
input[type=radio] + label:hover{/*color: #018249;*//*background: #018249;color: #fff;*/transition: .8s;}
.visually-hidden {
  /* コンテンツの流れから切り離す */
  position: absolute;
  /* 誤ったコードに対処するための回避策 */
  white-space: nowrap;
  /* 可能な限り文字サイズを小さくするための処理
   * (スクリーンリーダー中には height と width が 0 のものを無視するため)
   */
  width: 1px;
  height: 1px;
  /* オーバーフローしているコンテンツを隠す */
  overflow: hidden;
  /* 要素サイズを変更しうるプロパティのリセット */
  border: 0;
  padding: 0;
  /* 要素のどの部分が表示されるかを定義するもの */
  /* 古いブラウザでは使用できない */
  clip: rect(0 0 0 0);
  /* 最近のブラウザ用
   * コンテンツを非表示にする設定  */
  clip-path: inset(50%); 
  /* 今現在なぜ-1pxがここで設定されるかは分かっていないそうです。
   * それに加えていくつか問題もあるそうです 
   * (参考: https://github.com/h5bp/html5-boilerplate/issues/1985)
   */
  margin: -1px;
}
input{color: #333;}
input:focus, textarea:focus{outline: #019553 2px solid;}
::placeholder {color:#dadada;}
button{
	cursor: pointer;
	position: relative;
	display: block;
	background: #018249;
	color: #fff;
	border:none;
	width: 50%;
	border-radius:100px;
	margin: 2rem auto 0;
	padding: 1rem;
	font-size: 2rem;
	font-weight: bold;
}
button:hover{filter: brightness(1.3);transition: 0.3s;}
button:after {
	position: absolute;
	content: "";
	width: 1rem;
	height:1rem;
	border-color: #fff;
	border-style: solid;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg) translateY(-50%);
	top: 47%;
	right: 3rem;
}
button.prev:after {border-width: 0 0 2px 2px;right:unset;left: 3rem;}
button.next:after {border-color: #363636;}
/*--sec2-------------------------------------*/
/*step*/
.step{
	/*width: 47%;*/
	height: 440px!important;
	position: relative;
	background: #fff;
	border-radius: 20px;
	margin-top: 3rem;
	padding: 5rem 3rem 3rem;
}
.step + .step{}
.step_num{
	position: absolute;
	top:-3rem;
	left: 50%;
	transform: translateX(-50%);
	color: #333;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2rem;
	line-height: 1;
}
.step_num span{font-size: 4rem;display: block;}
.step h3{
	color: #018249;
	font-family:'Noto Sans JP', sans-serif;
	line-height: 1.3;
	text-align: center;
	height: 50px;
}
.step img{width: 60%;margin: 1rem auto 2rem;}
.step p:last-child{line-height: 1.4;font-size: 90%;}
/*--sec3-------------------------------------*/
/*ballon*/
.balloon li{
	position: relative;
	background: #e5f3ee;
	border-radius: 20px;
	margin-top: 3rem;
	padding: 3rem;
	display: inline-block;
	line-height: 1.3;
}
.balloon li:first-of-type{margin-top: 0;}
.balloon li:nth-of-type(even){float:right;}

.balloon li:before{
	content: '';
	background: #e5f3ee;
	width: 30px;
	height: 30px;
	border-radius: 30px;
	position: absolute;
	right:-5rem;
	bottom:3rem;
}
.balloon li:after{
	content: '';
	background: #e5f3ee;
	width: 20px;
	height: 20px;
	border-radius: 30px;
	position: absolute;
	right:-8rem;
	bottom:1rem;
}
.balloon li:nth-of-type(even):before{right:0;left:-5rem;}
.balloon li:nth-of-type(even):after{right:0;left:-8rem;}

/*--sec4-------------------------------------*/
#sec4{padding-top: 0;}
#sec4 .sub_head{margin: 5rem auto 5rem;}
#sec4 .flex{width: 90%;margin: 0 auto;}
.sec4_txt{
	color: #018249;
	font-family:'Noto Sans JP', sans-serif;
	line-height: 1.3;
	font-size: 3.5rem;
	margin: 4rem 0 0 2rem;
}
/*box*/
.box{
	position: relative;
	background: #fff;
	border-radius: 20px;
	padding: 5rem;
	outline: 2px dashed #e4e4e4;
	outline-offset: -1rem;
}
.box_ttl{
	position: absolute;
	top: -2rem;
	left: 50%;
	transform: translateX(-50%);
	background: #018249;
	color: #fff;
	border-radius: 50px;
	margin: 0 auto;
	padding: 0 3rem;
	font-family:'Noto Sans JP', sans-serif;
	font-size: 3rem;
}
.box li{position: relative;line-height: 1.4;padding: 0 0 0 4rem;}
.box li + li{margin-top: 2rem;}
/*チェックマーク*/
.box li:before,.box li:after{content:"";position:absolute;}
.box li:before{top:.5rem;left:.5rem;-webkit-transform:rotate(50deg);-ms-transform:rotate(50deg);transform:rotate(50deg);width:1rem;height:1.8rem;border-right:3px solid #018249;border-bottom:3px solid #018249;}

/*--sec5-------------------------------------*/
#sec5{padding-top: 0;}
#sec5 .sub_head{margin: 3rem auto 5rem;}
/*message*/
.message{width: 100%;background: #ebebeb;border-radius: 20px;padding: 3rem;height: 550px!important;}
.message img{margin: auto;/*width: 40%;*/}
/*--sec6-------------------------------------*/
#sec6{background: #fffed6;}
/*voice*/
.voice{background: #fff;border-radius: 20px; padding: 3rem 6rem;height: 510px!important;}
.voice_ttl{}
.voice_ttl_face{width: 30%;}
.voice_name{text-align: center;margin: .6rem auto 0;font-size: 90%;}
.voice_ttl_txt{width: 70%;padding: 0 0 0 3rem;}
.voice_ttl_txt h3{
	margin-bottom: 2rem;
	padding-bottom: 2rem;
	line-height: 1.3;
	font-family:'Noto Sans JP', sans-serif;
	/*文字色*/
	color:#00b194;
	background:linear-gradient( to right , #00c515 0%, #00b194 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
	/*線*/
	border-bottom: 2px solid #00b194;
	border-image: linear-gradient( to right , #00c515 0%, #00b194 100%);
	border-image-slice: 1;
}
.voice_ttl_ba{
	line-height: 1.3;
	font-family:'Noto Sans JP', sans-serif;
	justify-content: flex-start;
	align-items: flex-end;

}
.before, .after{
	width: fit-content;
	height: fit-content;
	font-size: 1.7rem;
	position: relative;
	
}
.after{margin-left: 5rem;}
.ba_arrow{
	position: absolute;
	left: -4rem;
	top:50%;
	transform: translateY(-50%);
	font-size: 1rem;
	color:#00b194;
	background:linear-gradient( to right , #00c515 0%, #00b194 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
	
}
.voice_inner{padding: 3rem 0 0;font-size: 80%;}
/*--sec7-------------------------------------*/
/*member*/
.member{background: #fff;border-radius: 20px; border:2px dotted #018249;padding: 3rem;}
.member + .member{margin-top: 3rem;}
.member_right{width: 65%;font-size: 90%;}
.member_left{width: 30%;}
.member_left img{margin: 0 auto 1rem;}
.member_name{
	line-height: 1.3;
	text-align: center;
	font-family:'Noto Sans JP', sans-serif;
	font-size: 1.6rem;
	/*文字色*/
	color:#00b194;
	background:linear-gradient( to right , #00c515 0%, #00b194 100%);
	-webkit-background-clip:text;
	background-clip:text;
	-webkit-text-fill-color:transparent;
}

/*--sec8-------------------------------------*/
/*QA*/
.QA{background: #fff;border-bottom: 2px dotted #ccc;padding: 3rem;}
.QA:nth-child(even){background: #f5f5f5;}
.question, .answer{justify-content: flex-start;}
.question p:first-of-type, .answer p:first-of-type{width: 5%;}
.question p:first-of-type{color: #018249;}
.answer p:first-of-type{color: #a1a1a1;}
.question p, .answer p{width: 95%;font-size: 80%;}
.question h3{font-weight: bold;margin-bottom: 2rem;}

/*--sec9-------------------------------------*/
#sec9 .clearfix{width: 80%;margin: 0 auto;}
/*list1*/
.list{margin-top: 5rem;}
.list li {position:relative;width: 55%;border-radius: 10px; background: #fff;margin-bottom: 3rem;padding:1rem 0 1rem 6rem;line-height:1.4;font-weight: 700;letter-spacing: 1px;font-size: 2.7rem;}
/*チェックマーク*/
.list li:before{
	content:"";
	position:absolute;
	top:1.5rem;
	left:3rem;
	-webkit-transform:rotate(50deg);
	-ms-transform:rotate(50deg);
	transform:rotate(50deg);
	width:1rem;
	height:1.8rem;
	border-right:3px solid #018249;
	border-bottom:3px solid #018249;
}

/*--btn-------------------------------------*/
.btn_wrap{margin: 3rem auto 0;}
.btn_lead{
	color: #ff6000;
	text-align: center;
	font-family:'Noto Sans JP', sans-serif;
	font-size: 4rem;
}
.btn{
	position: relative;
	text-decoration: none;
	background: #404242;
	color: #fff;
	border-radius: 100px;
	display: block;
	/*width: 80%;*/
	width: fit-content;
	text-align: center;
	padding: 1rem 5rem 1rem 3rem;
	font-size: 2.2rem;
	font-weight: bold;
}
.btn:after {
	position: absolute;
	content: "";
	width: 1rem;
	height: 1rem;
	border-color: #fff;
	border-style: solid;
	border-width: 2px 2px 0 0;
	transform: rotate(45deg) translateY(-50%);
	top: 47%;
	right: 3rem;
}
.btn:hover {filter: brightness(1.3);transition: 0.3s;}
/*header内*/
header .btn_wrap{margin: 0;}
header .btn{font-size: 2.5rem;width: 340px;}
header .btn:after {
	width: 2rem;
	height: 2rem;
	border-width: 2px 2px 0 0;
	top: 47%;
	right: 3rem;
}
/*step内*/
.step .btn_wrap{margin: 0 auto;}
.step .btn{width: 100%;font-size: 1.8rem;padding: 1rem;}
.step  .btn:after { width: 1rem; height: 1rem; border-width: 2px 2px 0 0; right: 1.4rem;}
/*arrow*/
/*-- 矢印 ---*/
.arrow {    height: 60px;    position: relative;    width: 400px;    margin: 15px auto 0;}
/*---hukidasi-----------------------*/
.hukidasi {text-align: center;padding: 1rem 3rem;color: #050533;background: #fac162;background: linear-gradient( to bottom, #f8f5e0, #ffd368 );border-radius: 10px;display: table;margin: 0 auto 1.5rem;font-weight: bold;position: relative;font-size: 3rem;line-height: 1.3;}
.hukidasi::after {position: absolute;content: "";width: 0;height: 0;bottom: -12px;left: 50%;transform: translateX(-50%);border-style: solid;border-width: 15px 20px 0 20px;	border-color: #ffd46b transparent transparent transparent;}
.hukidasi2:after, .hukidasi2:before {
	position: absolute;
	top: 1rem;
	content: '';
	width: 2px;
	height: 8rem;
	background:#04192d;
}
.hukidasi2:before { transform: skew(25deg); left: -1rem;}
.hukidasi2:after { transform: skew(-25deg); right: -1rem;}
.lead_arrow{
	position: relative;
	border-bottom: 3px solid #0059aa;
	padding:0 0 2rem;
	margin: 0 auto 5rem;
	font-size: 4rem;
}
.lead_arrow:after {
	position: absolute;
	content: "";
	bottom: -30px;
	left: 50%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 30px 0 30px;
	border-color: #0059aa transparent transparent transparent;
	transform: translateX(-50%);
}

/* footer ----------------------------------------------------------------------------------------------
#footer {background: #f1f1f1;color:#050533; }
.footer_logo img {max-width: 300px;}
.footer_txt {padding: 0 0 0 2rem;font-size: 1.1rem;text-align: left;line-height: 1.9;}
#footer_wrap {display: flex;width: 800px;padding: 2rem 0;margin: 0 auto;font-size: 80%;justify-content: center;}
#footer_wrap li {display: inline-block;padding: 0 1rem 0;border-left: 1px solid #aaa;}
#footer_wrap li:first-child {border: none;padding: 0 1em 0 0;}*/
/* scfooter ----------------------------------------------------------------------------------------------*/
#scfooter {z-index: 1000;position: fixed;bottom: 0;left: 0;width: 100%;padding: 0;background: rgba(202, 202, 202, .7);display: none;}
.scfooter_inner {    display: block;    width: 750px;    padding: 0.5rem 0 0.5rem;    margin: 0 auto;    border-radius: 20px;    text-align: center;    position: relative;}
.scfooter_inner a {text-decoration: none;}
.scfooter_inner::before {    position: absolute;    content: "";    width: 280px;    height: 150px;    top: 1.4rem;    left: 1rem;    z-index: 10;}
.btn_ft {position: relative;overflow: hidden;border-radius: 4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;}
.hvr-wobble-vertical {vertical-align: middle;-webkit-transform: translateZ(0);transform: translateZ(0);-webkit-backface-visibility: hidden;backface-visibility: hidden;-moz-osx-font-smoothing: grayscale;}
.btn_ft a p {color: #fff;padding: 1.5rem 0;text-align: center;font-family: "Gothic MB101 Bold";line-height: 1;background: #0088c9;border-radius: 10px;}
.btn_ft {position: relative;}
.btn_ft .bg_wht {display: inline-block;background: #fff;color: #003fa7;font-size: 115%;padding: 0.5rem;line-height: 1;text-shadow: none;}
.btn_ft .top_txt {top: -3px;position: relative;}
.btn_ft .bottom_txt {margin-top: 1rem;display: block;font-size: 2.7rem;}
#scfooter.side .btn_ft .bottom_txt {margin-top: 0rem;display: block;font-size: 2.7rem;}
.btn_ft img {border-radius: 4px;}
.btn_ft a {text-decoration: none !important;display: block;}
.btn_in {    position: relative;}
.btn_in::before {    position: absolute;    content: "";	background-size: 220px;    width: 280px;    height: 150px;    top: 1.4rem;    left: 1rem;    z-index: 10;}
.btn_in .bg_wht {display: inline-block;background: #fff;color: #003fa7;font-size: 115%;padding: 0.5rem;line-height: 1;text-shadow: none;}
.btn_in {position: relative;overflow: hidden;border-radius: 4px;-webkit-border-radius: 4px;-moz-border-radius: 4px;}
.btn_in .letter_btn {font-size: 2.3rem;padding: 3rem;width: 80%;line-height: 1.6;}

/*///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
【 SP 】
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////*/
@media screen and (max-width: 480px) {
	body {width: 100%;font-size: 4.3vw;font-weight: normal;line-height: 1.7;}
	a[href^="tel:"] {pointer-events: auto;text-decoration: underline;color: #00e;}
	img{margin: 0 auto;}
	.body_wrap {width: 100%;overflow: hidden;}
	/* Float */
	.img_right, .img_left {float: none;width: 80%;padding: 0 0 2vw;margin: 0 auto;}
	.pc {display: none!important;}
	.sp {display: block;}
	.middle {margin: 3vw auto!important;}
	.bottom {margin: 0 auto 3vw!important;}
	.top {margin: 3vw auto 0!important;}
	.caption {font-size: 4.5vw;font-weight: bold;line-height: 1.3;padding: .5rem 0;color: #fff;text-align: center;}
	.notice {font-size: 3vw;padding-top: 2vw;text-align: unset;}
	.notice2{font-size: 3vw;padding-top: 2vw;}
	.notice3 {padding: 1.5rem 0 1.5rem 1.5rem;font-size: 4vw; text-align: left; font-family: sans-serif;letter-spacing: 1px;font-weight: bold;}
	.notice3 span{text-indent: -1em;display: inline-block;}
	.notice_out {padding: 3vw 3vw 0;text-align: left;}
	.flex {/*display: block;*/}.flex2 {display: block;}
	.arrow_txt {line-height: 1.4;margin-top: 4vw;}
	.arrow{height: 5vw;width: 40vw;margin: 1vw auto 5vw;}
	.txt_bg {line-height: 40px;height: 40px;margin-top: 6px;padding: 0 2vw;}
	.large{font-size: 110%;}
	.xlarge{font-size: 120%;}
	.small{font-size: 90%;}
	/*SP調整*/
	.sp_large{font-size: 110%;}
	.sp_small{font-size: 90%;}
	.mark_w{padding: .05em .2em;}
	.img_arrow{width: 60%;margin: 0 auto 2vw;}
	/*--------Section / sub_head / sec_inner--------*/
	 section {padding:  10vw 0 0;} 
	.sub_head { font-size: 5.7vw;margin: 0 auto;width: 95%;letter-spacing: .5px;}
	.sub_head_bg {margin: 0 auto;letter-spacing: 2px;z-index: 1;padding: 5vw 2.5vw;margin-bottom: 5vw;width: 100%;}
	.sub_head_bg:after {bottom: -2.5vw;border-width: 3vw 3vw 0 3vw;}
	.sec_inner {padding: 0 5vw 15vw}
	h3{margin:10vw 0 6vw;padding: 1vw 2vw 1vw 3vw;font-size: 4.8vw;line-height: 1.3;}
	/*--------prihead--------*/
	#prihead {font-size: 4.2vw;z-index: 20;}
	#prihead #CDT {width: 100%;padding: .5rem 0;font-size: 3.3vw;}
	#prihead #CDT .count_num {display: inline-block;padding: 0 1vw;margin: 0 1vw;border-radius: 3px;color: #333;font-size: 140%;background: #fff;}
	/*--------Header--------*/
	header {}
	header h1.header1 {width: 100%;margin: 0 auto;font-size: 5vw;}
	header h1 {background: none;}
	header p {font-size: 2vw;padding: 0;color: #3f3a17;}
	.header_inner {width: 100%;margin: 0 auto;position: relative;}
	.header_mv {width: 100%;}
	.header1 .header_mv video {width: 87vw;left: 50%;transform: translateX(-50%);top: 46vw;}
	.header_arrow img {z-index: 12;width: 11vw;}
	.header_form {padding: 0 0 2vw 0;	}
	.prihead{width: 100%;padding: 3vw 2vw;}
	.prihead.flex{display: flex;}
	.header_logo{width: 25%;}
	/*以下他プロモのCSSを記載*/
	/*--------　list / box --------*/
	/*--list1--*/
	ul.list1 {margin: 0 auto 0;padding:3vw 1vw 3vw 2vw;width: 100%;font-size: 4.8vw;}
	ul.list1 li {padding: 1vw 0 1vw 8vw;text-shadow: none;font-size: 4.8vw;}
	.list1 li::after {top: 1.8vw;left: 2vw;width: 4vw;height: 4vw;background-size: 100%;}
	.list1 li:before {top: 2vw;left: 4vw;width: 1vw;height: 3vw;border-right: 2px solid #04142F;border-bottom: 2px solid #04142F;}
	/*--list2--*/
	.list2 {margin:3vw auto 0; padding:3vw 1vw 3vw 0;width:100%;font-size: 4.8vw;}
	.list2 li{padding:.5vw 0 3vw 8vw;text-shadow:none;}
	.list2 li::after {top:1.8vw; left:2vw; width:4vw; height:4vw; background-size:100%;}
	.list2 li:before { top:2vw; left:4vw; width:1vw; height:3vw;}
	/* --section固有 -------------------------------------------------------------*/
	/*section固有*/
	.mv{margin: 0 auto ;}
	/*---hukidasi-----------------------*/
	.hukidasi {padding: 1vw 3vw;margin: 0 auto 3vw;font-size: 5.4vw;border-radius: 2vw;}
	.hukidasi::after {bottom: -1.7vw;border-width: 2vw 3vw 0 3vw;}
	.hukidasi2:after, .hukidasi2:before {top: 1vw;width: 1px;height: 20vw;}
	.hukidasi2:before {transform: skew(15deg);left: -4vw;}
	.hukidasi2:after {transform: skew(-15deg);right: -4vw;}
	/*以下他プロモのCSSを記載*/
	/*---------------------------------------*/
	.lead{padding: 5vw 1vw;font-size: 5.1vw;}
	.lead:after {bottom: -2.5vw;border-width: 3vw 3vw 0 3vw;}
	/*--sec1-------------------------------------*/
	/*google form*/
	.google_form{/*border-radius:10px;*/padding: 7vw 0vw; justify-content: flex-start;}
/*	.google_form + .google_form{margin-top: 2vw;}*/
	.form_quwstion{width: fit-content;color: #018249;font-weight: bold;line-height: 1.5;font-size: 1.7rem;}
	.required_label{width: 13%;font-size: 3vw;margin-left: 3vw;}
	.form_answer{width: 100%;justify-content: flex-start;margin-top: 2vw;}
	.form_answer_txt{ border-radius: 5px;margin-top: 1vw;padding: 3vw;font-size: 3.9vw;}
	label{margin: 0 auto;margin-top: 2vw;padding-left:9vw;/*display: inline-block;*/font-size: 4.5vw;}
	label:first-of-type{margin-top:0;}
	label::before {width: 5vw;height: 5vw;left: 0;font-size: 100%;}
	label::after {height: 1vw;width: 3vw;top: 2vw;left: 1vw;}
	button{width: 70%;margin: 3vw auto 0;padding: 2vw;font-size: 5vw;}
	button:after {width: 2vw;height:2vw;border-width: 2px 2px 0 0;right: 4vw;}
	button.prev:after { left:4vw;}
	.form_answer + .form_quwstion { margin-top: 10vw;}
	.switch.flex{display: flex; gap: 2vw;}
	.switch button{width: 45%;font-size: 4vw;}
	.prev.center { margin: 10vw auto 0; width: 45%;font-size: 4vw;}
	.error { font-size: 70%;}
	.radio{margin-top: 1vw;}
	/*--sec2-------------------------------------*/
	/*step*/
	.step{height: 90vw!important;border-radius: 10px;margin-top: 12vw;padding: 7vw 8vw 5vw;}
	.step_num{top:-9vw;font-size: 5vw;}
	.step_num span{font-size: 8vw;}
	.step h3{height: 13vw;}
	.step img{width: 55%;margin:1vw auto 3vw;}
	.step p:last-child{font-size: 90%;}
	/*--sec3-------------------------------------*/
	/*ballon*/
	.balloon li{border-radius: 10px;margin-top: 5vw;padding: 3vw;}
	.balloon li:before{width: 5vw;height: 5vw;right:-7vw;bottom:3vw;}
	.balloon li:after{width: 3vw;height: 3vw;right: -11vw;bottom: 1vw;}
	.balloon li:nth-of-type(even):before{left:-7vw;}
	.balloon li:nth-of-type(even):after{left:-11vw;}
	/*--sec4-------------------------------------*/
	#sec4 .sub_head{margin: 7vw auto;}
	#sec4 .flex{width: 95%;display: flex;}
	.sec4_txt{width: 60%;font-size: 5.4vw;margin: 4vw 0 0;}
	.sec4_img{width: 40%;}
	/*box*/
	.box{border-radius: 10px;padding: 10vw 5vw 5vw;outline: 2px dashed #e4e4e4;outline-offset: -1vw;}
	.box_ttl{width: 60%;text-align: center;top: -4vw;padding: 0 5vw;font-size: 5.3vw;}
	.box li{padding: 0 0 0 9vw;}
	.box li + li{margin-top: 2vw;}
	/*チェックマーク*/
	.box li:before{top:0;left:2vw;width:2vw;height:4vw;border-right:2px solid #018249;border-bottom:2px solid #018249;}
	/*--sec5-------------------------------------*/
	#sec5 .sub_head{margin: 7vw auto;}
	/*message*/
	.message{border-radius: 10px;padding: 5vw;height: 115vw!important;}
	.message img{width: 80%;}
	/*--sec6-------------------------------------*/
	/*voice*/
	.voice{border-radius: 10px; padding: 3vw 9vw;height: 165vw!important;}
	.voice_ttl{}
	.voice_ttl_face{width: 40%;margin: 0 auto;}
	.voice_name{margin: 1vw auto 0;font-size: 90%;}
	.voice_ttl_txt{width: 100%;padding: 0;}
	.voice_ttl_txt h3{
		margin-bottom: 2vw;
		padding-bottom: 2vw;
		/*線*/
		border-bottom: 1px solid #00b194;
	}
	.voice_ttl_ba.flex{display: flex;}
	.before, .after{font-size: 3.5vw;}
	.after{margin-left: 12vw;}
	.ba_arrow{left: -9.4vw;font-size: 1.9vw;}
	.voice_inner{padding: 3vw 0 0;font-size: 90%;}
	/*--sec7-------------------------------------*/
	/*member*/
	.member{border-radius: 10px; border:1px dotted #018249;padding: 3vw;}
	.member.flex{display:flex;}
	.member + .member{margin-top: 3vw;}
	.member_right{}
	.member_left{}
	.member_left img{margin: 0 auto 1vw;}
	.member_name{font-size: 4vw;}
	/*--sec8-------------------------------------*/
	/*QA*/
	.QA{padding: 3vw 5vw;}
	.question p:first-of-type, .answer p:first-of-type{width: 5%;}
	.question p, .answer p{width: 100%;font-size: 90%;}
	.question h3{margin-bottom: 2vw;}
	/*--sec9-------------------------------------*/
	#sec9 .clearfix{width: 95%;}
	#sec9 img{float:right;width: 30%;}
	/*list1*/
	.list{margin-top: 5vw;}
	.list li {width: 65%;border-radius: 5px;margin-bottom: 3vw;padding:1vw 0 1vw 10vw;font-size: 5vw;}
	/*チェックマーク*/
	.list li:before{
		top:2vw;
		left:5vw;
		width:1vw;
		height:3vw;
		border-right:2px solid #018249;
		border-bottom:2px solid #018249;
	}
	/*--btn-------------------------------------*/
	.btn_wrap{margin: 3vw auto 0;}
	.btn_lead{font-size: 5vw;}
	.btn{padding: 2vw 8vw 2vw 5vw;font-size: 4.3vw;}
	.btn:after {width: 2vw;height: 2vw;border-width: 2px 2px 0 0;top: 47%;right: 4vw;}
	/*header内*/
	header .btn_wrap{width: 60%;margin: 0;}
	header .btn{font-size: 5vw;width: 100%;}
	header .btn:after {width: 2vw;height: 2vw;border-width: 2px 2px 0 0;top: 47%;right: 3vw;}
	/*step内*/
	.step .btn_wrap{margin: 0 auto;}
	.step .btn{width: 100%;font-size: 4.8vw;padding: 2vw;}
	.step  .btn:after { width: 2vw; height: 2vw; border-width: 2px 2px 0 0; top: 50%;right: 3vw;}
	/* form ----------------------------------------------------------------------------------------------
	.form_wrap {width: 95%;margin: 0 auto 0;padding: 0;}
	.form_wrap a p {width: 100%;padding: 3vw 0;font-size: 5vw;border-radius: 10px;margin: 2vw auto 0;}
	.form_txt {margin: 3vw auto 0;font-size: 4vw;}
	header .form_txt {color: #fff;}
	.form_btn::after {width: 28vw;height: 28vw;right: -10vw;transform: translateY(-50%)scale(.2);}*/
	/* footer ----------------------------------------------------------------------------------------------*/
	.footer_logo img {display: block;margin: 0 auto;}
	.footer_txt {padding: 1rem;}
	#footer_wrap {display: block;width: 100%;padding: 0;}
	#footer {padding: 6vw 0;}
	/* scfooter ----------------------------------------------------------------------------------------------*/
	.scfooter_inner {width: 100%;padding: 1vw 0;}
	.scfooter_inner::before {position: absolute;content: "";/* background: url(https://placehold.jp/80x60.png) no-repeat; */background-size: 100%;width: 80px;height: 70px;top: 1rem;left: 2rem;z-index: 10;}
	.btn_ft {width: 95%;margin: 0 auto;}
	.btn_ft .bg_wht {padding: 1vw;font-size: 100%;}
	.btn_ft .bottom_txt {font-size: 4.2vw;margin-top: 1vw;}
	.header_form .btn_ft {margin: 5vw auto 6vw;}
}