@charset "UTF-8";
@import url("https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700|Noto+Serif+JP:400,700&display=swap");
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul, li {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
  display: block; }

input[type="text"],
input[type="email"],
textarea {
  -webkit-appearance: none;
  border: none;
  font-family: inherit; }

input[type="text"]:focus,
input[type="email"]:focus {
  outline: 0; }

input[type="submit"],
input[type="button"],
button {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  background-color: transparent;
  padding: 0; }
  input[type="submit"]::-webkit-search-decoration,
  input[type="button"]::-webkit-search-decoration,
  button::-webkit-search-decoration {
    display: none; }
  input[type="submit"]:focus,
  input[type="button"]:focus,
  button:focus {
    outline-offset: -2px;
    outline: 0; }

textarea {
  overflow: auto;
  resize: vertical; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: inherit; }

select::-ms-expand {
  display: none; }

::placeholder {
  color: #999; }

/* IE */
:-ms-input-placeholder {
  color: #999; }

/* Edge */
::-ms-input-placeholder {
  color: #999; }

*,
*:before,
*:after {
  box-sizing: border-box; }

a,
button {
  text-decoration: none;
  transition: opacity .4s ease;
  color: #333; }
  a:hover,
  button:hover {
    opacity: .5; }
    @media screen and (max-width: 768px) {
      a:hover,
      button:hover {
        opacity: 1; } }

img {
  max-width: 100%;
  height: auto; }
  @media screen and (max-width: 768px) {
    img {
      width: 100%; } }

table {
  width: 100%; }

p {
  line-height: 1.5; }

html {
  font-size: 62.5%;
  font-family: 'Noto Sans JP', sans-serif; }

body {
  -webkit-text-size-adjust: 100%;
  overflow: auto;
  color: #333;
  font-size: 1.7rem;
  min-width: 1000px; }
  @media screen and (max-width: 768px) {
    body {
      min-width: auto;
      font-size: 1.4rem; } }

footer {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  background-repeat: no-repeat;
  position: relative;
  background-image: url(../img/bg_ttl.png); }
  @media screen and (min-width: 769px) {
    footer {
      height: 125px;
      padding-top: 5px;
      background-size: 100%; } }
  @media screen and (max-width: 768px) {
    footer {
      padding: 20px 0;
      background-size: cover; } }
  footer:before {
    content: '';
    width: 100%;
    height: 5px;
    background-image: url(../img/border.png);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0; }
    @media screen and (max-width: 768px) {
      footer:before {
        height: 3px;
        background-size: cover; } }
  footer .list {
    display: flex;
    justify-content: center;
    align-items: center; }
    @media screen and (min-width: 769px) {
      footer .list {
        padding-bottom: 20px; } }
    @media screen and (max-width: 768px) {
      footer .list {
        flex-direction: column; } }
    @media screen and (max-width: 768px) {
      footer .list .item {
        padding-bottom: 10px; } }
    @media screen and (min-width: 769px) {
      footer .list .item:nth-of-type(1) {
        padding-right: 10px;
        margin-right: 10px;
        border-right: solid 1px #fff; } }
    footer .list .item a {
      font-size: 1.4rem;
      color: #fff; }
      @media screen and (max-width: 768px) {
        footer .list .item a {
          font-size: 1.2rem; } }
  footer .copyright {
    font-size: 1.4rem;
    color: #fff;
    text-align: center; }
    @media screen and (max-width: 768px) {
      footer .copyright {
        font-size: 1.2rem; } }

.wrap {
  width: 950px;
  margin: 0 auto; }
  @media screen and (max-width: 768px) {
    .wrap {
      width: 96%; } }

.box_shadow {
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
  background-color: #fff;
  padding: 35px; }
  @media screen and (max-width: 768px) {
    .box_shadow {
      padding: 20px 5%; } }

.btn_box {
  width: 100%;
  background: url(../img/bg_btn.png) no-repeat;
  background-size: cover;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center; }
  @media screen and (min-width: 769px) {
    .btn_box {
      height: 140px;
      padding-top: 10px; } }
  @media screen and (max-width: 768px) {
    .btn_box {
      padding: 15px 0; } }
  .btn_box:before {
    content: '';
    width: 100%;
    height: 5px;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../img/border_btn.png) no-repeat center;
    background-size: cover; }
    @media screen and (max-width: 768px) {
      .btn_box:before {
        height: 3px; } }
  @media screen and (max-width: 768px) {
    .btn_box a {
      width: 96%; } }
  @media screen and (max-width: 768px) {
    .btn_box a img {
      width: 100%;
      height: auto; } }

.font_min {
  font-family: 'Noto Serif JP', serif; }

.txt {
  padding-bottom: 30px; }
  @media screen and (max-width: 768px) {
    .txt {
      padding-bottom: 20px; } }

.txt_bold {
  font-weight: bold; }

.txt_line {
  background: linear-gradient(transparent 50%, #f9f2a5 0%); }

.txt_underline {
  text-decoration: underline; }

.txt_red {
  color: #a13165; }

.cf {
  overflow: hidden; }
  @media screen and (max-width: 768px) {
    .cf {
      display: flex;
      justify-content: center;
      flex-direction: column; } }

.f_left {
  float: left; }

.f_right {
  float: right; }

.sec_ttl,
.sec_ttl02,
.sec_ttl03 {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  padding-top: 5px;
  margin-bottom: 35px; }
  @media screen and (min-width: 769px) {
    .sec_ttl,
    .sec_ttl02,
    .sec_ttl03 {
      height: 125px; } }
  @media screen and (max-width: 768px) {
    .sec_ttl,
    .sec_ttl02,
    .sec_ttl03 {
      padding: 15px 0; } }
  .sec_ttl.sec_ttl,
  .sec_ttl02.sec_ttl,
  .sec_ttl03.sec_ttl {
    background-image: url(../img/bg_ttl.png);
    color: #fff; }
    .sec_ttl.sec_ttl:before,
    .sec_ttl02.sec_ttl:before,
    .sec_ttl03.sec_ttl:before {
      background-image: url(../img/border.png); }
  .sec_ttl.sec_ttl02,
  .sec_ttl02.sec_ttl02,
  .sec_ttl03.sec_ttl02 {
    background-image: url(../img/bg_ttl_02.png);
    color: #f6f685; }
    .sec_ttl.sec_ttl02:before,
    .sec_ttl02.sec_ttl02:before,
    .sec_ttl03.sec_ttl02:before {
      background-image: url(../img/border_02.png); }
  .sec_ttl.sec_ttl03,
  .sec_ttl02.sec_ttl03,
  .sec_ttl03.sec_ttl03 {
    background-image: url(../img/bg_ttl.png);
    color: #fff; }
    .sec_ttl.sec_ttl03:before,
    .sec_ttl02.sec_ttl03:before,
    .sec_ttl03.sec_ttl03:before {
      background-image: url(../img/border_btn.png); }
  .sec_ttl:before,
  .sec_ttl02:before,
  .sec_ttl03:before {
    content: '';
    width: 100%;
    height: 5px;
    background-repeat: no-repeat;
    background-size: 100%;
    position: absolute;
    top: 0;
    left: 0; }
    @media screen and (max-width: 768px) {
      .sec_ttl:before,
      .sec_ttl02:before,
      .sec_ttl03:before {
        background-size: cover; } }
  .sec_ttl .caption,
  .sec_ttl02 .caption,
  .sec_ttl03 .caption {
    font-size: 3.6rem;
    line-height: inherit;
    padding-bottom: 10px; }
    @media screen and (max-width: 768px) {
      .sec_ttl .caption,
      .sec_ttl02 .caption,
      .sec_ttl03 .caption {
        font-size: 1.4rem; } }
  .sec_ttl h2,
  .sec_ttl02 h2,
  .sec_ttl03 h2 {
    font-size: 4.8rem; }
    @media screen and (max-width: 768px) {
      .sec_ttl h2,
      .sec_ttl02 h2,
      .sec_ttl03 h2 {
        font-size: 2rem; } }

#mv img {
  width: 100%;
  height: auto; }

#sec01 {
  background-color: #fcf6fa;
  padding: 22px 0 50px; }
  #sec01 section:not(:nth-last-of-type(1)) {
    padding-bottom: 70px; }
    @media screen and (max-width: 768px) {
      #sec01 section:not(:nth-last-of-type(1)) {
        padding-bottom: 35px; } }
  #sec01 .ttl {
    font-size: 3.6rem;
    color: #3b0d8d;
    padding-bottom: 50px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      #sec01 .ttl {
        font-size: 2rem;
        line-height: 1.4;
        padding-bottom: 20px; } }
  #sec01 .img_01 {
    margin-bottom: 35px; }
    @media screen and (min-width: 769px) {
      #sec01 .img_01 {
        margin-right: 23px; } }
  @media screen and (min-width: 769px) {
    #sec01 .img_02 {
      margin-left: 30px; } }
  @media screen and (max-width: 768px) {
    #sec01 .img_02 {
      text-align: center; } }
  #sec01 .img_02 + .txt_box {
    margin-top: 30px; }
  @media screen and (max-width: 768px) {
    #sec01 .img_02 img {
      width: 60%;
      height: auto; } }

