@charset "UTF-8";
/*
 * htmlのfont-size用
 */
/*
   * font-size可変用
   */
/*メディアクエリー
---------------------------------------------*/
/* For modern browsers */
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}

.clearfix:after {
  clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.clearfix {
  zoom: 1;
}

/* variable */
i {
  margin: auto 20px;
}

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
}

.pc {
  display: inherit !important;
}

.sp {
  display: none !important;
}

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 769px) {
  .pc {
    display: none !important;
  }
  .sp {
    display: inherit !important;
  }
}
/*---------------------------------------------------------------
 common
-------------------------------------------------------------- */
html {
  font-size: 62.5%;
  /* 16px x 0.625 = 10px(=1rem) */
}

body {
  font-family: yu-gothic-pr6n, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.6rem;
  line-height: 180%;
  color: #fff;
  font-feature-settings: "palt";
  letter-spacing: 2px;
  background: #515B5F;
  text-align: justify;
  text-justify: inter-ideograph;
}
@media screen and (min-width: 769px) {
  body {
    background-size: auto;
  }
}

a {
  color: #515B5F;
  text-decoration: none;
}

#wrapper {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
}

.fade-in {
  transition: opacity 0.4s;
  -moz-transition: opacity 0.4s;
  -webkit-transition: opacity 0.4s;
  -o-transition: opacity 0.4s;
}

img {
  width: 100%;
  vertical-align: bottom;
}

h1,
h2,
h3 {
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}

/*-------------------------------
 block
--------------------------------- */
.pc {
  display: none;
}

/*---------------------------------------------------------------
 navi
-------------------------------------------------------------- */
#toggle {
  position: fixed;
  top: 25px;
  right: 25px;
}

#toggle-box {
  position: relative;
  width: 36px;
  height: 32px;
  cursor: pointer;
}

#toggle-box > span {
  width: 100%;
  height: 2px;
  left: 0;
  display: block;
  background: #000;
  position: absolute;
  transition: transform 0.6s ease-in-out, top 0.5s ease, bottom 0.5s ease;
}

#toggle-box > span:nth-child(1) {
  top: 0;
}

#toggle-box > span:nth-child(2) {
  top: 50%;
  transform: translatey(-50%);
}

#toggle-box > span:nth-child(3) {
  bottom: 0;
}

#toggle {
  z-index: 1000;
}

#nav-content {
  z-index: 900;
  overflow: auto;
  width: 100%;
  height: 100%;
  background: #515B5F;
  color: #fff;
  position: fixed;
  top: 0;
  right: 0;
  text-align: center;
  transform: translateX(100%);
  transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}
@media screen and (min-width: 769px) {
  #nav-content {
    width: 50%;
    max-width: 800px;
    border-left: solid 1px #3D4658;
  }
}
#nav-content nav {
  padding: 13.3333333333vw 8%;
}
@media screen and (min-width: 769px) {
  #nav-content nav {
    padding: 80px 8%;
  }
}
#nav-content nav ul.list_1 {
  list-style: none;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#nav-content nav ul.list_1 li {
  width: 46%;
  margin-bottom: 5.3333333333vw;
  text-align: left;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_1 li {
    margin-bottom: 20px;
  }
}
#nav-content nav ul.list_1 li a {
  display: block;
  color: #fff;
  text-decoration: none;
  padding: 0;
  transition: opacity 0.6s ease;
  position: relative;
}
#nav-content nav ul.list_1 li a:hover {
  opacity: 0.6;
}
#nav-content nav ul.list_1 li a figure {
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_1 li a figure {
    margin-bottom: 10px;
  }
}
#nav-content nav ul.list_1 li a .title {
  padding: 0;
  font-size: 2.9333333333vw;
  line-height: 180%;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_1 li a .title {
    font-size: 1.4rem;
  }
}
#nav-content nav ul.list_1 li a .title span {
  font-size: 3.7333333333vw;
  display: block;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_1 li a .title span {
    font-size: 1.8rem;
  }
}
#nav-content nav ul.list_1 li a .week {
  max-width: 30px;
  padding: 0.8vw;
  font-size: 3.2vw;
  background: #3D4658;
  color: #fff;
  position: absolute;
  top: -0.8vw;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_1 li a .week {
    padding: 20px;
    font-size: 1.2rem;
    top: -10px;
  }
}
#nav-content nav ul.list_1 li a .week:before {
  width: 50%;
  padding-top: 50%;
}
#nav-content nav ul.list_1 li a .week span {
  padding: 0;
  line-height: 100%;
  display: block;
}
#nav-content nav ul.list_2 {
  margin-top: 13.3333333333vw;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
  text-align: center;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_2 {
    margin-top: 50px;
    font-size: 1.8rem;
  }
}
#nav-content nav ul.list_2 li {
  margin-bottom: 8vw;
}
@media screen and (min-width: 769px) {
  #nav-content nav ul.list_2 li {
    margin-bottom: 30px;
  }
}
#nav-content nav ul.list_2 li a {
  color: #fff;
}

