@charset "UTF-8";
.breadcrumbs {
  padding-left: 7.3%;
  padding-left: calc(calc(100/1366)*100%); }
  .breadcrumbs ol {
    white-space: nowrap;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    border-top: 1px solid #d6d6d6;
    padding-top: 10px; }
    .breadcrumbs ol li {
      position: relative;
      display: inline; }
      .breadcrumbs ol li a {
        display: inline;
        color: #6f6f6f;
        font-family: 'Noto Sans JP', 'NotoSansJP-Light', sans-serif;
        font-weight: 300;
        font-size: 14px; }
    .breadcrumbs ol li:not(:last-child) {
      padding-right: 16px; }
    .breadcrumbs ol li:not(:last-child)::after {
      content: "";
      position: absolute;
      right: 8px;
      top: 50%;
      width: 6px;
      height: 6px;
      margin-top: -3px;
      border-top: 1px solid #6f6f6f;
      border-right: 1px solid #6f6f6f;
      -webkit-transform: scaleX(0.8) rotate(45deg);
      -ms-transform: scaleX(0.8) rotate(45deg);
      -o-transform: scaleX(0.8) rotate(45deg);
      transform: scaleX(0.8) rotate(45deg); }

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

.pagefv {
  margin-top: 28px;
  padding-left: 7.1%;
  /* padding-left: calc(calc(183/1366)*100%); */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 120px; }
  .pagefv .pagefv__text {
    width: 41%;
    padding: 0 6.3%;
    position: relative; }
    .pagefv .pagefv__text h2 {
      text-align: center;
      margin-bottom: 84px;
      padding-top: 150px; }
    .pagefv .pagefv__text h2.facility__h2 {
      line-height: 1.3;
      margin-bottom: 30px;
      padding-top: 140px; }
    .pagefv .pagefv__text .protection__h2 {
      white-space: nowrap; }
    .pagefv .pagefv__text p {
      padding-left: 6.7%; }
    .pagefv .pagefv__text .pagefv__text__bg {
      position: absolute;
      top: 0;
      left: 50%;
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      transform: translateX(-50%);
      width: 75%;
      z-index: -10; }
  .pagefv .pagefv__img {
    width: 59%;
    padding-left: 25px; }

@media screen and (max-width: 768px) {
  .pagefv {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    padding: 0;
    width: 100%;
    margin-top: 0;
    margin-bottom: 145px; }
    .pagefv .pagefv__text {
      width: 100%;
      padding: 0 6.7%; }
      .pagefv .pagefv__text h2 {
        padding-top: 36px;
        margin-bottom: 40px;
        margin-top: 20px; }
      .pagefv .pagefv__text p {
        padding-left: 0; }
      .pagefv .pagefv__text .pagefv__text__bg {
        top: 20px;
        width: 40%; }
    .pagefv .pagefv__img {
      width: 100%;
      padding: 0; }
  .pagefv.mb95 {
    margin-bottom: 95px; } }