#sec02 {
  background-color: #eff8fd;
  padding-bottom: 36px; }
  #sec02 section {
    position: relative;
    padding-top: 72px; }
    #sec02 section:not(:nth-last-of-type(1)) {
      margin-bottom: 36px; }
    #sec02 section:before {
      content: '';
      width: 136px;
      height: 20px;
      background: url(../img/img_frame.png) no-repeat;
      position: absolute;
      top: 23px;
      left: 50%;
      transform: translateX(-50%); }
    #sec02 section .ttl {
      display: flex;
      align-items: flex-start; }
      @media screen and (max-width: 768px) {
        #sec02 section .ttl {
          flex-direction: column;
          padding-bottom: 20px; } }
      @media screen and (max-width: 768px) {
        #sec02 section .ttl .img_no {
          width: 35%;
          height: auto;
          margin: 0 auto 10px; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_1 .f_left {
      width: 320px; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_1 .f_right {
      padding-top: 20px;
      width: 513px; } }
  @media screen and (max-width: 768px) {
    #sec02 .sec02_1 .f_right {
      padding-bottom: 10px; } }
  #sec02 .sec02_1 .img_02 {
    text-align: center; }
    @media screen and (max-width: 768px) {
      #sec02 .sec02_1 .img_02 {
        padding-bottom: 20px; } }
    #sec02 .sec02_1 .img_02 img {
      margin-bottom: 18px; }
      @media screen and (max-width: 768px) {
        #sec02 .sec02_1 .img_02 img {
          margin-bottom: 5px;
          width: 50%;
          height: auto; } }
    #sec02 .sec02_1 .img_02 .caption {
      font-size: 1.6rem;
      color: #3d197d; }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_2 .cf {
      padding: 0 10px; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_2 .box_01 {
      margin-top: -20px;
      position: relative;
      z-index: 1; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_2 .txt_box {
      width: 502px; } }
  #sec02 .sec02_2 .img_01 {
    text-align: center; }
    @media screen and (max-width: 768px) {
      #sec02 .sec02_2 .img_01 {
        padding-bottom: 20px; } }
    #sec02 .sec02_2 .img_01 .caption {
      font-size: 1.6rem;
      color: #3d197d; }
    @media screen and (max-width: 768px) {
      #sec02 .sec02_2 .img_01 img {
        width: 80%; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_3 .f_left {
      width: 43%; } }
  @media screen and (max-width: 768px) {
    #sec02 .sec02_3 .f_left {
      width: 100%; } }
  @media screen and (min-width: 769px) {
    #sec02 .sec02_3 .f_right {
      margin-left: 54px;
      text-align: center; } }
  @media screen and (max-width: 768px) {
    #sec02 .sec02_3 .f_right {
      padding-bottom: 20px; } }
  #sec02 .sec02_3 .f_right .img_01 {
    margin-bottom: 23px; }
  #sec02 .sec02_3 .f_right .img_02 {
    margin-bottom: 21px; }
    @media screen and (max-width: 768px) {
      #sec02 .sec02_3 .f_right .img_02 {
        margin-bottom: 10px; } }
  #sec02 .sec02_3 .f_right .caption {
    font-size: 1.6rem; }
    @media screen and (max-width: 768px) {
      #sec02 .sec02_3 .f_right .caption {
        font-size: 1.2rem; } }

