@charset "UTF-8";
/************************************************
    Reset
*************************************************/
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, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, figure, figcaption, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
  padding: 0;
  border: 0;
  margin: 0; }

body {
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%; }

h1, h2, h3, h4, h5, h6 {
  font-size: 1em;
  font-weight: normal; }

table, caption, th, td {
  font-weight: normal;
  text-align: left;
  empty-cells: show;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
  border: 0;
  border-collapse: collapse;
  border-spacing: 0px;
  margin: 0; }

a img, iframe {
  border: none; }

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

input, textarea, select, button {
  font-family: inherit;
  font-size: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  vertical-align: bottom;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  max-width: 100%;
  padding: 0;
  border: none;
  border-radius: 0;
  outline: none;
  margin: 0; }

input[type="text"],
textarea {
  width: 100%; }

address {
  font-style: normal; }

img {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  vertical-align: bottom;
  max-width: 100%;
  height: auto; }

br {
  opacity: 0; }

input[type="text"],
input[type="password"],
textarea,
select,
a {
  outline: none; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  @media screen and (max-width: 300px) {
    * {
      word-break: break-all !important;
      white-space: inherit !important; } }

a {
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none; }

/************************************************
    共通設定
*************************************************/
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  overflow-x: hidden; }

body {
  font-family: "Helvetica Neue" , Helvetica , Arial , Verdana , Roboto , "游ゴシック" , "Yu Gothic" , "游ゴシック体" , "YuGothic" , "ヒラギノ角ゴ Pro W3" , "Hiragino Kaku Gothic Pro" , "Meiryo UI" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , "MS PGothic" , sans-serif;
  font-size: 1rem;
  line-height: 1;
  position: relative; }