.is-open {
  overflow: hidden;
}

.is-open #toggle-box > span {
  background: #fff;
}

.is-open #toggle-box > span:nth-child(1) {
  top: 50%;
  transform: rotate(45deg) translatey(-50%);
}

.is-open #toggle-box > span:nth-child(2) {
  width: 0;
}

.is-open #toggle-box > span:nth-child(3) {
  top: 50%;
  transform: rotate(-45deg) translatey(-50%);
}

.is-open #nav-content {
  z-index: 999;
  transform: translateX(0);
}

.overlay {
  background: rgba(0, 0, 0, 0.5);
  height: 100vh;
}

.topics {
  font-family: shippori-mincho, sans-serif;
}
.topics i {
  margin: 0 auto 2.6666666667vw;
  font-size: 21.3333333333vw;
  display: block;
  text-align: center;
}
.topics h2 {
  margin-bottom: 13.3333333333vw;
  font-size: 6.4vw;
  text-align: center;
  letter-spacing: 0;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}
.topics .txt1 {
  margin-bottom: 2.6666666667vw;
  font-size: 4.8vw;
  text-align: center;
  letter-spacing: 0;
}
.topics .txt1 span {
  font-size: 3.2vw;
}
.topics .txt2 {
  margin-bottom: 5.3333333333vw;
  font-size: 4.2666666667vw;
  text-align: center;
  letter-spacing: 0;
}
.topics .txt3 {
  margin-bottom: 8vw;
  font-size: 3.2vw;
  line-height: 160%;
}
.topics a.btn {
  width: 100%;
  padding: 5.3333333333vw;
  background: #515B5F;
  color: #fff;
  font-size: 3.7333333333vw;
  display: block;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .topics i {
    margin: 0 auto 10px;
    font-size: 8rem;
  }
  .topics h2 {
    margin-bottom: 50px;
    font-size: 2.4rem;
  }
  .topics .txt1 {
    margin-bottom: 10px;
    font-size: 1.8rem;
  }
  .topics .txt1 span {
    font-size: 1.2rem;
  }
  .topics .txt2 {
    margin-bottom: 20px;
    font-size: 1.6rem;
  }
  .topics .txt3 {
    margin-bottom: 30px;
    font-size: 1.2rem;
    text-align: center;
  }
  .topics a.btn {
    padding: 20px;
    font-size: 1.4rem;
  }
}