#sec03 {
  padding: 35px 0 60px; }
  @media screen and (max-width: 768px) {
    #sec03 {
      padding-bottom: 30px; } }
  @media screen and (min-width: 769px) {
    #sec03 .profile_box {
      width: 887px;
      height: 616px;
      padding: 75px 57px 0 65px;
      background: url(../img/bg_profile.png) no-repeat;
      background-size: 100%; } }
  #sec03 .img_box {
    margin-bottom: 40px; }
    @media screen and (min-width: 769px) {
      #sec03 .img_box {
        margin-left: 24px; } }
    @media screen and (max-width: 768px) {
      #sec03 .img_box {
        margin-bottom: 20px;
        text-align: center; } }
    @media screen and (max-width: 768px) {
      #sec03 .img_box img {
        width: 60%;
        height: auto; } }
  #sec03 .name {
    font-size: 4.8rem;
    padding-bottom: 17px;
    color: #2e276d; }
    @media screen and (max-width: 768px) {
      #sec03 .name {
        font-size: 2.8rem;
        padding-bottom: 10px; } }
  #sec03 .caption {
    font-size: 1.8rem;
    font-weight: bold;
    padding-bottom: 30px;
    color: #2e276d; }
    @media screen and (max-width: 768px) {
      #sec03 .caption {
        font-size: 1.4rem; } }
  #sec03 .txt {
    font-size: 1.5rem;
    line-height: 1.8; }
    @media screen and (max-width: 768px) {
      #sec03 .txt {
        font-size: 1.4rem; } }

