@charset "UTF-8";
html {
  font-size: 62.5%;
}

.main-area {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  color: #000;
  font-weight: normal;
}
.main-area * {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.main-area *::before, .main-area *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.main-area picture {
  display: block;
}
.main-area table {
  border-collapse: collapse;
}
.main-area source, .main-area img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  image-rendering: -webkit-optimize-contrast;
}
.main-area a {
  overflow: visible;
  display: block;
}
.main-area a img {
  border: none;
}
@media only screen and (min-width: 768px) {
  .main-area a {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .main-area a:hover {
    opacity: 0.7;
  }
}
@media only screen and (min-width: 768px) {
  .main-area .sp_only_br {
    display: none !important;
  }
}

.breadcrumb__list {
  padding-bottom: calc(18 * (100vw / 750));
}
@media only screen and (min-width: 768px) {
  .breadcrumb__list {
    padding-bottom: 1.6rem;
  }
}

@media only screen and (max-width: 767px) {
  #page-body.bg {
    background-image: url(../img/page_sp.jpg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center top calc(20 * (100vw / 750));
  }
}
@media only screen and (min-width: 768px) {
  #page-body.bg {
    background-image: url(../img/page_pc.jpg);
    background-repeat: no-repeat;
    background-size: auto;
    background-position: center calc(-70 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  #page-body.bg {
    background-position: center -7rem;
  }
}
#page-body.bg .main-area {
  opacity: 0.7;
}