/*-------------------------------
 main
--------------------------------- */
.main {
  width: 100%;
  height: 100vh;
  height: calc(var(--vh, 1vh) * 100);
  margin: 0 auto;
  padding: 3% 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../images/main.jpg);
  background-size: cover;
  background-position: 60% center;
  position: relative;
}
.main::after {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(61, 70, 88, 0.3), rgba(61, 70, 88, 0.3));
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
}
.main .box {
  position: relative;
  z-index: 10;
}
.main .box h1 {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 11.7333333333vw;
  font-feature-settings: initial;
  letter-spacing: 0.2em;
}
@media screen and (min-width: 769px) {
  .main .box h1 {
    font-size: 44px;
  }
}
.main .box h1 span {
  margin-left: 5.3333333333vw;
  font-size: 4.2666666667vw;
  display: block;
}
@media screen and (min-width: 769px) {
  .main .box h1 span {
    margin-left: 20px;
    font-size: 16px;
  }
}
.main .collabo {
  line-height: 100%;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
  text-align: center;
  position: absolute;
  bottom: 5%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  z-index: 10;
}
.main .collabo .txt_1 {
  font-size: 2.4vw;
  display: block;
  letter-spacing: 0;
}
@media screen and (min-width: 769px) {
  .main .collabo .txt_1 {
    font-size: 9px;
  }
}
.main .collabo .txt_2 {
  margin: 4vw 0;
  font-size: 7.4666666667vw;
  display: block;
}
@media screen and (min-width: 769px) {
  .main .collabo .txt_2 {
    margin: 15px 0;
    font-size: 28px;
  }
}
.main .collabo .txt_3 {
  font-size: 4.8vw;
  display: block;
}
@media screen and (min-width: 769px) {
  .main .collabo .txt_3 {
    font-size: 18px;
  }
}

/*-------------------------------
lead
--------------------------------- */
.lead {
  width: 84%;
  max-width: 800px;
  padding: 21.3333333333vw 0;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .lead {
    padding: 100px 0;
    text-align: center;
  }
}
.lead .date {
  margin-bottom: 8vw;
  font-weight: 400;
  font-family: trajan-pro-3, serif;
}
@media screen and (min-width: 769px) {
  .lead .date {
    margin-bottom: 30px;
  }
}
.lead .date span {
  margin-bottom: 4vw;
  display: block;
  font-size: 9.6vw;
  line-height: 100%;
}
@media screen and (min-width: 769px) {
  .lead .date span {
    margin-bottom: 15px;
    font-size: 3.6rem;
  }
}
.lead .date .small {
  margin-bottom: 5.3333333333vw;
  font-size: 5.333vw;
  line-height: 100%;
}
@media screen and (min-width: 769px) {
  .lead .date .small {
    margin-bottom: 20px;
    font-size: 2rem;
  }
}
.lead .txt {
  margin-bottom: 8vw;
  font-size: 4.267vw;
  line-height: 200%;
}
@media screen and (min-width: 769px) {
  .lead .txt {
    margin-bottom: 30px;
    font-size: 1.8rem;
  }
}
.lead .instalive {
  text-align: center;
  padding: 5.3333333333vw 4vw;
  border: solid 1px #A7B8BE;
  display: block;
  color: #fff;
  line-height: 150%;
  cursor: pointer;
}
@media screen and (min-width: 769px) {
  .lead .instalive {
    padding: 20px 15px;
  }
}
.lead .instalive .txt_1 {
  font-size: 5.3333333333vw;
  margin-bottom: 2.6666666667vw;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}