#sec04 {
  padding-bottom: 67px; }
  @media screen and (max-width: 768px) {
    #sec04 {
      padding-bottom: 30px; } }
  #sec04 .lead {
    padding-bottom: 20px; }
  @media screen and (min-width: 769px) {
    #sec04 .list_box:nth-of-type(odd) {
      background: url(../img/bg_list.png) no-repeat center;
      background-size: 100% auto; } }
  @media screen and (max-width: 768px) {
    #sec04 .list_box .wrap {
      width: 100%; } }
  #sec04 .list_box .list {
    display: flex; }
    @media screen and (max-width: 768px) {
      #sec04 .list_box .list {
        flex-direction: column; } }
    #sec04 .list_box .list .item {
      width: 50%;
      background: url(../img/icon_check.png) no-repeat left;
      padding: 18px 0 18px 43px;
      font-size: 2.0rem; }
      @media screen and (max-width: 768px) {
        #sec04 .list_box .list .item {
          width: 100%;
          background-position: 2% center;
          background-size: 18px;
          font-size: 1.4rem;
          padding: 14px 0 14px 29px; } }
      @media screen and (max-width: 768px) {
        #sec04 .list_box .list .item:nth-of-type(odd) {
          background-color: #eeeefc; } }

#sec05 {
  background: url(../img/bg_voice.png) no-repeat top center;
  background-size: cover;
  padding-bottom: 74px; }
  @media screen and (max-width: 768px) {
    #sec05 {
      padding-bottom: 35px; } }
  @media screen and (min-width: 769px) {
    #sec05 section {
      padding: 28px 25px 20px; } }
  #sec05 section:not(:nth-last-of-type(1)) {
    margin-bottom: 23px; }
  #sec05 .ttl_box {
    border-bottom: dotted 2px #ccc;
    padding-bottom: 14px;
    margin-bottom: 23px; }
    #sec05 .ttl_box .ttl {
      font-size: 3.2rem;
      color: #a13165;
      padding-bottom: 23px; }
      @media screen and (max-width: 768px) {
        #sec05 .ttl_box .ttl {
          font-size: 2.0rem;
          line-height: 1.5;
          padding-bottom: 15px; } }
    #sec05 .ttl_box .name {
      font-size: 1.8rem;
      text-align: right; }
      @media screen and (max-width: 768px) {
        #sec05 .ttl_box .name {
          font-size: 1.4rem; } }
  #sec05 .img_box {
    margin-bottom: 30px; }
    @media screen and (min-width: 769px) {
      #sec05 .img_box {
        margin-left: 14px; } }
    @media screen and (max-width: 768px) {
      #sec05 .img_box {
        text-align: center;
        margin-bottom: 10px; } }
    @media screen and (max-width: 768px) {
      #sec05 .img_box img {
        width: 60%;
        height: auto; } }
  @media screen and (min-width: 769px) {
    #sec05 .txt {
      font-size: 1.5rem; } }