/* Chrome, Safari 5+, Opera 15+, iOS, Android */
::-webkit-input-placeholder {
  color: #9f9f9f; }

/* Firefox 18- */
:-moz-placeholder {
  color: #9f9f9f;
  opacity: 1; }

/* Firefox 19+ */
::-moz-placeholder {
  color: #9f9f9f;
  opacity: 1; }

/* IE 10+ */
:-ms-input-placeholder {
  color: #9f9f9f; }

/* IE Edge */
::-ms-input-placeholder {
  color: #9f9f9f; }

.l-inner {
  position: relative;
  width: 100%;
  max-width: 980px;
  padding: 0 10px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .l-inner {
      padding: 0 15px; } }

.l-heading {
  position: relative;
  margin-bottom: 50px; }
  .l-heading h2 {
    font-size: 5.6rem;
    font-weight: 100;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    letter-spacing: 0.05em;
    color: #454545; }
    .l-heading h2 a:hover {
      opacity: 0.8; }
    .l-heading h2 .l-heading__icon {
      position: relative;
      display: inline-block;
      height: 30px;
      width: auto;
      bottom: 5px;
      margin-left: 10px; }
  .l-heading p {
    padding-top: 25px;
    font-size: 1.6rem;
    letter-spacing: 0.1em;
    line-height: 3rem;
    font-weight: normal; }
  @media screen and (max-width: 767px) {
    .l-heading {
      margin-bottom: 30px; }
      .l-heading h2 {
        font-size: 4rem; }
        .l-heading h2 .l-heading__icon {
          height: 20px; }
      .l-heading p {
        padding-top: 15px;
        font-size: 1.3rem;
        line-height: 2rem; } }
  @media screen and (max-width: 479px) {
    .l-heading {
      margin-bottom: 20px; }
      .l-heading h2 {
        font-size: 2.6rem; }
        .l-heading h2 .l-heading__icon {
          height: 16px; }
      .l-heading p {
        padding-top: 10px;
        font-size: 1.1rem;
        line-height: 1.9rem; } }

.l-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 500;
  padding: 20px 22px;
  pointer-events: none; }
  .l-header h1 {
    position: relative; }
    .l-header h1 a {
      pointer-events: visible; }
      .l-header h1 a img {
        position: relative;
        width: 85px;
        height: auto; }
  @media screen and (max-width: 767px) {
    .l-header {
      padding: 8px 8px; }
      .l-header h1 img {
        width: 60px; } }

.l-menu {
  position: fixed;
  right: 10px;
  top: 10px;
  z-index: 501; }
  .l-menu img {
    position: relative;
    width: 80px;
    height: auto; }
  @media screen and (max-width: 767px) {
    .l-menu {
      right: 8px;
      top: 8px; }
      .l-menu img {
        width: 60px; } }

.l-nav {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1000;
  width: 100%;
  height: 100%;
  background-color: rgba(228, 236, 228, 0.9);
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  display: none; }
  .l-nav .l-close {
    position: fixed;
    right: 34px;
    top: 38px;
    z-index: 1001; }
  .l-nav ul {
    width: 560px;
    padding-top: 107px;
    padding-left: 78px; }
    .l-nav ul li {
      margin-bottom: 55px;
      position: relative; }
      .l-nav ul li a {
        font-size: 50px;
        letter-spacing: 0.05em;
        font-weight: 100;
        color: #454545;
        position: relative;
        z-index: 200; }
      .l-nav ul li::before {
        position: fixed;
        content: '';
        top: 0;
        left: 0;
        width: calc(100% - 560px);
        height: 100%;
        background-image: url(../img/l-menu__bg--05-contact.jpg), url(../img/l-menu__bg--04-profile.jpg), url(../img/l-menu__bg--03-about.jpg), url(../img/l-menu__bg--02-youtube.jpg), url(../img/l-menu__bg--01-news.jpg);
        background-repeat: no-repeat;
        background-position: center top;
        background-size: cover;
        z-index: 1000;
        opacity: 0;
        -webkit-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        transition: all 0.5s ease; }
      .l-nav ul li:hover a, .l-nav ul li.current a, .l-nav ul li.active a {
        color: #ffffff;
        background-color: #000000; }
      .l-nav ul li:hover::before {
        z-index: 1001; }
      .l-nav ul li.l-nav--01.current::before, .l-nav ul li.l-nav--01.active::before {
        background-image: url(../img/l-menu__bg--01-news.jpg);
        opacity: 1; }
      .l-nav ul li.l-nav--02:hover::before, .l-nav ul li.l-nav--02.current::before, .l-nav ul li.l-nav--02.active::before {
        background-image: url(../img/l-menu__bg--02-youtube.jpg);
        opacity: 1; }
      .l-nav ul li.l-nav--03.current::before, .l-nav ul li.l-nav--03.active::before {
        background-image: url(../img/l-menu__bg--03-about.jpg);
        opacity: 1; }
      .l-nav ul li.l-nav--04.current::before, .l-nav ul li.l-nav--04.active::before {
        background-image: url(../img/l-menu__bg--04-profile.jpg);
        opacity: 1; }
      .l-nav ul li.l-nav--05.current::before, .l-nav ul li.l-nav--05.active::before {
        background-image: url(../img/l-menu__bg--05-contact.jpg);
        opacity: 1; }
      .l-nav ul li.l-nav--01:hover {
        z-index: 1001; }
        .l-nav ul li.l-nav--01:hover::before {
          background-image: url(../img/l-menu__bg--01-news.jpg) !important;
          opacity: 1; }
      .l-nav ul li.l-nav--02:hover {
        z-index: 1001; }
        .l-nav ul li.l-nav--02:hover::before {
          background-image: url(../img/l-menu__bg--02-youtube.jpg) !important;
          opacity: 1; }
      .l-nav ul li.l-nav--03:hover {
        z-index: 1001; }
        .l-nav ul li.l-nav--03:hover::before {
          background-image: url(../img/l-menu__bg--03-about.jpg) !important;
          opacity: 1; }
      .l-nav ul li.l-nav--04:hover {
        z-index: 1001; }
        .l-nav ul li.l-nav--04:hover::before {
          background-image: url(../img/l-menu__bg--04-profile.jpg) !important;
          opacity: 1; }
      .l-nav ul li.l-nav--05:hover {
        z-index: 1001; }
        .l-nav ul li.l-nav--05:hover::before {
          background-image: url(../img/l-menu__bg--05-contact.jpg) !important;
          opacity: 1; }
  @media screen and (max-width: 767px) {
    .l-nav .l-close {
      right: 25px;
      top: 29px; }
      .l-nav .l-close img {
        width: 25px;
        height: auto; }
    .l-nav ul {
      width: 50%;
      padding-top: 50px;
      padding-left: 30px; }
      .l-nav ul li {
        margin-bottom: 30px; }
        .l-nav ul li a {
          font-size: 2.4rem;
          z-index: 1001; }
        .l-nav ul li::before {
          width: 50%;
          height: 50%;
          background-position: center top; }
        .l-nav ul li:hover a, .l-nav ul li.current a {
          color: #ffffff;
          background-color: #000000; }
        .l-nav ul li.l-nav--01:hover::before, .l-nav ul li.l-nav--01.current::before {
          background-image: url(../img/l-menu__bg--01-news.jpg);
          opacity: 1; }
        .l-nav ul li.l-nav--02:hover::before, .l-nav ul li.l-nav--02.current::before {
          background-image: url(../img/l-menu__bg--02-youtube.jpg);
          opacity: 1; }
        .l-nav ul li.l-nav--03:hover::before, .l-nav ul li.l-nav--03.current::before {
          background-image: url(../img/l-menu__bg--03-about.jpg);
          opacity: 1; }
        .l-nav ul li.l-nav--04:hover::before, .l-nav ul li.l-nav--04.current::before {
          background-image: url(../img/l-menu__bg--04-profile.jpg);
          opacity: 1; }
        .l-nav ul li.l-nav--05:hover::before, .l-nav ul li.l-nav--05.current::before {
          background-image: url(../img/l-menu__bg--05-contact.jpg);
          opacity: 1; } }

.l-footer {
  position: relative; }
  .l-footer .l-footer-top {
    background-color: #e4ece4;
    padding: 100px 0; }
    .l-footer .l-footer-top .l-footer-inner {
      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; }
      .l-footer .l-footer-top .l-footer-inner .l-footer__info h1 {
        font-size: 2.2rem;
        letter-spacing: 0.1em;
        margin-bottom: 20px; }
      .l-footer .l-footer-top .l-footer-inner .l-footer__info p {
        color: #616161;
        font-size: 1.6rem;
        letter-spacing: 0.05em;
        line-height: 2.8rem; }
        .l-footer .l-footer-top .l-footer-inner .l-footer__info p span {
          margin-right: 16px; }
      .l-footer .l-footer-top .l-footer-inner .l-footer__link {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex; }
        .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item {
          position: relative;
          text-align: center;
          margin-left: 30px;
          display: block; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item:hover {
            opacity: 0.8; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item img {
            position: relative;
            width: 60px;
            height: auto;
            margin: 0 auto 10px; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item span {
            display: block;
            margin: 0 auto;
            position: relative;
            color: #b1bbb1;
            letter-spacing: 0.1em; }
  .l-footer .l-footer-bottom {
    padding: 8px 12px;
    text-align: center; }
    .l-footer .l-footer-bottom small {
      font-size: 1.2rem;
      letter-spacing: 0.1em;
      color: #b1bbb1; }
  @media screen and (max-width: 767px) {
    .l-footer .l-footer-top {
      padding: 40px 0; }
      .l-footer .l-footer-top .l-footer-inner {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
        .l-footer .l-footer-top .l-footer-inner .l-footer__info {
          margin-bottom: 30px;
          width: 100%; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__info h1 {
            font-size: 1.6rem; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__info p {
            font-size: 1.2rem; }
            .l-footer .l-footer-top .l-footer-inner .l-footer__info p span {
              margin-right: 10px; }
        .l-footer .l-footer-top .l-footer-inner .l-footer__link {
          width: 100%;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center; }
          .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item {
            margin-left: 0px;
            margin-right: 20px;
            margin-bottom: 20px; }
            .l-footer .l-footer-top .l-footer-inner .l-footer__link .l-footer__link-item img {
              width: 30px;
              height: auto; }
    .l-footer .l-footer-bottom {
      padding: 8px 12px;
      text-align: center; }
      .l-footer .l-footer-bottom small {
        font-size: 1.2rem;
        letter-spacing: 0.1em;
        color: #b1bbb1; } }

.c-btn {
  position: relative;
  display: block;
  background: -webkit-gradient(linear, right top, left top, from(#66929c), to(#b3cdb0));
  background: -webkit-linear-gradient(right, #66929c, #b3cdb0);
  background: -o-linear-gradient(right, #66929c, #b3cdb0);
  background: linear-gradient(to left, #66929c, #b3cdb0);
  width: 80%;
  max-width: 405px;
  height: 70px;
  line-height: 70px;
  text-align: right;
  padding: 0 20px;
  color: #ffffff;
  font-size: 1.6rem;
  letter-spacing: 0.2em;
  border-radius: 35px;
  -webkit-transition: all .4s ease-in-out;
  -o-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }
  .c-btn:hover {
    padding: 0 30px;
    letter-spacing: 0.3em;
    color: rgba(255, 255, 255, 0.8); }
  @media screen and (max-width: 479px) {
    .c-btn {
      width: 80%;
      max-width: 250px;
      height: 50px;
      line-height: 50px;
      font-size: 1.4rem;
      letter-spacing: 0.05em;
      border-radius: 25px; } }

.c-table {
  position: relative;
  border-collapse: collapse; }
  .c-table th, .c-table td {
    border: solid 1px #d0d0d0;
    padding: 5px 15px 5px 8px;
    white-space: nowrap;
    min-height: 25px; }
  .c-table thead th {
    text-align: center; }
  .c-table tbody th {
    text-align: left; }
  .c-table tbody tr.c-table__tr--space th, .c-table tbody tr.c-table__tr--space td {
    border-color: transparent; }

.c-radio-wrap input[type="radio"] {
  display: none; }

.c-radio-wrap label {
  padding-left: 36px;
  position: relative;
  margin-right: 20px; }

.c-radio-wrap label::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 22px;
  height: 22px;
  border: 1px solid #9e9e9e;
  border-radius: 50%;
  background: -webkit-gradient(linear, left bottom, left top, from(#dadada), to(#f3f2f2));
  background: -webkit-linear-gradient(bottom, #dadada, #f3f2f2);
  background: -o-linear-gradient(bottom, #dadada, #f3f2f2);
  background: linear-gradient(to top, #dadada, #f3f2f2); }

.c-radio-wrap input[type="radio"]:checked + label::after {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 9px;
  width: 7px;
  height: 7px;
  background: #9f9f9f;
  border-radius: 50%; }

@media screen and (max-width: 479px) {
  .c-radio-wrap label::before {
    content: "";
    display: block;
    position: absolute;
    top: -4px;
    left: 0;
    width: 22px;
    height: 22px;
    border: 1px solid #9e9e9e;
    border-radius: 50%;
    background: -webkit-gradient(linear, left bottom, left top, from(#dadada), to(#f3f2f2));
    background: -webkit-linear-gradient(bottom, #dadada, #f3f2f2);
    background: -o-linear-gradient(bottom, #dadada, #f3f2f2);
    background: linear-gradient(to top, #dadada, #f3f2f2); }
  .c-radio-wrap input[type="radio"]:checked + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 9px;
    width: 7px;
    height: 7px;
    background: #9f9f9f;
    border-radius: 50%; } }

.scroll-fade {
  opacity: 0;
  -webkit-transform: translate(0, 100px);
  -ms-transform: translate(0, 100px);
  transform: translate(0, 100px);
  -webkit-transition: ease-in all 500ms;
  -o-transition: ease-in all 500ms;
  transition: ease-in all 500ms; }

.scroll-fade.effect-scroll {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0); }

.p-main {
  position: relative;
  width: 100%;
  height: auto; }
  .p-main::before {
    content: '';
    display: block;
    height: 39.2%;
    width: 100%;
    position: absolute;
    background-color: #ffffff;
    bottom: 61.8%;
    left: 0;
    z-index: 10; }
  .p-main::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 11;
    top: 0;
    left: 0;
    background: -webkit-linear-gradient(322deg, #96a967, #96a967 5%, #add1ba 27%, #a6cda4 51%, #dbe39a 71%, #bfacbb 95%);
    background: -o-linear-gradient(322deg, #96a967, #96a967 5%, #add1ba 27%, #a6cda4 51%, #dbe39a 71%, #bfacbb 95%);
    background: linear-gradient(128deg, #96a967, #96a967 5%, #add1ba 27%, #a6cda4 51%, #dbe39a 71%, #bfacbb 95%);
    opacity: 0.5; }
  .p-main .p-main__video {
    position: relative;
    width: 100%;
    height: auto;
    z-index: 9;
    vertical-align: bottom; }
  .p-main .p-main__title {
    z-index: 12;
    position: absolute;
    bottom: 61.8%;
    left: 50%;
    -webkit-transform: translate3d(-50%, calc(50% - 18px), 0);
    transform: translate3d(-50%, calc(50% - 18px), 0);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
    .p-main .p-main__title.p-main__title--overlay {
      mix-blend-mode: overlay;
      padding-top: 36px; }
    .p-main .p-main__title .p-main__title-ja {
      position: relative;
      font-size: 1.6rem;
      letter-spacing: 0.36em;
      margin-bottom: 20px; }
    .p-main .p-main__title .p-main__5050 {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center; }
      .p-main .p-main__title .p-main__5050 .p-main__5050__plus {
        margin: 0 10px;
        width: 36px;
        height: auto; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__plus img {
          width: 36px;
          height: auto; }
      .p-main .p-main__title .p-main__5050 .p-main__5050__item {
        position: relative;
        width: 147px;
        height: 99px; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__item .p-main__5050__50 {
          position: relative;
          width: auto;
          height: 99px; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__item .p-main__5050__ja {
          position: absolute;
          width: 38px;
          height: auto;
          top: 50%;
          left: 50%;
          -webkit-transform: translate3d(-50%, -50%, 0);
          transform: translate3d(-50%, -50%, 0); }
  .p-main .p-main__copy {
    position: absolute;
    width: 625px;
    height: auto;
    z-index: 12;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, -36px, 0);
    transform: translate3d(-50%, -36px, 0);
    mix-blend-mode: overlay; }
  @media screen and (max-width: 767px) {
    .p-main .p-main__title {
      bottom: 61.8%;
      left: 50%;
      -webkit-transform: translate3d(-50%, calc(50% - 12px), 0);
      transform: translate3d(-50%, calc(50% - 12px), 0); }
      .p-main .p-main__title.p-main__title--overlay {
        padding-top: 20px; }
      .p-main .p-main__title .p-main__title-ja {
        font-size: 1.1rem;
        letter-spacing: 0.1em;
        margin-bottom: 10px; }
      .p-main .p-main__title .p-main__5050 .p-main__5050__plus {
        margin: 0 5px;
        width: 18px; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__plus img {
          width: 18px; }
      .p-main .p-main__title .p-main__5050 .p-main__5050__item {
        position: relative;
        width: 73px;
        height: 49px; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__item .p-main__5050__50 {
          height: 49px; }
        .p-main .p-main__title .p-main__5050 .p-main__5050__item .p-main__5050__ja {
          width: 19px; }
    .p-main .p-main__copy {
      width: 80%;
      -webkit-transform: translate3d(-50%, -50%, 0);
      transform: translate3d(-50%, -50%, 0);
      mix-blend-mode: overlay; } }
  @media screen and (max-width: 479px) {
    .p-main .p-main__title.p-main__title--overlay {
      padding-top: 10px; }
    .p-main .p-main__title .p-main__title-ja {
      font-size: 1rem;
      letter-spacing: 0em;
      margin-bottom: 10px; }
    .p-main .p-main__copy {
      width: 80%;
      -webkit-transform: translate3d(-50%, -50%, 0);
      transform: translate3d(-50%, -50%, 0);
      mix-blend-mode: overlay; } }

.p-news {
  position: relative;
  padding: 80px 0 30px; }
  .p-news .p-news__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    .p-news .p-news__list .p-news__item {
      position: relative;
      width: calc(278 / 960 * 100%); }
      .p-news .p-news__list .p-news__item a {
        color: #8e8e8e;
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column; }
        .p-news .p-news__list .p-news__item a:hover {
          opacity: 0.8; }
      .p-news .p-news__list .p-news__item .p-news__item-img {
        width: 100%;
        height: 0;
        padding-top: calc(190 / 278 * 100%);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        margin-bottom: 15px; }
      .p-news .p-news__list .p-news__item .p-news__item-content {
        position: relative;
        margin-bottom: 10px; }
        .p-news .p-news__list .p-news__item .p-news__item-content .p-news__item-date {
          position: relative;
          display: inline-block;
          font-size: 3rem;
          font-weight: 300;
          margin-bottom: 10px;
          border-bottom: solid 1px #8e8e8e; }
        .p-news .p-news__list .p-news__item .p-news__item-content .p-news__item-txt {
          font-size: 1.4rem;
          line-height: 2.2rem;
          width: calc(230 / 278 * 100%);
          font-weight: normal;
          line-break: loose;
          text-decoration: underline; }
      @media screen and (min-width: 768px) {
        .p-news .p-news__list .p-news__item:nth-child(even) a {
          -webkit-box-orient: vertical;
          -webkit-box-direction: reverse;
          -ms-flex-direction: column-reverse;
          flex-direction: column-reverse; } }
  @media screen and (max-width: 767px) {
    .p-news .p-news__list {
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .p-news .p-news__list .p-news__item {
        width: 100%;
        margin-bottom: 30px; }
        .p-news .p-news__list .p-news__item a {
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-direction: row;
          flex-direction: row;
          -webkit-box-pack: justify;
          -ms-flex-pack: justify;
          justify-content: space-between; }
        .p-news .p-news__list .p-news__item:nth-child(even) a {
          -webkit-box-orient: horizontal;
          -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
        .p-news .p-news__list .p-news__item .p-news__item-img {
          width: 40%;
          padding-top: calc(190 / 278 * 40%); }
        .p-news .p-news__list .p-news__item .p-news__item-content {
          padding: 10px;
          width: 56%;
          margin: 0;
          padding: 0; }
          .p-news .p-news__list .p-news__item .p-news__item-content .p-news__item-txt {
            width: 100%; } }
  @media screen and (max-width: 479px) {
    .p-news .p-news__list .p-news__item .p-news__item-img {
      width: 35%;
      padding-top: calc(190 / 278 * 35%); }
    .p-news .p-news__list .p-news__item .p-news__item-content {
      width: 60%; }
      .p-news .p-news__list .p-news__item .p-news__item-content .p-news__item-date {
        font-size: 1.6rem; }
      .p-news .p-news__list .p-news__item .p-news__item-content .p-news__item-txt {
        font-size: 1.1rem;
        line-height: 1.8rem;
        width: 100%; } }

.p-youtube {
  position: relative;
  padding: 190px 0 320px; }
  .p-youtube::before {
    content: '';
    position: absolute;
    top: 150px;
    right: 0;
    width: calc(790 / 1280 * 100%);
    height: 870px;
    background: #e4ece4;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: skew(0deg, -10deg);
    -ms-transform: skew(0deg, -10deg);
    transform: skew(0deg, -10deg);
    z-index: -1; }
  .p-youtube .p-youtube__slider {
    position: relative;
    width: 100%; }
    .p-youtube .p-youtube__slider .p-youtube__slider-item {
      position: relative;
      padding: 0 10px; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item a {
        display: block; }
        .p-youtube .p-youtube__slider .p-youtube__slider-item a:hover {
          opacity: 0.8; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item .p-youtube__item-img {
        width: 690px;
        height: 380px;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        margin-bottom: 30px; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item h3 {
        position: relative;
        font-size: 1.4rem;
        letter-spacing: 0.05em;
        line-height: 2.4rem;
        max-width: 360px;
        color: #000000;
        font-weight: normal; }
  @media screen and (max-width: 767px) {
    .p-youtube {
      padding: 90px 0 160px; }
      .p-youtube::before {
        top: 70px;
        width: calc(790 / 1280 * 100%);
        height: 80%; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item .p-youtube__item-img {
        width: 100%;
        height: 0;
        padding-top: calc( 380 / 690 * 100%); }
      .p-youtube .p-youtube__slider .p-youtube__slider-item h3 {
        font-size: 1.3rem;
        line-height: 2rem;
        max-width: 90%; } }
  @media screen and (max-width: 479px) {
    .p-youtube {
      padding: 60px 0 100px; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item .p-youtube__item-img {
        margin-bottom: 10px; }
      .p-youtube .p-youtube__slider .p-youtube__slider-item h3 {
        font-size: 1.1rem;
        line-height: 1.8rem; } }

.p-showcase {
  width: 100%;
  height: 505px;
  position: relative;
  text-align: center;
  background-color: #1e1f21;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  padding-top: 230px; }
  .p-showcase h2 {
    position: relative;
    margin-bottom: 25px;
    font-size: 2.2rem;
    letter-spacing: 0.5em;
    color: #ffffff;
    z-index: 103; }
  .p-showcase h3 {
    position: relative;
    margin-bottom: 35px;
    font-size: 1.2rem;
    color: #ffffff;
    z-index: 102; }
  .p-showcase h4 {
    position: relative;
    z-index: 104;
    pointer-events: none; }
  .p-showcase .p-showcase__ichinose {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    height: 100%;
    width: auto;
    z-index: 101;
    pointer-events: none; }
  .p-showcase .p-showcase__btn {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate3d(-50%, 50%, 0);
    transform: translate3d(-50%, 50%, 0);
    z-index: 100; }
  @media screen and (max-width: 767px) {
    .p-showcase {
      height: 400px;
      padding-top: 180px; }
      .p-showcase h2 {
        margin-bottom: 15px;
        font-size: 2rem;
        letter-spacing: 0.25em; }
      .p-showcase h3 {
        margin-bottom: 20px; }
      .p-showcase h4 img {
        width: 250px; } }
  @media screen and (max-width: 479px) {
    .p-showcase {
      height: 300px;
      padding-top: 90px; }
      .p-showcase h2 {
        margin-bottom: 10px;
        font-size: 1.6rem;
        letter-spacing: 0.1em; }
      .p-showcase h3 {
        margin-bottom: 30px;
        font-size: 1rem; }
      .p-showcase h4 img {
        width: 180px; } }

.p-contact {
  position: relative;
  padding: 360px 0 160px; }
  .p-contact.p-contact--sys {
    padding: 150px 0 160px; }
  .p-contact::before {
    content: '';
    position: absolute;
    top: 150px;
    left: 0;
    width: calc(790 / 1280 * 100%);
    height: 950px;
    background-image: url(../img/p-contact__bg.png);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: left top;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    z-index: -1; }
  .p-contact .p-contact__body {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
    .p-contact .p-contact__body .p-contact__content {
      width: calc(580 / 960 * 100%);
      height: auto;
      position: relative; }
      .p-contact .p-contact__body .p-contact__content .p-contact__heading {
        margin-bottom: 40px; }
        .p-contact .p-contact__body .p-contact__content .p-contact__heading p {
          font-size: 1.6rem;
          letter-spacing: 0.2em; }
      .p-contact .p-contact__body .p-contact__content .p-contact__form {
        position: relative; }
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="text"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="mail"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="tel"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form textarea {
          position: relative;
          width: 100%;
          margin-bottom: 10px;
          font-size: 1.6rem;
          padding: 16px 18px;
          background-color: #ffffff;
          -webkit-box-shadow: 8px -12px 32px 0px rgba(0, 0, 0, 0.07);
          box-shadow: 8px -12px 32px 0px rgba(0, 0, 0, 0.07); }
        .p-contact .p-contact__body .p-contact__content .p-contact__form textarea {
          margin-bottom: 20px;
          height: 284px; }
        .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__form-btn {
          position: relative;
          width: 100%;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
          flex-direction: row-reverse; }
          .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__form-btn.p-contact__form-btn--2 {
            position: relative;
            -webkit-box-pack: justify;
            -ms-flex-pack: justify;
            justify-content: space-between;
            margin-top: 18px;
            -webkit-box-orient: horizontal;
            -webkit-box-direction: normal;
            -ms-flex-direction: row;
            flex-direction: row; }
          .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__form-btn.p-contact__form-btn--err {
            position: relative;
            margin-top: 18px; }
          .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__form-btn.p-contact__form-btn--thanks {
            position: relative;
            margin-top: 18px; }
        .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__error {
          position: relative;
          font-size: 1.6rem;
          padding: 16px 18px;
          margin-bottom: 10px;
          color: #f00;
          border-bottom: solid 1px #d0d0d0; }
        .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap {
          position: relative;
          background-color: #ffffff;
          padding: 20px;
          width: 100%;
          -webkit-box-shadow: 8px 12px 32px 0px rgba(0, 0, 0, 0.07);
          box-shadow: 8px 12px 32px 0px rgba(0, 0, 0, 0.07); }
          .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap table {
            position: relative;
            width: 100%;
            font-family: a-otf-futo-go-b101-pr6n, sans-serif; }
            .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap table tr {
              border-bottom: solid 1px #cacaca;
              font-size: 1.6rem; }
              .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap table tr th {
                width: 140px;
                color: #9f9f9f; }
              .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap table tr th, .p-contact .p-contact__body .p-contact__content .p-contact__form .p-contact__table-wrap table tr td {
                padding-top: 12px;
                padding-bottom: 12px;
                padding: 12px 12px 12px 0;
                font-size: 1.6rem;
                vertical-align: top;
                line-height: 3.2rem;
                word-break: break-all; }
      .p-contact .p-contact__body .p-contact__content.p-contact__content--kakunin {
        position: relative; }
        .p-contact .p-contact__body .p-contact__content.p-contact__content--kakunin .p-contact__btn--sm {
          position: relative;
          width: 45%;
          max-width: 270px; }
      .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks {
        position: relative; }
        .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks .p-contact__form {
          text-align: center; }
          .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks .p-contact__form .p-contact__table-wrap {
            padding: 110px 15px 85px; }
            .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks .p-contact__form .p-contact__table-wrap .p-contact__checkmark {
              width: 40px;
              height: auto;
              margin: 0 auto 40px; }
            .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks .p-contact__form .p-contact__table-wrap h3 {
              font-size: 1.8rem;
              letter-spacing: 0.2em;
              margin-bottom: 60px; }
            .p-contact .p-contact__body .p-contact__content.p-contact__content--thanks .p-contact__form .p-contact__table-wrap p {
              font-size: 1.4rem;
              letter-spacing: 0.1em;
              line-height: 2.6rem; }
  @media screen and (max-width: 767px) {
    .p-contact {
      padding: 180px 0 80px; }
      .p-contact::before {
        top: 50px;
        width: 80%;
        height: 600px; }
      .p-contact .p-contact__body .p-contact__content {
        width: 100%; }
        .p-contact .p-contact__body .p-contact__content .p-contact__heading p {
          font-size: 1.4rem;
          letter-spacing: 0.1em; }
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="text"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="mail"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form input[type="tel"],
        .p-contact .p-contact__body .p-contact__content .p-contact__form textarea {
          -webkit-box-shadow: 8px -12px 32px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 8px -12px 32px 0px rgba(0, 0, 0, 0.1); } }
  @media screen and (max-width: 479px) {
    .p-contact {
      padding: 80px 0 40px; }
      .p-contact::before {
        height: 500px; }
      .p-contact .p-contact__body .p-contact__content {
        width: 100%; }
        .p-contact .p-contact__body .p-contact__content .p-contact__heading p {
          font-size: 1.4rem;
          letter-spacing: 0.1em; } }

.p-greeting {
  padding: 90px 0 50px;
  height: 720px;
  position: relative;
  background-image: url(../img/p-greeting__man2@3x.png);
  background-size: auto 560px;
  background-repeat: no-repeat;
  background-position: left calc(50% + 240px) bottom;
  background-color: #1e1f21; }
  .p-greeting .p-greeting__inner {
    position: relative;
    height: 100%; }
  .p-greeting h2 {
    position: absolute;
    right: 10px;
    top: 0;
    color: #fff;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 2.2rem;
    letter-spacing: 0.5em;
    text-align: justify;
    white-space: nowrap; }
  .p-greeting .p-greeting__txt {
    position: absolute;
    left: 130px;
    top: 150px;
    color: #fff;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 1.6rem;
    letter-spacing: 0.15em;
    line-height: 3.6rem;
    text-align: justify;
    white-space: nowrap; }
  .p-greeting h4 {
    position: absolute;
    left: 10px;
    bottom: 70px;
    color: #fff;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    font-size: 1.6rem;
    letter-spacing: 0.2em;
    text-align: justify;
    white-space: nowrap;
    line-height: 2.8rem; }
  .p-greeting .p-greeting__en {
    position: absolute;
    right: 250px;
    top: 0; }
  @media screen and (max-width: 767px) {
    .p-greeting {
      padding: 50px 0 30px;
      height: 650px;
      background-size: auto 600px;
      background-position: right -100px bottom; }
      .p-greeting h2 {
        top: 30px;
        font-size: 2rem;
        letter-spacing: 0.3em; }
      .p-greeting .p-greeting__txt {
        left: 50%;
        top: 150px;
        font-size: 1.2rem;
        line-height: 2.6rem;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%); }
      .p-greeting h4 {
        font-size: 1.4rem;
        letter-spacing: 0.15em;
        line-height: 2.4rem; }
      .p-greeting .p-greeting__en {
        right: auto;
        left: 50px;
        top: 0; } }
  @media screen and (max-width: 479px) {
    .p-greeting {
      padding: 90px 0 50px;
      height: auto;
      background-size: 200px auto;
      background-repeat: no-repeat;
      background-position: right bottom; }
      .p-greeting h2 {
        position: relative;
        right: auto;
        top: auto;
        -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
        text-orientation: inherit;
        font-size: 1.8rem;
        letter-spacing: 0.5em;
        text-align: justify;
        white-space: inherit;
        margin-bottom: 20px; }
      .p-greeting .p-greeting__txt {
        position: relative;
        right: auto;
        top: auto;
        color: #fff;
        -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
        text-orientation: inherit;
        font-size: 1.2rem;
        line-height: 2rem;
        letter-spacing: 0.2em;
        margin-bottom: 20px;
        white-space: inherit; }
      .p-greeting h4 {
        position: relative;
        left: auto;
        bottom: auto;
        -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
        text-orientation: inherit;
        font-size: 1.4rem;
        line-height: 2.4rem;
        white-space: inherit; }
      .p-greeting .p-greeting__en {
        position: absolute;
        right: 10px;
        bottom: -40px;
        left: auto;
        top: auto;
        width: 160px;
        height: auto; } }

.p-business {
  position: relative;
  background-color: #ffffff;
  padding: 180px 0 0; }
  @media screen and (max-width: 767px) {
    .p-business {
      padding: 120px 0 0; } }
  .p-business .p-business__heading {
    position: relative;
    text-align: center;
    padding-bottom: 10px; }
    .p-business .p-business__heading h2 {
      font-size: 5.6rem;
      letter-spacing: 0.05em;
      font-weight: lighter;
      color: #454545; }
    @media screen and (max-width: 767px) {
      .p-business .p-business__heading h2 {
        font-size: 4rem; } }
    @media screen and (max-width: 479px) {
      .p-business .p-business__heading h2 {
        font-size: 2.6rem; } }
  .p-business .p-business-article {
    position: relative; }
    .p-business .p-business-article .p-business-article__heading {
      position: relative;
      width: 100%;
      margin: 0 auto 50px; }
      .p-business .p-business-article .p-business-article__heading .p-business-article__num {
        position: relative;
        width: 100%;
        text-align: center;
        font-style: italic;
        font-size: 9.8rem;
        -webkit-font-feature-settings: "palt";
        font-feature-settings: "palt";
        margin-bottom: 40px; }
        .p-business .p-business-article .p-business-article__heading .p-business-article__num span {
          vertical-align: super;
          font-size: 4.3rem; }
      .p-business .p-business-article .p-business-article__heading .p-business-article__en {
        font-weight: 900;
        font-size: 1.89rem;
        line-height: 3.05rem;
        letter-spacing: 0.64em;
        text-align: center;
        margin: 0 auto 45px;
        opacity: 0.3; }
      .p-business .p-business-article .p-business-article__heading .p-business-article__txt {
        position: relative;
        text-align: center;
        font-size: 1.8rem;
        line-height: 4.9rem;
        letter-spacing: 0.05em; }
    .p-business .p-business-article .p-business-article__body {
      position: relative; }
    .p-business .p-business-article.p-business-article--no {
      padding: 140px 0 170px;
      color: #454545;
      position: relative; }
      .p-business .p-business-article.p-business-article--no::before {
        content: '';
        display: block;
        position: absolute;
        z-index: 0;
        height: 384px;
        width: 572px;
        top: -100px;
        left: 50%;
        -webkit-transform: translateX(calc(-100% - 35px));
        -ms-transform: translateX(calc(-100% - 35px));
        transform: translateX(calc(-100% - 35px));
        background-image: url(../img/p-business__bg-nou50.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center; }
      .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn {
        position: relative;
        text-align: center; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn img {
          position: relative;
          margin: 0 auto;
          z-index: 2;
          pointer-events: none; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn .p-business-article__btn {
          position: relative;
          margin: -37px auto 0;
          z-index: 1; }
    .p-business .p-business-article.p-business-article--ryo {
      background-color: #1b3a32;
      background-image: url(../img/p-business__bg-ryo-txts.png);
      background-size: auto;
      background-repeat: no-repeat;
      background-position: center top 100px;
      color: #ffffff;
      padding: 190px 0;
      position: relative; }
      .p-business .p-business-article.p-business-article--ryo::before {
        content: '';
        display: block;
        position: absolute;
        z-index: 0;
        height: 384px;
        width: 572px;
        top: -100px;
        left: 50%;
        -webkit-transform: translateX(calc(-100% - 35px));
        -ms-transform: translateX(calc(-100% - 35px));
        transform: translateX(calc(-100% - 35px));
        background-image: url(../img/p-business__bg-ryo50.png);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center center; }
      .p-business .p-business-article.p-business-article--ryo a {
        color: #feffd1;
        text-decoration: underline; }
        .p-business .p-business-article.p-business-article--ryo a:hover {
          opacity: 0.8; }
    @media screen and (max-width: 767px) {
      .p-business .p-business-article .p-business-article__heading {
        margin: 0 auto 30px; }
        .p-business .p-business-article .p-business-article__heading .p-business-article__num {
          font-size: 6.2rem;
          margin-bottom: 30px; }
          .p-business .p-business-article .p-business-article__heading .p-business-article__num span {
            font-size: 2.3rem; }
        .p-business .p-business-article .p-business-article__heading .p-business-article__en {
          line-height: 2.55rem;
          letter-spacing: 0.32em;
          margin: 0 auto 30px; }
        .p-business .p-business-article .p-business-article__heading .p-business-article__txt {
          font-size: 1.4rem;
          line-height: 3.9rem; }
      .p-business .p-business-article.p-business-article--no {
        padding: 80px 0 100px; }
        .p-business .p-business-article.p-business-article--no::before {
          height: 230.4px;
          width: 343.2px;
          top: -50px; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn img {
          width: 360px;
          height: auto; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn .p-business-article__btn {
          margin: -32px auto 0; }
      .p-business .p-business-article.p-business-article--ryo {
        background-size: 90% auto;
        background-position: center top 60px;
        padding: 120px 0; }
        .p-business .p-business-article.p-business-article--ryo::before {
          height: 230.4px;
          width: 343.2px;
          top: -50px; } }
    @media screen and (max-width: 479px) {
      .p-business .p-business-article .p-business-article__heading .p-business-article__num {
        font-size: 4rem;
        margin-bottom: 20px; }
        .p-business .p-business-article .p-business-article__heading .p-business-article__num span {
          font-size: 1.6rem; }
      .p-business .p-business-article .p-business-article__heading .p-business-article__en {
        font-size: 1.3rem;
        line-height: 2rem;
        letter-spacing: 0.2em; }
      .p-business .p-business-article .p-business-article__heading .p-business-article__txt {
        font-size: 1.4rem;
        line-height: 2.6rem; }
      .p-business .p-business-article.p-business-article--no {
        padding: 60px 0; }
        .p-business .p-business-article.p-business-article--no::before {
          height: 138px;
          width: 206px;
          top: -50px; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn img {
          width: 240px;
          height: auto; }
        .p-business .p-business-article.p-business-article--no .p-business-article__shop-btn .p-business-article__btn {
          margin: -21px auto 0; }
      .p-business .p-business-article.p-business-article--ryo {
        padding: 80px 0; }
        .p-business .p-business-article.p-business-article--ryo::before {
          height: 138px;
          width: 206px;
          top: -50px; } }
  .p-business .p-about-ryokyo {
    position: relative;
    width: 100%;
    background-color: #ffffff;
    color: #000000;
    padding: 100px 90px 96px;
    margin-bottom: 130px; }
    .p-business .p-about-ryokyo .p-about-ryokyo__ttl {
      text-align: center;
      font-size: 2.4rem;
      line-height: 4rem;
      letter-spacing: 0.2em;
      margin-bottom: 80px; }
    .p-business .p-about-ryokyo .p-about-ryokyo__txt {
      font-size: 1.4rem;
      line-height: 4rem;
      letter-spacing: 0.05em;
      margin-bottom: 70px; }
    .p-business .p-about-ryokyo img {
      border-bottom: solid 2px #000000;
      margin-bottom: 40px; }
    .p-business .p-about-ryokyo .p-about-ryokyo__faq {
      position: relative; }
      .p-business .p-about-ryokyo .p-about-ryokyo__faq h4 {
        text-align: center;
        font-size: 1.8rem;
        line-height: 4rem;
        letter-spacing: 0.2em;
        margin-bottom: 55px; }
      .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list {
        position: relative; }
        .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item {
          position: relative;
          margin-bottom: 1px; }
          .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head {
            position: relative;
            width: 100%;
            font-size: 1.4rem;
            line-height: 2.4rem;
            padding: 8px 20px;
            color: #ffffff;
            background-color: #1b3a32;
            cursor: pointer; }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head:hover {
              opacity: 0.9; }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head::after {
              content: 'ー';
              font-size: 1.8rem;
              line-height: 4rem;
              font-family: a-otf-futo-go-b101-pr6n, sans-serif;
              position: absolute;
              right: 20px;
              top: 50%;
              -webkit-transform: translateY(-50%);
              -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head + .p-about-ryokyo__faq-item__body {
              max-height: 0; }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head.open::after {
              content: '＋'; }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head.open + .p-about-ryokyo__faq-item__body {
              max-height: 500px; }
          .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__body {
            position: relative;
            width: 100%;
            background-color: #e2e6e5;
            overflow: hidden;
            -webkit-transition: all 0.6s ease;
            -o-transition: all 0.6s ease;
            transition: all 0.6s ease; }
            .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__body p {
              font-size: 1.4rem;
              line-height: 2.4rem;
              padding: 15px 22px 25px;
              color: #1b3a32;
              font-weight: normal; }
    @media screen and (max-width: 767px) {
      .p-business .p-about-ryokyo {
        padding: 60px 45px 60px;
        margin-bottom: 80px; } }
    @media screen and (max-width: 479px) {
      .p-business .p-about-ryokyo {
        padding: 60px 15px 60px; }
        .p-business .p-about-ryokyo .p-about-ryokyo__ttl {
          font-size: 1.6rem;
          margin-bottom: 30px; }
        .p-business .p-about-ryokyo .p-about-ryokyo__txt {
          font-size: 1.2rem;
          line-height: 2.8rem;
          margin-bottom: 40px; }
        .p-business .p-about-ryokyo .p-about-ryokyo__faq h4 {
          font-size: 1.6rem;
          line-height: 3rem;
          letter-spacing: 0.1em;
          margin-bottom: 30px; }
        .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head {
          font-size: 1.2rem;
          line-height: 2rem;
          padding: 8px 10px; }
          .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__head::after {
            content: 'ー';
            font-size: 1.2rem;
            line-height: 2rem;
            right: 10px; }
        .p-business .p-about-ryokyo .p-about-ryokyo__faq .p-about-ryokyo__faq-list .p-about-ryokyo__faq-item .p-about-ryokyo__faq-item__body p {
          font-size: 1.2rem;
          line-height: 2rem;
          padding: 15px 11px 15px; } }
  .p-business .p-cando {
    position: relative;
    text-align: center;
    margin-bottom: 160px; }
    .p-business .p-cando .p-cando__ttl {
      font-size: 5.6rem;
      letter-spacing: 0.05em;
      font-weight: 100;
      margin-bottom: 40px; }
    .p-business .p-cando .p-cando__ttl--ja {
      font-size: 1.6rem;
      line-height: 4rem;
      letter-spacing: 0.3em;
      margin-bottom: 150px; }
    .p-business .p-cando .p-cando-lists {
      position: relative;
      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; }
      .p-business .p-cando .p-cando-lists .p-cando-list {
        position: relative;
        width: 27%; }
        @media screen and (min-width: 768px) {
          .p-business .p-cando .p-cando-lists .p-cando-list:nth-child(2) {
            width: 38%;
            border-left: solid 1px #446e63;
            border-right: solid 1px #446e63;
            padding: 0 45px; } }
        .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading {
          position: relative;
          padding-bottom: 60px;
          margin-bottom: 40px; }
          .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading h5 {
            font-size: 1.8rem;
            line-height: 2.4rem;
            letter-spacing: 0.2em;
            margin-bottom: 10px; }
          .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading p {
            font-size: 1.4rem;
            line-height: 2.0rem;
            letter-spacing: 0.1em; }
          .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading::after {
            content: '';
            display: block;
            width: 16px;
            height: 34px;
            border: 8px solid transparent;
            border-top: 17px solid #ffffff;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            position: absolute;
            bottom: 0;
            left: 50%;
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: translateX(-50%); }
        .p-business .p-cando .p-cando-lists .p-cando-list ul {
          position: relative; }
          .p-business .p-cando .p-cando-lists .p-cando-list ul li {
            position: relative;
            height: 300px;
            margin-bottom: 38px; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li img {
              position: relative;
              width: 82px;
              height: auto;
              margin: 0 auto 28px; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li h6 {
              font-size: 2.2rem;
              line-height: 2.8rem;
              letter-spacing: 0.15em;
              margin-bottom: 25px; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li p {
              font-size: 1.3rem;
              line-height: 2.3rem;
              text-align: left; }
    @media screen and (max-width: 767px) {
      .p-business .p-cando {
        margin-bottom: 100px; }
        .p-business .p-cando .p-cando__ttl {
          font-size: 4rem;
          margin-bottom: 30px; }
        .p-business .p-cando .p-cando__ttl--ja {
          font-size: 1.4rem;
          line-height: 3rem;
          letter-spacing: 0.15em;
          margin-bottom: 100px; }
        .p-business .p-cando .p-cando-lists .p-cando-list {
          position: relative;
          width: 100%;
          margin: 0 auto 50px;
          border-bottom: solid 1px #446e63; }
          .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading {
            position: relative;
            padding-bottom: 60px;
            margin-bottom: 40px; }
          .p-business .p-cando .p-cando-lists .p-cando-list ul {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -ms-flex-pack: distribute;
            justify-content: space-around;
            -ms-flex-wrap: wrap;
            flex-wrap: wrap; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li {
              width: 40%;
              height: auto;
              margin-bottom: 50px; }
              .p-business .p-cando .p-cando-lists .p-cando-list ul li h6 {
                font-size: 1.6rem;
                margin-bottom: 15px; }
              .p-business .p-cando .p-cando-lists .p-cando-list ul li p {
                font-size: 1.2rem; } }
    @media screen and (max-width: 479px) {
      .p-business .p-cando {
        margin-bottom: 40px; }
        .p-business .p-cando .p-cando__ttl {
          font-size: 2.6rem;
          margin-bottom: 30px; }
        .p-business .p-cando .p-cando__ttl--ja {
          letter-spacing: 0.1em;
          margin-bottom: 60px; }
        .p-business .p-cando .p-cando-lists .p-cando-list {
          position: relative;
          width: 100%;
          margin: 0 auto 50px;
          border-bottom: solid 1px #446e63; }
          .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading {
            position: relative;
            padding-bottom: 60px;
            margin-bottom: 40px; }
            .p-business .p-cando .p-cando-lists .p-cando-list .p-cando-list__heading h5 {
              font-size: 1.6rem; }
          .p-business .p-cando .p-cando-lists .p-cando-list ul li {
            width: 90%;
            height: auto;
            margin-bottom: 50px; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li h6 {
              font-size: 1.6rem;
              margin-bottom: 15px; }
            .p-business .p-cando .p-cando-lists .p-cando-list ul li p {
              font-size: 1.2rem; } }
  .p-business .p-plan {
    position: relative;
    text-align: center;
    margin-bottom: 160px; }
    .p-business .p-plan .p-plan__ttl {
      font-size: 5.6rem;
      letter-spacing: 0.05em;
      font-weight: 100;
      margin-bottom: 40px; }
    .p-business .p-plan .p-plan__ttl--ja {
      font-size: 1.6rem;
      line-height: 4rem;
      letter-spacing: 0.3em;
      margin-bottom: 150px; }
    .p-business .p-plan .p-plan-list .p-plan-item {
      position: relative; }
      .p-business .p-plan .p-plan-list .p-plan-item + .p-plan-item {
        padding-top: 150px; }
      .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading {
        position: relative;
        text-align: center;
        padding-bottom: 120px;
        margin-bottom: 40px; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading::after {
          content: '';
          display: block;
          background-image: url(../img/p-businessplan__arw.png);
          background-repeat: no-repeat;
          background-position: center center;
          background-size: cover;
          width: 81px;
          height: 84px;
          position: absolute;
          bottom: 0;
          left: 50%;
          -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
          transform: translateX(-50%); }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__case {
          font-size: 3.3rem;
          font-weight: 100;
          letter-spacing: 0.05em;
          margin-bottom: 20px; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__case span {
            display: block;
            font-size: 8rem;
            font-weight: 100;
            letter-spacing: 0.05em;
            -webkit-transform: translateX(0.05em);
            -ms-transform: translateX(0.05em);
            transform: translateX(0.05em); }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__ttl {
          position: relative;
          font-size: 1.4rem;
          letter-spacing: 0.1em;
          margin-bottom: 25px; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__ttl::before {
            position: relative;
            display: inline;
            content: '['; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__ttl::after {
            position: relative;
            display: inline;
            content: ']'; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__txt {
          position: relative;
          text-align: center;
          font-size: 2rem;
          line-height: 3.4rem;
          font-weight: bold; }
      .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body {
        position: relative; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body img {
          margin-bottom: 70px;
          position: relative;
          text-align: center; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body .p-plan-item__body-txt {
          position: relative;
          font-size: 1.6rem;
          line-height: 4rem;
          letter-spacing: 0.1em;
          text-align: left; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body .p-plan-item__body-txt a {
            text-decoration: underline;
            color: inherit; }
    @media screen and (max-width: 767px) {
      .p-business .p-plan {
        margin-bottom: 80px; }
        .p-business .p-plan .p-plan__ttl {
          font-size: 4rem;
          margin-bottom: 30px; }
        .p-business .p-plan .p-plan__ttl--ja {
          font-size: 1.4rem;
          line-height: 3rem;
          letter-spacing: 0.15em;
          margin-bottom: 100px; }
        .p-business .p-plan .p-plan-list .p-plan-item + .p-plan-item {
          padding-top: 100px; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading {
          padding-bottom: 80px;
          margin-bottom: 20px; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading::after {
            width: 54px;
            height: 56px; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__case {
            font-size: 2.4rem; }
            .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__case span {
              font-size: 6rem; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__ttl {
            font-size: 1.2rem; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__txt {
            font-size: 1.4rem;
            line-height: 2.4rem; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body {
          position: relative; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body img {
            margin-bottom: 40px;
            width: 100%;
            height: auto; }
          .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body .p-plan-item__body-txt {
            font-size: 1.4rem;
            line-height: 2.4rem; } }
    @media screen and (max-width: 479px) {
      .p-business .p-plan {
        margin-bottom: 80px; }
        .p-business .p-plan .p-plan__ttl {
          font-size: 2.6rem;
          margin-bottom: 30px; }
        .p-business .p-plan .p-plan__ttl--ja {
          letter-spacing: 0.1em;
          margin-bottom: 60px; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__heading .p-plan-item__txt {
          font-size: 1.2rem;
          line-height: 2rem; }
        .p-business .p-plan .p-plan-list .p-plan-item .p-plan-item__body .p-plan-item__body-txt {
          font-size: 1.2rem;
          line-height: 2rem; } }

.p-application {
  padding: 150px 0;
  background: -webkit-linear-gradient(322deg, #66929c, #b3cdb0);
  background: -o-linear-gradient(322deg, #66929c, #b3cdb0);
  background: linear-gradient(128deg, #66929c, #b3cdb0); }
  .p-application .p-application__content {
    position: relative;
    width: 100%;
    background-color: #ffffff;
    color: #000000;
    padding: 50px 90px 100px; }
    .p-application .p-application__content.p-application__content--form {
      margin-bottom: 10px; }
    .p-application .p-application__content .p-application__heading {
      position: relative;
      text-align: center;
      margin-bottom: 50px; }
      .p-application .p-application__content .p-application__heading h3 {
        font-size: 5.6rem;
        letter-spacing: 0.05em;
        font-weight: 100;
        margin-bottom: 20px; }
      .p-application .p-application__content .p-application__heading p {
        font-size: 1.6rem;
        line-height: 3.0rem;
        letter-spacing: 0.3em; }
    .p-application .p-application__content .p-application__body .p-apply {
      position: relative;
      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;
      width: auto; }
      .p-application .p-application__content .p-application__body .p-apply .p-apply__col {
        position: relative;
        width: auto;
        height: 100%; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col.p-apply__col--right {
          position: relative;
          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;
          width: 380px; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col.p-apply__col--left {
          position: relative;
          width: 361px; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 {
          font-size: 1.3rem;
          width: 334px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 td {
            min-width: 90px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 tbody td {
            text-align: right; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2,
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 {
          font-size: 1.3rem;
          width: 170px;
          margin-bottom: 10px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 td,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 th,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 td {
            min-width: 80px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tbody th,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tbody th {
            padding-right: 6px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tbody td,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tbody td {
            text-align: right;
            padding-right: 10px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot {
            border-bottom: solid 1px #000000; }
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot td,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot th,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot td {
              border: none;
              padding-top: 10px;
              padding-bottom: 8px; }
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot td,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot td {
              text-align: right;
              padding-right: 10px; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__caution {
          position: relative;
          font-size: 1.2rem;
          letter-spacing: 0.05em;
          margin-top: 6px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__caution.p-apply__caution--02 {
            padding-top: 30px; }
    .p-application .p-application__content .p-application__body .p-apply-form {
      position: relative; }
      .p-application .p-application__content .p-application__body .p-apply-form dl {
        position: relative;
        margin-bottom: 20px; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dt {
          font-size: 1.6rem;
          margin-bottom: 10px;
          color: #9f9f9f; }
          .p-application .p-application__content .p-application__body .p-apply-form dl dt span {
            color: #c08b8b; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dd {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
          .p-application .p-application__content .p-application__body .p-apply-form dl dd label {
            font-size: 1.6rem;
            color: #9f9f9f;
            font-weight: normal;
            margin-right: 65px; }
          .p-application .p-application__content .p-application__body .p-apply-form dl dd .p-apply-form__radio {
            padding-top: 10px; }
        .p-application .p-application__content .p-application__body .p-apply-form dl input[type="text"], .p-application .p-application__content .p-application__body .p-apply-form dl input[type="tel"], .p-application .p-application__content .p-application__body .p-apply-form dl input[type="mail"], .p-application .p-application__content .p-application__body .p-apply-form dl textarea {
          -webkit-box-shadow: 0 0 32px 0px rgba(0, 0, 0, 0.07);
          box-shadow: 0 0 32px 0px rgba(0, 0, 0, 0.07);
          width: 100%;
          position: relative;
          height: 48px;
          background-color: #ffffff;
          padding-left: 18px;
          padding-right: 18px;
          font-size: 1.6rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl textarea {
          padding-top: 18px;
          padding-bottom: 18px;
          height: 284px; }
        .p-application .p-application__content .p-application__body .p-apply-form dl .p-apply-form__checkdiv {
          -webkit-box-shadow: 0 0 32px 0px rgba(0, 0, 0, 0.07);
          box-shadow: 0 0 32px 0px rgba(0, 0, 0, 0.07);
          width: 100%;
          position: relative;
          min-height: 48px;
          height: auto;
          background-color: #ffffff;
          padding-top: 12px;
          padding-bottom: 12px;
          padding-left: 18px;
          padding-right: 18px;
          font-size: 1.6rem;
          line-height: 2.4rem; }
      .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
        flex-direction: row-reverse;
        padding-top: 50px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap button,
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap input[type="button"],
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap input[type="submit"] {
          max-width: 267px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap.p-apply-form__btn-wrap2 {
          -webkit-box-orient: horizontal;
          -webkit-box-direction: normal;
          -ms-flex-direction: row;
          flex-direction: row;
          -webkit-box-pack: justify;
          -ms-flex-pack: justify;
          justify-content: space-between; }
          .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap.p-apply-form__btn-wrap2 button,
          .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap.p-apply-form__btn-wrap2 input[type="button"] {
            width: 46%;
            max-width: 267px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap.p-apply-form__btn-wrap--thanks {
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center; }
      .p-application .p-application__content .p-application__body .p-apply-form hr {
        margin: 25px 0;
        border: none;
        border-top: solid 1px #d0d0d0; }
      .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__caution {
        position: relative;
        font-size: 1.3rem;
        line-height: 1.8rem;
        color: #9f9f9f; }
      .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__error {
        position: relative;
        font-size: 1.6rem;
        line-height: 2.4rem;
        padding: 16px 18px;
        color: #f00;
        border-bottom: solid 1px #d0d0d0; }
      .p-application .p-application__content .p-application__body .p-apply-form.p-apply-form--thanks {
        text-align: center; }
        .p-application .p-application__content .p-application__body .p-apply-form.p-apply-form--thanks .p-application__checkmark {
          width: 40px;
          height: auto;
          margin: 0 auto 40px; }
        .p-application .p-application__content .p-application__body .p-apply-form.p-apply-form--thanks h3 {
          font-size: 1.8rem;
          letter-spacing: 0.2em;
          margin-bottom: 60px; }
        .p-application .p-application__content .p-application__body .p-apply-form.p-apply-form--thanks p {
          font-size: 1.4rem;
          letter-spacing: 0.1em;
          line-height: 2.6rem; }
    .p-application .p-application__content .p-application__body .p-apply-insurance {
      position: relative;
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 70px; }
      .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 48%;
        height: 180px;
        font-size: 1.6rem;
        letter-spacing: 0.2em; }
        .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn.p-apply-insurance__btn--01 {
          background-color: #1b3a32;
          color: #ffffff; }
        .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn.p-apply-insurance__btn--02 {
          background-color: #c08b8b;
          color: #000000; }
        .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn .p-apply-insurance__btn-mask {
          position: absolute;
          top: 0;
          left: 0;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          width: 100%;
          height: 100%;
          background-color: rgba(0, 0, 0, 0.8);
          opacity: 0;
          -webkit-transition: 0.4s;
          -o-transition: 0.4s;
          transition: 0.4s; }
        .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn:hover .p-apply-insurance__btn-mask {
          opacity: 1; }
    .p-application .p-application__content .p-application__body .p-application__fax {
      position: relative;
      text-align: center;
      font-size: 2.6rem;
      font-weight: bold;
      letter-spacing: 0.1em; }
  @media screen and (max-width: 959px) {
    .p-application .p-application__content .p-application__body .p-apply .p-apply__col {
      width: 100%;
      margin: 0 auto 40px; }
      .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__caution.p-apply__caution--02 {
        padding-top: 0px; } }
  @media screen and (max-width: 767px) {
    .p-application {
      padding: 100px 0; }
      .p-application .p-application__content {
        padding: 50px 45px 60px; }
        .p-application .p-application__content .p-application__heading h3 {
          font-size: 4rem;
          margin-bottom: 10px; }
        .p-application .p-application__content .p-application__heading p {
          font-size: 1.4rem;
          line-height: 3rem;
          letter-spacing: 0.15em; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col {
          overflow-x: scroll;
          overflow-y: hidden; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 {
            font-size: 1.2rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dt {
          font-size: 1.4rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dd label {
          font-size: 1.4rem;
          margin-right: 35px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap {
          position: relative;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -webkit-box-orient: horizontal;
          -webkit-box-direction: reverse;
          -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
          padding-top: 50px; }
          .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__btn-wrap button {
            max-width: 267px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__caution {
          font-size: 1.1rem;
          line-height: 1.6rem; }
        .p-application .p-application__content .p-application__body .p-apply-insurance {
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          margin-bottom: 40px; }
          .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn {
            width: 80%;
            height: 100px;
            margin-bottom: 20px; }
            .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn .p-apply-insurance__btn-mask img {
              width: 50px;
              height: auto; }
        .p-application .p-application__content .p-application__body .p-application__fax {
          font-size: 2rem; } }
  @media screen and (max-width: 479px) {
    .p-application {
      padding: 80px 0; }
      .p-application .p-application__content {
        padding: 50px 15px 80px; }
        .p-application .p-application__content .p-application__heading {
          position: relative;
          text-align: center;
          margin-bottom: 30px;
          word-break: break-all; }
          .p-application .p-application__content .p-application__heading h3 {
            font-size: 3rem; }
          .p-application .p-application__content .p-application__heading p {
            font-size: 1.2rem;
            letter-spacing: 0.1em; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col.p-apply__col--right {
          width: 100%; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col.p-apply__col--left {
          width: 100%; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 {
          width: 100%;
          font-size: 1.2rem; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table1 td {
            padding: 4px 8px;
            min-width: auto; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2,
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 {
          font-size: 1.2rem;
          width: 80%;
          margin-bottom: 0; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 td,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 th,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 td {
            min-width: auto; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tbody th,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tbody th {
            padding: 4px 8px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tbody td,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tbody td {
            padding: 4px 8px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot,
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot {
            border-bottom: solid 1px #000000; }
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot th, .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot td,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot th,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot td {
              border: none;
              padding-top: 10px;
              padding-bottom: 8px; }
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 tfoot td,
            .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table3 tfoot td {
              text-align: right;
              padding-right: 10px; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__table2 {
          margin-bottom: 40px; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .c-table__tr--space {
          display: none; }
        .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__caution {
          position: relative;
          font-size: 1.2rem;
          letter-spacing: 0.05em;
          margin-top: 6px; }
          .p-application .p-application__content .p-application__body .p-apply .p-apply__col .p-apply__caution.p-apply__caution--02 {
            padding-top: 0; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dt {
          font-size: 1.2rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl dd label {
          font-size: 1.2rem;
          margin-right: 35px; }
        .p-application .p-application__content .p-application__body .p-apply-form dl input[type="text"], .p-application .p-application__content .p-application__body .p-apply-form dl input[type="tel"], .p-application .p-application__content .p-application__body .p-apply-form dl input[type="mail"], .p-application .p-application__content .p-application__body .p-apply-form dl textarea {
          height: 40px;
          padding-left: 12px;
          padding-right: 12px;
          font-size: 1.4rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl textarea {
          padding-top: 12px;
          padding-bottom: 12px;
          height: 284px;
          font-size: 1.4rem; }
        .p-application .p-application__content .p-application__body .p-apply-form dl.p-apply-form__btn-wrap {
          padding-top: 40px; }
          .p-application .p-application__content .p-application__body .p-apply-form dl.p-apply-form__btn-wrap button {
            max-width: 267px; }
        .p-application .p-application__content .p-application__body .p-apply-form .p-apply-form__caution {
          font-size: 1rem;
          line-height: 1.6rem; }
        .p-application .p-application__content .p-application__body .p-apply-insurance {
          margin-bottom: 20px; }
          .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn {
            width: 80%;
            height: 100px;
            font-size: 1.2rem;
            text-align: center; }
            .p-application .p-application__content .p-application__body .p-apply-insurance .p-apply-insurance__btn .p-apply-insurance__btn-mask img {
              width: 30px;
              height: auto; }
        .p-application .p-application__content .p-application__body .p-application__fax {
          font-size: 2rem; } }

.p-profile-image {
  position: relative;
  height: 720px;
  background-image: url(../img/p-profile-img01@3x.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #1e1f21; }
  .p-profile-image .p-profile-image__inner {
    position: relative;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }
  .p-profile-image h2 {
    position: relative;
    color: #000;
    font-size: 5.6rem;
    letter-spacing: 0.05em;
    text-align: center;
    font-weight: 100; }
  @media screen and (max-width: 767px) {
    .p-profile-image {
      height: 480px; }
      .p-profile-image h2 {
        font-size: 4rem; } }
  @media screen and (max-width: 479px) {
    .p-profile-image {
      height: 300px; }
      .p-profile-image h2 {
        font-size: 3rem; } }

.p-profile {
  position: relative; }
  .p-profile .p-profile-inner {
    position: relative;
    margin: -100px auto 0;
    z-index: 10;
    max-width: 780px;
    background-color: #ffffff;
    padding: 100px 90px; }
    .p-profile .p-profile-inner .p-profile__content {
      position: relative;
      text-align: center;
      margin-bottom: 90px; }
      .p-profile .p-profile-inner .p-profile__content h3 {
        font-size: 2rem;
        line-height: 3.5rem;
        letter-spacing: 0.2em;
        margin-bottom: 35px; }
      .p-profile .p-profile-inner .p-profile__content p {
        font-size: 2rem;
        line-height: 3.5rem;
        letter-spacing: 0.2em; }
        .p-profile .p-profile-inner .p-profile__content p span {
          display: block;
          font-size: 1.6rem; }
    .p-profile .p-profile-inner hr {
      border: none;
      border-top: solid 1px #c8c8c8; }
    .p-profile .p-profile-inner .p-profile__data {
      position: relative;
      margin-top: 90px;
      color: #454545; }
      .p-profile .p-profile-inner .p-profile__data dl {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        margin-bottom: 30px; }
        .p-profile .p-profile-inner .p-profile__data dl dt, .p-profile .p-profile-inner .p-profile__data dl dd {
          font-size: 1.6rem;
          line-height: 3rem; }
        .p-profile .p-profile-inner .p-profile__data dl dt {
          width: 45%; }
  @media screen and (max-width: 767px) {
    .p-profile .p-profile-inner {
      margin: -60px auto 0;
      width: 90%;
      padding: 60px 45px; }
      .p-profile .p-profile-inner .p-profile__content {
        margin-bottom: 60px; }
      .p-profile .p-profile-inner .p-profile__data {
        margin-top: 60px; } }
  @media screen and (max-width: 479px) {
    .p-profile .p-profile-inner {
      margin: -30px auto 0;
      padding: 30px 15px; }
      .p-profile .p-profile-inner .p-profile__content {
        margin-bottom: 45px; }
        .p-profile .p-profile-inner .p-profile__content h3 {
          font-size: 1.6rem;
          letter-spacing: 0.15em;
          margin-bottom: 20px; }
        .p-profile .p-profile-inner .p-profile__content p {
          font-size: 1.2rem;
          line-height: 2.0rem;
          letter-spacing: 0.1em; }
          .p-profile .p-profile-inner .p-profile__content p span {
            display: block;
            font-size: 1rem; }
      .p-profile .p-profile-inner .p-profile__data {
        margin-top: 45px; }
        .p-profile .p-profile-inner .p-profile__data dl {
          margin-bottom: 20px;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          border-bottom: solid 1px #cccccc; }
          .p-profile .p-profile-inner .p-profile__data dl dt, .p-profile .p-profile-inner .p-profile__data dl dd {
            font-size: 1.2rem;
            line-height: 2.4rem;
            width: 100%; } }

.p-profile-btm-image {
  position: relative;
  width: 100%;
  height: 480px;
  background-image: url(../img/p-profile-img02@3x.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #1e1f21;
  margin-bottom: 100px;
  margin-top: -100px;
  z-index: 0; }
  @media screen and (max-width: 767px) {
    .p-profile-btm-image {
      height: 300px;
      margin-bottom: 70px;
      margin-top: -60px; } }
  @media screen and (max-width: 479px) {
    .p-profile-btm-image {
      height: 200px;
      margin-bottom: 50px;
      margin-top: -30px; } }

.u-none {
  display: none !important; }

.u-futogo {
  font-family: a-otf-futo-go-b101-pr6n, sans-serif; }

.u-midashigo {
  font-family: a-otf-midashi-go-mb31-pr6n, sans-serif; }

.u-tenmincho {
  font-family: ten-mincho-text, serif; }

/*# sourceMappingURL=style.css.map */