.commingsoon {
  opacity: 0.5;
  pointer-events: none;
}

#ptop {
  background: #F7F5E5 !important;
}

section h2.ttl1 + p {
  font-size: 15px;
  line-height: 2.4;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section h2.ttl1 + p {
    font-size: 13px;
  }
}

/*============================
#ocTtl
============================*/
section#ocTtl {
  padding: 0 30px;
  margin-bottom: 90px;
}
@media screen and (max-width: 767px) {
  section#ocTtl {
    padding: 0 0;
    margin-bottom: 45px;
  }
}
section#ocTtl div {
  max-width: 1300px;
  margin: auto;
  background: url("img/ocTtl_bg.jpg") no-repeat right top;
  background-size: 66.1538% auto;
  padding-left: 27px;
  padding-bottom: 20px;
  padding-top: 34px;
}
@media screen and (max-width: 767px) {
  section#ocTtl div {
    background: url("img/ocTtl_bg.jpg") no-repeat center top;
    background-size: 100% auto;
    padding: 50% 26px 0;
  }
}
section#ocTtl div h1 {
  margin-bottom: 27px;
}
section#ocTtl div h1 img {
  max-width: 440.903px;
}
@media screen and (max-width: 767px) {
  section#ocTtl div h1 img {
    max-width: 85%;
  }
}
section#ocTtl div h2 {
  font-size: 40px;
  line-height: 1.85;
  letter-spacing: 0.1em;
  margin-bottom: 0.38em;
  margin-left: 28px;
}
@media screen and (max-width: 767px) {
  section#ocTtl div h2 {
    font-size: calc(40px * 0.6);
    margin-left: 0;
  }
  section#ocTtl div h2 br {
    display: none;
  }
}
section#ocTtl div p {
  font-size: 16px;
  line-height: 2.375;
  letter-spacing: 0.05em;
  margin-left: 28px;
}
@media screen and (max-width: 767px) {
  section#ocTtl div p {
    font-size: 14px;
    margin: 0;
  }
  section#ocTtl div p br {
    display: none;
  }
}

/*============================
#sec01
============================*/
section#sec01 {
  padding: 85px 30px 83px;
  background: #F7F5E5;
}
@media screen and (max-width: 767px) {
  section#sec01 {
    padding: 40px 26px;
  }
}
section#sec01 div.w1050 {
  max-width: 1050px;
  margin: auto;
}
section#sec01 div.w1050 h2 {
  font-size: 33px;
  line-height: 2.363636363636364;
  letter-spacing: 0.15em;
  border-top: 2px solid #B29701;
  border-bottom: 2px solid #B29701;
  padding: 0.37em 0;
  margin-bottom: 55px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section#sec01 div.w1050 h2 {
    font-size: calc(33px * 0.6);
    line-height: 1.7;
    margin-bottom: 27px;
    padding: 0.7em 0;
  }
}
section#sec01 div.w1050 div.flex {
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  section#sec01 div.w1050 div.flex {
    display: block;
  }
}
section#sec01 div.w1050 div.flex figure {
  flex: 0 0 30.4762%;
}
@media screen and (max-width: 767px) {
  section#sec01 div.w1050 div.flex figure {
    margin-bottom: 26px;
  }
}
section#sec01 div.w1050 div.flex figure figcaption h3 {
  font-size: 25px;
  line-height: 1.56;
  letter-spacing: 0.1em;
  height: 4.62em;
  padding-top: 0.9em;
}
@media screen and (max-width: 767px) {
  section#sec01 div.w1050 div.flex figure figcaption h3 {
    font-size: calc(25px * 0.8);
    height: auto;
    margin-bottom: 0.5em;
  }
  section#sec01 div.w1050 div.flex figure figcaption h3 br {
    display: none;
  }
}
section#sec01 div.w1050 div.flex figure figcaption p {
  font-size: 14px;
  line-height: 2.214285714285714;
  letter-spacing: 0.05em;
}
section#sec01 div.w1050 div.flex figure figcaption a.btn {
  margin-top: 0.7em;
}
@media screen and (max-width: 767px) {
  section#sec01 div.w1050 div.flex figure figcaption a.btn {
    margin-top: 1em;
  }
}

/*============================
#sec02
============================*/
section#sec02 {
  padding: 90px 30px 100px;
  border-bottom: 1px solid #C8C8C8;
}
@media screen and (max-width: 767px) {
  section#sec02 {
    padding: 45px 26px 50px;
  }
}
section#sec02 div.w740 {
  max-width: 740px;
  margin: auto;
  text-align: center;
}
section#sec02 div.w740 h2.ttl1::after {
  margin-bottom: 1.35em;
}
section#sec02 div.w740 p {
  text-align: left;
}
@media screen and (max-width: 767px) {
  section#sec02 div.w740 p {
    font-size: 14px;
    line-height: 2.214285714285714;
    letter-spacing: 0.05em;
  }
}
section#sec02 div.w740 table {
  margin-top: 1em;
  margin-bottom: 1.5em;
}
section#sec02 div.w740 table tr th, section#sec02 div.w740 table tr td {
  padding: 0.7em 1em;
}
section#sec02 div.w740 table tr th {
  font-size: 14px;
  line-height: 1.714285714285714;
  letter-spacing: 0.05em;
  font-weight: normal;
}
section#sec02 div.w740 table tr td {
  font-size: 13px;
  line-height: 1.846153846153846;
  letter-spacing: 0.05em;
  text-align: left;
}
section#sec02 div.w740 ul.komeList {
  margin-bottom: 1.3em;
  text-align: left;
}
section#sec02 div.w740 ul.komeList li {
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec02 div.w740 ul.komeList li {
    font-size: 13px;
  }
}
section#sec02 div.w740 a.btn {
  width: 220px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.8em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  section#sec02 div.w740 a.btn {
    text-align: center;
  }
}