#sec06 {
  padding: 82px 0 40px;
  position: relative; }
  @media screen and (max-width: 768px) {
    #sec06 {
      padding: 60px 0 20px; } }
  #sec06:before {
    content: '';
    width: 136px;
    height: 20px;
    background: url(../img/img_frame.png) no-repeat;
    background-size: 100%;
    position: absolute;
    top: 43px;
    left: 50%;
    transform: translateX(-50%); }
    @media screen and (max-width: 768px) {
      #sec06:before {
        top: 20px; } }
  #sec06 .ttl {
    padding-bottom: 35px;
    text-align: center; }
  @media screen and (min-width: 769px) {
    #sec06 .img_box {
      margin-right: 59px;
      margin-left: 14px; } }
  @media screen and (max-width: 768px) {
    #sec06 .img_box {
      text-align: center;
      padding-bottom: 20px; } }
  @media screen and (max-width: 768px) {
    #sec06 .img_box img {
      width: 60%;
      height: auto; } }
  #sec06 .txt_box {
    font-size: 1.8rem; }
    @media screen and (min-width: 769px) {
      #sec06 .txt_box {
        padding-left: 17px; } }
    @media screen and (max-width: 768px) {
      #sec06 .txt_box {
        font-size: 1.4rem; } }
    #sec06 .txt_box .right {
      text-align: right; }
    #sec06 .txt_box .name {
      font-size: 2.4rem; }
      @media screen and (min-width: 769px) {
        #sec06 .txt_box .name {
          padding-right: 17px; } }
      @media screen and (max-width: 768px) {
        #sec06 .txt_box .name {
          font-size: 2.0rem; } }

#sec07 {
  background: url(../img/bg_seat_01.png) no-repeat center;
  background-size: 100%;
  padding-bottom: 60px; }
  @media screen and (max-width: 768px) {
    #sec07 {
      padding-bottom: 30px; } }
  #sec07 .wrap {
    position: relative;
    background: url(../img/bg_seat_top.png) no-repeat top;
    background-size: 100% auto;
    padding: 65px 0 60px; }
    @media screen and (min-width: 769px) {
      #sec07 .wrap {
        width: 944px; } }
    @media screen and (max-width: 768px) {
      #sec07 .wrap {
        padding: 7vw 0 5vw; } }
    #sec07 .wrap:before {
      content: '';
      width: 100%;
      height: 100%;
      display: block;
      background: url(../img/bg_seat_bottom.png) no-repeat bottom;
      background-size: 100% auto;
      position: absolute;
      top: 0;
      left: 0; }
    #sec07 .wrap .caption {
      font-size: 4.1rem;
      color: #3d197d;
      padding-bottom: 26px;
      text-align: center; }
      @media screen and (min-width: 769px) {
        #sec07 .wrap .caption {
          letter-spacing: -4px; } }
      @media screen and (max-width: 768px) {
        #sec07 .wrap .caption {
          font-size: 2.2rem; } }
    #sec07 .wrap .cf {
      position: relative;
      z-index: 1; }
      @media screen and (min-width: 769px) {
        #sec07 .wrap .cf {
          padding-right: 20px; } }
      @media screen and (max-width: 768px) {
        #sec07 .wrap .cf .img_box {
          text-align: center; } }
      @media screen and (max-width: 768px) {
        #sec07 .wrap .cf .img_box img {
          width: 60%;
          height: auto; } }
      @media screen and (min-width: 769px) {
        #sec07 .wrap .cf .txt_box {
          width: 541px; } }
      @media screen and (max-width: 768px) {
        #sec07 .wrap .cf .txt_box {
          padding: 0 5%; } }
      #sec07 .wrap .cf .ttl {
        font-size: 6.2rem;
        color: #b4258f;
        padding-bottom: 41px;
        text-align: center; }
        @media screen and (max-width: 768px) {
          #sec07 .wrap .cf .ttl {
            font-size: 3rem;
            padding-bottom: 20px; } }

