@charset "utf-8";
/* CSS Document */
* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box; }
body {
  font-size: clamp(18px, 4.6vw, 36px);
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
  color: #000000;
  margin: 0;
  padding: 0; }
/*リセット*/
img {
  border: none;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;}

a img {
  border-style: none; }
a {
  outline: 0;
  color: #000;
  text-decoration: none; }
ul {
  list-style-type:none;
  margin-block-start: 0em;
  margin-block-end: 0em;
  padding-inline-start: 0px; }
li {
  list-style-type: none; }
hr {
  border-top:1px solid #909090;
  margin-bottom: 2em;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  padding: 0;
  font-size: 1em;
  font-weight: 500;}
p {
  margin-bottom: 0.5em; }
[class^="icon-"], [class*=" icon-"]{
  vertical-align: bottom;}
/*共通*/
.flex_center{
  display: flex;
  justify-content: center;
  align-items: center;}
.inline_flex_center{
  display: inline-flex;
  justify-content: center;
  align-items: center;}
.align_center{
  display: flex;
  align-items: center;}
.dsp_inlineblk{
  display: inline-block;}
.bdr_radius{
  border-radius: 50%;}
.bgc_red{
  background-color: #D65424;
  text-align: center;
  color: #FFFFFF;
  padding: 1em 0;
  margin-bottom: 0;}
.bgc_black{
  background-color: #000;
  text-align: center;
  color: #FFFFFF;
  padding: 0.2em 0.5em;
  border-radius: 10px;}
.bgc_white{
  background-color: #FFFFFF;
  padding: 0.25em 0;
  border-radius: 20px;}
.bgc_lightblue{
  background-color: #C0DFF2;
  padding: 1.25em 0;}
.txt_red{
  color: #D65424;}
.txt_gray{
  color: #909090;}
.txt_regular{
  font-weight: 400;}
.txt_medium{
  font-weight: 500;}
.txt_bold{
  font-weight: 700;}
.txt_triple{
  font-size: 3.0em;}
.txt_xxxxbig{
  font-size: 1.666em;}
.txt_xxxbig{
  font-size: 1.527em;}
.txt_xxbig{
  font-size: 1.388em;}
.txt_xbig{
  font-size: 1.111em;}
.txt_big{
  font-size: 1.055em;}
.txt_small{
  font-size: .944em;}
.txt_xsmall{
  font-size: .916em;}
.txt_xxsmall{
  font-size: .777em;}
.txt_xxxsmall{
  font-size: .694em;}
.txt_center{
  text-align: center;}
.mgn_btm_0{
  margin-bottom: 0 !important;}
.mgn_btm_1em{
  margin-bottom: 1em;}
.marker {
  background:linear-gradient(transparent 60%, rgba(242, 231, 96) 60%);
  background-repeat: no-repeat;
  background-size: 0% 100%;
  transition:background-size 1.5s;
  padding: 0.3em;
  margin: 2em 0 0;
  display: inline-block;}
.marker.on {
  background-size: 100% 100%;}
/*header*/
header h1 .bdr_radius{
  width: 2.5em;
  height: 2.5em;}
header h1 .txt_red{
  padding-left: 0.2em;
  padding-right: 0.5em;}
header h1 img{
  width: 8em;
  vertical-align: bottom;}
header .bgc_red{
  padding: 0.2em 0;}
.content{
  width: 94.6%;
  margin: 0 auto;}
.content_inner{
  display: block;
  width: 88.7%;
  margin: 0 auto;}
#img_mv{
  width: 100%;}
.bgc_lightblue h2{
  text-align: center;
  font-weight: 700;
  margin-bottom: 1em;}
.bgc_lightblue h3 + p{
  padding: 1em 0;}
.sec_menavi{
  margin: 2.5em 0;}
.sec_menavi .area_logo img{
  width: 6em;
  margin-bottom: 0.5em;}
.sec_menavi h2{
  font-weight: 700;
  margin-bottom: 1em;}
.sec_menavi .area_img img{
  width: 100%;
  max-width: 509px;
  margin-bottom: 0.5em;}
.sec_menavi .blk_fukidashi{
  text-align: center;
  margin-top: 2em;}
.sec_menavi .blk_fukidashi .area_fukidashi{
  display: inline-block;
  background-color: #288BC9;
  color: #FFFFFF;
  line-height: 1.3;
  padding: 0.8em 1.5em;
  border-radius: 1.5em;
  margin-bottom: 0;
  position: relative;}
.sec_menavi .blk_fukidashi .area_fukidashi::before {
  font-family: "menavi";
  content: '\e902';
  position: absolute;
  left: -0.6em;
  top: -0.2em;
  color: #288BC9;
  background: #fff;
  font-size: 1.8em;
  font-weight: 400;
  padding: 0.1em;
  border-radius: 50%;
  width: 1.3em;
  border: 4px solid #288BC9;}
.sec_menavi .blk_fukidashi .area_arrow-fukidashi{
  height: 1em;}
.sec_menavi .blk_fukidashi .icon-arrow-fukidashi{
  display: inline-block;
  font-size: 3.2em;
  color: #288BC9;
  transform: translate(-0.3em, -1px);
  vertical-align: top;}
#sec_adviser{
  padding-bottom: 0.5em;}
#sec_adviser .bgc_white{
  padding: 2em 0;}
#sec_adviser .align_center{
  margin-bottom: 1em;}
#sec_adviser .align_center img{
  width: 38%;}
#sec_adviser .align_center h3{
  padding-left: 1em;}
