@charset "UTF-8";

/*-------------------------
トップボタン追加部分 23JAN
-------------------------*/ 
.b-block {
  max-width: 960px;
  margin: 0 auto;
  padding: 50px 0 60px;
  text-align: center;
}

.button-box{
  display: grid;
  grid-auto-flow: column;
  width: fit-content;
  gap: 6rem;
  grid-auto-columns: 1fr;
}
.button-box a{
  text-decoration: none;
  color: #F2544C;
}
.inquiry-button.active a{
  color: #fff;
}


.inquiry-button.active{
  color: white;
  pointer-events: none;
}

.inquiry-button.active{
  background-color: #F2544C;
}


.inquiry-button{
  font-size: 20px;
  font-weight: 900;
  color: #F2544C;
  background-color: #fff;
  border: solid 1px #F2544C;
  padding: 20px 30px;
  border-radius: 40px;
  transition: 0.5s;
}
.inquiry-button:hover{
  background-color: #F2544C;
  color: #fff;
}
 .inquiry-button a:hover{
  color: #fff;
}
@media only screen and (max-width: 768px) {
  .inquiry-button{
    font-size: 15px;
  }
  .button-box {
    gap: 1rem;
  }
  .inquiry-button {
    padding: 15px 20px;
  }
}

/*-------------------------
新規追加インプット部分 23JAN
-------------------------*/
.number-flat{
  display: flex;
}

.number-flat p + p {
  padding: 0!important;
}
.option-wrap{
  display: flex;
}

.number-space input[type="text"], textarea{
    font-size: 16px;
    background-color: #f3f5f8;
    width: 140px;
    margin: 0 20px 0 20px;
    padding: 25px;
    border: 1px solid #f3f5f8;
    border-radius: 5px;
    box-sizing: border-box;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    -webkit-transition: all .2s;
    -ms-transition: all .2s;
    transition: all .2s;
}
input[type="date"] {
  position: relative;
}
.input-space-right{
  margin-right: 20px;
}
input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  background: transparent;
  z-index: 1;
}
input[type="date"]::after {
  content: '';
  background-image: url(/contact/images/calender.png);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: 0 0;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
}

input[type="date"], textarea{
    font-size: 16px;
    background-color: #f3f5f8;
    width: 100%;
    margin: 0 5px 0 5px;
    padding: 25px;
    border: 1px solid #f3f5f8;
    border-radius: 5px;
    box-sizing: border-box;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    -webkit-transition: all .2s;
    -ms-transition: all .2s;
    transition: all .2s;
}

.number-flat input[type="text"], textarea{
   width: 155px;
   margin: 0 20px 0 20px;
}

.number-flat.ohters input[type="text"], textarea {
  width: 600px;
  margin: 0 5px 0 5px;
}
.number-space{
  margin-bottom: 10px;
}


@media only screen and (max-width: 768px) {
  .option-wrap {
    display: block;
  }
  .number-space input[type="text"], textarea {
    width: 100px;
  }
  .number-flat input[type="text"], textarea {
    width: 115px;
    margin: 0 5px 0 5px;
  }
  .number-flat.ohters input[type="text"], textarea {
    width: 100%;
    margin: 0 5px 0 5px;
  }
  .number-space-sp{
    margin-bottom: 10px;
  }
  .input-space-right{
    margin-right: inherit;
  }
  input[type="date"], textarea{
    width: 60%;
  }

}

/*-------------------------
__contact_style
-------------------------*/
#main_ttl::before{background:url("/contact/images/main_ttl_bg.jpg")center no-repeat;background-size:cover;}