#sec08 {
  padding-bottom: 40px; }
  #sec08 .sec_ttl03 {
    margin-bottom: 0; }
  #sec08 .img_list {
    display: flex;
    margin-bottom: 40px; }
    @media screen and (max-width: 768px) {
      #sec08 .img_list {
        margin-bottom: 20px; } }
    #sec08 .img_list .item {
      flex: 1; }
      #sec08 .img_list .item img {
        width: 100%;
        height: auto; }
  #sec08 .lead {
    padding-bottom: 40px; }
  #sec08 section .ttl {
    font-size: 3.6rem;
    color: #3d197d;
    padding-bottom: 70px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      #sec08 section .ttl {
        font-size: 2.5rem;
        padding-bottom: 20px; } }
  #sec08 section .center {
    text-align: center; }
  #sec08 section .txt24 {
    font-size: 2.4rem; }
    @media screen and (max-width: 768px) {
      #sec08 section .txt24 {
        font-size: 2rem; } }
  #sec08 section .txt30 {
    font-size: 3.0rem;
    font-weight: bold;
    padding-bottom: 70px; }
    @media screen and (max-width: 768px) {
      #sec08 section .txt30 {
        font-size: 2.5rem;
        padding-bottom: 40px; } }
  #sec08 section .price {
    font-size: 3.6rem;
    color: #c90b98; }

#sec09 {
  padding: 47px 0 36px;
  background-color: #fcf6fa; }
  #sec09 .wrap {
    padding-top: 70px;
    position: relative; }
    #sec09 .wrap:before {
      content: '';
      width: 136px;
      height: 20px;
      background: url(../img/img_frame.png) no-repeat;
      background-size: 100%;
      position: absolute;
      top: 29px;
      left: 50%;
      transform: translateX(-50%); }
  #sec09 .ttl {
    padding-bottom: 33px;
    text-align: center; }
  #sec09 .img_box {
    margin-bottom: 145px; }
    @media screen and (min-width: 769px) {
      #sec09 .img_box {
        margin-right: 40px; } }
    @media screen and (max-width: 768px) {
      #sec09 .img_box {
        margin-bottom: 20px;
        text-align: center; } }
    @media screen and (max-width: 768px) {
      #sec09 .img_box img {
        width: 60%;
        height: auto; } }

#sec10 {
  background: url(../img/bg_form.png) no-repeat top;
  background-size: cover;
  padding-bottom: 90px; }
  @media screen and (max-width: 768px) {
    #sec10 {
      padding-bottom: 45px; } }
  #sec10 .box_shadow {
    padding: 35px 23px; }
  #sec10 .lead {
    padding-bottom: 0; }
  #sec10 .small {
    font-size: 1.4rem; }
  #sec10 #mail {
    margin-bottom: 10px; }
  #sec10 .privacy {
    font-size: 1.8rem;
    line-height: 1.8;
    padding-bottom: 55px; }
    @media screen and (max-width: 768px) {
      #sec10 .privacy {
        font-size: 1.4rem;
        padding-bottom: 25px; } }
  #sec10 .access .ttl {
    font-size: 1.8rem;
    font-weight: bold;
    color: #b4258f;
    padding-bottom: 20px; }
    @media screen and (max-width: 768px) {
      #sec10 .access .ttl {
        font-size: 1.6rem; } }
  #sec10 .access .txt {
    font-size: 1.7rem; }
    @media screen and (max-width: 768px) {
      #sec10 .access .txt {
        font-size: 1.4rem; } }
  #sec10 .map {
    position: relative;
    width: 682px;
    height: 356px;
    overflow: hidden;
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      #sec10 .map {
        width: 100%;
        padding-bottom: 52.19%; } }
    #sec10 .map iframe,
    #sec10 .map object,
    #sec10 .map embed {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%; }

.form_area {
  padding: 0 60px 35px; }

.form_area .midashi.ttl_form {
  margin-bottom: 20px;
  border: none; }

.form_area .midashi.ttl_form span {
  font-size: 3.3rem;
  margin: 9px 0 4px;
  line-height: 1.2; }

.form_area .form_txt {
  font-size: 1.6rem;
  line-height: 2.0;
  padding: 0 5px; }

.form_area .form_txt span {
  color: #d6211b;
  font-weight: bold; }

/* --   table  -- */
.form_area table {
  width: 100%;
  max-width: 810px;
  margin: 20px auto 33px;
  border-collapse: separate;
  border-spacing: 0px; }

.form_area table th {
  position: relative;
  color: #333;
  font-weight: bold;
  padding: 20px 0px 20px 5px;
  width: 29%;
  vertical-align: top;
  font-size: 1.8rem;
  border-bottom: #000 dotted 1px;
  letter-spacing: -0.1rem;
  line-height: 1.2em; }

