@charset "UTF-8";
/*-------------------------------------
共通部分のスタイル上書き
-------------------------------------*/
@media only screen and (max-width: 767px) {
  .scroll-box {
    overflow-x: auto;
    padding-bottom: 10px;
    -webkit-overflow-scrolling: touch;
  }
  .scroll-box img {
    width: auto;
    height: 420px;
    vertical-align: top;
  }
  /*===========
  scrollbar
  ===========*/
  /*スクロールバー全体の高さ*/
  .scroll-box::-webkit-scrollbar {
    height: 4px;
  }
  /*スクロールバー全体の背景*/
  .scroll-box::-webkit-scrollbar-track {
    background: #eee;
  }
  /*スクロールバーの動く部分*/
  .scroll-box::-webkit-scrollbar-thumb {
    background: #aaa;
    border: none;
  }
  /*スクロールバーの動く部分のホバー（マウスオーバー）*/
  .scroll-box::-webkit-scrollbar-thumb:hover {
    background: #999;
  }
}
/*-------------------------------------
secMainVisual
-------------------------------------*/
.secMainVisualWrap {
  position: relative;
}
.secMainVisualWrap .secMainVisual {
  text-align: center;
  background: #000000;
}
.secMainVisualWrap .secMainVisual img {
  width: 100%;
  height: auto;
}
.secMainVisualWrap .mainVisualButton img {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}