/*============================
#sec03
============================*/
section#sec03 {
  padding: 80px 30px 100px;
  border-bottom: 1px solid #C8C8C8;
}
@media screen and (max-width: 767px) {
  section#sec03 {
    padding: 40px 26px 50px;
  }
}
section#sec03 div.w819 {
  max-width: 819px;
  margin: auto;
  text-align: center;
}
section#sec03 div.w819 p {
  margin-bottom: 1.3em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  section#sec03 div.w819 p {
    font-size: 14px;
    line-height: 2.214285714285714;
    letter-spacing: 0.05em;
  }
}
section#sec03 div.w819 a.btn {
  width: 220px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.8em;
  text-align: left;
}
@media screen and (max-width: 767px) {
  section#sec03 div.w819 a.btn {
    text-align: center;
    margin-left: 0;
  }
}

/*============================
#sec04
============================*/
section#sec04 {
  padding: 90px 30px 100px;
}
@media screen and (max-width: 767px) {
  section#sec04 {
    padding: 45px 26px 50px;
  }
}
section#sec04 div.w819 {
  max-width: 819px;
  margin: auto;
}
section#sec04 div.w819 div.flex {
  justify-content: space-between;
  margin-bottom: 30px;
}
@media screen and (max-width: 767px) {
  section#sec04 div.w819 div.flex {
    display: block;
  }
}
section#sec04 div.w819 div.flex p {
  flex: 0 0 46.1538%;
  font-size: 15px;
  line-height: 2.4;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec04 div.w819 div.flex p {
    font-size: 14px;
    line-height: 2.214285714285714;
    letter-spacing: 0.05em;
    margin-bottom: 1.5em;
  }
}
section#sec04 div.w819 div.flex figure {
  flex: 0 0 47.619%;
}
section#sec04 div.w819 div.well {
  background: #F0F0F0;
  padding-bottom: 1.5em;
}
section#sec04 div.w819 div.well h3 {
  font-size: 20px;
  line-height: 1;
  letter-spacing: 0.1em;
  margin-bottom: 1em;
}
@media screen and (max-width: 767px) {
  section#sec04 div.w819 div.well h3 {
    font-size: 16px;
  }
}
section#sec04 div.w819 div.well ul.normalList li {
  font-size: 14px;
  line-height: 2.071428571428571;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec04 div.w819 div.well ul.normalList li {
    font-size: 13px;
  }
}

/*============================
#sec05
============================*/
section#sec05 {
  background: #F7F5E5;
  padding: 86px 30px 143px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  section#sec05 {
    padding: 43px 26px 70px;
  }
}
section#sec05 div.w819 .well {
  background: #fff;
  max-width: 960px;
  margin: 0 auto;
  padding: 32px 30px 42px;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well {
    padding: 22px 26px 22px;
  }
}
section#sec05 div.w819 .well h3 {
  font-size: 28px;
  line-height: 1.714285714285714;
  letter-spacing: 0.15em;
  margin-bottom: 31px;
  margin-bottom: 1.1em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well h3 {
    font-size: calc(28px * 0.7);
    font-size: 5vw;
  }
}
section#sec05 div.w819 .well:nth-of-type(1) {
  margin-bottom: 41px;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(1) {
    margin-bottom: 20px;
  }
}
section#sec05 div.w819 .well:nth-of-type(1) a.btn {
  background-color: #B29701;
  font-size: 26px;
  line-height: 1.615384615384615;
  letter-spacing: 0.05em;
  width: 100%;
  max-width: 500px;
  padding: 29px 0;
  margin-bottom: 27px;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(1) a.btn {
    font-size: 3.7vw;
    margin-bottom: 15px;
  }
}
section#sec05 div.w819 .well:nth-of-type(1) a.btn:hover {
  opacity: 0.75;
}
section#sec05 div.w819 .well:nth-of-type(1) p {
  font-size: 15px;
  line-height: 2.133333333333333;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(1) p {
    font-size: calc(15px * 0.86);
    text-align: left;
    text-indent: -1em;
    margin-left: 1em;
  }
}
section#sec05 div.w819 .well:nth-of-type(2) h3 {
  margin-bottom: 19px;
  margin-bottom: 0.6785em;
}
section#sec05 div.w819 .well:nth-of-type(2) p {
  font-size: 15px;
  line-height: 2.4;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(2) p {
    font-size: calc(15px * 0.86);
    text-align: left;
  }
}
section#sec05 div.w819 .well:nth-of-type(2) dl {
  padding-top: 29px;
}
section#sec05 div.w819 .well:nth-of-type(2) dl dt {
  font-size: 17px;
  line-height: 1.764705882352941;
  letter-spacing: 0.05em;
  margin-bottom: 7px;
  margin-bottom: 0.41em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(2) dl dt {
    font-size: calc(17px * 0.86);
  }
}
section#sec05 div.w819 .well:nth-of-type(2) dl dd strong.tel {
  font-size: 26px;
  line-height: 1.153846153846154;
  letter-spacing: 0.05em;
  display: block;
  color: #B29701;
  margin-bottom: 17px;
  margin-bottom: 0.65em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(2) dl dd strong.tel {
    font-size: calc(26px * 0.86);
  }
}
section#sec05 div.w819 .well:nth-of-type(2) dl dd p {
  font-size: 15px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  section#sec05 div.w819 .well:nth-of-type(2) dl dd p {
    font-size: calc(15px * 0.86);
  }
}

/*============================
#sec05
============================*/