.form_area table th .required {
  position: absolute;
  top: 19px;
  right: 30px;
  color: #FFF;
  background: #b12416;
  font-weight: bold;
  font-size: 1.2rem;
  padding: 0 5px;
  letter-spacing: 0.1rem; }

.form_area table .block_area th .required {
  right: 340px; }

.form_area td {
  color: #333;
  padding: 15px 0 15px 5px;
  line-height: 1.5em;
  letter-spacing: -0.1rem;
  border-bottom: #000 dotted 1px; }

.form_area table tr:first-child td {
  padding-bottom: 5px; }

.form_area table tr:first-child td span.pay_txt {
  color: #d6211b; }

.form_area table .block_area th,
.form_area table .block_area td {
  border-bottom: none !important;
  padding-bottom: 10px; }

.form_area span.cont07_set05 {
  font-size: 1.8rem;
  margin: 0 0.7em 0 0.3em;
  line-height: 1.8; }

.form_area span.cont07_set05.small {
  font-size: 1.5rem;
  margin: 0 30px 0 0.3em;
  line-height: 1.6; }

/* --   form  -- */
input[type="text"] {
  background: none;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

select {
  width: 201px;
  height: 30px;
  padding: 5px 14px;
  font-size: 13.9px;
  font-size: 1.39rem;
  border: none;
  border-radius: 4px;
  outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background: none transparent;
  vertical-align: middle;
  color: inherit;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

select::-ms-expand {
  display: none; }

.select_wrap {
  position: relative;
  width: 205px;
  height: 34px;
  padding: 1px;
  border: 1px solid #d9d9d9;
  border-radius: 4px;
  background: #eeeeee; }

.select_wrap:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  top: 2px;
  bottom: 0;
  right: 8px;
  margin: auto;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: #333 transparent transparent transparent;
  pointer-events: none; }

form textarea,
form input[type="text"],
form input[type="email"] {
  border: 1px solid #333;
  padding: 3px 5px;
  font-size: 1.4rem;
  font-family: 'Noto Sans Japanese',"メイリオ",Meiryo,"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック",Arial,Verdana,sans-serif; }

form input[type="radio"] {
  vertical-align: middle;
  margin: 0 5px 0 0; }

.form_t01 {
  width: 360px;
  height: 32px;
  margin-right: 25px; }

.form_t02 {
  width: 83px;
  height: 32px;
  margin-right: 20px; }

.form_t03 {
  width: 300px;
  height: 32px;
  margin-right: 30px; }

.form_t04 {
  width: 74px;
  height: 32px;
  margin-right: 1.0em; }

.form_t04 + span {
  margin-left: 64px; }

.form_t05 {
  width: 145px;
  height: 32px;
  margin-right: 1.0em; }

.form_t05 + span {
  margin-left: 10px; }

form .af {
  margin-left: 1.0em; }

.form_t06 {
  width: 320px;
  height: 24px;
  margin-right: .5em;
  margin-left: 0; }

.form_area button[type="submit"],
.form_area button[type="button"] {
  background: none;
  border: none;
  text-align: center;
  display: block;
  margin: 0 auto;
  margin-top: 10px;
  cursor: pointer; }

@media screen and (max-width: 768px) {
  .form_area {
    padding: 0;
    margin: 0 0 8%; }

  .form_area .midashi.ttl_form {
    margin-bottom: 3%; }

  .form_area .midashi.ttl_form span {
    font-size: 3.0rem;
    margin: 0 0 2%; }

  .form_area .form_txt {
    font-size: 1.4rem;
    line-height: 1.8;
    padding: 0; }

  .form_area .form_txt span {
    color: #d6211b;
    font-weight: bold; }

  .form_area table {
    margin: 5% auto 8%; }

  .form_area table th {
    display: block;
    width: 100%;
    padding: 5% 0 2%;
    border-bottom: 1px dotted #ccc;
    font-size: 1.4rem; }

  .form_area table th span.required {
    top: 58%;
    right: 3%;
    margin-top: -9px; }

  .form_area table .block_area th {
    padding-bottom: 20px; }

  .form_area table .block_area th .required {
    display: block;
    left: 0;
    right: auto;
    top: auto;
    bottom: -0px; }

  .form_area table td {
    clear: both;
    display: block;
    width: 100%;
    border-bottom: none;
    padding: 10px 0; }

  .form_area table td .small {
    display: block; }

  .form_area table td .small.no_block {
    display: inline; }

  .form_area table span.cont07_set05.small {
    display: inline-block;
    font-size: 1.4rem;
    margin: 0 1em 0 0; }

  .form_area table .form_t04 + span,
  .form_area table .form_t05 + span {
    margin-left: 0; }

  .form_area table .cont07_set td + td {
    padding: 0 0 5px 0; }

  .form_area table .cont07_td01 {
    float: right;
    display: block !important;
    width: 20% !important; }

  .form_area table .cont07_set p.cont07_set03 {
    line-height: 1.4; }

  .form_area table .cont07_set p.cont07_set03 + p.cont07_set03 {
    margin-top: 5px; }

  .form_area span.cont07_set05 {
    font-size: 1.5rem;
    margin: 0 0.7em 0 0.3em;
    line-height: 1.8; }

  .cont07_set table {
    margin: 10px 0 0 0; }

  .form_area table + p.center {
    font-size: 1.5rem; }

  /* --   form  -- */
  .form_t01 {
    box-sizing: border-box;
    width: 100%;
    margin-right: 0; }

  .form_t02 {
    width: 30%; }

  .form_t03 {
    width: 100%;
    margin-right: 0; }

  .form_t04 {
    width: 25%;
    margin-right: 0.5em; }

  form .af {
    margin-left: 0.5em; }

  .form_t05 {
    width: 25%;
    margin-right: 0.5em;
    margin-left: 0.5em; }

  .form_t06 {
    width: 35%;
    margin-right: 0.5em;
    margin-left: 0.5em; } }
/* ----------------------------------------------------------------------------------------------------
*  完了ページ
* --------------------------------------------------------------------------------------------------*/
#thanks {
  background: url(../img/bg_form.png) no-repeat top;
  background-size: cover;
  padding: 100px 0 100px; }

#thanks .inner_box {
  padding: 100px 50px; }

#thanks .midashi {
  border: none; }

#thanks .midashi span {
  font-size: 3.3rem;
  line-height: 1.5;
  margin: 20px 0 10px; }

