@charset "utf-8";
/* CSS Document */
html {
  height: 100%;
}
body {
  height: 100%;
  /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;*/
  /* font-family: メイリオ, 游ゴシック体, 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', sans-serif;*/
   font-family: 游ゴシック体, 'Yu Gothic', YuGothic, メイリオ, 'Hiragino Kaku Gothic ProN', sans-serif;
    
  /* add 202312
  ※default：windows10游ゴシックL => NG、MacOS游ゴシックM 
  ※2byte：mediaservice基本メイリオ、windows游ゴシックM、MacOS游ゴシックM、android游ゴシックM、iphone游ゴシックM 
  ※1byte：sans-serif 
  */
  font-family: 'メイリオ', 'Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','HiraKakuProN-W3',"Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体",sans-serif;
  
  color: #000;
  line-height: 1.6;
}
a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  text-decoration: underline;
}
/* font size
------------------------------------------*/
html {
  font-size: 62.5%;
}
body {
  font-size: 1.3rem;
}
p {
  font-size: 1.3rem;
}
li {
  font-size: 1.3rem;
}
li p {
  font-size: 1.3rem;
}
/* valid
----------------------------*/
/*:valid, :in-range {
  background-color: lightgreen;
}*/
/*:invalid {
  background-color: pink;
}*/
/*:out-of-range {
  background-color: red;
}
:required {
  border-style: solid;
  background-color: pink;
}*/
/*:optional {
  border-style: dashed;
}*/
/* font */
.f_rb {
  font-family: "Roboto" !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #FF0000;
}
.f_red {
  color: #FF0000;
}
.pcOnOff, .is-pc {
  display: block !important;
}
.spOnOff, .is-sp {
  display: none !important;
}
/* 改行制御 block/inline; PC
---------------------------------------------*/
.brPcInline {
  display: inline; /*改行なし*/
}
.brPcBlock {
  display: block; /*改行あり*/
}
/****/
.container_read {
  width: 800px;
  /*max-width: 800px;*/
  margin: 20px auto 0;
  padding: 0;
  /* overflow: hidden;*/
  box-sizing: border-box;
}
.container_read img {
  width: 100%;
}
.container_read p {
  padding: 0;
  margin: 0 1.0em;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.6;
  text-align: justify;
  text-justify: inter-ideograph;
}
.container {
  width: 100%; /*800px;*/
  max-width: 800px;
  margin: 20px auto;
  /*overflow: hidden;*/
  box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 2px;
}
/* kakunin */
.container_bdnone {
  width: 100%; /*800px;*/
  max-width: 800px;
  margin: 20px auto;
  padding: 10px 0px 30px;
  /* overflow: hidden;*/
  box-sizing: border-box;
  border: none;
  border-radius: 2px;
}
.container_thanks {
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
  padding: 30px 30px 30px;
  /* overflow: hidden;*/
  box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 2px;
  text-align: center;
}
.container_thanks div.thanks_text {
  margin: 30px auto 90px auto;
}
.container_thanks p {
  text-align: center;
  line-height: 1.9;
}
/*2
---------------------------------------*/
.container_thanks2 {
  width: 100%;
  max-width: 800px;
  margin: 20px auto;
  padding: 30px 30px 30px;
  /* overflow: hidden;*/
  box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 2px;
  text-align: center;
}
.container_thanks2 div.thanks_text {
  margin: 30px auto 0px auto;
}
.container_thanks2 p {
  text-align: center;
  line-height: 1.9;
}
/* thanks SP
------------------------------------------------- SP */
@media all and (max-width:767px) {
  /****/
  .container_read {
    width: 96%;
    margin: 20px 2% 0;
    padding: 0;
    box-sizing: border-box;
  }
  .container {
    width: 96%; /*800px;*/
    /* max-width: 100%;*/
    margin: 20px auto;
    /*overflow: hidden;*/
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 2px;
    padding: 2% 3%;
  }
  .container_thanks2 {
    width: 100%;
    margin: 20px auto;
    padding: 30px 5px 30px;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 2px;
    text-align: center;
  }
  .container_wrap_option {
    width: 98%;
    margin: 20px 1% 0 !important;
    padding: 0;
    box-sizing: border-box;
  }
  .container_thanks {
    width: 100%;
    /*max-width: 800px;*/
    margin: 20px auto;
    padding: 30px 1% 30px;
    /*overflow: hidden;*/
    border: 1px solid #ddd;
    border-radius: 2px;
    text-align: center;
    box-sizing: border-box;
  }
  .container_thanks div.thanks_text {
    margin: 30px auto 90px auto;
  }
  .container_thanks p {
    text-align: center;
    line-height: 1.9;
  }
  /****/
}
/* head PC
----------------------------------------- PC */
header {
  width: 100%;
  background-color: #EEE;
}
ul.header_in {
  max-width: 800px;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  display: flex;
}
header ul li .header_logo {
  width: 50%;
  margin: 0;
  padding: 0;
}
header ul li .header_tel {
  width: 50%;
  margin: 0;
  padding: 0;
}
ul.header_in img {
  width: 100%;
  height: 80px;
  margin: 0;
  padding: 0;
}
/* h1 PC
 ---------------------------------------------- PC */