#sec_adviser .bgc_white{
  margin-bottom: 1.5em;}
footer ul{
  margin-bottom: 2em;}
footer li{
  margin-bottom: 0.5em;}
/*フォーム*/
.mailform .content{
  border-bottom: 4px solid #D65424;
  margin: 1em auto;}
iframe{
  height: calc(36em + 24px);
  width: 100%;
  border: none;}
/*.mailform{
  border-bottom: 4px solid #D65424;
  margin: 1em auto;}*/
.mailform li {
  margin-bottom: 2em;}
.txt_num{
  font-size: 2.055em;}
.txt_step{
  text-align: center;
  margin-bottom: 0.5em;}
.txt_qtxt{
  text-align: center;
  margin-bottom: 2em;}
.txt_line{
  padding: 1.2em 0 1.8em;}
.txt_pager{
  text-align: center;
  margin: 2em 0 0.5em;}
.mfp_element_all{
  max-width: 100%;}
button, input, select, textarea, option{
  appearance: none;
  -webkit-appearance: none;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #000;}
.dsp_none,
#mfp_phase_stat,
ul#mfp_phase_stat li.mfp_inactive_phase,
ul#mfp_phase_stat li.mfp_active_phase,
button.mfp_next,
button.mfp_prev{
  display: none;}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date{
  width: 100% !important;
  font-size: 1em;
  padding: 1em 0.5em;
  border: 1px solid #000000;
  border-radius: 10px;
  box-shadow: none;
  margin-bottom: 2em;}
.mfp_element_select-one{
  appearance: none;}
.mfp_element_tel{
  width: 4em !important;
  margin-bottom: 0;}
div.mfp_err{
  background-size: 1em;
  background-position: 0 0.5em;
  transform: translateY(-2em);
  font-size: 0.7em;
  padding-left: 1.5em;}
.blk_tel{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 2em;}
.blk_tel span {
  padding: 0.5em;}
.blk_tel .mfp_err{
  width: 100%;
  margin-top: 3em;
  margin-bottom: -3em;}
.select_wrap div.mfp_err,
.area_check div.mfp_err{
  transform: translateY(0);}
.select_wrap {
  position: relative;
  display:block; }
.select_wrap::after {
  width: 0;
  height: 0;
  position: absolute;
  right: 1em;
  top: 1.5em;
  content: '';
  pointer-events: none; 
  border-style: solid;
  border-right: 0.5em solid transparent;
  border-left: 0.5em solid transparent;
  border-top: 0.6em solid #000;
  border-bottom: 0;}
input[type="checkbox"] {
  /*display: none;*/
  visibility: hidden;}
form#mailformpro label.mfp_not_checked,
form#mailformpro label.mfp_checked{
  padding: 0;
  padding-left: 2.5em;
  border: none;
  background-color: transparent;
  box-shadow: none;}
.area_check {
  position: relative;
  padding-left: 2em; }
.area_check::before {
  display: block;
  width: 2em;
  height: 2em;
  position: absolute;
  top: 50%;
  left: 0px;
  box-sizing: border-box;
  content: '';
  background: #fff;
  border: 2px solid #000;
  border-radius: 8px;
  transform: translateY(-50%); }
.area_check::after {
  display: block;
  width: 0.5em;
  height: 1em;
  position: absolute;
  top: 0.65em;
  left: 0.75em;
  box-sizing: border-box;
  opacity: 0;
  content: '';
  border-right: 3px solid #D65424;
  border-bottom: 3px solid #D65424;
  transform: translateY(-50%) rotate(45deg);
  transition: opacity 0.5s ease; }
.area_check:has(input[type="checkbox"]:checked):after{
    opacity: 1; }
.mfp_element_button,
.mfp_element_submit{
  background: transparent;
  font-size: 1em;
  font-weight: 500;
  text-shadow: none;
  line-height: 1;
  width: 90%;
  max-width: 524px;
  padding: 1.5em;
  border: 2px solid #D65424;
  box-shadow: 0px 2px 3px 0px rgba(214,84,36,0.9);
  border-radius: 10px;
  margin: 0 auto 0.5em;
  display: block;
  transition: all .5s ease-in-out;}
.mfp_element_button:hover,
.mfp_element_submit:hover{
  background: #D65424;
  color: #fff;}
.mfp_element_button.btn_prev,
.mfp_element_button.btn_next{
  width: 6em;
  padding: 1em;
  border: 2px solid #909090;
  box-shadow: none;
  margin: 1.5em 0.5em 0;}
.mfp_element_button.btn_prev:hover,
.mfp_element_button.btn_next:hover{
  background: #909090;
  color: #fff;}
table#mfp_confirm_table{
  margin: 1em 0;}
table#mfp_confirm_table tr td {
  font-size: 0.77em;}
div.mfp_buttons{
  display: flex;}
div.mfp_buttons button{
  font-size: 0.77em;}
#blk_thanks{
  margin: 3em 0 3em;}
#blk_thanks .content{
  padding-bottom: 2em;
  border-bottom: 4px solid #D65424;}
div#mfp_thanks{
  /*display: none;*/}
/*利用規約*/
#sec_kiyaku{
  margin-bottom: 2em;}
#sec_kiyaku h1{
  margin: 1.5em 0;}
#sec_kiyaku h2{
  margin-bottom: 0.5em;}
#sec_kiyaku .content_inner > ol{
  padding-bottom: 1em;
  border-bottom: 4px solid #D65424;
  margin-bottom: 1em;}
#sec_kiyaku ol li{
  list-style-type: decimal;
  list-style-position: inside;
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.7;}