#thanks .txt {
  margin: 100px auto; }

#thanks .txt p {
  font-size: 2rem;
  line-height: 2.0; }

#thanks .btn a {
  width: 420px;
  margin: 50px auto;
  display: block;
  font-size: 2.8rem;
  line-height: 1.3;
  color: #fff;
  font-weight: bold;
  padding: 18px 0 20px;
  text-align: center;
  border-radius: 5px;
  position: relative;
  top: -5px;
  background: #53b71f; }

@media screen and (max-width: 768px) {
  #thanks {
    padding: 10% 0; }

  #thanks .inner_box {
    padding: 10% 5%; }

  #thanks .midashi {
    margin-bottom: 3%; }

  #thanks .midashi span {
    font-size: 2.5rem;
    margin: 3% 1%;
    display: block;
    line-height: 1.5; }

  #thanks .txt {
    margin: 10% auto; }

  #thanks .txt p {
    font-size: 1.8rem;
    line-height: 1.8; }

  #thanks .btn a {
    width: initial;
    width: 90%;
    padding: 10px 0;
    font-size: 2rem;
    margin: 10% auto; } }
.pc_none {
  display: none; }
  @media screen and (max-width: 768px) {
    .pc_none {
      display: block; } }

@media screen and (max-width: 768px) {
  .sp_none {
    display: none; } }


@media screen and (min-width: 769px) {
  .fixed_btn{
    display: none!important;
  }
}
@media screen and (max-width: 768px) {
  .fixed_btn{
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 100;
    padding: 15px 2% 13px;
  }
}

/* tel */
@media screen and (min-width: 768px) {
a[href^="tel:"] {
	display: inline-block;
	pointer-events: none;
}
}

.tel {
	margin-bottom: 20px;
	text-align: center;
}

/* radio */

.radiowrap label {
	display: inline-block;
	margin-right: 30px;
	line-height: 1;
}

.radiowrap input[type="radio"] {
	display: inline-block;
	margin-top: -3px;
}