div.container_read h1 {
  font-size: 1.4em;
  line-height: 1.9;
  border-bottom: solid 1px #ddd;
  position: relative;
  margin-bottom: .6em;
  color: #000;
  letter-spacing: 1%;
  text-indent: .1em;
  margin-top: 20px;
}
div.container_read h1:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #29ABE2;
  bottom: -1px;
  width: 30%;
}
i.title_form_h1 {
  color: #29ABE2;
}
/* h2 PC
 ---------------------------------------------- PC */
/*div.container_read h2 {
  font-size: 1.4em;
  line-height: 1.9;
  border-bottom: solid 1px #ddd;
  position: relative;
  margin-bottom: .6em;
  color: #000;
  letter-spacing: 1%;
  text-indent: .1em;
  margin-top: 20px;
}
div.container_read h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #29ABE2;
  bottom: -1px;
  width: 30%;
}
i.title_form_h2 {
  color: #29ABE2;
}	*/
/*add調整
--------------------------------------*/
.mt_add {
  margin-top: 0 !important;
}
/* footer
------------------------------------------------- PC */
footer {
  width: 100%;
  text-align: center;
  padding: 4em 0 8em 0;
  margin: 2em 0 0;
  box-sizing: border-box;
  background-color: #EBEBEB;
  font-size: 1.1rem;
}
/* form
--------------------*/
input::placeholder {
  /* color: #A3A3A3;*/
  font-size: 1.1rem;
}