@media screen and (min-width: 769px) {
  .lead .instalive .txt_1 {
    font-size: 2rem;
    margin-bottom: 10px;
  }
}
.lead .instalive .txt_2 {
  font-size: 3.2vw;
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 769px) {
  .lead .instalive .txt_2 {
    font-size: 1.2rem;
    margin-bottom: 10px;
  }
}
.lead .instalive .txt_3 {
  font-size: 3.7333333333vw;
  text-decoration: underline;
}
@media screen and (min-width: 769px) {
  .lead .instalive .txt_3 {
    font-size: 1.4rem;
  }
}
.lead .image {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-bottom: 13.3333333333vw;
}
@media screen and (min-width: 769px) {
  .lead .image {
    max-width: 800px;
    margin: 0 auto 50px;
  }
}
.lead .image::before {
  content: "";
  display: block;
  padding-top: 170.6666666667%;
}
@media screen and (min-width: 769px) {
  .lead .image::before {
    padding-top: 142.8571428571%;
  }
}
.lead .image li.image_01 {
  width: 74.6666666667%;
  position: absolute;
  top: 0;
  left: 0%;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
@media screen and (min-width: 769px) {
  .lead .image li.image_01 {
    width: 80%;
    left: 10%;
  }
}
.lead .image li.image_02 {
  width: 53.3333333333%;
  position: absolute;
  top: 34.375%;
  right: 0;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
@media screen and (min-width: 769px) {
  .lead .image li.image_02 {
    width: 57.1428571429%;
    top: 44%;
  }
}
.lead .image li.image_03 {
  width: 32%;
  position: absolute;
  top: 40.625%;
  left: 5.3333333333%;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
@media screen and (min-width: 769px) {
  .lead .image li.image_03 {
    width: 34.2857142857%;
    top: 52%;
    left: 0;
  }
}
.lead .image li.image_04 {
  width: 62.6666666667%;
  position: absolute;
  top: 73.4375%;
  left: 18.6666666667%;
  -webkit-animation-delay: 1s;
          animation-delay: 1s;
}
@media screen and (min-width: 769px) {
  .lead .image li.image_04 {
    width: 40%;
    top: 77%;
    left: 50.7142857143%;
  }
}
.lead .image li.image_04 p {
  margin-top: 1.3333333333vw;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 769px) {
  .lead .image li.image_04 p {
    margin-top: 5px;
    font-size: 1.4rem;
  }
}

/*-------------------------------
content
--------------------------------- */
.content {
  width: 100%;
  margin: 0 auto;
  padding: 21.3333333333vw 0;
  color: #3D4658;
  background: #DBDAD5;
}
@media screen and (min-width: 769px) {
  .content {
    padding: 100px 0;
  }
}
.content .week {
  width: 82%;
  margin: 0 auto;
  padding-top: 21.3333333333vw;
}
@media screen and (min-width: 769px) {
  .content .week {
    max-width: 1400px;
    min-width: 900px;
    margin: 0 auto;
    padding-top: 150px;
  }
}
@media screen and (min-width: 769px) {
  .content .week .box {
    display: flex;
    justify-content: space-between;
  }
}
.content .week .box .box_1 {
  position: relative;
  z-index: 99;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_1 {
    width: 62%;
    display: flex;
  }
}
.content .week .box .box_1 h2 {
  margin: 0 auto 8vw 0;
  font-size: 3.2vw;
  text-align: center;
  position: relative;
  z-index: 99;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_1 h2 {
    margin: 0 auto 30px 0;
    font-size: 1.2rem;
  }
}
.content .week .box .box_1 h2 span {
  margin: 0 auto 4vw;
  padding: 1.3333333333vw 4vw;
  font-size: 6.933vw;
  -ms-writing-mode: tb-rl;
      writing-mode: vertical-rl;
  border-left: solid 1px;
  border-right: solid 1px;
  display: block;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_1 h2 span {
    margin: 0 auto 15px;
    padding: 5px 15px;
    font-size: 2.6rem;
  }
}
.content .week .box .box_1 .image {
  width: 100%;
  margin-bottom: 13.3333333333vw;
  position: relative;
  z-index: 99;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_1 .image {
    margin-bottom: 50px;
    margin-left: 3%;
  }
}
.content .week .box .box_1 .image img {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
@media screen and (min-width: 769px) {
  .content .week .box .box_1 .image img {
    width: 100%;
    margin: 0 auto;
  }
}
.content .week .box .box_2 {
  position: relative;
  z-index: 99;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 {
    width: 32%;
  }
}
.content .week .box .box_2 h3 {
  margin-bottom: 13.3333333333vw;
  font-size: 9.067vw;
  display: inline-block;
  position: relative;
  line-height: 130%;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 h3 {
    margin-bottom: 50px;
    font-size: 3.4rem;
  }
}
.content .week .box .box_2 h3 span {
  font-size: 4.267vw;
  display: block;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 h3 span {
    font-size: 1.6rem;
  }
}
.content .week .box .box_2 h3:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -8vw;
  display: inline-block;
  width: 20px;
  height: 1px;
  background-color: #3D4658;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 h3:before {
    bottom: -30px;
  }
}
.content .week .box .box_2 > p {
  margin: 0 0 8vw;
  font-size: 3.7333333333vw;
  line-height: 180%;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 > p {
    margin: 0 0 30px;
    font-size: 1.5rem;
  }
}
.content .week .box .box_2 .comment {
  width: 100%;
  margin: 8vw 0;
  padding: 4vw;
  border: solid 1px #CBCBC8;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 .comment {
    margin: 30px 0;
    padding: 15px;
  }
}
.content .week .box .box_2 .comment figure {
  width: 25%;
}
.content .week .box .box_2 .comment p {
  width: 70%;
  font-size: 2.933vw;
  line-height: 150%;
}
@media screen and (min-width: 769px) {
  .content .week .box .box_2 .comment p {
    font-size: 1.1rem;
  }
}
.content .week .fluid {
  width: 45vh;
  height: 40vh;
  -webkit-animation: fluidrotate 20s ease 0s infinite;
          animation: fluidrotate 20s ease 0s infinite;
  position: absolute;
  top: -40px;
  left: -80px;
  z-index: 0;
}
@-webkit-keyframes fluidrotate {
  0%, 100% {
    border-radius: 63% 37% 54% 46%/55% 48% 52% 45%;
  }
  14% {
    border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
  }
  28% {
    border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
  }
  42% {
    border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
  }
  56% {
    border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
  }
  70% {
    border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
  }
  84% {
    border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
  }
}
@keyframes fluidrotate {
  0%, 100% {
    border-radius: 63% 37% 54% 46%/55% 48% 52% 45%;
  }
  14% {
    border-radius: 40% 60% 54% 46%/49% 60% 40% 51%;
  }
  28% {
    border-radius: 54% 46% 38% 62%/49% 70% 30% 51%;
  }
  42% {
    border-radius: 61% 39% 55% 45%/61% 38% 62% 39%;
  }
  56% {
    border-radius: 61% 39% 67% 33%/70% 50% 50% 30%;
  }
  70% {
    border-radius: 50% 50% 34% 66%/56% 68% 32% 44%;
  }
  84% {
    border-radius: 46% 54% 50% 50%/35% 61% 39% 65%;
  }
}
.content .week .credit {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .content .week .credit {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
.content .week .credit li {
  border-bottom: solid 1px #CBCBC8;
  padding: 2.6666666667vw 0;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (min-width: 769px) {
  .content .week .credit li {
    width: 48%;
    padding: 10px 0;
  }
}
.content .week .credit li figure {
  width: 17%;
}
@media screen and (min-width: 769px) {
  .content .week .credit li figure {
    width: 12%;
  }
}
.content .week .credit li .name {
  width: 62%;
  padding: 0 4vw;
  font-size: 3.2vw;
  text-align: left;
}
@media screen and (min-width: 769px) {
  .content .week .credit li .name {
    width: 75%;
    padding: 0 15px;
    font-size: 12px;
  }
}
.content .week .credit li .name p {
  padding: 0;
  line-height: 130%;
}
.content .week .credit li .name .shop {
  margin-top: 0.5333333333vw;
  font-size: 2.6666666667vw;
}
@media screen and (min-width: 769px) {
  .content .week .credit li .name .shop {
    margin-top: 2px;
    font-size: 1rem;
  }
}
.content .week .credit li .buy {
  width: 23%;
  padding: 1.8666666667vw 2.6666666667vw;
  background: #3D4658;
  color: #fff;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
  font-size: 3.2vw;
  text-align: center;
  line-height: 100%;
}
@media screen and (min-width: 769px) {
  .content .week .credit li .buy {
    width: 15%;
    padding: 7px 10px;
    font-size: 1.2rem;
  }
}
.content .week .credit li .buy:hover {
  background: #A7B8BE;
  color: #3D4658;
}
.content .week .credit li .coming {
  width: 23%;
  padding: 1.8666666667vw 1.3333333333vw;
  color: #3D4658;
  border: solid 1px #3D4658;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
  font-size: 2.6666666667vw;
  text-align: center;
  line-height: 130%;
  letter-spacing: 0;
}
@media screen and (min-width: 769px) {
  .content .week .credit li .coming {
    width: 15%;
    padding: 7px 5px;
    font-size: 1rem;
  }
}
.content .week .credit li:nth-child(1) {
  border-top: solid 1px #CBCBC8;
}
@media screen and (min-width: 769px) {
  .content .week .credit li:nth-child(2) {
    border-top: solid 1px #CBCBC8;
  }
}
.content .all {
  width: 82%;
  margin: 21.3333333333vw auto;
  padding: 5.3333333333vw;
  font-size: 3.7333333333vw;
  color: #fff;
  font-family: shippori-mincho, sans-serif;
  text-align: center;
  background: #3D4658;
  display: block;
}
@media screen and (min-width: 769px) {
  .content .all {
    max-width: 1400px;
    min-width: 900px;
    margin: 80px auto;
    padding: 30px;
    font-size: 1.4rem;
  }
}
.content .all:hover {
  background: #A7B8BE;
  color: #3D4658;
}

@media screen and (min-width: 769px) {
  .content .week:nth-child(even) .box {
    display: flex;
    justify-content: space-between;
    flex-direction: row-reverse;
  }
}
.content .week:nth-child(even) .box .fluid {
  top: -40px;
  right: -80px;
  left: auto;
}
@media screen and (min-width: 769px) {
  .content .week:nth-child(even) .box .fluid {
    right: auto;
    left: -80px;
  }
}
.content .week:nth-child(3n+1) .box .fluid {
  background: #A7B8BE;
}
.content .week:nth-child(3n+2) .box .fluid {
  background: #D6CAD0;
}
.content .week:nth-child(3n) .box .fluid {
  background: #E5E5E5;
}

.bgimage {
  width: 100%;
  padding-top: 53.3333333333%;
  background: url(../images/image_02.jpg) fixed;
  background-size: cover;
  background-position: center top;
}

.about {
  width: 100%;
  padding: 21.3333333333vw 0;
  background: #A7B8BE;
  color: #3D4658;
}
@media screen and (min-width: 769px) {
  .about {
    padding: 100px 0;
  }
}
.about .box {
  width: 70%;
  margin: 0 auto;
  text-align: center;
}
.about .box h2 {
  margin: 0 auto 5.3333333333vw;
  font-size: 6.4vw;
}
@media screen and (min-width: 769px) {
  .about .box h2 {
    margin: 0 auto 20px;
    font-size: 24px;
  }
}
.about .box figure {
  width: 80%;
  max-width: 200px;
  margin: 0 auto 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  .about .box figure {
    margin: 0 auto 20px;
  }
}
.about .box .name_jp {
  margin: 0 0 1.3333333333vw;
  font-size: 5.3333333333vw;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}
@media screen and (min-width: 769px) {
  .about .box .name_jp {
    margin: 0 0 5px;
    font-size: 20px;
  }
}
.about .box .name_en {
  margin: 0 0 5.3333333333vw;
  font-size: 3.2vw;
  font-family: trajan-pro-3, shippori-mincho, sans-serif;
}
@media screen and (min-width: 769px) {
  .about .box .name_en {
    margin: 0 0 20px;
    font-size: 12px;
  }
}
.about .box .txt {
  max-width: 500px;
  margin: 0 auto;
  font-size: 3.2vw;
  line-height: 180%;
  text-align: left;
}
@media screen and (min-width: 769px) {
  .about .box .txt {
    font-size: 12px;
  }
}
.about .box .txt a {
  text-decoration: underline;
}

/*-----------------------------
 caution
------------------------------------ */
.caution {
  width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 21.3333333333vw 10%;
}
@media screen and (min-width: 769px) {
  .caution {
    padding: 80px 10%;
  }
}
.caution h2 {
  margin-bottom: 8vw;
  font-size: 6.4vw;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .caution h2 {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
}
.caution .caution_box {
  max-width: 1000px;
  margin: 0 auto 13.3333333333vw;
}
@media screen and (min-width: 769px) {
  .caution .caution_box {
    margin: 0 auto 50px;
  }
}
.caution .caution_box h3 {
  margin-bottom: 8vw;
  padding: 2.6666666667vw;
  font-size: 4.2666666667vw;
  border-top: solid 1px #56676E;
  border-bottom: solid 1px #56676E;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .caution .caution_box h3 {
    margin-bottom: 30px;
    padding: 10px;
    font-size: 1.5rem;
  }
}
.caution .caution_box h4 {
  margin: 13.3333333333vw auto 8vw;
  font-size: 4.8vw;
  color: #445362;
  border-bottom: solid 1px;
}
@media screen and (min-width: 769px) {
  .caution .caution_box h4 {
    margin: 50px auto 30px;
    font-size: 1.8rem;
  }
}
.caution .caution_box p {
  padding: 0;
  margin-bottom: 2.6666666667vw;
  font-size: 3.7333333333vw;
  line-height: 180%;
  text-align: left;
}
@media screen and (min-width: 769px) {
  .caution .caution_box p {
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
}
.caution .caution_box p::before {
  content: "※";
}
.caution .caution_box p span {
  color: #E83921;
}
.caution .caution_box p a {
  width: 100%;
  margin: 10px 0;
  padding: 8px 20px 6px 30px;
  font-weight: 500;
  color: #fff;
  background: #cdb852;
  display: inline-block;
  text-align: center;
  border-radius: 10px;
}
.caution .caution_box p a::after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f054";
  font-size: 2.4vw;
  padding-left: 10px;
}
@media screen and (min-width: 769px) {
  .caution .caution_box p a::after {
    font-size: 0.9rem;
  }
}

.line {
  border-bottom: dashed 1px;
  margin: 40px auto;
}

.caution__info {
  font-size: 1.6rem;
  margin: 30px 0 10px 0;
  font-weight: bold;
}

.caution__info--underline {
  text-decoration: none;
  border-bottom: 1px solid;
  padding-bottom: 2px;
}

.caution__info--sub {
  font-size: 1.3rem;
  margin: 0 0 10px 0;
  line-height: 2rem;
  font-weight: bold;
  display: inline-block;
}

.copyright {
  margin-bottom: 30px;
  text-align: center;
}
.copyright figure {
  width: 50%;
  max-width: 180px;
  margin: 0 auto 20px;
}
.copyright small {
  margin: 0 auto;
  font-size: 1rem;
  letter-spacing: 1px;
}

/*---------------------------------------------------------------
 footer
-------------------------------------------------------------- */
footer {
  margin: 0 auto;
  padding: 100px 20px;
  background-color: #fff;
  text-align: center;
}
footer .f_logo {
  margin: 0 auto;
  width: 40%;
  max-width: 150px;
}
footer .f_logo a {
  margin: 0;
  padding: 0;
  display: block;
  margin: 0 auto;
}
footer .f_logo a img {
  vertical-align: bottom;
}
footer .f_icon {
  margin: 30px auto 10px;
  padding: 0;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
footer .f_icon li {
  width: 50px;
  margin: 0 15px;
  padding: 0;
}
footer .f_icon li i {
  margin: 0;
  font-size: 4.2rem;
  color: #2c2a26;
}
footer small {
  text-align: center;
  font-size: 1rem;
  letter-spacing: 1px;
  color: #222;
}

/*------------------------------
animation
-------------------------------*/
.invisible {
  transition: opacity 0.5s ease;
  opacity: 0;
}

.visible {
  transition: opacity 0.5s ease;
  opacity: 1;
}/*# sourceMappingURL=style.css.map */