.err {display:block;font-size:16px;color:#DF303F;}

input[type="text"].ime_ac,
textarea.ime_ac{ime-mode:active;}
input[type="text"].ime_dis,
textarea.ime_dis{ime-mode:disabled;}

input[type="text"],
textarea{font-size:16px;background-color:#f3f5f8;width:100%;margin:0 0 5px;padding:25px;border:1px solid #f3f5f8;border-radius:5px;box-sizing:border-box;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;-webkit-transition:all .2s;-ms-transition:all .2s;transition:all .2s;}
input[type="text"].ml10{margin-left:10px;}
input[type="text"].mr10{margin-right:10px;}
input[type="text"].w20{width:20%;}
input[type="text"].w30{width:30%;}
input[type="text"].w50{width:50%;}
input[type="text"].w75{width:75%;}
input[type="text"].w7em{width:7em;}
input[type="text"].w8em{width:8em;}
textarea{height:12em;}
@media only screen and (min-width: 960px) {
  input[type="text"]:hover,
  textarea:hover{border-color:#e6eaf0;}
}
input[type="text"]:focus,
textarea:focus{border-color:#145da1;}

.select_wrap{display:inline-block;width:300px;position:relative;}
.select_wrap::after{content:"";display:block;height:0;width:0;border-style:solid;border-width:7px 5px 0 5px;border-color:#145da1 transparent transparent transparent;position: absolute;top:50%;right:10px;transform:translate(0, -50%);}
select{font-size:16px;line-height:44px;vertical-align:middle;background:#f3f5f8;height:44px;width:100%;margin:0 0 4px;padding:0 30px 0 15px;box-sizing:border-box;border:1px solid #f3f5f8;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;}
select::-ms-expand{display: none;}

input[type=radio],
input[type=checkbox]{display:none;}
.radio,
.checkbox{
  font-size:16px;
  line-height:30px;
  vertical-align:middle;
  display:inline-block;
  margin:0 5px 5px;
  padding:0 0 0 36px;
  box-sizing:border-box;
  border-radius:0;
  position:relative;
  cursor:pointer;
  -webkit-transition:background-color 0.2;
  transition:background-color 0.2s;
}
.radio::before{content:"";display:block;background-color:#145da1;height:16px;width:16px;margin-top:-6px;border-radius:8px;position:absolute;top:50%;left:7px;transition:.3s;opacity:0;z-index:2;}
.radio::after{content:"";display:block;background-color:#FFF;height:30px;width:30px;margin-top:-13px;box-sizing:border-box;border:4px solid #d0d5db;border-radius:15px;position:absolute;top:50%;left:0;transition:.3s;}
input[type=radio]:checked + .radio::before{opacity:1;}
input[type=radio]:checked + .radio::after{border-color:#145da1;}
.checkbox::before{content:"";display:block;height:15px;width:8px;margin-top:-10px;border-right:3px solid #FFF;border-bottom:3px solid #FFF;position:absolute;top:50%;left:9px;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);transition:.3s;opacity:0;}
.checkbox::after{content:"";display:block;background-color:#d0d5db;transition:.2s;position:absolute;top:50%;left:2px;height:26px;width:26px;margin-top:-11px;border-radius:2px;}
input[type=checkbox]:checked + .checkbox::before{opacity:1;z-index:2;}
input[type=checkbox]:checked + .checkbox::after{background-color:#145da1;}
@media only screen and (min-width: 960px) {
  .radio:hover::after{border-color:#bbbfc4;}
  .checkbox:hover::after{background-color:#bbbfc4;}
}

.block{max-width:960px;margin:0 auto;padding:50px 0 160px;}
.block .form_wrap table{font-size:1.6em;line-height:1.8;letter-spacing:0.04em;color:#363636;width:100%;border-collapse:collapse;border-spacing:0;table-layout:fixed;border-bottom:1px solid #363636;}
.block .form_wrap th,
.block .form_wrap td{background-color:#FFF;padding:30px 0 25px;box-sizing:border-box;}
.block .form_wrap tr:not(:first-child) th,
.block .form_wrap tr:not(:first-child) td{border-top:1px solid #363636;}

.block .form_wrap th{font-weight:700;text-align:left;width:260px;background-clip:padding-box;}
.block .form_wrap th .must{font-size:14px;font-weight:700;line-height:1;color:#FFF;display:block;background-color:#DF303F;text-align:center;width:50px;margin:-1.8em 25px 0 auto;padding:6px 0 7px;box-sizing:border-box;border-radius:5px;}
.block .form_wrap td{text-align:left;word-wrap:break-word;overflow-wrap:break-word;}
#confirm .form_wrap th,
#confirm .form_wrap td{padding:30px 0;}
.block .form_wrap td a{color:#363636;}
@media only screen and (min-width: 960px) {
  .block .form_wrap td a:hover{text-decoration:none;}
}
.block .form_wrap td p + p{padding:10px 0 0;}
.block .form_wrap td p.lh30{line-height:74px;margin-bottom:10px;margin-top:10px;padding-top:0;}
.block .form_wrap td p.inpt_fix{margin-top:-84px;margin-left:5em;padding-top:0;}

.pp_box{background-color:#f3f5f8;margin:50px 0 0;padding:25px;border:3px solid #d0d5db;}
.pp_box .ttl{font-size:1.8em;line-height:1.8;font-weight:700;color:#363636;padding-bottom:10px;}
.pp_box .txt{font-size:1.6em;line-height:1.8;color:#363636;padding-bottom:10px;}
.pp_box .txt a{color:#363636;transition:.3s;}
@media only screen and (min-width: 960px) {
  .pp_box .txt a:hover{color:#999;}
}

.block .submit_btn_wrap{background-color:#145DA1;border-radius:40px;height:80px;width:350px;margin:60px auto 0;overflow:hidden;position:relative;transition:.5s;cursor:pointer;}
.block .submit_btn_wrap .submit_btn{display:block;font-size:1.8em;line-height:80px;font-weight:700;letter-spacing:0.04em;color:#FFF;text-decoration:none;background:transparent;height:80px;width:100%;padding:0;border:none;border-radius:0;cursor:pointer;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;}
@media only screen and (min-width: 1000px) {
  .block .submit_btn_wrap:hover{background-color:#1071CC;transform:scale(1.1);}
}
.block .submit_btn_wrap::before{content:"";background-color:#FFF;height:100%;width:100%;position:absolute;left:-100%;top:0;opacity:0;transform:skewX(-45deg);z-index:-1;}
@media only screen and (min-width: 1000px) {
  .block .submit_btn_wrap:hover::before{animation:contact-hover .75s cubic-bezier(0.25, 0, 0.25, 1);}
}
.block .return_btn{width:120px;margin:-40px auto 0 0;}
.block .return_btn a{font-size:1.6em;line-height:38px;color:#363636;text-decoration:none;text-align:center;display:block;background-color:#FFF;height:40px;box-sizing:border-box;position:relative;border:1px solid;transition:.3s;}
@media only screen and (min-width: 960px) {
  .block .return_btn a:hover{color:#FFF;background-color:#363636;}
}

#rgst{padding:100px 0 160px;}
#rgst .ttl{font-size:3em;line-height:1.6;font-weight:700;color:#363636;letter-spacing:0.04em;}
#rgst .txt{font-size:1.6em;line-height:2;color:#363636;padding-top:40px;}
#rgst .btn{width:160px;margin:50px auto 0;}
#rgst .btn a{font-size:1.6em;line-height:38px;color:#363636;text-decoration:none;text-align:center;display:block;background-color:#FFF;height:40px;box-sizing:border-box;position:relative;border:1px solid;transition:.3s;}
@media only screen and (min-width: 960px) {
  #rgst .btn a:hover{color:#FFF;background-color:#363636;}
}

@media only screen and (max-width: 1020px) {
  .block{margin:0 30px;}
}

@media only screen and (max-width: 767px) {

  .err {font-size:14px;}

  input[type="text"],
  textarea{padding:20px;}
  input[type="text"].w20,
  input[type="text"].w30{width:40%;}
  input[type="text"].w50,
  input[type="text"].w75{width:100%;}
  .select_wrap{width:100%;}

  .radio,
  .checkbox{font-size:14px;}

  .block{margin:0 15px;padding:30px 0 60px;}
  .block .form_wrap table{font-size:1.4em;}
  .block .form_wrap th{display:block;width:100%;padding:15px 0 0;}
  .block .form_wrap th .must{font-size:12px;margin:-2em 0 0 auto;padding:6px 0 7px;}
  .block .form_wrap td{display:block;width:100%;padding:10px 0 15px;}
  .block .form_wrap tr:not(:first-child) td{border:none;}
  .block .form_wrap td p + p{padding:5px 0 0;}
  .block .form_wrap td p.lh30{line-height:49px;margin-bottom:5px;margin-top:10px;padding-top:0;}
  .block .form_wrap td p.inpt_fix{margin-top:-59px;}
  #confirm .form_wrap th{padding:15px 0 0;}
  #confirm .form_wrap td{padding:5px 0 15px;}

  .pp_box{margin:30px 0 0;padding:20px;}
  .pp_box .ttl{font-size:1.6em;}
  .pp_box .txt{font-size:1.4em;}

  .block .submit_btn_wrap{height:60px;width:100%;margin:30px auto 0;}
  .block .submit_btn_wrap .submit_btn{font-size:1.6em;line-height:60px;height:60px;}
  .block .return_btn{margin:20px auto 0;}
  .block .return_btn a{font-size:1.4em;}

  #rgst{padding:40px 15px 60px;}
  #rgst .ttl{font-size:2em;}
  #rgst .txt{font-size:1.4em;padding-top:20px;}
  #rgst .btn{margin-top:25px;}
  #rgst .btn a{font-size:1.4em;}
}

#privacy{text-align:left;}
#privacy .scroll_wrap{width:100%;height:500px;border:3px solid #DDD;overflow:auto;margin:20px 0 0;padding:15px 20px;box-sizing:border-box;}
#privacy .block_inner{text-align:left;max-width:960px;margin-bottom:40px;}
#privacy .block_ttl{font-size:2em;line-height:2;border-bottom:1px solid #363636;margin-bottom:20px;padding-bottom:10px;}
#privacy .txt{font-size:1.4em;line-height:2;}
#privacy .txt + .txt{margin-top:5px;}
#privacy dl{font-size:1.4em;line-height:2;}
#privacy dl dt{font-weight:700;margin-top:20px;}
#privacy dl dd a{font-weight:700;color:#145da1;}
#privacy table{border-collapse:collapse;border-spacing:0;margin-top:10px;}
#privacy table tr th{text-align:left;width:18em;}
#privacy .customer{overflow:hidden;}
#privacy .customer .inner{text-indent:-1em;background-color:#f3f5f8;margin-top:15px;padding:15px;padding-left:calc(15px + 1em);box-sizing:border-box;}
#privacy .customer .inner em{font-weight:700;}
#privacy .bottom{overflow:hidden;padding-top:20px;}
#privacy .bottom .bottom_inner{float:right;}
#privacy .bottom .bottom_inner em{font-weight:700;}
#privacy .submit_btn_wrap{text-align:center;}
@media only screen and (min-width: 1000px) {
  #privacy dl dd a{transition:.5s;}
  #privacy dl dd a:hover{text-decoration:none;color:#1071CC;}
}
@media only screen and (max-width: 767px) {
  #privacy .block_inner{margin-bottom:20px;}
  #privacy .txt{font-size:1.3em;}
  #privacy dl{font-size:1.3em;}
  #privacy dl dt{font-size:1.1em;margin-top:10px;}
  #privacy table tr th,
  #privacy table tr td{display:block;width:100%;}
  #privacy .bottom{padding-top:10px;}
}

.flow_list{max-width:960px;margin:30px auto -20px;}
.flow_list ul{display:flex;border-top:2px solid #DDD;border-bottom:2px solid #DDD;}
.flow_list ul li{font-size:1.4em;line-height:2;width:25%;height:50px;color:#145da1;padding:10px 25px 10px 0;box-sizing:border-box;position:relative;}
.flow_list ul li::before,
.flow_list ul li::after{display:inline-block;content:"";width:0;height:0;border-style:solid;border-width:25px 0 25px 25px;position:absolute;top:0;bottom:0;}
.flow_list ul li::before{border-color:transparent transparent transparent #DDD;right:0;}
.flow_list ul li::after{border-color:transparent transparent transparent #FFF;right:2px;}
.flow_list ul li:last-child::before,
.flow_list ul li:last-child::after{content:none;}
.flow_list ul li.active{font-weight:700;color:#DF303F;}
.flow_list ul li.end{color:#888;}
.flow_list ul li span{display:inline-block;position:relative;}
.flow_list ul li span::before{content:"";display:block;height:15px;width:15px;margin-top:-7px;border:2px solid #145da1;box-sizing:border-box;position:absolute;top:50%;left:-25px;}
.flow_list ul li.active span::before{height:15px;width:8px;border:none;border-right:3px solid #DF303F;border-bottom:3px solid #DF303F;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);transition:.3s;}
.flow_list ul li.end span::before{height:15px;width:8px;border:none;border-right:3px solid #DDD;border-bottom:3px solid #DDD;-webkit-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg);transition:.3s;}
@media only screen and (max-width: 1020px) {
  .flow_list{margin:30px 30px -20px;}
  .flow_list ul li{font-size:1.2em;padding:10px 10px 10px 0;}
  .flow_list ul li::before,
  .flow_list ul li::after{border-width:25px 0 25px 10px;}
  .flow_list ul li::before{right:10px;}
  .flow_list ul li::after{right:12px;}
  .flow_list ul li span::before{left:-20px;}
}
@media only screen and (max-width: 767px) {
  .flow_list{margin:20px 15px -10px;}
  .flow_list ul{display:block;}
  .flow_list ul li{width:100%;padding:15px 0;}
  .flow_list ul li + li{border-top:1px solid #DDD;}
  .flow_list ul li::before,
  .flow_list ul li::after{border-width:15px 15px 0 15px;margin:auto;top:auto;right:0;left:0;z-index:100;}
  .flow_list ul li::before{border-color:#DDD transparent transparent transparent;bottom:-15px;}
  .flow_list ul li::after{border-color:#FFF transparent transparent transparent;bottom:-14px;}
}
.footerPageTop01--adjust {
  top: -61px;
}

@media only screen and (max-width: 750px) {
  .footerPageTop01--adjust {
    top: -103px;
  }
}
.confirm_other {
  display: block;
}