@charset "utf-8";
/* CSS Document */
/*========コンテンツ==============*/
.secNormal, .secBottom {
  width: 100%;
  padding: 0 2%;
  padding-bottom: 2rem;
}
p {
  padding-left: 2%;
  padding-right: 2%;
}
.br-pc {
  display: none;
}
/*========ヘッダー==============*/
header {
  width: 100%;
  height: auto;
  background-color: #FFF0FF;
}
#mv {
  width: 100%;
  position: relative;
  height: 0;
  padding-bottom: 61.63% /*604px*/ ;
  background-image: url(../img/index/mv_2023.jpg);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: contain;
  margin-left: auto;
  margin-right: auto;
}
header #mv h1 {
  position: absolute;
  top: 4%;
  left: 3%;
  letter-spacing: 0;
  font-weight: normal;
  font-size: 80%;
}
header #mv .contact_f {
  position: absolute;
  width: 40.82%;
  height: 10.6%;
  top: 62.91%;
  left: 50.41%;
}
/*=========見出し=============*/
.headline {
  margin: 1rem auto 1rem;
  font-size: 1.5rem;
  color: #ee5c6e;
  width: 100%;
  max-width: 940px;
  height: auto;
  border-top: solid 6px #ebebeb;
  border-bottom: solid 6px #ebebeb;
  line-height: 1.4em;
  padding: 0.5rem 4%;
  text-align: center;
}
.shW {
  margin-left: auto;
  margin-right: auto;
  padding: 0.5rem 2% 1.5rem;
  color: #fff;
  font-size: 1.25rem;
  line-height: 1.2em;
  background: rgb(0, 0, 0);
  background: -webkit-radial-gradient(circle, rgba(0, 0, 0, 1) 0%, rgba(43, 128, 216, 1) 78%);
  background: radial-gradient(circle, rgba(0, 0, 0, 1) 0%, rgba(43, 128, 216, 1) 78%);
}
h2 {
  margin-bottom: 1rem;
  text-align: center;
}
h3 {
  width: 100%;
  max-width: 940px;
  height: 40px;
  margin: 0 auto 1rem auto;
  text-align: center;
  margin-bottom: 1rem;
}
.Tit04 {
  width: 100%;
  max-width: 920px;
  height: auto;
  line-height: 1.2em;
  padding-left: 2em;
  background-image: url(../img/base/tit_back.png);
  background-repeat: no-repeat;
  background-position: left center;
  margin-bottom: 0.125rem;
}
.Txt04 {
  width: 100%;
  padding: 1rem 2em 0;
  border-top: #999 solid 1px;
  margin-bottom: 1rem;
}
.borG {
  border-top: #999 solid 1px;
}
/*=========AED2種類=============*/
.scroll {
  overflow-x: auto;
}
.scroll::-webkit-scrollbar {
  height: 4px;
}
.scroll::-webkit-scrollbar-track {
  border-radius: 4px;
  background: rgba(238, 238, 238, 1);
}
.scroll::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: rgba(169, 170, 161, 1);
}
.capTit {
  display: none;
}
.list-caption {
  display: none;
}
.ex p {
  color: #FFF !important;
  font-weight: bold;
}
.ex {
  background-color: #F00 !important;
  color: #FFF !important;
  font-weight: bold;
}
.H0 {
  position: relative;
  text-align: center;
  width: 100%;
  margin-bottom: 1rem;
}
.H0 h4 {
  line-height: 1.2em;
  margin-top: 0.5rem;
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: #727171;
}
.H0 p {
  display: inline-block;
  line-height: 1.4em;
  letter-spacing: 0;
  font-size: 1rem;
}
.list {
  position: relative;
  display: table;
  width: 100%;
  max-width: 940px;
  border-collapse: collapse;
}
.list-tr {
  display: table-row;
  /*display: flex;*/
}
.sp-th div {
  display: table-cell;
}
.sp-th div p {
  font-size: 1.125rem;
  font-weight: bold;
  color: #fff;
  letter-spacing: 0;
  width: 100%;
  height: 3.5rem;
  vertical-align: middle;
  text-align: center;
  padding: 0.5rem 2%;
  line-height: 1.2em;
  border-left: #fff solid 1px;
  -webkit-border-top-left-radius: 10px;
  -webkit-border-top-right-radius: 10px;
  -moz-border-radius-topleft: 10px;
  -moz-border-radius-topright: 10px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.sp-th div p span {
  font-size: 80%;
}
#listOut .list .sp-th .H1 {
  background-color: #EF93C2;
}
#listOut2 .list .sp-th .H1 {
  background-color: #FFAC75;
}
.list-th {
  display: table-cell;
  border: #666 solid 1px;
  width: 16%;
  min-width: 120px;
  vertical-align: middle;
  text-align: center;
}
.list-td, .list-td2 {
  display: table-cell;
  border: #666 solid 1px;
  font-size: 1rem;
  letter-spacing: 0;
  text-align: right;
  font-feature-settings: "palt";
  white-space: nowrap !important;
}
.list-td {
  vertical-align: top;
  padding: 0.5rem;
}
.list-td p {
  font-size: 1.75rem;
  color: #F00;
  letter-spacing: 0;
  /*  font-weight: bold;*/
  text-align: right;
  line-height: 1.2em;
  white-space: nowrap !important;
}
.list-td p span {
  font-size: 60%;
  /*  font-size: 1rem;  font-weight: bold;*/
}
.R-price {
  margin-top: 0.75rem;
  font-size: 1.5rem;
  margin-bottom: 1rem;
  color: #727171;
  vertical-align: middle;
  line-height: 1.2em;
}
#listOut {
  width: 100%;
  max-width: 940px;
  height: auto;
  border-bottom: #ccc dotted 1px;
  padding-bottom: 2.5rem;
  margin-bottom: 2.5rem;
  margin-left: auto;
  margin-right: auto;
}
#listOut2 {
  width: 100%;
  max-width: 940px;
  height: auto /*62.34%*/ ;
  border-bottom: #ccc dotted 1px;
  padding-bottom: 2.5rem;
  margin-bottom: 2.5rem;
}
.attention {
  text-align: center;
}
.attention p {
  display: inline-block;
  text-align: justify;
}
#Atn {
  display: inline-block;
  text-align: justify;
  line-height: 1.5em;
  padding-left: 2%;
  padding-right: 2%;
}
.recommend-sp {
  display: none;
}
.recommend-pc {
  width: 100%;
  height: 0;
  padding-bottom: 11.49%;
  background-image: url(../img/index/tit_index01.gif);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
/*////576px以下/////*/
@media screen and (max-width: 575.98px) {
  header #mv h1 {
    font-size: 60%;
  }
  .Txt04 {
    padding: 1rem 1em 0;
  }
  .headline {
    font-size: 1.25rem;
    width: 100%;
    height: auto;
    padding: 0.5rem 2%;
    text-align: center;
    letter-spacing: 0;
  }
  .R-price {
    font-size: 1rem;
  }
  .list-td {
    font-size: 80%;
  }
  .list-td p {
    font-size: 1rem;
  }
  .list-td p span {
    font-size: 60%;
  }
  .sp-th div p {
    font-size: 1rem;
  }
  .sp-th div p span {
    font-size: 70%;
  }
  .H0 h4 {
    font-size: 1.25rem;
  }
  .list-th {
    min-width: 104px;
  }
  .recommend-pc {
    display: none;
  }
  .recommend-sp {
    position: relative;
    display: block;
    width: 100%;
    margin-bottom: 0.25rem;
    padding: 0.5em 0.5em;
    font-size: 1rem;
    letter-spacing: -0.02em;
    line-height: 1.4em;
    color: #f0c900;
    background: rgb(226, 0, 18);
    -webkit-background: linear-gradient(180deg, rgba(226, 0, 18, 1) 0%, rgba(144, 13, 35, 1) 100%);
    border: 3px double #fff;
    background: linear-gradient(180deg, rgba(226, 0, 18, 1) 0%, rgba(144, 13, 35, 1) 100%);
    border: 3px double #fff;
    text-align: justify;
    font-feature-settings: "palt";
  }
}
/*=========特徴=============*/
.prp-flex {
  display: flex;
  flex-direction: column;
  justify-content: center;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
}
.prpOut {
  width: 100%;
  margin-bottom: 1rem;
}
.prpOut h4 {
  position: relative;
  width: 98%;
  max-width: 470px;
  height: 0;
  font: 0/0 a;
  text-shadow: none;
  color: transparent !important;
  padding-bottom: 10.213%;
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: auto;
  margin-right: auto;
  z-index: 5
}
.prpOut .tit-01 {
  background-image: url(../img/index/txt_index11.png);
}
.prpOut .tit-02 {
  background-image: url(../img/index/txt_index12.png);
}
.prp {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
  height: auto;
  padding-left: 4%;
  padding-right: 4%;
  border: #888 solid 1px;
  padding-top: 1.5rem;
  margin: -0.5rem auto 0;
  z-index: 3
}
.prp dt {
  text-align: center;
}
.prpTit {
  font-family: "Shippori Mincho", serif !important;
  font-size: 1.25rem;
  font-weight: bold;
  padding: 0.125rem 4%;
  line-height: 1.4em;
  margin-bottom: 1rem;
  color: #666;
  background-color: #eee;
  text-align: justify;
}
.prpXit {
  line-height: 1.5em;
  margin-bottom: 2rem;
  padding: 0 4%;
  text-align: justify;
}
.service {
  display: flex;
  flex-direction: column;
  justify-content: center;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
  text-align: center;
  width: 100%;
  margin: 0 auto 2rem;
}
.service p {
  font-size: 1.375rem;
  letter-spacing: -0.05em;
  line-height: 1.4em;
  color: #88bbee;
  font-weight: bold;
  padding: 0 0.5rem;
  margin-bottom: 1rem;
  text-align: center;
}
/*=========申込みフォーム=============*/
.thank {
  font-size: 1.25rem;
  margin-top: 2rem;
  text-align: center !important;
}
#form {
  margin-bottom: 2rem;
}
#table {
  display: block;
  width: 100%;
  border: 1px solid #666;
  margin-bottom: 2rem;
}
.th {
  display: block;
  padding: 1rem 4%;
  width: 100%;
  line-height: 1.5em;
  vertical-align: middle;
  background-color: #EBF4FA;
}
.td {
  display: block;
  padding: 1rem 4%;
  width: 100%;
  line-height: 1.5em;
}
.tr {
  display: block;
}
input, select, textarea {
  font-size: 125%;
}
select {
  vertical-align: middle;
}
input {
  vertical-align: 0em;
}
.form_fog {
  margin-left: 0;
  margin-bottom: 1rem;
}
#policy {
  width: 100%;
  max-width: 900px;
  height: 10em;
  overflow: auto;
  padding: 0.5rem 1em;
  line-height: 1.5em;
  border: #666 solid 1px;
  margin: 0 auto 1rem auto;
}
#policy dl {}
#policy dl dt {
  margin-bottom: 10px;
}
#policy dl dd {
  margin-bottom: 20px;
  text-align: justify;
}
.read-flex {
  display: flex;
  flex-direction: column;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  width: 100%;
  max-width: 940px;
  margin: 0 auto 0.5rem;
}
#read01 {
  height: auto;
  padding: 0.5rem 2%;
  border: #666 solid 1px;
  margin-bottom: 15px;
}
#read01 img {
  display: inline-block;
  padding: 0 10px;
  vertical-align: top;
}
#read01 p {
  display: inline-block;
}
#read02 { /*flex-basis:25%;*/
  height: auto;
  margin-bottom: 15px;
  line-height: 2em;
}
.read-text {
  width: 100%;
  max-width: 850px;
  margin: 0 auto 1rem;
}
#form_name_first, #form_name_last, #form_furi_first, #form_furi_last, #form_group {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: calc(50% - 4em);
  max-width: 100%;
  line-height: 1.5em;
  padding: 0.25rem 2%;
}
#inquiry {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  width: 100%;
  height: 37em;
  line-height: 1.5em;
  padding: 0.25rem 2%;
  overflow: scroll;
}
#form_tel, #form_email1, #form_email2, #form_addr, #form_zip, #form_group {
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  width: calc(100% - 16em);
  max-width: 100%;
  line-height: 1.5em;
  padding: 0.25rem 2%;
}
input[type=submit] {
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border: #a9a9a9 1px solid;
  -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  width: 206px;
  height: 25px;
  padding: 0 3px;
  cursor: pointer;
  background: #f5f5f5;
  text-shadow: 1px 1px 0px #fff;
  -webkit-appearance: none;
  color: #333;
}
input[type=reset] {
  border-radius: 5px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  -o-border-radius: 5px;
  -ms-border-radius: 5px;
  border: #a9a9a9 1px solid;
  -moz-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  -webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2), 0 0 2px rgba(0, 0, 0, 0.3);
  width: 76px;
  height: 25px;
  padding: 0 3px;
  cursor: pointer;
  background: #f5f5f5;
  text-shadow: 1px 1px 0px #fff;
  -webkit-appearance: none;
  color: #333;
}
#formBtn {
  display: flex;
  justify-content: space-between;
  display: -webkit-flex;
  -webkit-justify-content: space-between;
  width: 100%;
  max-width: 318px;
  margin: 0 auto 15px auto;
}
.br-sp {
  display: none;
}
/*////576px以下/////*/
@media screen and (max-width: 575.98px) {
  .br-sp {
    display: block;
    font-size: 0;
    line-height: 0em;
  }
  #form_tel, #form_email1, #form_email2, #form_addr, #form_zip, #form_group {
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    width: 100%;
    line-height: 1.5em;
  }
  .footTel {
    line-height: 1.2em;
  }
  .prpOut .tit-01, .prpOut .tit-02 {
    width: 100%;
    height: 48px;
    background-size: cover;
  }
  .service p {
    text-align: justify !important;
    font-size: 1.25rem
  }
}
/*==========フッター============*/
footer {
  width: 100%;
  margin-right: auto;
  margin-bottom: 0px;
  margin-left: auto;
  padding: 1rem 0;
  height: auto;
}
#footLink {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  webkit-display: flex;
  -webkit-justify-content: center;
  -webkit-align-items: flex-end;
  width: 100%;
  height: 1.2em;
  line-height: 1.2em;
  margin: 2rem auto;
}
#footLink li {
  display: inline;
}
#footLink a:link, #footLink a:visited {
  color: #333;
  text-decoration: none;
}
#footLink a:hover, #footerLink a:active {
  color: #333;
  text-decoration: underline;
}
footer #foot {
  display: flex;
  flex-direction: column;
  justify-content: center;
  display: -webkit-flex;
  -webkit-flex-direction: column;
  -webkit-justify-content: center;
  width: 100%;
  max-width: 980px;
  height: auto;
  margin-right: auto;
  margin-bottom: 0px;
  margin-left: auto;
  padding-top: 1rem;
  padding-right: 4%;
  padding-left: 4%;
  border-top: #CCC dotted 2px;
}
footer #foot .footLogo {
  text-align: center;
}
.footInfo-flex {
  /*padding-top: 3.25rem;*/
  display: table;
  width: 100%;
  table-layout: fixed;
}
.footInfo div {
  display: table-row;
}
.footInfo {
  display: table-cell;
  line-height: 1.4em;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
}
/*.footInfo {
width: 50%;max-width: 360px;
padding:0 2%;
 line-height: 1.4em;
 margin-bottom: 1rem;
}*/
.footInfo dt {
  font-size: 0.85rem;
}
.footInfo dd {
  font-size: 0.85rem;
}
.footInfo dd span {
  display: inline-block;
}
.footTel {
  font-size: 1.125rem !important;
  letter-spacing: 0 !important;
}
_:lang(x) + _:-webkit-full-screen-document, .footInfo-flex {
  /*padding-top: 3.25rem;*/
  display: table;
  width: 100%;
  table-layout: fixed;
}
_:lang(x) + _:-webkit-full-screen-document, .footInfo div {
  display: table-row;
}
_:lang(x) + _:-webkit-full-screen-document, .footInfo {
  display: table-cell;
  line-height: 1.4em;
}
/*////576px以下/////*/
@media screen and (max-width: 575.98px) {
  #footLink {
    flex-direction: column;
    align-items: center;
    -webkit-flex-direction: column;
    -webkit-align-items: center;
    padding-bottom: 1rem;
  }
  #footLink li span {
    display: none;
  }
  #footLink li {
    padding: 0.25rem 0;
    line-height: 1.6em;
    text-align: center;
  }
  .footInfo-flex {
    display: block;
    width: 100%;
  }
  .footInfo div {
    display: block;
  }
  .footInfo {
    display: block;
    width: 100%;
    max-width: 240px;
    margin: 0 auto 0.5rem;
  }
  .footInfo dd span {
    display: inline-block;
  }
  .footInfo {}
  footer #foot {
    margin-top: 1rem;
  }
  _:lang(x) + _:-webkit-full-screen-document, .footInfo-flex {
    /*padding-top: 3.25rem;*/
    display: block;
    width: 100%;
  }
  _:lang(x) + _:-webkit-full-screen-document, .footInfo div {
    display: block;
  }
  _:lang(x) + _:-webkit-full-screen-document, .footInfo {
    width: 100%;
    display: block;
    margin: 0.25rem auto;
  }
}
/*==========スクロールボタン============*/
#pageTop {
  display: none !important;
}
#pageTop-sp {
  position: fixed;
  bottom: 1rem;
  right: 2%;
  z-index: 999;
}
#pageTop-sp i {
  padding-top: 6px
}
#pageTop-sp a {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  z-index: 999;
  padding: 16px 0 0;
  border-radius: 41px;
  width: 48px;
  height: 48px;
  background-color: #fff;
  color: #737373;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
  box-shadow: 0 2px 10px -6px rgba(0, 0, 0, .5), 0 3px 10px -4px rgba(0, 0, 0, .2);
}