@charset "UTF-8";
/*======================================
common
/*======================================*/
.entry .page-title-CMN p {
  font-size: 110%;
}
/*======================================
Switch
/*======================================*/
.panel {
  display: none;
}
.panel.is_active {
  display: block;
}
/*======================================
tab
/*======================================*/
.tab-area {
  cursor: pointer;
}
.tab-area li {
  position: relative;
  text-align: center;
  width: calc((100% - .5em)/2);
  padding: 1.3em .3em calc(1.3em - .3em);
  font-size: 110%;
  line-height: 1em;
  letter-spacing: 2px;
  opacity: .6;
  transition: all .3s ease;
}
.tab-area li::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 5em;
  left: 0;
  top: 0;
  border-radius: 10px 10px 0 0;
  z-index: -1;
  transition: all .3s ease;
}
.tab-area li:hover::before {
  transform: translateY(-5px);
  opacity: 1;
  transition: all .3s ease;
}
.tab-area li:hover {
  opacity: 1;
  transition: all .3s ease;
}
.tab-area li:nth-of-type(1)::before {
  background: rgba(232, 167, 120, 1);
}
.tab-area li:nth-of-type(2)::before {
  background: rgba(148, 187, 144, 1);
}
.tab-area li.is_active {
  opacity: 1;
}
/*======================================
panel
/*======================================*/
.panel {
  position: relative;
  z-index: 1;
  border: .5em solid;
  border-radius: 0 0 20px 20px;
  padding: 1.5em 1em 0;
  background: #fff;
}
.panel:nth-of-type(1).is_active {
  border-color: rgba(225, 145, 85, .8);
}
.panel:nth-of-type(2).is_active {
  border-color: rgba(120, 170, 115, .8);
}
.panel h2 {
  font-size: 150%;
  letter-spacing: 1px;
  line-height: 1.6em;
  margin: 0 auto;
}
/*======================================
aside
/*======================================*/
.form-CMN aside {
  font-size: 90%;
}
.form-CMN aside li:not(:last-of-type) {
  margin-bottom: .3em;
}
.form-CMN aside li a {
  display: inline;
  text-decoration: underline;
}
/*======================================
form-layout
/*======================================*/
.form-CMN dl {
  padding: 0;
  margin-bottom: 2.5em;
}
.form-CMN dt {
  position: relative;
  flex: 1;
  text-align: left;
  font-size: 100%;
  line-height: 1em;
  margin-bottom: 1em;
  letter-spacing: 2px;
}
.form-CMN dt.required::before {
  content: "必須";
  text-align: center;
  background: rgba(210, 100, 100, 1);
  padding: .3em 1em;
  font-size: 80%;
  vertical-align: .1em;
  line-height: 1em;
  color: #fff;
  margin-right: .5em;
  border-radius: 3px;
}
.form-CMN dd {
  text-align: left;
  width: 100%;
  line-height: 1em;
}
.form-CMN dd:not(:first-of-type) {
  margin-top: .5em;
}
.form-CMN dd span {
  width: 100%;
}
.form-CMN input, .form-CMN input[type="text"]:focus, .form-CMN select, .form-CMN textarea {
  padding: 0 .5em;
  font-size: 16px;
  height: 55px;
  line-height: 1.2em;
}
.form-CMN .select-wrap dd {
  position: relative;
  max-width: 600px;
}
.form-CMN dl.textarea-wrap {
  display: block;
}
.form-CMN dl.textarea-wrap dd {
  max-width: none;
  width: 100%;
  margin-bottom: 0;
}
.form-CMN textarea {
  height: 10em;
  padding: .7em .5em;
  line-height: 1.3em;
}
.form-CMN .schedule-wrap p {
  font-size: 90%
}
.form-CMN .schedule-wrap dl:first-of-type {
  align-items: center;
  margin-bottom: 1em;
}
.form-CMN .schedule-wrap dl:first-of-type dt {
  margin: 1.5em auto;
}
.form-CMN .schedule-wrap dl:first-of-type dd p {
  margin: 0 auto;
}
.form-CMN .schedule-wrap dd {
  position: relative;
}
.form-CMN .schedule-wrap dd:not(:first-of-type) {
  margin-top: 1.5em;
}
.form-CMN .schedule-wrap dd p {
  width: 100%;
  margin-bottom: .5em;
  flex-basis: 100%; /* 最初の要素を1行分に設定 */
  order: -1;
}
.form-CMN .schedule-wrap dd div > span:nth-of-type(1) {
  width: 60%;
  cursor: pointer;
}
.form-CMN .schedule-wrap dd div > span:nth-of-type(2) {
  width: calc(40% - .5em);
  margin-left: .5em;
}
.wpcf7 .acceptance-wrap span.wpcf7-not-valid-tip {
  margin-top: 1em;
}
.wpcf7 .acceptance-wrap span.wpcf7-not-valid-tip::before {
  content: none;
}
span.wpcf7-list-item-label {
  font-family: "DNPShueiMGoStd-B", sans-serif;
}
/*======================================
submit
/*======================================*/
input[type="submit"], button[type="submit"] {
  font-family: "ToppanBunkyuMidashiGothicStdN-ExtraBold", sans-serif;
  font-size: 120%;
  letter-spacing: 1px;
  width: 100%;
  max-width: 350px;
  height: 65px;
  line-height: 65px;
  margin: 2em auto 0;
  border-radius: 100px;
  overflow: hidden;
  color: #fff;
  background: rgba(210, 100, 100, 1);
}
@media screen and (min-width:768px) {
  /*======================================
tab
/*======================================*/
  .tab-area li {
    width: calc((100% - 1em)/2);
    padding: 2em .5em calc(2em - .5em);
    font-size: 140%;
    letter-spacing: 3px;
  }
  .tab-area li:hover::before {
    transform: translateY(-10px);
  }
  /*======================================
panel
/*======================================*/
  .panel {
    border: 1em solid;
    padding: 3em 3em 0;
  }
  .panel h2 {
    font-size: 190%;
    letter-spacing: 5px;
  }
  /*======================================
form-layout
/*======================================*/
  .form-CMN dl {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
  }
  .form-CMN dt {
    font-size: 110%;
    margin-bottom: .5em;
    margin-top: 1.5em;
  }
  .form-CMN dt.required::before {
    padding: .5em 1em;
  }
  .form-CMN dd {
    width: 65%;
  }
  .form-CMN input, .form-CMN input[type="text"]:focus, .form-CMN select, .form-CMN textarea {
    padding: 0 1em;
    font-size: 17px;
    height: 65px;
  }
  .form-CMN .schedule-wrap p {
    font-size: 110%
  }
  .form-CMN dl.textarea-wrap {
    margin-top: 3em;
  }
  .form-CMN dl.textarea-wrap dd {
    margin-top: 1.5em;
  }
  .form-CMN textarea {
    height: 15em;
    padding: 1em;
  }
  .acceptance-wrap {
    font-size: 110%;
  }
  input[type="submit"], button[type="submit"] {
    max-width: 350px;
    height: 80px;
    line-height: 80px;
  }
} /*END query*/
/*======================================
entry page
/*======================================*/
.entry .select-wrap {
  margin-bottom: 1.5em;
}
@media screen and (min-width:768px) {} /*END query*/