@media only screen and (max-width: 767px) {
  .secMainVisual img {
    padding-top: 60px;
  }
  .mainVisualButton img {
    bottom: 14%;
    width: 70%;
  }
}
@media print, screen and (min-width: 768px) {
  .secMainVisual img {
    padding-top: 73.49px;
  }
  .mainVisualButton img {
    bottom: 170px;
  }
}
/*-------------------------------------
secInfo
-------------------------------------*/
.secInfo .secInfoIn .infoList .infoTextArea .infoCaptionJp {
  line-height: 150%;
}
.secInfo .secInfoIn .infoList .infoTextArea .infoDetail {
  display: flex;
  align-items: center;
  line-height: 200%;
}
@media only screen and (max-width: 767px) {
  .secInfo .secInfoIn {
    padding-top: 70px;
    padding-bottom: 0px;
  }
  .secInfo .secInfoIn .infoList {
    padding-bottom: 80px;
    display: flex;
    flex-direction: column-reverse;
  }
  .secInfo .secInfoIn .infoList .infoTextArea {
    padding-bottom: 25px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoCaptionEn {
    font-size: 14px;
    padding-bottom: 10px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoCaptionJp {
    font-size: 28px;
    padding-bottom: 15px;
    text-align: center;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail {
    font-size: 16px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail .infoDetailText {
    padding-left: 10px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail {
    padding-bottom: 30px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoPoint {
    line-height: 23px;
  }
}
@media print, screen and (min-width: 768px) {
  .secInfo .secInfoIn {
    padding-top: 150px;
    padding-bottom: 30px;
  }
  .secInfo .secInfoIn .infoList {
    padding-bottom: 120px;
    display: flex;
    justify-content: space-between;
  }
  .secInfo .secInfoIn .infoList .infoTextArea {
    width: 50%;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoCaptionEn {
    font-size: 18px;
    padding-bottom: 10px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoCaptionJp {
    font-size: 45px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail {
    font-size: 18px;
    padding-top: 40px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail .infoDetailText {
    font-size: 23px;
    padding-left: 20px;
  }
  .secInfo .secInfoIn .infoList .infoTextArea .infoDetail .infoDetailText:first-child {
    padding-bottom: 50px;
  }
  .secInfo .secInfoIn .infoList .infoPhotoArea {
    width: 50%;
  }
  .secInfo .secInfoIn .infoList.reverse {
    flex-direction: row-reverse;
  }
  .secInfo .secInfoIn .infoList.reverse .infoTextArea {
    padding-left: 60px;
  }
}
/*-------------------------------------
secAbout
-------------------------------------*/
.secAbout {
  background: #000000;
  color: #ffffff;
}
.secAbout .secAboutIn .aboutTitle {
  text-align: center;
}
.secAbout .secAboutIn .aboutText span {
  color: #FAE80E;
}

@media only screen and (max-width: 767px) {
  .secAbout {
    padding: 50px 0;
    font-size: 25px;
    line-height: 48px;
  }
  .secAbout .aboutText {
    padding: 50px 0;
  }
  .secAbout .logoArea {
    text-align: center;
  }
  .secAbout .logoArea img {
    width: 128px;
    height: 44px;
  }
}
@media print, screen and (min-width: 768px) {
  .secAbout .secAboutIn {
    padding: 100px 0 50px;
    max-width: 1000px;
    margin: 0 auto;
  }
  .secAbout .secAboutIn .aboutText {
    font-size: 35px;
    padding: 50px 0px 100px;
    line-height: 76px;
  }
  .secAbout .secAboutIn .logoArea {
    padding-bottom: 100px;
  }
}
/*-------------------------------------
secCanDo
-------------------------------------*/
.secCanDo {
  background: #ffffff;
  color: #ffffff;
}
.secCanDo .secCanDoIn .canDoTitle {
  text-align: center;
}
.secCanDo .secCanDoIn .canDoArea .canDoList {
  display: inline-grid;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .secCanDo .secCanDoIn {
    padding-bottom: 90px;
  }
  .secCanDo .secCanDoIn .canDoTitle {
    padding: 80px 0 60px;
  }
  .secCanDo .secCanDoIn .canDoTitle img {
    width: 100%;
    max-width: 349.401px;
    height: auto;
  }
  .secCanDo .secCanDoIn .canDoArea .canDoList {
    padding: 10px 0;
  }
  .secCanDo .secCanDoIn .formLinkBtn {
    text-align: center;
    margin-top: 60px;
  }
}
@media print, screen and (min-width: 768px) {
  .secCanDo .secCanDoIn {
    padding: 100px 0;
  }
  .secCanDo .secCanDoIn .canDoTitle {
    padding-bottom: 50px;
  }
  .secCanDo .secCanDoIn .canDoArea {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
  }
  .secCanDo .secCanDoIn .canDoArea .canDoList {
    padding: 20px;
  }
  .secCanDo .secCanDoIn .canDoArea .canDoList .canDoListTitle {
    font-size: 30px;
    padding: 10px 0 10px;
  }
  .secCanDo .secCanDoIn .canDoArea .canDoList .canDoDetail {
    line-height: 27px;
    font-size: 16px;
  }
  .secCanDo .secCanDoIn .formLinkBtn {
    text-align: center;
    margin-top: 60px;
  }
}
/*-------------------------------------
secComparison
-------------------------------------*/
.secComparison {
  background: #ffffff;
  color: #000000;
}
.secComparison .secComparisonIn {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .secComparison .secComparisonIn {
    padding-bottom: 80px;
  }
  .secComparison .secComparisonIn .comparisonTitle {
    padding: 80px 0 60px;
  }
  .secComparison .secComparisonIn .comparisonTitle img {
    width: 90%;
    max-width: 231.036px;
    height: auto;
  }
}
@media print, screen and (min-width: 768px) {
  .secComparison .secComparisonIn {
    padding: 100px 0 150px;
  }
  .secComparison .secComparisonIn .comparisonTitle {
    padding-bottom: 50px;
  }
}
/*-------------------------------------
secSimulation
-------------------------------------*/
.secSimulation {
  color: #ffffff;
  background-image: url(../images/simulation_bgi@2x.jpg);
  background-image: image-set(url(../images/simulation_bgi@2x.jpg) 1x, url(../images/simulation_bgi@3x.jpg) 2x);
  background-image: -webkit-image-set(url(../images/simulation_bgi@2x.jpg) 1x, url(../images/simulation_bgi@3x.jpg) 2x);
  background-size: cover;
  background-position: 50%;
}
.secSimulation .secSimulationIn {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .secSimulation .secSimulationIn {
    padding: 150px 0;
  }
  .secSimulation .secSimulationIn .simulationImg:first-child {
    padding-bottom: 50px;
  }
}
@media print, screen and (min-width: 768px) {
  .secSimulation .secSimulationIn {
    padding: 200px 0;
  }
  .secSimulation .secSimulationIn .simulationImg:first-child {
    padding-bottom: 20px;
  }
}
/*-------------------------------------
secSchedule
-------------------------------------*/
.secSchedule {
  color: #000000;
  background: #ffffff;
}
.secSchedule .secScheduleIn {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .secSchedule .secScheduleIn {
    padding-bottom: 80px;
  }
  .secSchedule .secScheduleIn .scheduleTitle {
    padding: 80px 0 0px;
  }
  .secSchedule .secScheduleIn .scheduleTitle img {
    width: 90%;
    height: auto;
  }
  .secSchedule .secScheduleIn .scheduleText {
    font-size: 22px;
    padding: 25px 0;
  }
  .secSchedule .secScheduleIn .scheduleArea .scrollImg {
    text-align: left;
  }
  .secSchedule .secScheduleIn .scheduleArea .scheduleList {
    font-size: 22px;
    padding: 25px 0;
  }
  .secSchedule .secScheduleIn .scheduleArea p {
    font-size: 18px;
    text-align: left;
    padding: 30px 0;
    width: 90%;
    margin: 0 auto;
  }
  .secSchedule .secScheduleIn .scheduleTextSub {
    font-size: 20px;
    line-height: 44px;
    border-top: 1px solid #101010;
    border-bottom: 1px solid #101010;
    padding: 60px 0;
    margin: 100px 0 80px;
    text-align: left;
  }
}
@media print, screen and (min-width: 768px) {
  .secSchedule .secScheduleIn {
    padding: 100px 0;
  }
  .secSchedule .secScheduleIn .scheduleText {
    font-size: 32px;
    padding: 25px 0;
  }
  .secSchedule .secScheduleIn .scheduleArea p {
    font-size: 24px;
    text-align: right;
  }
  .secSchedule .secScheduleIn .scheduleTextSub {
    font-size: 45px;
    line-height: 80px;
    text-align: left;
    padding-top: 100px;
  }
}
/*-------------------------------------
secContact
-------------------------------------*/
.secContact {
  background: #000000;
  color: #ffffff;
}
.secContact .secContactIn .contactInfoArea .timeArea .timeList {
  display: flex;
  border-bottom: solid 1px #ffffff;
  justify-content: space-between;
}
.secContact .secContactIn .contactInfoArea .timeArea .timeList:last-of-type {
  border-bottom: none;
}
.secContact .secContactIn .contactInfoArea .telColor {
  color: #fff;
}
.secContact .secContactIn .formArea .formList .formInput {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
.secContact .secContactIn .formArea .formList .formInput .wpcf7-form-control-wrap {
  width: 100%;
}
.secContact .secContactIn .formArea .formList .formInput .inputHalf {
  width: 48.4%;
}
.secContact .secContactIn .formArea .submitArea {
  text-align: center;
}
.secContact .secContactIn .formArea input[type=text],
.secContact .secContactIn .formArea input[type=tel],
.secContact .secContactIn .formArea input[type=number],
.secContact .secContactIn .formArea input[type=email],
.secContact .secContactIn .formArea input[type=date],
.secContact .secContactIn .formArea select,
.secContact .secContactIn .formArea textarea {
  background: #ffffff;
  border-radius: 0;
  width: 100%;
  min-height: 38px;
  line-height: 150%;
  padding: 5px 10px 5px 15px;
  color: #000000;
}
.secContact .secContactIn .formArea textarea {
  height: 150px;
}
.secContact .secContactIn .formArea input.date {
  padding-left: 40px;
  background: url(../images/icoDate.svg) left 10px center no-repeat #ffffff;
}
.secContact .secContactIn .formArea select.time {
  padding-left: 40px;
  background: url(../images/icoTime.svg) left 10px center no-repeat #ffffff;
}
.secContact .secContactIn .formArea input[type=radio] {
  position: relative;
}
.secContact .secContactIn .formArea input[type=checkbox] {
  position: relative;
}
.secContact .secContactIn .formArea input[type=submit] {
  width: 180px;
  height: 65px;
  background: linear-gradient(180deg, #113b76 0%, #010710 100%);
  color: #ffffff;
  border-radius: 5px;
  font-size: 30px;
  cursor: pointer;
}
.secContact .secContactIn .formArea .screen-reader-response {
  display: none;
}
.secContact .secContactIn .formArea .wpcf7-not-valid-tip {
  color: #ff5555;
  display: block;
  padding: 5px 0 0 0;
}
.secContact .secContactIn .formArea .wpcf7-response-output {
  color: #ff5555;
  padding: 10px 0 0 0;
  border: none;
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .secContact .secContactIn {
    padding: 80px 0 50px 0;
  }
  .secContact .secContactIn .contactInfoArea .contactTItle {
    font-size: min(7.2vw, 29px);
    padding: 0 0 50px;
    line-height: 200%;
  }
  .secContact .secContactIn .contactInfoArea .contactCaption {
    font-size: min(3.734vw, 14px);
    line-height: 200%;
    padding: 0 0 50px 0;
  }
  .secContact .secContactIn .contactInfoArea .contactDetail .contactTell {
    font-size: min(7.2vw, 24px);
  }
  .secContact .secContactIn .contactInfoArea .contactDetail .contactTime {
    font-size: min(3.734vw, 14px);
    padding-bottom: 50px;
  }
  .secContact .secContactIn .formArea {
    font-size: min(4.267vw, 16px);
    flex-grow: 1;
    padding: 0px 0 0 0;
  }
  .secContact .secContactIn .formArea .formList .formName {
    padding: 0 0 8px 0;
  }
  .secContact .secContactIn .formArea .formList .formInput {
    padding: 0 0 28px 0;
  }
  .secContact .secContactIn .formArea .formList .formInput .wpcf7-list-item label {
    margin-right: 5vw;
    font-size: min(4.33vw, 16px);
  }
  .secContact .secContactIn .formArea .checkAgree {
    font-size: min(3.734vw, 14px);
    padding-bottom: 55px;
  }
  .secContact .secContactIn .formArea input[type=radio] {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    top: 3px;
  }
  .secContact .secContactIn .formArea input[type=checkbox] {
    width: 16px;
    height: 16px;
    margin-right: 10px;
    top: 2px;
  }
  .secContact .secContactIn .formArea .wpcf7-not-valid-tip {
    font-size: 16px;
  }
  .secContact .secContactIn .formArea .wpcf7-spinner {
    display: block;
    margin: 10px auto 0 auto;
  }
}
@media print, screen and (min-width: 768px) {
  .secContact .secContactIn {
    display: flex;
    padding: 120px 0 100px 0;
  }
  .secContact .secContactIn .contactInfoArea {
    min-width: 54.55%;
    max-width: 54.55%;
  }
  .secContact .secContactIn .contactInfoArea .contactTItle {
    font-size: 50px;
    padding: 0 0 30px 0;
  }
  .secContact .secContactIn .contactInfoArea .contactCaption {
    font-size: 26px;
    line-height: 190%;
    padding: 0 0 150px 0;
  }
  .secContact .secContactIn .contactInfoArea .contactDetail .contactTell {
    font-size: 40px;
  }
  .secContact .secContactIn .contactInfoArea .contactDetail .contactTime {
    font-size: 26px;
  }
  .secContact .secContactIn .contactInfoArea .line {
    padding-top: 185px;
  }
  .secContact .secContactIn .formArea {
    font-size: 18px;
    flex-grow: 1;
    padding: 0px 0 0 0;
  }
  .secContact .secContactIn .formArea .formList .formName {
    padding: 0 0 8px 0;
  }
  .secContact .secContactIn .formArea .formList .formInput {
    padding: 0 0 24px 0;
  }
  .secContact .secContactIn .formArea .formList .formInput .wpcf7-list-item label {
    margin-right: 40px;
  }
  .secContact .secContactIn .formArea .formList .formInput.companion .wpcf7-list-item label {
    margin-right: 15px;
  }
  .secContact .secContactIn .formArea .checkAgree {
    padding-bottom: 50px;
  }
  .secContact .secContactIn .formArea input[type=radio] {
    width: 25px;
    height: 25px;
    margin-right: 10px;
    top: 5px;
  }
  .secContact .secContactIn .formArea input[type=checkbox] {
    width: 20px;
    height: 20px;
    margin-right: 10px;
    top: 3px;
  }
  .secContact .secContactIn .formArea .wpcf7-not-valid-tip {
    font-size: 16px;
  }
}
/*-------------------------------------
secfooterCorp
-------------------------------------*/
.secfooterCorp {
  background: #000000;
  color: #ffffff;
}
.secfooterCorp .footerCorpIn {
  border-bottom: 1px solid;
  border-top: 1px solid;
}
@media only screen and (max-width: 767px) {
  .secfooterCorp .footerCorpIn {
    padding: 60px 0;
    text-align: left;
  }
  .secfooterCorp .footerCorpIn .footerCorpLeft .corpImg {
    padding-bottom: 30px;
  }
  .secfooterCorp .footerCorpIn .footerCorpLeft .corpImg img {
    width: 90%;
    height: 100%;
    max-width: 146px;
  }
  .secfooterCorp .footerCorpIn .corpPrice {
    font-size: 14px;
  }
}
@media print, screen and (min-width: 768px) {
  .secfooterCorp {
    padding-bottom: 50px;
  }
  .secfooterCorp .footerCorpIn {
    display: flex;
    border-bottom: 1px solid;
    border-top: 1px solid;
    padding: 70px 0;
  }
  .secfooterCorp .footerCorpIn .footerCorpLeft {
    width: 50%;
    justify-content: start;
  }
  .secfooterCorp .footerCorpIn .footerCorpLeft .corpImg {
    padding-bottom: 50px;
  }
  .secfooterCorp .footerCorpIn .footerCorpRight {
    width: 50%;
    padding-top: 118px;
  }
  .secfooterCorp .footerCorpIn .corpPrice {
    font-size: 18px;
  }
}
/*-------------------------------------
sec
-------------------------------------*//*# sourceMappingURL=style.css.map */