/* // min-width:768px  PC */
/*************************SMP*******************************************************************************/
@media only screen and (max-width:767px) {
  /* 表示/非表示
-----------------------------------------------*/
  .spOnOff, .is-sp {
    display: block !important;
  }
  .pcOnOff, .is-pc {
    display: none !important;
  }
  /* 改行制御 block/inline; SMP
---------------------------------------------*/
  .brSpInline {
    display: inline; /*k改行なし*/
  }
  .brSpBlock {
    display: block; /*改行あり*/
  }
  /* header */
  div.container_read {
    width: 100%;
    margin: 20px auto 4px;
    padding: 0 1em;
    overflow: hidden;
    box-sizing: border-box;
    font-size: 13px;
    line-height: 1.6;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  .container_read img {
    width: 100%;
  }
  div.container_read p {
    font-size: 12px;
    line-height: 1.6;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  div.mailform dl dd span {
    font-size: 1.1rem;
  }
  /* container
------------------------------------------------*/
  .container {
    width: 94%;
    margin: 20px auto;
    padding: .5em 0.5em 1.0em;
    /*overflow: hidden;*/
    box-sizing: border-box;
  }
  .container_thanks {
    width: 100%;
    margin: 0 auto 40px auto;
    padding: 0;
    /*overflow: hidden;*/
    box-sizing: border-box;
    text-align: center;
  }
  .container_thanks p {
    text-align: center;
    line-height: 1.8;
    font-size: 1.1rem;
  }
  .container span, .container p, .container div {
    line-height: 1.6;
  }
  /* head SMP
-----------------------------------------*/
  header {
    width: 100%;
  }
  ul.header_in {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  /*header ul li h1.header_logo {
  width: 50%;
}*/
  header ul li .header_tel {
    width: 100%;
    /*text-align:center;*/
  }
  ul.header_in img {
    width: 94%; /*100%;*/
    height: auto; /*100px;*/
    margin: 12px auto 0;
    padding: 0;
    display: block;
  }
  .submit_area {
    margin-top: 45px;
    text-align: center;
  }
  /* h1
---------------------------------------------------SP*/
  div.container_read h1 {
    font-size: 1.4rem;
    line-height: 1.9;
    border-bottom: solid 1px #ddd;
    position: relative;
    margin-bottom: .7em;
    color: #171717;
    letter-spacing: 1%;
    text-indent: .1em;
    margin-top: 10px;
  }
  div.container_read h1:after {
    position: absolute;
    content: " ";
    display: block;
    border-bottom: solid 3px #29ABE2;
    bottom: -1px;
    width: 30%;
  }
  i.title_form_h1 {
    color: #29ABE2;
  }
  /* h2
---------------------------------------------------SP*/
  /*div.container_read h2 {
  font-size: 1.4rem;
  line-height: 1.9;
  border-bottom: solid 1px #ddd;
  position: relative;
  margin-bottom: .7em;
  color: #171717;
  letter-spacing: 1%;
  text-indent: .1em;
  margin-top: 10px;
}
div.container_read h2:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 3px #29ABE2;
  bottom: -1px;
  width: 30%;
}
i.title_form_h2 {
  color: #29ABE2;
}*/
    
/*add調整
--------------------------------------*/
  .mt_add {
    margin-top: 0 !important;
  }
  /****/
  /* footer
--------------------------------------------*/
  footer {
    width: 100%;
    text-align: center;
    padding: 4em 0 8em 0;
    box-sizing: border-box;
    background-color: #EBEBEB;
    font-size: 1.1rem;
    margin: 0;
  }
  .container_read {
    width: 100%;
    margin: 20px auto 0;
    padding: 0;
    overflow: hidden;
    box-sizing: border-box;
  }
  /*.container_read p {
  padding: 0;
  margin: 0 1.0em;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 1.6;
  text-align: justify;
  text-justify: inter-ideograph;
}*/

/* form
-------------------------------------------*/
  input::placeholder {
    /*color: #A3A3A3;*/
    font-size: 1.3rem;
  }
}
/* headerNew 
-----------------------------------------------------------*/
#header .header_form-ttl {
  font-size: 26px;
  font-weight: bold;
  line-height: 49px;
  margin: 0px;
  padding: 15px 0 15px 1em;
  text-align: center;
  color: #FFF;
  background-color: #7ba8d2; /*#1AAEC3;*/
}
@media only screen and (max-width:767px) {
  #header .header_form-ttl {
    font-size: 18px;
    font-weight: bold;
    line-height: 49px;
    margin: 0px;
    padding: 5px 5px 5px 33px;
    text-align: center;
    color: #FFF;
    background-color: #7ba8d2; /*#1AAEC3;*/
  }
}
#header .header_form-ttl span {
  position: relative;
}
#header .header_form-ttl span:before {
  display: block;
  content: " ";
  position: absolute;
  width: 38px;
  height: 38px;
  margin: auto;
  top: 0;
  bottom: 0;
  left: -46px;
  background: url("../image/icon_default.svg") no-repeat center -2px;
}
/*add*/
#header .header_form-ttl span.icon_moushikomi:before {
  background: url("../image/icon_moushikomi.svg") no-repeat center -2px;
}
#header .header_form-ttl span.icon_toiawase:before {
  background: url("../image/icon_toiawase.svg") no-repeat center -2px;
}
#header .header_form-ttl span.icon_areacheck:before {
  background: url("../image/icon_areacheck.svg") no-repeat center -2px;
}
#header .header_form-ttl span.icon_areacheck_2:before {
  background: url("../image/icon_areacheck_2.svg") no-repeat center -2px;
}
#header .header_form-ttl span.icon_mitsumori:before {
  background: url("../image/icon_mitsumori.svg") no-repeat center -2px;
}
#header .header_form-ttl span.icon_denwa:before {
  background: url("../image/icon_denwa.svg") no-repeat center -2px;
}
/*-----------------------*/
.red {
  color: #FF0000;
}
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
/*送信ボタンエリア
------------------------------*/
.soushin_btn_area {
  margin: 30px auto;
}
/*SSL
-----------------------------------*/
.ssl {
  width: 320px;
  margin: 15px auto;
}
.ssl div.left {
  float: left;
  width: 15%;
}
.ssl div.right {
  width: 80%;
  padding-left: 5%;
  float: right;
}
.ssl div.right h3 {
  font-size: 15px;
}
.ssl div.right p {
  padding-top: 0px !important;
  font-size: 11px !important;
  text-align: left !important;
  line-height: 1.5 !important;
}
/* summary */
.summary2 {
  background: #0085DB;
  padding: 5px;
  margin-left: calc((100% - 100vw) / 2);
  margin-right: calc((100% - 100vw) / 2);
  text-align: center;
}
.summary2 span {
  color: #FFF !important;
  font-size: 12px;
  text-align: center;
}
.bg_submain {
  clear: both !important;
  width: 100% !important;
  background-color: #f4f4f4;
  margin: 0px auto !important;
  padding: 0px 0px !important;
  /*height: 380px;*/
}
.submain_img {
  margin: 0 auto;
  text-align: center;
  width: 950px;
}
.submain_img img {
  width: 100%;
  vertical-align: bottom;
}