.page__wrapper .wrapper__inner {
  width: 64%;
  width: calc(calc(866/1366)*100%);
  margin: 0 auto 78px; }
  .page__wrapper .wrapper__inner h3 {
    margin-bottom: 30px;
    font-size: 24px; }
  .page__wrapper .wrapper__inner .inner__text {
    border: 1px solid #e1e1e1; }
    .page__wrapper .wrapper__inner .inner__text ul {
      padding: 50px 50px 80px;
      letter-spacing: 0.1em; }
      .page__wrapper .wrapper__inner .inner__text ul li {
        line-height: 1.7;
        font-family: 'Noto Sans JP', 'NotoSansJP-Light', sans-serif;
        font-weight: 300; }
      .page__wrapper .wrapper__inner .inner__text ul li:not(:last-child) {
        margin-bottom: 30px; }
      .page__wrapper .wrapper__inner .inner__text ul li.name {
        font-size: 20px;
        text-align: right;
        font-weight: 400;
        font-family: 'Noto Serif JP', 'NotoSerifJP-Regular', serif; }

@media screen and (max-width: 768px) {
  .page__wrapper .wrapper__inner {
    width: 100%;
    padding: 0 6.7%; }
    .page__wrapper .wrapper__inner h3 {
      padding-bottom: 19px;
      font-size: 19px;
      line-height: 1.7;
      border-bottom: 1px solid #e1e1e1; }
    .page__wrapper .wrapper__inner .inner__text {
      border: none; }
      .page__wrapper .wrapper__inner .inner__text ul {
        padding: 0;
        letter-spacing: 0.1em; }
        .page__wrapper .wrapper__inner .inner__text ul li {
          line-height: 1.7; }
        .page__wrapper .wrapper__inner .inner__text ul li:not(:last-child) {
          margin-bottom: 22px; }
        .page__wrapper .wrapper__inner .inner__text ul li.name {
          font-size: 18px;
          text-align: right;
          font-weight: 400;
          font-family: 'Noto Serif JP', 'NotoSerifJP-Regular', serif;
          margin-top: 4px; } }

.personalinfo__contact {
  width: 64%;
  width: calc(calc(866/1366)*100%);
  margin: 0 auto;
  padding-bottom: 60px; }
  .personalinfo__contact h3 {
    margin-bottom: 30px;
    font-size: 24px; }
  .personalinfo__contact__inner {
    border-top: 1px solid #e1e1e1; }
    .personalinfo__contact__inner p {
      padding-top: 50px; }

@media screen and (max-width: 768px) {
  .personalinfo__contact {
    width: 100%;
    padding: 0 6.7%;
    padding-bottom: 26px; }
    .personalinfo__contact h3 {
      margin-bottom: 19px;
      font-size: 19px;
      line-height: 1.7; }
    .personalinfo__contact__inner p {
      padding-top: 30px; } }

.flowkeiyaku__wrapper {
  background-color: #faf9f9;
  padding: 70px 0;
  margin-bottom: 150px; }
  .flowkeiyaku__wrapper .flowkeiyaku__inner {
    width: 73.2%;
    margin: 0 auto; }
    .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      width: 100%;
      position: relative;
      background-color: #fff;
      padding: 50px 0 48px; }
      .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l {
        width: 37%;
        text-align: center; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l .title__underbar {
          font-size: 24px;
          color: #800307;
          padding-top: 20px; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l .title__underbar::after {
          width: 66px; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l h4 {
          margin-top: 52px;
          font-size: 32px; }
      .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__r {
        width: 63%;
        padding-right: 6.7%; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__r p:not(:last-child) {
          margin-bottom: 20px; }
      .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flex__bg {
        position: absolute;
        top: 0;
        left: 0; }
    .flowkeiyaku__wrapper .flowkeiyaku__inner .triangle {
      margin: 22px auto;
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 28px 17px 0 17px;
      border-color: #800307 transparent transparent transparent; }

@media screen and (max-width: 768px) {
  .flowkeiyaku__wrapper {
    padding: 50px 0;
    margin-bottom: 100px; }
    .flowkeiyaku__wrapper .flowkeiyaku__inner {
      width: 86.6%; }
      .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 35px 5.3% 29px; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l,
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__r {
          width: 100%; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l .title__underbar {
          font-size: 19px;
          padding-top: 0; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l .title__underbar::after {
          width: 33px; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__l h4 {
          margin-top: 33px;
          font-size: 23px; }
        .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__r {
          padding: 0;
          margin-top: 30px; }
          .flowkeiyaku__wrapper .flowkeiyaku__inner .flexbox .flexbox__r p:not(:last-child) {
            margin-bottom: 16px; }
      .flowkeiyaku__wrapper .flowkeiyaku__inner .triangle {
        margin: 10px auto;
        border-width: 30px 20px 0 20px; } }

.price {
  margin-bottom: 106px; }
  .price__wrapper {
    width: 64%;
    width: calc(calc(866/1366)*100%);
    margin: 0 auto; }
    .price__wrapper .price__flex {
      margin-top: 82px;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 0 20px; }
      .price__wrapper .price__flex__left, .price__wrapper .price__flex__right {
        width: 50%;
        height: 50%;
        position: relative;
        max-width: 400px; }
        .price__wrapper .price__flex__left .price__flex__text, .price__wrapper .price__flex__right .price__flex__text {
          text-align: center;
          position: absolute;
          top: 20%;
          left: 50%;
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%);
          width: 100%; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon, .price__wrapper .price__flex__right .price__flex__text .ribbon {
            display: inline-block;
            position: relative;
            background-color: #800307;
            color: #FFF;
            line-height: 34px;
            text-align: center;
            margin-left: 17px;
            margin-right: 17px;
            padding: 0 10px;
            font-size: 22px;
            letter-spacing: 0.1em; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::after,
          .price__wrapper .price__flex__left .price__flex__text .ribbon::before, .price__wrapper .price__flex__right .price__flex__text .ribbon::after,
          .price__wrapper .price__flex__right .price__flex__text .ribbon::before {
            display: block;
            content: '';
            position: absolute;
            top: 0;
            border-top: 17px solid #800307;
            border-bottom: 17px solid #800307;
            border-right: 17px solid transparent;
            border-left: 17px solid transparent;
            z-index: -10; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::after, .price__wrapper .price__flex__right .price__flex__text .ribbon::after {
            left: -17px; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::before, .price__wrapper .price__flex__right .price__flex__text .ribbon::before {
            right: -17px; }
          .price__wrapper .price__flex__left .price__flex__text .text__middle, .price__wrapper .price__flex__right .price__flex__text .text__middle {
            font-size: 24px;
            margin-top: 23px; }
          .price__wrapper .price__flex__left .price__flex__text .text__bottom, .price__wrapper .price__flex__right .price__flex__text .text__bottom {
            margin-top: 34px;
            font-size: 36px;
            line-height: 0.8; }
            .price__wrapper .price__flex__left .price__flex__text .text__bottom .Montserrat, .price__wrapper .price__flex__right .price__flex__text .text__bottom .Montserrat {
              font-size: 60px; }
        .price__wrapper .price__flex__left .under__text, .price__wrapper .price__flex__right .under__text {
          margin-top: 59px;
          padding: 0 26px; }

@media screen and (max-width: 768px) {
  .price {
    margin-bottom: 74px; }
    .price__wrapper {
      width: 100%; }
      .price__wrapper .price__flex {
        margin-top: 57px;
        display: block; }
        .price__wrapper .price__flex__left, .price__wrapper .price__flex__right {
          width: 100%;
          height: 100%;
          position: relative;
          max-width: 100%; }
          .price__wrapper .price__flex__left .sizing, .price__wrapper .price__flex__right .sizing {
            width: 76.6%;
            margin: 0 auto; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon, .price__wrapper .price__flex__right .price__flex__text .ribbon {
            line-height: 24px;
            margin-left: 12px;
            margin-right: 12px;
            font-size: 16px;
            padding: 0 4px; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::after,
          .price__wrapper .price__flex__left .price__flex__text .ribbon::before, .price__wrapper .price__flex__right .price__flex__text .ribbon::after,
          .price__wrapper .price__flex__right .price__flex__text .ribbon::before {
            display: block;
            content: '';
            position: absolute;
            top: 0;
            border-top: 12px solid #800307;
            border-bottom: 12px solid #800307;
            border-right: 12px solid transparent;
            border-left: 12px solid transparent;
            z-index: -10; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::after, .price__wrapper .price__flex__right .price__flex__text .ribbon::after {
            left: -12px; }
          .price__wrapper .price__flex__left .price__flex__text .ribbon::before, .price__wrapper .price__flex__right .price__flex__text .ribbon::before {
            right: -12px; }
          .price__wrapper .price__flex__left .price__flex__text .text__middle, .price__wrapper .price__flex__right .price__flex__text .text__middle {
            font-size: 19px;
            margin-top: 12px;
            line-height: 1; }
          .price__wrapper .price__flex__left .price__flex__text .text__bottom, .price__wrapper .price__flex__right .price__flex__text .text__bottom {
            margin-top: 16px;
            font-size: 26px;
            line-height: 0.8; }
            .price__wrapper .price__flex__left .price__flex__text .text__bottom .Montserrat, .price__wrapper .price__flex__right .price__flex__text .text__bottom .Montserrat {
              font-size: 45px; }
          .price__wrapper .price__flex__left .under__text, .price__wrapper .price__flex__right .under__text {
            margin-top: 25px;
            padding: 0; }
        .price__wrapper .price__flex__right {
          margin-top: 46px; } }

.price__type {
  margin: 0 auto; }
  .price__type .price__wrapper {
    background-color: #faf9f9;
    width: 73.2%;
    margin: 0 auto;
    padding: 42px 4.9% 60px; }
    .price__type .price__wrapper h2 {
      text-align: center; }
    .price__type .price__wrapper__flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      width: 100%;
      margin-top: 60px; }
      .price__type .price__wrapper__flex .price__wrapper__box {
        width: 30%; }
        .price__type .price__wrapper__flex .price__wrapper__box h3 {
          font-size: 24px;
          margin-bottom: 20px; }
        .price__type .price__wrapper__flex .price__wrapper__box .box__text {
          padding: 24px 0;
          border-top: 1px solid #800307;
          border-bottom: 1px solid #800307; }
        .price__type .price__wrapper__flex .price__wrapper__box h4 {
          color: #800307;
          font-size: 16px;
          font-family: 'Noto Sans JP', 'NotoSansJP-Regular', sans-serif;
          font-weight: 400;
          margin-top: 16px;
          margin-bottom: 12px; }
        .price__type .price__wrapper__flex .price__wrapper__box p.dot__use {
          padding-left: 16px;
          position: relative; }
        .price__type .price__wrapper__flex .price__wrapper__box p.dot__use::before {
          display: block;
          content: '・';
          position: absolute;
          top: 0;
          left: 0; }
        .price__type .price__wrapper__flex .price__wrapper__box p {
          letter-spacing: 0; }

@media screen and (max-width: 768px) {
  .price__type .price__wrapper {
    width: 100%;
    padding: 33px 6.7% 45px; }
    .price__type .price__wrapper__flex {
      display: block;
      margin-top: 45px; }
      .price__type .price__wrapper__flex .price__wrapper__box {
        width: 100%; }
        .price__type .price__wrapper__flex .price__wrapper__box h3 {
          font-size: 21px; }
        .price__type .price__wrapper__flex .price__wrapper__box .box__text {
          padding: 20px 0; }
      .price__type .price__wrapper__flex .price__wrapper__box:not(:last-of-type) {
        margin-bottom: 60px; }
    .price__type .price__wrapper .title_line::after {
      display: none; } }

.point_system {
  margin-top: 130px; }
  .point_system .point_system_box {
    margin: 78px auto 106px;
    max-width: 1000px; }
    .point_system .point_system_box p.price_text_dotnone,
    .point_system .point_system_box p.point_price_text {
      margin-bottom: 10px;
      letter-spacing: .1em;
      padding-left: 24px;
      position: relative; }
    .point_system .point_system_box p.point_price_text::before {
      content: "○";
      color: #800307;
      font-family: 'Noto Sans JP', 'NotoSansJP-Regular', sans-serif;
      font-weight: 400;
      line-height: 1;
      margin-right: 0;
      position: absolute;
      left: 0;
      top: 50%;
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
      transform: translateY(-50%); }
  .point_system .point_system_contents h2.title_line {
    text-align: center; }
  .point_system .point_system_contents .point_system_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 1000px;
    margin: 60px auto 0; }
    .point_system .point_system_contents .point_system_flex .flex_item {
      width: 48%;
      padding: 20px;
      background-color: #faf9f9;
      margin-bottom: 20px;
      min-height: 240px; }
      .point_system .point_system_contents .point_system_flex .flex_item .box__text {
        padding: 24px 0;
        border-top: 1px solid #800307; }
      .point_system .point_system_contents .point_system_flex .flex_item h3 {
        margin-bottom: 20px;
        font-size: 24px; }
  .point_system .point_system_img {
    max-width: 1000px;
    margin: 0 auto; }
    .point_system .point_system_img .explanation {
      /*  font-size: 12px; */
      text-align: center; }

@media screen and (max-width: 768px) {
  .point_system {
    margin-top: 75px; }
    .point_system .point_system_box {
      margin: 58px auto 96px;
      padding: 0 6.7%;
      width: 100%; }
      .point_system .point_system_box .price_text_dotnone,
      .point_system .point_system_box p.point_price_text {
        margin-bottom: 10px;
        letter-spacing: .1em;
        padding-left: 24px;
        position: relative; }
      .point_system .point_system_box p.point_price_text::before {
        top: 14px; }
    .point_system .point_system_contents h2.title_line {
      text-align: center; }
    .point_system .point_system_contents .point_system_flex {
      margin: 27px auto 0;
      width: 100%;
      padding: 0 6.7%; }
      .point_system .point_system_contents .point_system_flex .flex_item {
        width: 100%;
        padding: 20px;
        background-color: #faf9f9;
        margin-bottom: 20px;
        min-height: 240px; }
        .point_system .point_system_contents .point_system_flex .flex_item .box__text {
          padding: 24px 0;
          border-top: 1px solid #800307; }
        .point_system .point_system_contents .point_system_flex .flex_item h3 {
          margin-bottom: 20px;
          font-size: 21px; }
    .point_system .point_system_img {
      max-width: 1000px;
      width: 100%;
      margin: 0 auto; }
      .point_system .point_system_img .explanation {
        /* font-size: 12px; */
        text-align: center; } }

.price__list {
  padding-bottom: 53px;
  margin-top: 130px; }
  .price__list .list__wrapper {
    margin: 0 auto;
    width: 73.2%;
    max-width: 1000px; }
    .price__list .list__wrapper .disclaimer {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 106px;
      margin-bottom: 30px; }
      .price__list .list__wrapper .disclaimer .sponly {
        display: none; }
    .price__list .list__wrapper .disclaimer__under {
      margin-top: 50px; }
      .price__list .list__wrapper .disclaimer__under p {
        font-size: 14px; }
    .price__list .list__wrapper .disclaimer__list {
      margin-top: 24px; }
      .price__list .list__wrapper .disclaimer__list p {
        padding-left: 4.9%;
        position: relative;
        font-size: 14px; }
        .price__list .list__wrapper .disclaimer__list p span {
          position: absolute;
          top: 0;
          left: 0;
          letter-spacing: 0; }
    .price__list .list__wrapper .sponly {
      display: none; }

.price__list {
  --price-gray: #858585;
  --price-border: #9d9d9d;
  --price-text: #4b4b4b;
  --price-pale-gray: #f1f1f1;
  --price-pale-yellow: #fffde8;
  --price-gold: #b89142;
  --price-cyan: #e9ffff;
  --price-pink: #ffe5e8;
  --price-purple: #eadfff;
  --price-mint: #dcefe8;
  --price-red: #8f1616;
  --price-blue: #1f6f86;
  --price-green: #277c28; }

.waseda-price-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }

.waseda-price-table {
  width: 100%;
  min-width: 1000px;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid var(--price-border);
  color: var(--price-text);
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-size: 16px;
  line-height: 1.35; }

.waseda-price-table col:nth-child(1) {
  width: 8.8%; }
.waseda-price-table col:nth-child(2) {
  width: 13.6%; }
.waseda-price-table col:nth-child(3) {
  width: 4.6%; }
.waseda-price-table col:nth-child(4) {
  width: 6.9%; }
.waseda-price-table col:nth-child(5) {
  width: 6.8%; }
.waseda-price-table col:nth-child(6) {
  width: 8.7%; }
.waseda-price-table col:nth-child(7) {
  width: 8.4%; }
.waseda-price-table col:nth-child(8) {
  width: 4%; }
.waseda-price-table col:nth-child(9) {
  width: 4%; }
.waseda-price-table col:nth-child(10) {
  width: 4.5%; }
.waseda-price-table col:nth-child(11) {
  width: 5.6%; }
.waseda-price-table col:nth-child(12) {
  width: 7.5%; }
.waseda-price-table col:nth-child(13) {
  width: 8%; }
.waseda-price-table col:nth-child(14) {
  width: 4.3%; }
.waseda-price-table col:nth-child(15) {
  width: 4.3%; }

.waseda-price-table th,
.waseda-price-table td {
  border: 1px solid var(--price-border);
  padding: 8px 6px;
  text-align: right;
  vertical-align: middle;
  background: #fff;
  font-weight: 400; }

.waseda-price-table th {
  background: var(--price-gray);
  color: #fff;
  text-align: center;
  font-size: 15px;
  line-height: 1.55;
  letter-spacing: .03em; }

.waseda-price-table thead th {
  padding: 9px 6px; }

.waseda-price-table .tax-note {
  display: inline-block;
  font-size: .78em;
  line-height: 1.2;
  letter-spacing: 0; }

.waseda-price-table .inheritance-point {
  letter-spacing: 0; }

.waseda-price-table .header-large {
  font-size: 21px;
  letter-spacing: .04em; }

.waseda-price-table .head-total {
  background: var(--price-gold); }

.waseda-price-table .contract-group,
.waseda-price-table .contract-name {
  background: var(--price-pale-gray);
  text-align: left; }

.waseda-price-table .contract-group {
  text-align: center;
  font-size: 20px;
  line-height: 1.55;
  color: #666; }

.waseda-price-table .contract-subnote {
  display: inline-block;
  font-size: .76em;
  line-height: 1.35;
  letter-spacing: 0; }

.waseda-price-table .contract-name {
  font-size: 15px; }

.waseda-price-table .center {
  text-align: center; }

.waseda-price-table .initial-total,
.waseda-price-table .annual-total {
  background: var(--price-pale-yellow); }

.waseda-price-table .name-amount {
  background: var(--price-purple); }

.waseda-price-table .danka .name-amount {
  background: var(--price-pink); }

.waseda-price-table .taishiko {
  background: var(--price-cyan); }

.waseda-price-table .point,
.waseda-price-table .negative {
  color: var(--price-red); }

.waseda-price-table .note-a {
  color: var(--price-blue);
  text-align: center; }

.waseda-price-table .note-b {
  color: var(--price-green);
  text-align: center; }

.waseda-price-table .note-c {
  color: #8c5a39;
  text-align: center; }

.waseda-price-table .note-d {
  color: #7d3b92;
  text-align: center; }

.waseda-price-table .group-start td,
.waseda-price-table .group-start th,
.waseda-price-table .sub-start td,
.waseda-price-table .sub-start th {
  border-top: 3px double var(--price-border); }

.waseda-price-table .full-note {
  padding: 8px 12px;
  text-align: left;
  background: #fff;
  font-size: 16px;
  letter-spacing: .08em; }

.waseda-price-table .addition-head th {
  border-top: 3px double var(--price-border);
  background: var(--price-gray);
  color: #fff;
  font-size: 15px; }

.waseda-price-table .addition-head .addition-title {
  font-size: 20px;
  letter-spacing: .08em; }

.waseda-price-table .addition-row td {
  background: #fff; }

.waseda-price-table .addition-row.addition-mint td {
  background: var(--price-mint); }

@media screen and (max-width: 768px) {
  .price__list {
    padding-bottom: 16px;
    margin-top: 75px; }
    .price__list .list__wrapper {
      width: 100%;
      padding: 0 6.7%; }
      .price__list .list__wrapper .disclaimer {
        display: block;
        text-align: center;
        margin-top: 58px;
        margin-bottom: 27px;
        text-align: center; }
        .price__list .list__wrapper .disclaimer .sponly {
          display: block; }
        .price__list .list__wrapper .disclaimer span {
          display: none; }
      .price__list .list__wrapper .disclaimer__under {
        margin-top: 78.5px; }
        .price__list .list__wrapper .disclaimer__under p {
          padding-left: 13%;
          position: relative; }
          .price__list .list__wrapper .disclaimer__under p span {
            position: absolute;
            top: 0;
            left: 0; }
      .price__list .list__wrapper .disclaimer__list {
        margin-top: 24px; }
        .price__list .list__wrapper .disclaimer__list p {
          padding-left: 13%; }
          .price__list .list__wrapper .disclaimer__list p span {
            position: absolute;
            top: 0;
            left: 0; }
      .price__list .list__wrapper .sponly {
        display: block;
        margin-top: 25px;
        margin-bottom: 25px; }
        .price__list .list__wrapper .sponly .link__wrapper__box a i {
          margin-right: 8px; } }

.faq__area__wrapper {
  margin: 0 auto;
  width: 73.2%;
  max-width: 1000px;
  padding-bottom: 74px; }
  .faq__area__wrapper .cate__box .cate__name h2 {
    margin-bottom: 20px;
    font-size: 24px; }
  .faq__area__wrapper .cate__box ul .cate__link {
    border-top: 1px solid #e1e1e1; }
    .faq__area__wrapper .cate__box ul .cate__link a {
      font-size: 18px;
      padding: 28px 0 28px 50px;
      position: relative;
      text-decoration: underline;
      line-height: 1.7; }
    .faq__area__wrapper .cate__box ul .cate__link a::before {
      position: absolute;
      content: "Q";
      font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
      font-weight: 500;
      font-size: 24px;
      color: #800307;
      top: 35px;
      left: 10px;
      -webkit-transform: translateY(-40%);
      -ms-transform: translateY(-40%);
      transform: translateY(-40%); }
  .faq__area__wrapper .cate__box ul .cate__link:last-of-type {
    border-bottom: 1px solid #e1e1e1; }
  .faq__area__wrapper .cate__box ul .faq__single__tac {
    text-align: center; }
  .faq__area__wrapper .cate__box:not(:last-of-type) {
    margin-bottom: 86px; }

@media screen and (max-width: 768px) {
  .faq__area__wrapper {
    width: 100%;
    padding: 0 6.7% 26px; }
    .faq__area__wrapper .cate__box .cate__name h2 {
      margin-bottom: 25px;
      font-size: 21px; }
    .faq__area__wrapper .cate__box ul .cate__link a {
      padding: 20px 0 20px 40px;
      font-size: 16px; }
    .faq__area__wrapper .cate__box ul .cate__link a::before {
      top: 26px;
      left: 6px;
      font-size: 30px; } }

.singlepage__wrapper {
  margin-top: 108px; }
  .singlepage__wrapper .faq__area__wrapper h2 {
    font-size: 24px;
    position: relative;
    padding-left: 42px;
    margin-bottom: 50px; }
    .singlepage__wrapper .faq__area__wrapper h2 span {
      position: absolute;
      top: 0;
      left: 0;
      color: #800307; }
  .singlepage__wrapper .faq__area__wrapper .sponly {
    display: none; }
  .singlepage__wrapper .faq__area__wrapper .answer {
    padding: 50px 0;
    margin-bottom: 30px;
    border-top: 1px solid #e1e1e1;
    border-bottom: 1px solid #e1e1e1; }
    .singlepage__wrapper .faq__area__wrapper .answer p {
      padding-left: 60px;
      position: relative; }
      .singlepage__wrapper .faq__area__wrapper .answer p span {
        position: absolute;
        top: 0;
        left: 20px;
        color: #800307;
        font-size: 24px;
        line-height: 1; }
  .singlepage__wrapper .faq__area__wrapper .back {
    text-align: right; }
    .singlepage__wrapper .faq__area__wrapper .back a {
      text-decoration: underline;
      display: inline-block; }

.more__faq {
  margin-top: 146px;
  padding-bottom: 72px; }
  .more__faq .more__faq__title {
    text-align: center;
    margin-bottom: 50px; }

@media screen and (max-width: 768px) {
  .singlepage__wrapper {
    margin-top: 50px; }
    .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single {
      padding-bottom: 0; }
      .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single h2 {
        font-size: 19px;
        margin-bottom: 30px;
        padding-left: 40px;
        line-height: 1.4; }
        .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single h2 span {
          font-size: 30px; }
      .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single .sponly {
        display: block; }
      .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single .pconly {
        display: none; }
      .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single .answer {
        padding: 30px 0;
        margin-bottom: 50px;
        border-top: 1px solid #e1e1e1;
        border-bottom: 1px solid #e1e1e1; }
        .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single .answer p {
          padding-left: 40px;
          position: relative; }
          .singlepage__wrapper .faq__area__wrapper.faq__area__wrapper__single .answer p span {
            left: 0px;
            font-size: 30px; }
  .more__faq {
    margin-top: 106px;
    padding-bottom: 26px; }
    .more__faq .more__faq__title {
      text-align: center;
      margin-bottom: 40px; } }

.voice__detaily {
  margin-top: 110px; }
  .voice__detaily .voice__detaily__inner {
    margin: 0 auto;
    width: 73.2%;
    max-width: 1000px; }
    .voice__detaily .voice__detaily__inner h2 {
      font-size: 24px;
      line-height: 1.7;
      letter-spacing: 0.04em;
      color: #800307; }
    .voice__detaily .voice__detaily__inner .detaily__flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-top: 52px; }
      .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text,
      .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__img {
        width: 46%; }
      .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__img {
        -webkit-box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.08);
        box-shadow: 0px 0px 25px 0px rgba(0, 0, 0, 0.08); }
      .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text .detaily__text__title {
        font-size: 16px;
        font-family: 'Noto Sans JP', 'NotoSansJP-Light', sans-serif;
        font-weight: 300;
        margin-bottom: 15px; }
      .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text p.name {
        text-align: right;
        margin-top: 35px; }

.voice__list {
  padding-bottom: 62px;
  margin-top: 130px; }
  .voice__list .voice__list__inner {
    width: 100%;
    background-color: #faf9f9;
    padding-bottom: 70px; }
    .voice__list .voice__list__inner .voice__wrapper {
      margin: 0 auto;
      width: 73.2%;
      max-width: 1000px;
      padding: 42px 0 26px; }
      .voice__list .voice__list__inner .voice__wrapper .title_line {
        text-align: center; }
      .voice__list .voice__list__inner .voice__wrapper .voice__flex {
        width: 100%;
        margin-top: 80px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box {
          width: 30%;
          margin-bottom: 40px; }
          .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box .img__box {
            height: 210px; }
          .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box p {
            text-decoration: underline;
            margin-top: 30px; }
      .voice__list .voice__list__inner .voice__wrapper .voice__flex::after {
        content: "";
        display: block;
        width: 30%; }
      .voice__list .voice__list__inner .voice__wrapper .voice__link {
        margin-top: 77px; }

@media screen and (max-width: 768px) {
  .voice__list {
    margin-top: 0;
    padding-bottom: 50px; }
    .voice__list .voice__list__inner .voice__wrapper {
      width: 100%;
      padding: 33px 6.7% 50px;
      max-width: 100%; }
      .voice__list .voice__list__inner .voice__wrapper .voice__flex {
        margin-top: 37px;
        display: block; }
        .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box {
          width: 100%; }
          .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box p {
            margin-top: 26px; }
        .voice__list .voice__list__inner .voice__wrapper .voice__flex .voice__box:not(:last-of-type) {
          margin-bottom: 37px; }
  .voice__detaily {
    margin-top: 50px;
    margin-bottom: 102px; }
    .voice__detaily .voice__detaily__inner {
      margin: 0 auto;
      width: 100%;
      max-width: 100%;
      padding: 0 6.7%; }
      .voice__detaily .voice__detaily__inner h2 {
        font-size: 19px; }
      .voice__detaily .voice__detaily__inner .detaily__flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
        margin-top: 34px; }
        .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text,
        .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__img {
          width: 100%; }
        .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text {
          margin-top: 50px; }
          .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text .detaily__text__title {
            margin-bottom: 8px; }
          .voice__detaily .voice__detaily__inner .detaily__flex .detaily__flex__text p.name {
            font-size: 14px;
            margin-top: 20px; } }

.facility__container {
  margin-bottom: 102px; }
  .facility__container .facility__flex {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto; }
    .facility__container .facility__flex h2 {
      padding-left: 20px;
      border-left: 2px solid #800307;
      margin-bottom: 30px; }
    .facility__container .facility__flex .facility__flex__wrapper {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      background-color: #faf9f9;
      /*  .facility__flex__text.full{
                width: 100%;
            } */ }
      .facility__container .facility__flex .facility__flex__wrapper .facility__flex__img {
        width: 50%; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__img .youtube {
          position: relative;
          width: 100%;
          padding-top: 56.25%; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__img .youtube iframe {
          position: absolute;
          top: 0;
          right: 0;
          width: 100%;
          height: 100%; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__img .hondo02__img {
          margin-top: 10px; }
      .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text {
        width: 50%;
        padding: 20px 47px; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text h3 {
          font-size: 24px; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text p {
          margin-top: 28px; }
    .facility__container .facility__flex .facility__flex__wrapper:not(:last-of-type) {
      margin-bottom: 10px; }
    .facility__container .facility__flex .facility__flex__wrapper.bgf {
      background-color: #fff; }
    .facility__container .facility__flex .facility__flex__wrapper.boder {
      border: 1px solid #800307; }
      .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__img {
        padding: 20px 0px 20px 20px; }
      .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__text p {
        margin-bottom: 30px; }
      .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__text .link__wrapper .link__wrapper__box {
        margin-left: 0; }
    .facility__container .facility__flex .facility__flex__wrapper.reverse {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
      flex-direction: row-reverse; }
    .facility__container .facility__flex .facility__flex__wrapper.flexstart {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start; }

.facility__container.pb72 {
  padding-bottom: 72px; }

@media screen and (max-width: 768px) {
  .facility__container {
    margin-bottom: 52px; }
    .facility__container .facility__flex {
      max-width: 100%;
      padding: 0 6.7%; }
      .facility__container .facility__flex h2 {
        padding-left: 15px;
        margin-bottom: 25px; }
      .facility__container .facility__flex .facility__flex__wrapper {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__img,
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text {
          width: 100%; }
        .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text {
          padding: 25px 20px 28px; }
          .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text h3 {
            font-size: 19px; }
          .facility__container .facility__flex .facility__flex__wrapper .facility__flex__text p {
            margin-top: 22px; }
      .facility__container .facility__flex .facility__flex__wrapper.boder {
        border: 1px solid #800307; }
        .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__img {
          padding: 15px 15px 0px; }
        .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__text p {
          margin-bottom: 25px; }
        .facility__container .facility__flex .facility__flex__wrapper.boder .facility__flex__text .link__wrapper .link__wrapper__box {
          margin: 0 auto 7px; }
  .facility__container.pb72 {
    padding-bottom: 26px; } }

.sanpai__mv {
  margin-bottom: 170px;
  position: relative; }
  .sanpai__mv .sanpai__mv__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    max-width: 1000px;
    margin: 0 auto; }
    .sanpai__mv .sanpai__mv__flex .mv__flex__text {
      width: 52%;
      padding-left: 50px; }
      .sanpai__mv .sanpai__mv__flex .mv__flex__text h2 {
        line-height: 1.7;
        font-size: 24px;
        color: #800307;
        margin-bottom: 30px; }
        .sanpai__mv .sanpai__mv__flex .mv__flex__text h2 .sponly {
          display: none; }
    .sanpai__mv .sanpai__mv__flex .mv__area {
      width: 48%; }
  .sanpai__mv .bg__flow {
    width: 173px;
    position: absolute;
    right: 44px; }

@media screen and (max-width: 768px) {
  .sanpai__mv {
    margin-bottom: 95px; }
    .sanpai__mv .sanpai__mv__flex {
      max-width: 100%;
      display: block;
      padding: 0 6.7%; }
      .sanpai__mv .sanpai__mv__flex .mv__flex__text,
      .sanpai__mv .sanpai__mv__flex .mv__area {
        width: 100%; }
      .sanpai__mv .sanpai__mv__flex .mv__flex__text {
        padding-left: 0; }
        .sanpai__mv .sanpai__mv__flex .mv__flex__text h2 {
          margin-bottom: 27px;
          margin-top: 25px;
          line-height: 1.5; }
          .sanpai__mv .sanpai__mv__flex .mv__flex__text h2 .sponly {
            display: block; }
      .sanpai__mv .sanpai__mv__flex .mv__area {
        position: relative;
        padding-bottom: 56.25%;
        /*アスペクト比 16:9の場合の縦幅*/
        height: 0;
        overflow: hidden; }
      .sanpai__mv .sanpai__mv__flex .mv__area iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
    .sanpai__mv .bg__flow {
      width: 87px;
      top: 38%;
      right: 14px; } }

.sanpai__wrapper {
  position: relative; }
  .sanpai__wrapper .sanpai__flow__box {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 50px 67px 37px;
    border: 1px solid #f2e3cb;
    position: relative; }
    .sanpai__wrapper .sanpai__flow__box .flow__box__img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 30px;
      position: relative;
      z-index: 10; }
      .sanpai__wrapper .sanpai__flow__box .flow__box__img .img__left,
      .sanpai__wrapper .sanpai__flow__box .flow__box__img .img__right {
        width: 47.5%; }
    .sanpai__wrapper .sanpai__flow__box .left__bg {
      position: absolute;
      top: -16%;
      left: -7%; }
    .sanpai__wrapper .sanpai__flow__box .rtp {
      position: absolute;
      top: -2%;
      right: -1%; }
    .sanpai__wrapper .sanpai__flow__box .rbtm {
      position: absolute;
      bottom: -2%;
      right: -1%; }
    .sanpai__wrapper .sanpai__flow__box .lbtm {
      position: absolute;
      bottom: -2%;
      left: -1%; }
  .sanpai__wrapper .sanpai__flow__box.mt70 {
    margin-top: 70px; }
  .sanpai__wrapper .triangle {
    margin: 27px auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 28px 17px 0 17px;
    border-color: #800307 transparent transparent transparent; }

@media screen and (max-width: 768px) {
  .sanpai__wrapper {
    padding: 0 6.7%; }
    .sanpai__wrapper .sanpai__flow__box {
      max-width: 100%;
      padding: 20px 20px 30px; }
      .sanpai__wrapper .sanpai__flow__box .flow__box__img {
        display: block;
        margin-bottom: 20px; }
        .sanpai__wrapper .sanpai__flow__box .flow__box__img .img__left,
        .sanpai__wrapper .sanpai__flow__box .flow__box__img .img__right {
          width: 100%; }
        .sanpai__wrapper .sanpai__flow__box .flow__box__img .img__left {
          margin-bottom: 20px; }
      .sanpai__wrapper .sanpai__flow__box .left__bg {
        position: absolute;
        top: -9%;
        left: -23%;
        width: 155px; }
    .sanpai__wrapper .triangle {
      margin: 35px auto;
      border-width: 30px 20px 0 20px; }
    .sanpai__wrapper .sanpai__flow__box.mt70 {
      margin-top: 65px; } }

.touch__panel {
  margin-top: 150px; }
  .touch__panel h2 .sponly {
    display: none; }
  .touch__panel .touch__panel__flex {
    width: 100%;
    max-width: 1000px;
    margin: 101px auto 104px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .touch__panel .touch__panel__flex .touch__panel__img {
      width: 50%; }
    .touch__panel .touch__panel__flex .touch__panel__text {
      width: 50%;
      padding-left: 50px; }
      .touch__panel .touch__panel__flex .touch__panel__text .mb30 {
        margin-bottom: 30px; }

@media screen and (max-width: 768px) {
  .touch__panel {
    margin-top: 100px; }
    .touch__panel h2 {
      line-height: 1.7; }
      .touch__panel h2 .sponly {
        display: block; }
    .touch__panel .touch__panel__flex {
      display: block;
      max-width: 100%;
      padding: 0 6.7%; }
      .touch__panel .touch__panel__flex .touch__panel__img {
        width: 100%; }
      .touch__panel .touch__panel__flex .touch__panel__text {
        width: 100%;
        padding-left: 0;
        margin-top: 35px; }
        .touch__panel .touch__panel__flex .touch__panel__text .mb30 {
          margin-bottom: 20px; } }

.operation {
  padding-bottom: 72px; }
  .operation .operation__wrapper {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    background-color: #faf9f9;
    padding: 42px 53px 49px; }
    .operation .operation__wrapper h2 {
      text-align: center; }
    .operation .operation__wrapper .operation__flex {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      margin-top: 45px; }
      .operation .operation__wrapper .operation__flex .operation__flex__item {
        width: 47%; }
        .operation .operation__wrapper .operation__flex .operation__flex__item .item__text h3 {
          font-size: 24px;
          color: #800307;
          margin-bottom: 20px;
          margin-top: 30px; }
      .operation .operation__wrapper .operation__flex .operation__flex__item.mb40 {
        margin-bottom: 40px; }

@media screen and (max-width: 768px) {
  .operation {
    padding-bottom: 26px; }
    .operation .operation__wrapper {
      max-width: 100%;
      padding: 33px 0 0; }
      .operation .operation__wrapper h2 {
        text-align: center; }
      .operation .operation__wrapper .operation__flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 30px;
        padding: 0px 6.7% 0; }
        .operation .operation__wrapper .operation__flex .operation__flex__item {
          width: 100%;
          margin-bottom: 40px; }
          .operation .operation__wrapper .operation__flex .operation__flex__item .item__text h3 {
            font-size: 19px;
            margin-bottom: 15px;
            margin-top: 20px; }
        .operation .operation__wrapper .operation__flex .operation__flex__item.mb40 {
          margin-bottom: 40px; } }

.bor_r {
  margin-left: auto;
  height: 1px;
  width: 92.7%;
  background-color: #d6d6d6; }

.contact__wrapper {
  margin: 100px auto 0;
  width: 100%;
  max-width: 1000px;
  padding: 0 4.9%; }
  .contact__wrapper h2 {
    line-height: 1.7;
    letter-spacing: 0; }
  .contact__wrapper h3 {
    margin-top: 94px;
    font-size: 24px; }
  .contact__wrapper .contact__wrapper__text {
    margin-top: 50px; }
  .contact__wrapper .contact__wrapper__text.thanks {
    margin-top: 94px; }
  .contact__wrapper .reservation__info {
    margin-top: 100px;
    margin-bottom: 50px; }

.form__area {
  margin: 100px auto 0;
  width: 100%;
  max-width: 1000px;
  padding: 0 4.9%; }
  .form__area h3 {
    font-size: 24px;
    margin-bottom: 75px; }
  .form__area .form__area__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 60px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .form__area .form__area__flex .form__area__flex__left {
      position: relative;
      width: 21%;
      font-size: 18px;
      font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
      font-weight: 500; }
      .form__area .form__area__flex .form__area__flex__left span {
        padding: 5px 10px;
        background-color: #800307;
        font-size: 14px;
        font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
        font-weight: 500;
        position: absolute;
        top: 50%;
        right: 0;
        border-radius: 2px;
        color: #fff;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
      .form__area .form__area__flex .form__area__flex__left span.grey {
        background-color: #9a9a9a; }
    .form__area .form__area__flex .form__area__flex__right {
      width: 71%;
      font-size: 16px;
      font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
      font-weight: 500;
      line-height: 1.7; }
      .form__area .form__area__flex .form__area__flex__right select {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none; }
      .form__area .form__area__flex .form__area__flex__right select,
      .form__area .form__area__flex .form__area__flex__right input {
        border: 1px solid #9a9a9a;
        padding: 16px 20px 18px 20px;
        font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
        font-weight: 500;
        border-radius: 0; }
      .form__area .form__area__flex .form__area__flex__right span.nin {
        position: relative; }
      .form__area .form__area__flex .form__area__flex__right span.nin::after {
        content: "人";
        position: absolute;
        top: 50%;
        right: -30px;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%); }
    .form__area .form__area__flex .form__area__flex__right.w100 input {
      width: 100%; }
    .form__area .form__area__flex .form__area__flex__right.w100 input.days {
      width: 30%; }
    .form__area .form__area__flex .form__area__flex__right.w100 select {
      width: 30%; }
    .form__area .form__area__flex .form__area__flex__right.w100 .arrow__use {
      margin: 0 30px 0 40px; }
    .form__area .form__area__flex .form__area__flex__right.w100 textarea {
      border: 1px solid #9a9a9a;
      width: 100%;
      font-family: 'Noto Sans JP', 'NotoSansJP-Light', sans-serif;
      font-weight: 300;
      padding: 16px 20px 18px 20px;
      font-size: 16px;
      -webkit-appearance: none;
      border-radius: 0; }
  .form__area .form__area__flex.mbdays {
    margin-bottom: 20px; }
  .form__area .form__area__flex.fls {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }

.contact__footer .footer__area {
  padding-top: 140px;
  margin-top: 170px; }
  .contact__footer .footer__area .spred .footer__logo {
    margin-top: 0; }

.thanks__tel {
  margin: 100px auto 0;
  width: 100%;
  max-width: 1000px;
  padding: 0 4.9% 78px; }
  .thanks__tel .banner__box02__left {
    padding: 44px 102px;
    text-align: center;
    border: 1px solid #e1e1e1;
    margin-bottom: 130px; }
    .thanks__tel .banner__box02__left h2 {
      font-size: 24px;
      color: #800307; }
    .thanks__tel .banner__box02__left h3 {
      font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
      font-weight: 500;
      font-size: 54px;
      line-height: 1;
      margin-top: 40px; }
    .thanks__tel .banner__box02__left p {
      font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
      font-weight: 500;
      font-size: 18px;
      line-height: 1;
      margin-top: 20px; }

@media screen and (max-width: 768px) {
  .bor_r {
    display: none; }
  .contact__wrapper {
    padding: 0 6.7%;
    margin-top: 50px; }
    .contact__wrapper h3 {
      margin-top: 50px;
      font-size: 19px;
      line-height: 1.7;
      letter-spacing: 0; }
    .contact__wrapper .contact__wrapper__text {
      margin-top: 15px; }
    .contact__wrapper .contact__wrapper__text.thanks {
      margin-top: 49px; }
    .contact__wrapper .reservation__info {
      margin-top: 46px;
      margin-bottom: 25px;
      line-height: 1.5; }
  .form__area {
    margin-top: 68px;
    padding: 0 6.7%; }
    .form__area h3 {
      font-size: 19px;
      margin-bottom: 44px; }
    .form__area .form__area__flex {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      margin-bottom: 30px; }
      .form__area .form__area__flex .form__area__flex__left {
        width: 100%;
        font-size: 16px;
        margin-bottom: 10px; }
        .form__area .form__area__flex .form__area__flex__left span {
          padding: 2px 6px;
          background-color: #800307;
          position: static;
          margin-left: 12.5px; }
      .form__area .form__area__flex .form__area__flex__right {
        width: 100%; }
        .form__area .form__area__flex .form__area__flex__right select,
        .form__area .form__area__flex .form__area__flex__right input {
          padding: 10px 10px 14px 10px;
          -webkit-box-sizing: border-box;
          box-sizing: border-box; }
        .form__area .form__area__flex .form__area__flex__right span .p-postal-code {
          width: 32%; }
        .form__area .form__area__flex .form__area__flex__right span.sp14 {
          font-size: 14px;
          line-height: 1.7; }
        .form__area .form__area__flex .form__area__flex__right .mwform-checkbox-field label {
          white-space: nowrap;
          margin-right: 10px; }
      .form__area .form__area__flex .form__area__flex__right.w100 input {
        width: 100%; }
      .form__area .form__area__flex .form__area__flex__right.w100 textarea {
        padding: 10px 10px 14px 10px; }
      .form__area .form__area__flex .form__area__flex__right.w100 .arrow__use {
        margin: 0 15px 0 16px; }
    .form__area .form__area__flex.fls {
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start; }
  .contact__footer .footer__area {
    padding-top: 0;
    margin-top: 85px; }
    .contact__footer .footer__area .spred {
      padding-bottom: 24px; }
      .contact__footer .footer__area .spred .footer__logo {
        margin-top: 0; }
    .contact__footer .footer__area .footer__bg {
      width: 30%; }
  .thanks__tel {
    padding: 0 6.7%;
    margin-top: 68px; }
    .thanks__tel .banner__box02__left {
      padding: 19px 18px 20px 18px;
      margin-bottom: 85px; }
      .thanks__tel .banner__box02__left h2 {
        font-size: 16px;
        color: #800307; }
      .thanks__tel .banner__box02__left h3 {
        font-size: 36px;
        margin-top: 12.5px; }
      .thanks__tel .banner__box02__left p {
        font-size: 16px;
        margin-top: 16px; } }

.protection__wrapper {
  padding-bottom: 102px; }
  .protection__wrapper .protection__flow__box {
    width: 64%;
    margin: 0 auto 80px;
    border-top: 1px solid #e1e1e1;
    max-width: 866px; }
    .protection__wrapper .protection__flow__box h3 {
      padding: 20px 0 30px;
      color: #800307;
      font-size: 24px; }
    .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img .img__left,
      .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img .img__right {
        width: 47%; }
    .protection__wrapper .protection__flow__box .reverse__flex ul {
      margin-top: 40px; }
      .protection__wrapper .protection__flow__box .reverse__flex ul li {
        line-height: 1.7;
        letter-spacing: 0.1em; }
      .protection__wrapper .protection__flow__box .reverse__flex ul li.pl10 {
        padding-left: 20px;
        position: relative; }
        .protection__wrapper .protection__flow__box .reverse__flex ul li.pl10 span {
          position: absolute;
          top: 0px;
          left: 0; }
  .protection__wrapper .protection__flow__box:last-of-type {
    margin-bottom: 0; }
  .protection__wrapper .protection__flow__box.mt100 {
    margin-top: 102px; }

@media screen and (max-width: 768px) {
  .protection__wrapper {
    padding-bottom: 26px; }
    .protection__wrapper .protection__flow__box {
      width: 100%;
      margin: 0 auto 54px;
      padding: 0 6.7%;
      max-width: 100%;
      border-top: none; }
      .protection__wrapper .protection__flow__box h3 {
        padding: 10px 0 20px;
        font-size: 21px;
        border-top: 1px solid #e1e1e1; }
      .protection__wrapper .protection__flow__box .reverse__flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; }
        .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img {
          display: block;
          -webkit-box-ordinal-group: 3;
          -ms-flex-order: 2;
          order: 2;
          margin-top: 35px; }
          .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img .img__left,
          .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img .img__right {
            width: 100%; }
          .protection__wrapper .protection__flow__box .reverse__flex .flow__box__img .img__right {
            margin-top: 21px; }
        .protection__wrapper .protection__flow__box .reverse__flex ul {
          margin-top: 0px;
          -webkit-box-ordinal-group: 2;
          -ms-flex-order: 1;
          order: 1; }
          .protection__wrapper .protection__flow__box .reverse__flex ul li {
            line-height: 1.9;
            letter-spacing: normal; }
    .protection__wrapper .protection__flow__box:last-of-type {
      margin-bottom: 0; }
    .protection__wrapper .protection__flow__box.mt100 {
      margin-top: 69px; } }

.page__access__map {
  width: 85%;
  margin: 0 auto; }
  .page__access__map .access__wrapper {
    margin-top: 0;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .page__access__map .access__wrapper .access__box {
      padding-left: 54px;
      padding-top: 20px; }
    .page__access__map .access__wrapper .access__page__iframe > iframe {
      height: 345px; }

.root__wrapper {
  margin-top: 124px; }
  .root__wrapper .root__wrapper__area {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    background-color: #faf9f9;
    padding: 42px 57px 47px; }
    .root__wrapper .root__wrapper__area h2 {
      text-align: center; }
    .root__wrapper .root__wrapper__area .root__contents {
      background-image: url(../img/line.png);
      background-position: top center;
      background-repeat: no-repeat;
      margin-top: 26px;
      background-size: contain; }
      .root__wrapper .root__wrapper__area .root__contents .contents01,
      .root__wrapper .root__wrapper__area .root__contents .contents02 {
        padding-top: 20px;
        width: 53.4%; }
        .root__wrapper .root__wrapper__area .root__contents .contents01 .contents01__text,
        .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text {
          width: 80%;
          margin-top: 30px; }
      .root__wrapper .root__wrapper__area .root__contents .contents02 {
        margin-left: auto; }
        .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text {
          margin-left: auto; }
      .root__wrapper .root__wrapper__area .root__contents .mb145up {
        margin-top: -145px; }

@media screen and (max-width: 768px) {
  .page__access__map {
    width: 100%; }
    .page__access__map .access__wrapper {
      margin-top: 0;
      -webkit-box-align: start;
      -ms-flex-align: start;
      align-items: flex-start; }
      .page__access__map .access__wrapper .access__img {
        padding: 0; }
      .page__access__map .access__wrapper .access__box {
        padding: 0px 6.7%;
        margin-top: 51px; }
        .page__access__map .access__wrapper .access__box .access__text02 h5 {
          letter-spacing: 0; }
      .page__access__map .access__wrapper .access__page__iframe > iframe {
        height: 250px; }
  .root__wrapper {
    margin-top: 96px; }
    .root__wrapper .root__wrapper__area {
      padding: 30px 6.7%; }
      .root__wrapper .root__wrapper__area h2 {
        font-size: 26px; }
      .root__wrapper .root__wrapper__area .root__contents {
        background-position: top left 30px;
        background-repeat: no-repeat;
        margin-top: 26px;
        background-size: contain; }
        .root__wrapper .root__wrapper__area .root__contents .contents01,
        .root__wrapper .root__wrapper__area .root__contents .contents02 {
          padding-top: 25px;
          width: 100%; }
          .root__wrapper .root__wrapper__area .root__contents .contents01 .contents01__text,
          .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text {
            width: 68%;
            margin-top: 20px;
            margin-left: auto;
            letter-spacing: 0; }
            .root__wrapper .root__wrapper__area .root__contents .contents01 .contents01__text p,
            .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text p {
              letter-spacing: 0; }
        .root__wrapper .root__wrapper__area .root__contents .contents02 {
          margin-left: 0; }
          .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text {
            width: 68%;
            margin-top: 20px;
            margin-right: 0; }
            .root__wrapper .root__wrapper__area .root__contents .contents02 .contents01__text p {
              letter-spacing: 0; }
        .root__wrapper .root__wrapper__area .root__contents .mb145up {
          margin-top: 0; } }

.about__sec2 .access__wrapper .access__img {
  width: 44.1%; }

.about__sec2 .access__wrapper .access__box {
  padding-right: 7.5%; }
  .about__sec2 .access__wrapper .access__box h2 {
    border-left: 2px solid #800307;
    padding-left: 20px;
    margin-bottom: 40px;
    line-height: 1.7; }

.about__wrapper {
  width: 100%;
  max-width: 1000px;
  margin: 107px auto 0; }
  .about__wrapper .about__bg.sponly {
    display: none; }
  .about__wrapper .about__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .about__wrapper .about__flex .about__flex__img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -ms-flex-direction: column;
      flex-direction: column;
      -webkit-box-pack: start;
      -ms-flex-pack: start;
      justify-content: flex-start;
      width: 40%; }
      .about__wrapper .about__flex .about__flex__img .about__flex__img__top {
        margin-bottom: 60px; }
    .about__wrapper .about__flex .about__flex__text {
      width: 50%; }
      .about__wrapper .about__flex .about__flex__text h2 {
        border-left: 2px solid #800307;
        padding-left: 20px;
        margin-bottom: 40px;
        line-height: 1.7; }
      .about__wrapper .about__flex .about__flex__text p {
        margin-bottom: 16px; }
      .about__wrapper .about__flex .about__flex__text .about__img__sponly {
        display: none; }

.thoughts {
  margin-top: 80px;
  background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(36%, #fff), color-stop(36%, #faf9f9), to(#faf9f9));
  background: -webkit-linear-gradient(left, #fff 0%, #fff 36%, #faf9f9 36%, #faf9f9 100%);
  background: -o-linear-gradient(left, #fff 0%, #fff 36%, #faf9f9 36%, #faf9f9 100%);
  background: linear-gradient(90deg, #fff 0%, #fff 36%, #faf9f9 36%, #faf9f9 100%);
  padding: 80px 0; }
  .thoughts .thoughts__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    /* max-width: 1000px; */
    /* justify-content: space-between; */
    margin: 0 auto;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .thoughts .thoughts__wrapper .thoughts__img {
      width: 44%; }
      .thoughts .thoughts__wrapper .thoughts__img p {
        margin: 10px;
        text-align: center; }
    .thoughts .thoughts__wrapper .thoughts__text {
      width: 56%;
      margin-left: 80px;
      padding-right: 5%;
      padding-top: 32px; }
      .thoughts .thoughts__wrapper .thoughts__text h2 {
        border-left: 2px solid #800307;
        padding-left: 20px;
        margin-bottom: 40px;
        line-height: 1.7; }
      .thoughts .thoughts__wrapper .thoughts__text p {
        margin-bottom: 16px; }

.jcv {
  width: 100%;
  max-width: 1000px;
  margin: 130px auto 0;
  padding-bottom: 102px; }
  .jcv h2 {
    border-left: 2px solid #800307;
    padding-left: 20px;
    margin-bottom: 40px;
    line-height: 1.7; }
  .jcv .jcv__wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .jcv .jcv__wrapper .jcv__img {
      width: 54%; }
    .jcv .jcv__wrapper .jcv__text {
      width: 38.5%; }
      .jcv .jcv__wrapper .jcv__text h3 {
        font-size: 24px;
        color: #800307;
        line-height: 1.7;
        margin-bottom: 40px; }
  .jcv .jcv__wrapper__bottom {
    border: 1px solid #800307;
    padding: 50px 65px;
    margin-top: 60px; }
    .jcv .jcv__wrapper__bottom h3 {
      font-size: 24px;
      color: #800307;
      line-height: 1.7;
      margin-bottom: 20px; }

@media screen and (max-width: 768px) {
  .about__sec2 .access__wrapper .access__img {
    width: 100%;
    padding: 0; }
  .about__sec2 .access__wrapper .access__box {
    padding: 0 6.7%; }
    .about__sec2 .access__wrapper .access__box h2 {
      padding-left: 20px;
      margin-bottom: 30px;
      font-size: 21px; }
  .about__wrapper {
    margin: 124px auto 0;
    position: relative; }
    .about__wrapper .about__bg.sponly {
      display: block;
      position: absolute;
      top: -120px;
      right: 14px;
      width: 120px; }
    .about__wrapper .about__flex .about__flex__img {
      display: none; }
    .about__wrapper .about__flex .about__flex__text {
      width: 100%;
      padding: 0 6.7%; }
      .about__wrapper .about__flex .about__flex__text h2 {
        padding-left: 20px;
        margin-bottom: 29px;
        font-size: 21px; }
      .about__wrapper .about__flex .about__flex__text p {
        margin-bottom: 16px; }
      .about__wrapper .about__flex .about__flex__text .about__img__sponly {
        display: block;
        margin-bottom: 30px; }
  .thoughts {
    margin-top: 80px;
    background: -webkit-gradient(linear, left top, left bottom, from(#fff), color-stop(20%, #fff), color-stop(20%, #faf9f9), to(#faf9f9));
    background: -webkit-linear-gradient(top, #fff 0%, #fff 20%, #faf9f9 20%, #faf9f9 100%);
    background: -o-linear-gradient(top, #fff 0%, #fff 20%, #faf9f9 20%, #faf9f9 100%);
    background: linear-gradient(180deg, #fff 0%, #fff 20%, #faf9f9 20%, #faf9f9 100%);
    padding: 0 0 40px; }
    .thoughts .thoughts__wrapper {
      display: block;
      width: 100%; }
      .thoughts .thoughts__wrapper .thoughts__img {
        width: 100%; }
        .thoughts .thoughts__wrapper .thoughts__img p {
          text-align: left;
          margin: 10px 6.7%; }
      .thoughts .thoughts__wrapper .thoughts__text {
        width: 100%;
        margin-top: 36px;
        margin-left: 0;
        padding: 0 6.7%; }
        .thoughts .thoughts__wrapper .thoughts__text h2 {
          padding-left: 20px;
          margin-bottom: 30px;
          font-size: 21px; }
        .thoughts .thoughts__wrapper .thoughts__text p {
          margin-bottom: 16px; }
  .jcv {
    padding: 0 6.7% 26px;
    margin-top: 80px; }
    .jcv h2 {
      padding-left: 20px;
      margin-bottom: 29px;
      font-size: 21px; }
    .jcv .jcv__wrapper {
      display: block; }
      .jcv .jcv__wrapper .jcv__img {
        width: 100%; }
      .jcv .jcv__wrapper .jcv__text {
        width: 100%; }
        .jcv .jcv__wrapper .jcv__text h3 {
          font-size: 19px;
          margin: 25px 0; }
    .jcv .jcv__wrapper__bottom {
      padding: 27px 7.7% 30px;
      margin-top: 40px; }
      .jcv .jcv__wrapper__bottom h3 {
        font-size: 19px;
        margin-bottom: 20px; } }

.words__area {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  padding-bottom: 102px; }
  .words__area .words__list li {
    display: inline;
    font-size: 24px;
    font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
    font-weight: 500;
    padding: 0 20px;
    border-right: 1px solid #e1e1e1;
    /* margin-bottom: 10px; */ }
    .words__area .words__list li i {
      font-size: 16px;
      padding-right: 10px; }
    .words__area .words__list li a {
      display: inline; }
  .words__area .words__list li:first-child {
    border-left: 1px solid #e1e1e1; }
  .words__area .words__area__wrapper .words__content {
    border-top: 1px solid #e1e1e1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
    .words__area .words__area__wrapper .words__content .category {
      background-color: #faf9f9; }
      .words__area .words__area__wrapper .words__content .category p {
        text-align: center;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-size: 32px;
        color: #800307;
        font-family: 'Noto Serif JP', 'NotoSerifJP-Medium', serif;
        font-weight: 500;
        margin-top: 34px; }
    .words__area .words__area__wrapper .words__content .detail__wrapper .detail {
      padding-left: 40px;
      padding-bottom: 40px; }
      .words__area .words__area__wrapper .words__content .detail__wrapper .detail h3 {
        margin-top: 38px;
        padding-bottom: 20px;
        border-bottom: 1px solid #e1e1e1;
        font-size: 24px; }
      .words__area .words__area__wrapper .words__content .detail__wrapper .detail .detail__text {
        margin-top: 40px; }
        .words__area .words__area__wrapper .words__content .detail__wrapper .detail .detail__text p:not(:last-child) {
          margin-bottom: 30px; }
    .words__area .words__area__wrapper .words__content .detail__wrapper .detail:last-of-type {
      padding-bottom: 100px; }
  .words__area .words__area__wrapper.mtuse {
    margin-top: 80px; }

@media screen and (max-width: 768px) {
  .words__area {
    padding-bottom: 46px; }
    .words__area .words__list {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 0 6.7%; }
      .words__area .words__list li {
        font-size: 21px;
        padding: 0;
        width: 33%;
        text-align: center;
        margin-bottom: 10px; }
        .words__area .words__list li i {
          font-size: 14px;
          padding-right: 10px; }
      .words__area .words__list li:nth-child(3n+4) {
        border-left: 1px solid #e1e1e1; }
    .words__area .words__area__wrapper .words__content {
      display: block;
      width: 100%; }
      .words__area .words__area__wrapper .words__content .category {
        background-color: #faf9f9; }
        .words__area .words__area__wrapper .words__content .category p {
          text-align: left;
          -webkit-writing-mode: horizontal-tb;
          -ms-writing-mode: lr-tb;
          writing-mode: horizontal-tb;
          font-size: 21px;
          margin: 0 6.7%; }
      .words__area .words__area__wrapper .words__content .detail__wrapper .detail {
        padding: 0px 6.7% 18px; }
        .words__area .words__area__wrapper .words__content .detail__wrapper .detail h3 {
          margin-top: 32.5px;
          padding-bottom: 15px;
          font-size: 21px; }
        .words__area .words__area__wrapper .words__content .detail__wrapper .detail .detail__text {
          margin-top: 30px; }
          .words__area .words__area__wrapper .words__content .detail__wrapper .detail .detail__text p:not(:last-child) {
            margin-bottom: 25px; }
    .words__area .words__area__wrapper.mtuse {
      margin-top: 50px; } }

.first__feature {
  width: 85.4%;
  margin: 0 auto; }
  .first__feature .first__text {
    margin-top: 80px;
    margin-bottom: 14%;
    padding: 40px;
    background-color: #fbfafa; }
    .first__feature .first__text .name__right {
      text-align: right;
      margin-top: 20px; }

.first__feature.city {
  margin-top: 14%; }
  .first__feature.city .title__underbar .sponly {
    display: none; }
  .first__feature.city .first__text {
    background-color: transparent; }

@media screen and (max-width: 768px) {
  .first__feature.city .title__underbar {
    line-height: 1.7; }
    .first__feature.city .title__underbar .sponly {
      display: block; } }

.feature__area.right__side {
  width: 85.4%;
  margin: 0 auto;
  position: relative; }
  .feature__area.right__side .feature__wrapper01 .flex__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .feature__area.right__side .feature__wrapper01 .flex__box .feature__img {
      width: 48.8%; }
    .feature__area.right__side .feature__wrapper01 .flex__box .feature__title {
      width: 51.2%;
      padding-left: 78px;
      padding-top: 200px;
      position: relative; }
      .feature__area.right__side .feature__wrapper01 .flex__box .feature__title h2 {
        color: #800307;
        font-size: 36px;
        line-height: 1.7;
        position: relative;
        z-index: 10;
        letter-spacing: 0.04em; }
    .feature__area.right__side .feature__wrapper01 .flex__box .feature__title__bg {
      position: absolute;
      right: 0;
      bottom: -90px; }
      .feature__area.right__side .feature__wrapper01 .flex__box .feature__title__bg img {
        height: auto; }
  .feature__area.right__side .feature__wrapper01 .feature__img__bottom {
    padding: 70px 0 0 50px;
    width: 100%;
    max-width: 1000px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    position: relative; }
    .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__text {
      width: 50%; }
    .feature__area.right__side .feature__wrapper01 .feature__img__bottom .img__right {
      width: 42.5%;
      position: absolute;
      top: 0;
      right: 0; }
      .feature__area.right__side .feature__wrapper01 .feature__img__bottom .img__right .explanation {
        font-size: 12px;
        text-align: center; }
      .feature__area.right__side .feature__wrapper01 .feature__img__bottom .img__right .img__right__under {
        margin-top: 20px; }
    .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__text__bottom {
      width: 50%; }
    .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      left: -22%;
      width: 118px; }
    .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg.pcshow {
      opacity: 1;
      position: absolute;
      left: -22%; }
  .feature__area.right__side .feature__wrapper01 .bgc {
    position: absolute;
    top: 150px;
    left: 50%;
    width: 64.2%;
    background: #fbfafa;
    z-index: -10;
    height: 95%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }

.feature__area.mt80 {
  margin-top: 80px; }

.feature__area.left__side {
  width: 85.4%;
  margin: 0 auto;
  position: relative; }
  .feature__area.left__side .feature__wrapper01 .flex__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start; }
    .feature__area.left__side .feature__wrapper01 .flex__box .feature__img {
      width: 48.8%; }
      .feature__area.left__side .feature__wrapper01 .flex__box .feature__img .explanation {
        font-size: 12px;
        text-align: center; }
    .feature__area.left__side .feature__wrapper01 .flex__box .feature__title {
      width: 51.2%;
      padding-left: 9%;
      padding-top: 200px;
      position: relative; }
      .feature__area.left__side .feature__wrapper01 .flex__box .feature__title h2 {
        color: #800307;
        font-size: 36px;
        line-height: 1.7;
        position: relative;
        z-index: 10;
        letter-spacing: 0.04em; }
    .feature__area.left__side .feature__wrapper01 .flex__box .feature__title__bg {
      position: absolute;
      left: 0;
      bottom: -90px; }
      .feature__area.left__side .feature__wrapper01 .flex__box .feature__title__bg img {
        height: auto; }
    .feature__area.left__side .feature__wrapper01 .flex__box .feature__title__bg.mb150 {
      bottom: -150px; }
  .feature__area.left__side .feature__wrapper01 .feature__img__bottom {
    padding: 70px 0 0 0;
    width: 100%;
    max-width: 1000px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 auto;
    position: relative; }
    .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__text {
      width: 48%;
      margin-left: auto; }
    .feature__area.left__side .feature__wrapper01 .feature__img__bottom .img__right {
      width: 42.5%;
      position: absolute;
      top: 0;
      left: 0; }
      .feature__area.left__side .feature__wrapper01 .feature__img__bottom .img__right .explanation {
        font-size: 12px;
        text-align: center; }
    .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__text__bottom {
      width: 48%;
      margin-left: auto; }
      .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__text__bottom .link__wrapper {
        margin-top: 40px;
        /* display: none; */ }
    .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg {
      opacity: 0;
      pointer-events: none;
      position: absolute;
      right: -6.7%;
      width: 118px; }
  .feature__area.left__side .feature__wrapper01 .bgc {
    position: absolute;
    top: 150px;
    left: 50%;
    width: 64.2%;
    background: #fbfafa;
    z-index: -10;
    height: 85%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }

.feature__area.right__side.mt14,
.feature__area.left__side.mt14 {
  margin-top: 14%; }

.feature__area.left__side.mt14 {
  margin-top: 18%; }

@media screen and (max-width: 768px) {
  .first__feature {
    width: 100%; }
    .first__feature .first__text {
      margin-top: 40px;
      margin-bottom: 14%;
      padding: 30px 6.7%;
      background-color: #fbfafa; }
  .feature__area.right__side {
    padding: 0 6.7%;
    position: relative;
    width: 100%; }
    .feature__area.right__side .feature__wrapper01 {
      position: relative;
      padding-bottom: 45px; }
      .feature__area.right__side .feature__wrapper01 .flex__box {
        display: block; }
        .feature__area.right__side .feature__wrapper01 .flex__box .feature__title {
          margin: 25px 0 27px;
          position: relative;
          padding: 0;
          width: 100%; }
          .feature__area.right__side .feature__wrapper01 .flex__box .feature__title h2 {
            font-size: 24px; }
          .feature__area.right__side .feature__wrapper01 .flex__box .feature__title .feature__title__bg {
            position: absolute;
            top: 0;
            right: 0;
            width: 50%; }
        .feature__area.right__side .feature__wrapper01 .flex__box .feature__img {
          width: 100%; }
      .feature__area.right__side .feature__wrapper01 .feature__img__bottom {
        position: relative;
        margin-top: 25px;
        padding: 0; }
        .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg {
          position: absolute;
          left: -6.7%;
          width: 118px;
          display: block;
          opacity: 1; }
        .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg.pcshow {
          left: -6.7%;
          width: 118px; }
        .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__text {
          width: 100%;
          margin-bottom: 25px; }
        .feature__area.right__side .feature__wrapper01 .feature__img__bottom .img__right {
          width: 57%;
          margin-left: auto;
          position: static; }
        .feature__area.right__side .feature__wrapper01 .feature__img__bottom .feature__text__bottom {
          width: 100%;
          margin-top: 30px; }
      .feature__area.right__side .feature__wrapper01 .bgc {
        position: absolute;
        top: 100px;
        bottom: 0;
        right: -7.7%;
        left: auto;
        height: 92%;
        width: 58%;
        background: #faf9f9;
        z-index: -10;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; }
  .feature__area.mt80 {
    margin-top: 40px; }
  .feature__area.left__side {
    padding: 0 6.7%;
    position: relative;
    width: 100%; }
    .feature__area.left__side .feature__wrapper01 {
      position: relative;
      padding-bottom: 45px; }
      .feature__area.left__side .feature__wrapper01 .flex__box {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; }
        .feature__area.left__side .feature__wrapper01 .flex__box .feature__title {
          margin: 25px 0 27px;
          position: relative;
          padding: 0;
          width: 100%; }
          .feature__area.left__side .feature__wrapper01 .flex__box .feature__title h2 {
            font-size: 24px; }
          .feature__area.left__side .feature__wrapper01 .flex__box .feature__title .feature__title__bg {
            position: absolute;
            top: 0;
            right: 0;
            width: 50%;
            left: auto; }
        .feature__area.left__side .feature__wrapper01 .flex__box .feature__img {
          width: 100%; }
      .feature__area.left__side .feature__wrapper01 .feature__img__bottom {
        position: relative;
        margin-top: 25px;
        padding: 0; }
        .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__img__right__bg {
          position: absolute;
          right: -6.7%;
          width: 118px;
          display: block;
          opacity: 1; }
        .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__text {
          width: 100%;
          margin-bottom: 25px; }
        .feature__area.left__side .feature__wrapper01 .feature__img__bottom .img__right {
          width: 57%;
          margin-right: auto;
          position: static; }
        .feature__area.left__side .feature__wrapper01 .feature__img__bottom .feature__text__bottom {
          width: 100%;
          margin-top: 30px;
          display: block; }
      .feature__area.left__side .feature__wrapper01 .bgc {
        position: absolute;
        top: 100px;
        bottom: 0;
        left: -7.7%;
        width: 58%;
        height: 92%;
        background: #faf9f9;
        z-index: -10;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none; } }