/* autoprefixer grid: no-autoplace */
/*
  ********** ▼ LP Top ▼ **********
*/
.lptop__keyvisual {
  width: calc(735 * (100vw / 750));
  margin: 0 auto;
}
.lptop__lead {
  width: calc(708 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(76 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.8461538462;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px) {
  .lptop__keyvisual {
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
  }
  .lptop__lead {
    width: calc(930 * (100vw / 1400));
    max-width: 93rem;
    margin-top: calc(52 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 1.8571428571;
  }
}
@media only screen and (min-width: 1400px) {
  .lptop__lead {
    margin-top: 5.2rem;
    font-size: 1.4rem;
  }
}

/*
  ********** ▲ LP Top ▲ **********
*/
/*
  ********** ▼ Profile  ▼ **********
*/
.profile {
  width: calc(710 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(130 * (100vw / 750));
  padding: calc(80 * (100vw / 750)) calc(56 * (100vw / 750)) calc(70 * (100vw / 750));
  background-color: #b68954;
}
.profile__image {
  width: calc(350 * (100vw / 750));
  margin: 0 auto;
}
.profile__image img {
  border-radius: 50%;
}
.profile__text {
  margin-top: calc(48 * (100vw / 750));
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HiraMinProN", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", source-han-serif-japanese, serif;
  font-weight: 400;
  font-style: normal;
  color: #fff;
  letter-spacing: 0.15em;
}
.profile__text dt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.profile__text .profile-work {
  width: 100%;
  font-size: calc(26 * (100vw / 750));
}
.profile__text .profile-name-ja {
  margin-top: calc(16 * (100vw / 750));
  margin-right: calc(22 * (100vw / 750));
  font-size: calc(36 * (100vw / 750));
}
.profile__text .profile-name-en {
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(24 * (100vw / 750));
}
.profile__text .profile-detail {
  margin-top: calc(26 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.8461538462;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 768px) {
  .profile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: calc(942 * (100vw / 1400));
    max-width: 94.2rem;
    margin-top: calc(108 * (100vw / 1400));
    padding: calc(44 * (100vw / 1400)) calc(42 * (100vw / 1400));
  }
  .profile__image {
    width: calc(200 * (100vw / 1400));
    max-width: 20rem;
    margin: 0;
    margin-top: calc(16 * (100vw / 1400));
  }
  .profile__text {
    width: calc(630 * (100vw / 1400));
    max-width: 63rem;
    margin-top: 0;
  }
  .profile__text .profile-work {
    font-size: calc(14 * (100vw / 1400));
  }
  .profile__text .profile-name-ja {
    margin-top: calc(12 * (100vw / 1400));
    margin-right: calc(20 * (100vw / 1400));
    font-size: calc(24 * (100vw / 1400));
  }
  .profile__text .profile-name-en {
    font-size: calc(15 * (100vw / 1400));
  }
  .profile__text .profile-detail {
    margin-top: calc(20 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 1.8571428571;
  }
}
@media only screen and (min-width: 1400px) {
  .profile {
    margin-top: 10.8rem;
    padding: 4.4rem 4.2rem;
  }
  .profile__image {
    margin-top: 1.6rem;
  }
  .profile__text dt {
    -webkit-box-align: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
  .profile__text .profile-work {
    font-size: 1.4rem;
  }
  .profile__text .profile-name-ja {
    margin-top: 1.2rem;
    margin-right: 2rem;
    font-size: 2.4rem;
  }
  .profile__text .profile-name-en {
    font-size: 1.5rem;
  }
  .profile__text .profile-detail {
    margin-top: 2rem;
    font-size: 1.4rem;
  }
}

/*
  ********** ▲ Profile  ▲ **********
*/
/*
  ********** ▼ Coat ▼ **********
*/
.coat {
  width: calc(750 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(140 * (100vw / 750));
}
@media only screen and (min-width: 768px) {
  .coat {
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
    margin-top: calc(142 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  .coat {
    margin-top: 14.2rem;
  }
}

/*
  ********** ▲ Coat ▲ **********
*/
/*
  ********** ▼ Style 01 ▼ **********
*/
.style01 {
  margin-top: calc(137 * (100vw / 750));
}
.style01 h2 {
  width: calc(630 * (100vw / 750));
  margin: 0 auto;
}
.style01__mv {
  width: calc(750 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(68 * (100vw / 750));
}
.style01__mv--text {
  margin-top: calc(58 * (100vw / 750));
  margin-left: calc(70 * (100vw / 750));
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HiraMinProN", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", source-han-serif-japanese, serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(48 * (100vw / 750));
  line-height: 1.7;
  letter-spacing: 0.1em;
}
.style01__mv--text span {
  display: block;
  margin-top: calc(16 * (100vw / 750));
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(21 * (100vw / 750));
  letter-spacing: 0.1em;
}
.style01__main {
  margin-top: calc(70 * (100vw / 750));
}
.style01__main--grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(325 * (100vw / 750)) calc(63 * (100vw / 750)) calc(324 * (100vw / 750));
  grid-template-columns: calc(325 * (100vw / 750)) calc(63 * (100vw / 750)) calc(324 * (100vw / 750));
  -ms-grid-rows: calc(361 * (100vw / 750)) calc(208 * (100vw / 750)) calc(47 * (100vw / 750));
  grid-template-rows: calc(361 * (100vw / 750)) calc(208 * (100vw / 750)) calc(47 * (100vw / 750));
  width: calc(712 * (100vw / 750));
  margin: 0 auto;
}
.style01__main--grid div {
  background-color: #fff;
}
.style01__main--grid div:nth-of-type(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 1/1/3/3;
}
.style01__main--grid div:nth-of-type(2) {
  z-index: 1;
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 2/2/4/4;
}
.style01__main--howto {
  width: calc(600 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(68 * (100vw / 750));
}
.style01__main--howto .howto_ttl {
  width: calc(253 * (100vw / 750));
  margin: 0 auto;
}
.style01__main--howto .howto_contents {
  position: relative;
  margin-top: calc(60 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.9230769231;
  letter-spacing: 0.05em;
}
.style01__main--howto .howto_contents::before, .style01__main--howto .howto_contents::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(55 * (100vw / 750));
  height: calc(55 * (100vw / 750));
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.style01__main--howto .howto_contents::before {
  top: calc(-40 * (100vw / 750));
  left: calc(-52 * (100vw / 750));
  background-image: url(../img/frame_left.png);
}
.style01__main--howto .howto_contents::after {
  bottom: calc(-40 * (100vw / 750));
  right: calc(-58 * (100vw / 750));
  background-image: url(../img/frame_right.png);
}
@media only screen and (min-width: 768px) {
  .style01 {
    margin-top: calc(158 * (100vw / 1400));
  }
  .style01 h2 {
    width: calc(636 * (100vw / 1400));
    max-width: 63.6rem;
  }
  .style01__mv {
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
    margin-top: calc(72 * (100vw / 1400));
  }
  .style01__mv--text {
    display: none;
  }
  .style01__main {
    position: relative;
    width: calc(943 * (100vw / 1400));
    max-width: 94.3rem;
    margin: 0 auto;
    margin-top: calc(80 * (100vw / 1400));
  }
  .style01__main--grid {
    -ms-grid-columns: calc(330 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(330 * (100vw / 1400));
    grid-template-columns: calc(330 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(330 * (100vw / 1400));
    -ms-grid-rows: calc(368 * (100vw / 1400)) calc(212 * (100vw / 1400)) calc(48 * (100vw / 1400));
    grid-template-rows: calc(368 * (100vw / 1400)) calc(212 * (100vw / 1400)) calc(48 * (100vw / 1400));
    width: calc(724 * (100vw / 1400));
    max-width: 72.4rem;
    margin: 0;
  }
  .style01__main--howto {
    position: absolute;
    top: calc(68 * (100vw / 1400));
    right: calc(56 * (100vw / 1400));
    width: calc(372 * (100vw / 1400));
    max-width: 37.2rem;
    margin: 0;
    margin-top: calc(0 * (100vw / 1400));
  }
  .style01__main--howto .howto_ttl {
    width: calc(181 * (100vw / 1400));
    max-width: 18.1rem;
  }
  .style01__main--howto .howto_contents {
    margin-top: calc(54 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2.1428571429;
  }
  .style01__main--howto .howto_contents::before, .style01__main--howto .howto_contents::after {
    width: calc(55 * (100vw / 1400));
    max-width: 5.5rem;
    height: calc(55 * (100vw / 1400));
    max-height: 5.5rem;
  }
  .style01__main--howto .howto_contents::before {
    top: calc(-38 * (100vw / 1400));
    left: calc(-56 * (100vw / 1400));
  }
  .style01__main--howto .howto_contents::after {
    bottom: calc(-42 * (100vw / 1400));
    right: calc(-56 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  .style01 {
    margin-top: 15.8rem;
  }
  .style01__mv {
    margin-top: 7.2rem;
  }
  .style01__main {
    margin-top: 8rem;
  }
  .style01__main--grid {
    -ms-grid-columns: 33rem 6.4rem 33rem;
    grid-template-columns: 33rem 6.4rem 33rem;
    -ms-grid-rows: 36.8rem 21.2rem 4.8rem;
    grid-template-rows: 36.8rem 21.2rem 4.8rem;
  }
  .style01__main--howto {
    top: 6.8rem;
    right: 5.6rem;
  }
  .style01__main--howto .howto_contents {
    margin-top: 5.4rem;
    font-size: 1.4rem;
  }
  .style01__main--howto .howto_contents::before {
    top: -3.8rem;
    left: -5.6rem;
  }
  .style01__main--howto .howto_contents::after {
    bottom: -4.2rem;
    right: -5.6rem;
  }
}

/*
  ********** ▲ Style 01 ▲ **********
*/
/*
  ********** ▼ Style 02 ▼ **********
*/
.style02 {
  margin-top: calc(186 * (100vw / 750));
}
.style02 h2 {
  width: calc(630 * (100vw / 750));
  margin: 0 auto;
}
.style02__flex {
  margin-top: calc(70 * (100vw / 750));
}
.style02__mv--text {
  margin-top: calc(54 * (100vw / 750));
  margin-left: calc(70 * (100vw / 750));
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HiraMinProN", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", source-han-serif-japanese, serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(48 * (100vw / 750));
  line-height: 1.7;
  letter-spacing: 0.1em;
}
.style02__mv--text span {
  display: block;
  margin-top: calc(10 * (100vw / 750));
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(22 * (100vw / 750));
  line-height: 2.3181818182;
  letter-spacing: 0.1em;
}
.style02__grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(252 * (100vw / 750)) calc(209 * (100vw / 750)) calc(252 * (100vw / 750));
  grid-template-columns: calc(252 * (100vw / 750)) calc(209 * (100vw / 750)) calc(252 * (100vw / 750));
  -ms-grid-rows: calc(231 * (100vw / 750)) calc(59 * (100vw / 750)) calc(291 * (100vw / 750));
  grid-template-rows: calc(231 * (100vw / 750)) calc(59 * (100vw / 750)) calc(291 * (100vw / 750));
  width: calc(713 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(50 * (100vw / 750));
}
.style02__grid div {
  background-color: #fff;
}
.style02__grid div:nth-of-type(1) {
  z-index: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 1/1/3/3;
}
.style02__grid div:nth-of-type(2) {
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 2/2/4/4;
}
.style02__howto {
  margin-top: calc(8 * (100vw / 750));
}
.style02__howto .howto_ttl {
  width: calc(253 * (100vw / 750));
  margin: 0 auto;
}
.style02__howto .howto_contents {
  position: relative;
  width: calc(600 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(54 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.9230769231;
  letter-spacing: 0.05em;
}
.style02__howto .howto_contents::before, .style02__howto .howto_contents::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(55 * (100vw / 750));
  height: calc(55 * (100vw / 750));
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.style02__howto .howto_contents::before {
  top: calc(-40 * (100vw / 750));
  left: calc(-52 * (100vw / 750));
  background-image: url(../img/frame_left.png);
}
.style02__howto .howto_contents::after {
  bottom: calc(-40 * (100vw / 750));
  right: calc(-58 * (100vw / 750));
  background-image: url(../img/frame_right.png);
}
@media only screen and (min-width: 768px) {
  .style02 {
    margin-top: calc(140 * (100vw / 1400));
  }
  .style02 h2 {
    width: calc(636 * (100vw / 1400));
    max-width: 63.6rem;
  }
  .style02__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
    margin: 0 auto;
    margin-top: calc(64 * (100vw / 1400));
  }
  .style02__mv {
    position: relative;
  }
  .style02__mv--image {
    width: calc(525 * (100vw / 1400));
    max-width: 52.5rem;
  }
  .style02__mv--text {
    position: absolute;
    top: calc(54 * (100vw / 1400));
    left: calc(-492 * (100vw / 1400));
    margin-top: 0;
    margin-left: 0;
    font-size: calc(36 * (100vw / 1400));
    line-height: 1.6;
  }
  .style02__mv--text span {
    margin-top: calc(6 * (100vw / 1400));
    font-size: calc(15 * (100vw / 1400));
    line-height: 3.4;
  }
  .style02__grid {
    -ms-grid-columns: calc(218 * (100vw / 1400)) calc(179 * (100vw / 1400)) calc(216 * (100vw / 1400));
    grid-template-columns: calc(218 * (100vw / 1400)) calc(179 * (100vw / 1400)) calc(216 * (100vw / 1400));
    -ms-grid-rows: calc(199 * (100vw / 1400)) calc(52 * (100vw / 1400)) calc(199 * (100vw / 1400));
    grid-template-rows: calc(199 * (100vw / 1400)) calc(52 * (100vw / 1400)) calc(199 * (100vw / 1400));
    width: calc(613 * (100vw / 1400));
    max-width: 61.3rem;
    margin: 0;
    margin-top: calc(272 * (100vw / 1400));
  }
  .style02__howto {
    margin-top: calc(66 * (100vw / 1400));
  }
  .style02__howto .howto_ttl {
    width: calc(181 * (100vw / 1400));
    max-width: 18.1rem;
  }
  .style02__howto .howto_contents {
    width: calc(806 * (100vw / 1400));
    max-width: 80.6rem;
    margin-top: calc(60 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2.1428571429;
  }
  .style02__howto .howto_contents::before, .style02__howto .howto_contents::after {
    width: calc(55 * (100vw / 1400));
    max-width: 5.5rem;
    height: calc(55 * (100vw / 1400));
    max-height: 5.5rem;
  }
  .style02__howto .howto_contents::before {
    top: calc(-44 * (100vw / 1400));
    left: calc(-68 * (100vw / 1400));
  }
  .style02__howto .howto_contents::after {
    bottom: calc(-44 * (100vw / 1400));
    right: calc(-68 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  .style02 {
    margin-top: 14rem;
  }
  .style02__flex {
    margin-top: 6.4rem;
  }
  .style02__mv--text {
    top: 5.4rem;
    left: -49.2rem;
    font-size: 3.6rem;
  }
  .style02__mv--text span {
    margin-top: 0.6rem;
    font-size: 1.5rem;
  }
  .style02__grid {
    -ms-grid-columns: 21.8rem 17.9rem 21.6rem;
    grid-template-columns: 21.8rem 17.9rem 21.6rem;
    -ms-grid-rows: 19.9rem 5.2rem 19.9rem;
    grid-template-rows: 19.9rem 5.2rem 19.9rem;
    margin-top: 27.2rem;
  }
  .style02__howto {
    margin-top: 6.6rem;
  }
  .style02__howto .howto_contents {
    margin-top: 6rem;
    font-size: 1.4rem;
  }
  .style02__howto .howto_contents::before {
    top: -4.4rem;
    left: -6.8rem;
  }
  .style02__howto .howto_contents::after {
    bottom: -4.4rem;
    right: -6.8rem;
  }
}

/*
  ********** ▲ Style 02 ▲ **********
*/
/*
  ********** ▼ Style 03 ▼ **********
*/
.style03 {
  margin-top: calc(176 * (100vw / 750));
}
.style03 h2 {
  width: calc(630 * (100vw / 750));
  margin: 0 auto;
}
.style03__mv {
  margin-top: calc(70 * (100vw / 750));
}
.style03__mv--image {
  width: calc(750 * (100vw / 750));
  margin: 0 auto;
}
.style03__mv--text {
  margin-top: calc(66 * (100vw / 750));
  margin-left: calc(70 * (100vw / 750));
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HiraMinProN", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", source-han-serif-japanese, serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(48 * (100vw / 750));
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.style03__mv--text span {
  display: block;
  margin-top: calc(12 * (100vw / 750));
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(22 * (100vw / 750));
  line-height: 1.7;
  letter-spacing: 0.1em;
}
.style03__main--grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(323 * (100vw / 750)) calc(64 * (100vw / 750)) calc(323 * (100vw / 750));
  grid-template-columns: calc(323 * (100vw / 750)) calc(64 * (100vw / 750)) calc(323 * (100vw / 750));
  -ms-grid-rows: calc(364 * (100vw / 750)) calc(205 * (100vw / 750)) calc(50 * (100vw / 750));
  grid-template-rows: calc(364 * (100vw / 750)) calc(205 * (100vw / 750)) calc(50 * (100vw / 750));
  width: calc(710 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(66 * (100vw / 750));
}
.style03__main--grid div {
  background-color: #fff;
}
.style03__main--grid div:nth-of-type(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 1/2/3/4;
}
.style03__main--grid div:nth-of-type(2) {
  z-index: 1;
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 2/1/4/3;
}
.style03__main--howto {
  width: calc(600 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(66 * (100vw / 750));
}
.style03__main--howto .howto_ttl {
  width: calc(253 * (100vw / 750));
  margin: 0 auto;
}
.style03__main--howto .howto_contents {
  position: relative;
  margin-top: calc(62 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.9230769231;
  letter-spacing: 0.05em;
}
.style03__main--howto .howto_contents::before, .style03__main--howto .howto_contents::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(55 * (100vw / 750));
  height: calc(55 * (100vw / 750));
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.style03__main--howto .howto_contents::before {
  top: calc(-40 * (100vw / 750));
  left: calc(-52 * (100vw / 750));
  background-image: url(../img/frame_left.png);
}
.style03__main--howto .howto_contents::after {
  bottom: calc(-40 * (100vw / 750));
  right: calc(-58 * (100vw / 750));
  background-image: url(../img/frame_right.png);
}
@media only screen and (min-width: 768px) {
  .style03 {
    margin-top: calc(168 * (100vw / 1400));
  }
  .style03 h2 {
    width: calc(636 * (100vw / 1400));
    max-width: 63.6rem;
  }
  .style03__mv {
    margin-top: calc(70 * (100vw / 1400));
  }
  .style03__mv--image {
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
  }
  .style03__mv--text {
    display: none;
  }
  .style03__main {
    position: relative;
    width: calc(942 * (100vw / 1400));
    max-width: 94.2rem;
    margin: 0 auto;
    margin-top: calc(64 * (100vw / 1400));
  }
  .style03__main--grid {
    -ms-grid-columns: calc(330 * (100vw / 1400)) calc(65 * (100vw / 1400)) calc(330 * (100vw / 1400));
    grid-template-columns: calc(330 * (100vw / 1400)) calc(65 * (100vw / 1400)) calc(330 * (100vw / 1400));
    -ms-grid-rows: calc(372 * (100vw / 1400)) calc(208 * (100vw / 1400)) calc(52 * (100vw / 1400));
    grid-template-rows: calc(372 * (100vw / 1400)) calc(208 * (100vw / 1400)) calc(52 * (100vw / 1400));
    width: calc(725 * (100vw / 1400));
    max-width: 72.5rem;
    margin: 0;
    margin-left: auto;
  }
  .style03__main--howto {
    position: absolute;
    top: calc(10 * (100vw / 1400));
    left: calc(56 * (100vw / 1400));
    width: calc(371 * (100vw / 1400));
    max-width: 37.1rem;
    margin-top: calc(60 * (100vw / 1400));
    margin: 0;
  }
  .style03__main--howto .howto_ttl {
    width: calc(181 * (100vw / 1400));
    max-width: 18.1rem;
  }
  .style03__main--howto .howto_contents {
    margin-top: calc(0 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2.1428571429;
  }
  .style03__main--howto .howto_contents::before, .style03__main--howto .howto_contents::after {
    width: calc(55 * (100vw / 1400));
    max-width: 5.5rem;
    height: calc(55 * (100vw / 1400));
    max-height: 5.5rem;
  }
  .style03__main--howto .howto_contents::before {
    top: calc(-44 * (100vw / 1400));
    left: calc(-56 * (100vw / 1400));
  }
  .style03__main--howto .howto_contents::after {
    bottom: calc(-44 * (100vw / 1400));
    right: calc(-56 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  .style03 {
    margin-top: 16.8rem;
  }
  .style03__mv {
    margin-top: 7rem;
  }
  .style03__main {
    margin-top: 6.4rem;
  }
  .style03__main--grid {
    -ms-grid-columns: 33rem 6.5rem 33rem;
    grid-template-columns: 33rem 6.5rem 33rem;
    -ms-grid-rows: 37.2rem 20.8rem 5.2rem;
    grid-template-rows: 37.2rem 20.8rem 5.2rem;
  }
  .style03__main--howto {
    top: 1rem;
    left: 5.6rem;
  }
  .style03__main--howto .howto_contents {
    margin-top: 6rem;
    font-size: 1.4rem;
  }
  .style03__main--howto .howto_contents::before {
    top: -4.4rem;
    left: -5.6rem;
  }
  .style03__main--howto .howto_contents::after {
    bottom: -4.4rem;
    right: -5.6rem;
  }
}

/*
  ********** ▲ Style 03 ▲ **********
*/
/*
  ********** ▼ Style 04 ▼ **********
*/
.style04 {
  margin-top: calc(126 * (100vw / 750));
}
.style04 h2 {
  width: calc(630 * (100vw / 750));
  margin: 0 auto;
}
.style04__mv {
  margin-top: calc(70 * (100vw / 750));
}
.style04__mv--text {
  margin-top: calc(48 * (100vw / 750));
  margin-left: calc(70 * (100vw / 750));
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HiraMinProN", "游明朝体", "Yu Mincho", YuMincho, "MS P明朝", "MS PMincho", source-han-serif-japanese, serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(48 * (100vw / 750));
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.style04__mv--text span {
  display: block;
  margin-top: calc(10 * (100vw / 750));
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(22 * (100vw / 750));
  line-height: 1.7;
  letter-spacing: 0.1em;
}
.style04--grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: calc(250 * (100vw / 750)) calc(211 * (100vw / 750)) calc(249 * (100vw / 750));
  grid-template-columns: calc(250 * (100vw / 750)) calc(211 * (100vw / 750)) calc(249 * (100vw / 750));
  -ms-grid-rows: calc(229 * (100vw / 750)) calc(62 * (100vw / 750)) calc(229 * (100vw / 750));
  grid-template-rows: calc(229 * (100vw / 750)) calc(62 * (100vw / 750)) calc(229 * (100vw / 750));
  width: calc(710 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(64 * (100vw / 750));
}
.style04--grid div {
  background-color: #fff;
}
.style04--grid div:nth-of-type(1) {
  z-index: 1;
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 1/1/3/3;
}
.style04--grid div:nth-of-type(2) {
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 2/2/4/4;
}
.style04__howto {
  width: calc(600 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(70 * (100vw / 750));
}
.style04__howto .howto_ttl {
  width: calc(253 * (100vw / 750));
  margin: 0 auto;
}
.style04__howto .howto_contents {
  position: relative;
  margin-top: calc(60 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.9230769231;
}
.style04__howto .howto_contents::before, .style04__howto .howto_contents::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(55 * (100vw / 750));
  height: calc(55 * (100vw / 750));
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.style04__howto .howto_contents::before {
  top: calc(-40 * (100vw / 750));
  left: calc(-52 * (100vw / 750));
  background-image: url(../img/frame_left.png);
}
.style04__howto .howto_contents::after {
  bottom: calc(-40 * (100vw / 750));
  right: calc(-58 * (100vw / 750));
  background-image: url(../img/frame_right.png);
}
@media only screen and (min-width: 768px) {
  .style04 {
    margin-top: calc(140 * (100vw / 1400));
  }
  .style04 h2 {
    width: calc(636 * (100vw / 1400));
    max-width: 63.6rem;
  }
  .style04__flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
    margin: 0 auto;
    margin-top: calc(74 * (100vw / 1400));
  }
  .style04__mv {
    position: relative;
    width: calc(525 * (100vw / 1400));
    max-width: 52.5rem;
    margin-top: calc(0 * (100vw / 1400));
  }
  .style04__mv--text {
    position: absolute;
    top: calc(52 * (100vw / 1400));
    right: calc(-456 * (100vw / 1400));
    margin-top: 0;
    margin-left: 0;
    font-size: calc(36 * (100vw / 1400));
  }
  .style04__mv--text span {
    margin-top: calc(20 * (100vw / 1400));
    font-size: calc(15 * (100vw / 1400));
  }
  .style04--grid {
    -ms-grid-columns: calc(218 * (100vw / 1400)) calc(177 * (100vw / 1400)) calc(218 * (100vw / 1400));
    grid-template-columns: calc(218 * (100vw / 1400)) calc(177 * (100vw / 1400)) calc(218 * (100vw / 1400));
    -ms-grid-rows: calc(199 * (100vw / 1400)) calc(51 * (100vw / 1400)) calc(200 * (100vw / 1400));
    grid-template-rows: calc(199 * (100vw / 1400)) calc(51 * (100vw / 1400)) calc(200 * (100vw / 1400));
    width: calc(614 * (100vw / 1400));
    max-width: 61.4rem;
    margin: 0;
    margin-top: calc(274 * (100vw / 1400));
  }
  .style04__howto {
    width: calc(821 * (100vw / 1400));
    max-width: 82.1rem;
    margin-top: calc(66 * (100vw / 1400));
  }
  .style04__howto .howto_ttl {
    width: calc(181 * (100vw / 1400));
    max-width: 18.1rem;
  }
  .style04__howto .howto_contents {
    margin-top: calc(60 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2.1428571429;
  }
  .style04__howto .howto_contents::before, .style04__howto .howto_contents::after {
    width: calc(55 * (100vw / 1400));
    max-width: 5.5rem;
    height: calc(55 * (100vw / 1400));
    max-height: 5.5rem;
  }
  .style04__howto .howto_contents::before {
    top: calc(-44 * (100vw / 1400));
    left: calc(-60 * (100vw / 1400));
  }
  .style04__howto .howto_contents::after {
    bottom: calc(-44 * (100vw / 1400));
    right: calc(-60 * (100vw / 1400));
  }
}
@media only screen and (min-width: 1400px) {
  .style04 {
    margin-top: 14rem;
  }
  .style04__flex {
    margin-top: 7.4rem;
  }
  .style04__mv {
    margin-top: 0rem;
  }
  .style04__mv--text {
    top: 5.2rem;
    right: -45.6rem;
    font-size: 3.6rem;
  }
  .style04__mv--text span {
    margin-top: 2rem;
    font-size: 1.5rem;
  }
  .style04--grid {
    -ms-grid-columns: 21.8rem 17.7rem 21.8rem;
    grid-template-columns: 21.8rem 17.7rem 21.8rem;
    -ms-grid-rows: 19.9rem 5.1rem 20rem;
    grid-template-rows: 19.9rem 5.1rem 20rem;
    margin-top: 27.4rem;
  }
  .style04__howto {
    margin-top: 6.6rem;
  }
  .style04__howto .howto_contents {
    margin-top: 6rem;
    font-size: 1.4rem;
  }
  .style04__howto .howto_contents::before {
    top: -4.4rem;
    left: -6rem;
  }
  .style04__howto .howto_contents::after {
    bottom: -4.4rem;
    right: -6rem;
  }
}

/*
  ********** ▲ Style 04 ▲ **********
*/
/*
  ********** ▼ Other Styles ▼ **********
*/
.other {
  margin-top: calc(178 * (100vw / 750));
}
.other h2 {
  width: calc(710 * (100vw / 750));
  margin: 0 auto;
}
.other__styles {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.other__styles .other_common {
  width: calc(750 * (100vw / 750));
}
.other__styles .other_common__grid {
  display: -ms-grid;
  display: grid;
}
.other__styles .other_common__howto {
  width: calc(600 * (100vw / 750));
  margin: 0 auto;
  margin-top: calc(-52 * (100vw / 750));
}
.other__styles .other_common__howto--ttl {
  width: calc(253 * (100vw / 750));
}
.other__styles .other_common__howto--contents {
  position: relative;
  margin-top: calc(62 * (100vw / 750));
  font-size: calc(26 * (100vw / 750));
  line-height: 1.9230769231;
  letter-spacing: 0.05em;
}
.other__styles .other_common__howto--contents::before, .other__styles .other_common__howto--contents::after {
  content: "";
  position: absolute;
  display: block;
  width: calc(55 * (100vw / 750));
  height: calc(55 * (100vw / 750));
  background-position: center;
  background-size: 100%;
  background-repeat: no-repeat;
}
.other__styles .other_common__howto--contents::before {
  top: calc(-40 * (100vw / 750));
  left: calc(-52 * (100vw / 750));
  background-image: url(../img/frame_left.png);
}
.other__styles .other_common__howto--contents::after {
  bottom: calc(-40 * (100vw / 750));
  right: calc(-58 * (100vw / 750));
  background-image: url(../img/frame_right.png);
}
.other__styles .other01__grid,
.other__styles .other02__grid {
  -ms-grid-columns: calc(437 * (100vw / 750)) calc(83 * (100vw / 750)) calc(230 * (100vw / 750));
  grid-template-columns: calc(437 * (100vw / 750)) calc(83 * (100vw / 750)) calc(230 * (100vw / 750));
  -ms-grid-rows: calc(400 * (100vw / 750)) calc(371 * (100vw / 750)) calc(88 * (100vw / 750));
  grid-template-rows: calc(400 * (100vw / 750)) calc(371 * (100vw / 750)) calc(88 * (100vw / 750));
}
.other__styles .other01__grid div,
.other__styles .other02__grid div {
  background-color: #fff;
}
.other__styles .other01__grid div:nth-of-type(1),
.other__styles .other02__grid div:nth-of-type(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 1/1/3/3;
}
.other__styles .other01__grid div:nth-of-type(2),
.other__styles .other02__grid div:nth-of-type(2) {
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 2/2/4/4;
  z-index: 1;
}
.other__styles .other03__grid,
.other__styles .other04__grid {
  -ms-grid-columns: calc(229 * (100vw / 750)) calc(83 * (100vw / 750)) calc(438 * (100vw / 750));
  grid-template-columns: calc(229 * (100vw / 750)) calc(83 * (100vw / 750)) calc(438 * (100vw / 750));
  -ms-grid-rows: calc(400 * (100vw / 750)) calc(371 * (100vw / 750)) calc(88 * (100vw / 750));
  grid-template-rows: calc(400 * (100vw / 750)) calc(371 * (100vw / 750)) calc(88 * (100vw / 750));
}
.other__styles .other03__grid div,
.other__styles .other04__grid div {
  background-color: #fff;
}
.other__styles .other03__grid div:nth-of-type(1),
.other__styles .other04__grid div:nth-of-type(1) {
  -ms-grid-row: 1;
  -ms-grid-row-span: 2;
  -ms-grid-column: 2;
  -ms-grid-column-span: 2;
  grid-area: 1/2/3/4;
}
.other__styles .other03__grid div:nth-of-type(2),
.other__styles .other04__grid div:nth-of-type(2) {
  -ms-grid-row: 2;
  -ms-grid-row-span: 2;
  -ms-grid-column: 1;
  -ms-grid-column-span: 2;
  grid-area: 2/1/4/3;
  z-index: 1;
}
.other__styles .other03__howto--ttl,
.other__styles .other04__howto--ttl {
  margin-left: auto;
}
.other__styles .other01 {
  margin-top: calc(70 * (100vw / 750));
}
.other__styles .other02 {
  margin-top: calc(122 * (100vw / 750));
}
.other__styles .other03 {
  margin-top: calc(120 * (100vw / 750));
}
.other__styles .other04 {
  margin-top: calc(116 * (100vw / 750));
}
@media only screen and (min-width: 768px) {
  .other {
    margin-top: calc(172 * (100vw / 1400));
  }
  .other h2 {
    width: calc(683 * (100vw / 1400));
    max-width: 68.3rem;
  }
  .other__styles {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: calc(1200 * (100vw / 1400));
    max-width: 120rem;
    margin: 0 auto;
  }
  .other__styles .other_common {
    width: calc(524 * (100vw / 1400));
    max-width: 52.4rem;
  }
  .other__styles .other_common__howto {
    width: calc(416 * (100vw / 1400));
    max-width: 41.6rem;
    margin-top: calc(-22 * (100vw / 1400));
  }
  .other__styles .other_common__howto--ttl {
    width: calc(181 * (100vw / 1400));
    max-width: 18.1rem;
  }
  .other__styles .other_common__howto--contents {
    margin-top: calc(60 * (100vw / 1400));
    font-size: calc(14 * (100vw / 1400));
    line-height: 2.1428571429;
  }
  .other__styles .other_common__howto--contents::before, .other__styles .other_common__howto--contents::after {
    width: calc(55 * (100vw / 1400));
    max-width: 5.5rem;
    height: calc(55 * (100vw / 1400));
    max-height: 5.5rem;
  }
  .other__styles .other_common__howto--contents::before {
    top: calc(-46 * (100vw / 1400));
    left: calc(-54 * (100vw / 1400));
  }
  .other__styles .other_common__howto--contents::after {
    bottom: calc(-46 * (100vw / 1400));
    right: calc(-54 * (100vw / 1400));
  }
  .other__styles .other01,
.other__styles .other02 {
    margin-top: calc(68 * (100vw / 1400));
  }
  .other__styles .other01__grid,
.other__styles .other02__grid {
    -ms-grid-columns: calc(306 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(154 * (100vw / 1400));
    grid-template-columns: calc(306 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(154 * (100vw / 1400));
    -ms-grid-rows: calc(279 * (100vw / 1400)) calc(269 * (100vw / 1400)) calc(52 * (100vw / 1400));
    grid-template-rows: calc(279 * (100vw / 1400)) calc(269 * (100vw / 1400)) calc(52 * (100vw / 1400));
  }
  .other__styles .other03,
.other__styles .other04 {
    margin-top: calc(146 * (100vw / 1400));
  }
  .other__styles .other03__grid,
.other__styles .other04__grid {
    -ms-grid-columns: calc(154 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(307 * (100vw / 1400));
    grid-template-columns: calc(154 * (100vw / 1400)) calc(64 * (100vw / 1400)) calc(307 * (100vw / 1400));
    -ms-grid-rows: calc(279 * (100vw / 1400)) calc(269 * (100vw / 1400)) calc(52 * (100vw / 1400));
    grid-template-rows: calc(279 * (100vw / 1400)) calc(269 * (100vw / 1400)) calc(52 * (100vw / 1400));
  }
  .other__styles .other03__howto--contents {
    height: calc(120 * (100vw / 1400));
    max-height: 12rem;
  }
}
@media only screen and (min-width: 1400px) {
  .other {
    margin-top: 17.2rem;
  }
  .other__styles .other_common__howto {
    margin-top: -2.2rem;
  }
  .other__styles .other_common__howto--contents {
    margin-top: 6rem;
    font-size: 1.4rem;
  }
  .other__styles .other_common__howto--contents::before {
    top: -4.6rem;
    left: -5.4rem;
  }
  .other__styles .other_common__howto--contents::after {
    bottom: -4.6rem;
    right: -5.4rem;
  }
  .other__styles .other01,
.other__styles .other02 {
    margin-top: 6.8rem;
  }
  .other__styles .other01__grid,
.other__styles .other02__grid {
    -ms-grid-columns: 30.6rem 6.4rem 15.4rem;
    grid-template-columns: 30.6rem 6.4rem 15.4rem;
    -ms-grid-rows: 27.9rem 26.9rem 5.2rem;
    grid-template-rows: 27.9rem 26.9rem 5.2rem;
  }
  .other__styles .other03,
.other__styles .other04 {
    margin-top: 14.6rem;
  }
  .other__styles .other03__grid,
.other__styles .other04__grid {
    -ms-grid-columns: 15.4rem 6.4rem 30.7rem;
    grid-template-columns: 15.4rem 6.4rem 30.7rem;
    -ms-grid-rows: 27.9rem 26.9rem 5.2rem;
    grid-template-rows: 27.9rem 26.9rem 5.2rem;
  }
}

/*
  ********** ▲ Other Styles ▲ **********
*/
/*
  ********** ▼ BUY NOW Button ▼ **********
*/
.buybtn a {
  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: calc(600 * (100vw / 750));
  height: calc(100 * (100vw / 750));
  margin: calc(136 * (100vw / 750)) auto calc(180 * (100vw / 750));
  font-family: "EB Garamond", serif;
  font-style: normal;
  font-weight: normal;
  font-size: calc(32 * (100vw / 750));
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  background-color: #000;
  border: calc(1 * (100vw / 750)) solid #000;
}
@media only screen and (min-width: 768px) {
  .buybtn a {
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    width: calc(330 * (100vw / 1400));
    max-width: 33rem;
    height: calc(60 * (100vw / 1400));
    max-height: 6rem;
    margin: calc(108 * (100vw / 1400)) auto calc(170 * (100vw / 1400));
    font-size: calc(20 * (100vw / 1400));
    border: calc(1 * (100vw / 1400)) solid #000;
  }
  .buybtn a:hover {
    opacity: 1;
    color: #000;
    background-color: #fff;
  }
}
@media only screen and (min-width: 1400px) {
  .buybtn a {
    margin: 10.8rem auto 17rem;
    font-size: 2rem;
    border: 0.1rem solid #000;
  }
}

/*
  ********** ▲ BUY NOW Button ▲ **********
*/

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