@charset "UTF-8";
/****************shiroebi201909********************************************/
body {
  background: #000;
}
footer {
  margin-top: 0 !important;
  position: inherit !important;
}
p.atm_img {
  padding: calc(100vw / (1200 / 10)) !important;
  text-align: right !important;
  font-size: calc(100vw / (1200 / 13)) !important;
  font-weight: normal !important;
}
#contents.sp_item .key {
  position: relative;
}
#contents.sp_item .key h1 {
  width: 100%;
}
#contents.sp_item .key .btn_cv {
  width: calc(100vw / (1200 / 280));
  margin: 0 auto !important;
  position: absolute;
  bottom: calc(100vw / (1200 / 15));
  right: calc(100vw / (1200 / 70));
  font-size: calc(100vw / (1200 / 20));
}
#contents.sp_item .key .btn_cv a {
  height: calc(100vw / (1200 / 63));
  line-height: calc(100vw / (1200 / 63));
  border: 1px solid #fff;
}
#contents.sp_item .key .btn_cv a::before{
  left: calc(100vw / (1200 / -20));
}
/*********co_01******/

#contents.sp_item .co_01 {
  width: 100%;
  height: calc(100vw / (2000 / 1066));
  padding: calc(100vw / (1200 /50)) 0;
  position: relative;
  background: url("../img/kiwami3sp_c01_01.jpg") no-repeat;
  background-size: 100% auto;
  background-position:0 calc(100vw / (1200 /30)) ;
}

#contents.sp_item .co_01 .mainCatch{
    display: inline-block;
    line-height: 2;
    writing-mode: vertical-rl;
    font-feature-settings: normal;
    color: #fff;
    font-size: calc(100vw / (2000 / 44));
    position: absolute;
    right: calc(100vw / (1200 / 404));
    top:  calc(100vw / (1200 / 120));
  }
 .vertical-text {
    writing-mode: vertical-rl; /* 縦書き設定 */
  height: calc(100vw / (2000 / 1016));
    top:  calc(100vw / (1200 / 24));
    line-height: 2;
  }

  .vertical-text p {
    margin: 0 10px 0 0; /* 行間の調整 */
    opacity: 0; /* 最初は透明 */
    animation: fadeIn 1s forwards; /* フェードインアニメーション */
  }

  /* 1行ずつ表示する遅延設定 */
  .vertical-text p:nth-child(1) { animation-delay: 0.5s; }
  .vertical-text p:nth-child(2) { animation-delay: 1.5s; }
  .vertical-text p:nth-child(3) { animation-delay: 2.0s; }
  .vertical-text p:nth-child(4) { animation-delay: 2.5s; }
  .vertical-text p:nth-child(5) { animation-delay: 3.0s; }
  .vertical-text p:nth-child(6) { animation-delay: 4.0s; }
  @keyframes fadeIn {
    to {
      opacity: 1; /* 最終的に表示 */
    }
  }

/*********co_02******/
#contents.sp_item .co_02 {
  padding-bottom: calc(100vw / (1200 / 50));
}
#contents.sp_item .co_02 h2{
  margin:calc(100vw / (1200 / 60))  auto calc(100vw / (1200 / 30)) ;
  padding: 0;
  text-align: center;
  letter-spacing: 0.07em;
  color:#fff;
  font-size:calc(100vw / (1200 / 30));
  font-weight: normal;
}
#contents.sp_item .co_02 h2 span{
  font-size:calc(100vw / (1200 / 40));
  font-family:  "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Noto Sans JP",
    sans-serif;
    font-weight: bold;
}
#contents.sp_item .co_02 .flex {
  width: calc(100vw / (1200 / 1000));
  margin: 0 auto calc(100vw / (1200 / 20));
  justify-content: space-between;
}
#contents.sp_item .co_02 .flex ul li{
    width: calc(100vw / (1200 / 480));
}
#contents.sp_item .co_02 .img {
  width: calc(100vw / (1200 / 1000));
  margin: 0 auto calc(100vw / (1200 / 5));
  position: relative;
}


#contents.sp_item .co_02 .img span{
  width:calc(100vw / (1200 / 100));
  position:absolute;
  top: calc(100vw / (1200 / 200));
  right:calc(100vw / (1200 / 20));
}
@keyframes blink {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.blink {
  animation: blink 1s linear infinite;
}

#contents.sp_item .co_02 p.atm_img{
  padding-bottom:calc(100vw / (1200 / 100));
}

#contents.sp_item .co_02 p {
  width: calc(100vw / (1200 / 1000));
  margin: 0 auto ;
  padding: 0;
  color: #fff;
}
/*********kikan******/
#contents.sp_item .kikan {
  position: relative;
  margin-bottom: calc(100vw / (1200 / 120));
  padding: calc(100vw / (1200 / 35)) 0 0;
  background: #8a1311;
}
#contents.sp_item .kikan .kikan_bg {
  width: 100%;
  position: absolute;
  top: calc(100vw / (1200 /-120));
}
#contents.sp_item .kikan:after {
  content: "";
  position: absolute;
  top: 100%;
  box-sizing: border-box;
  border-right: 50vw solid transparent;
  border-left: 50vw solid transparent;
  border-top: 6vw solid #8a1311;
}
#contents.sp_item .kikan .read {
  margin-bottom: calc(100vw / (1200 / 25));
  letter-spacing: 0.1em;
  font-size: calc(100vw / (1200 / 27));
  color: #fff;
}
#contents.sp_item .kikan ul {
  width: calc(100vw / (1200 / 350));
  margin: 0 auto;
  text-align: center;
}
#contents.sp_item .kikan ul li {
  margin: 0 0 calc(100vw / (1200 / 10));
}
#contents.sp_item .kikan h2 {
  width: calc(100vw / (1200 / 200));
  margin: 0 auto calc(100vw / (1200 / 10));
  padding: 0;
  text-align: center;
  letter-spacing: 0.15em;
  border: 1px solid #393c41;
  background: #fff;
  border-radius: 100px;
  font-size: calc(100vw / (1200 / 20));
  font-weight: bold;
  color: #393c41;
}
#contents.sp_item .kikan p {
  margin: 0 auto;
  padding: 0;
  letter-spacing: 0.06em;
  line-height: 1.2;
  text-align: center;
  font-size: calc(100vw / (1200 / 42));
  font-weight: bold;
  color: #f7e6cd;
}
#contents.sp_item .kikan p span.f_s{
  font-size: calc(100vw / (1200 / 32));
}
/*********menu******/
#contents.sp_item .menu_info {
  padding-top: calc(100vw / (1200 / 10));
}
#contents.sp_item .menu_info .menu_info_read {
  text-align: center;
  font-size: calc(100vw / (1200 / 10));
}
#contents.sp_item .menu_info {
  position: relative;
  width: calc(100vw / (1200 / 1150));
  margin: calc(100vw / (1200 / 80)) auto calc(100vw / (1200 / 80));
  text-align: center;
}
#contents.sp_item .menu_info .inner .in {
  align-items: flex-start;
  vertical-align: middle;
}
#contents.sp_item .menu_info .inner .box {
  width: calc(100vw / (1200 / 350));
  vertical-align: middle;
  margin-bottom: calc(100vw / (1200 / 80));
  padding: 0 0 calc(100vw / (1200 / 10));
  background: #fff;
  position: relative;
}
#contents.sp_item .menu_info .inner .img {
  margin-bottom: calc(100vw / (1200 / 10));
  position: relative;
}
#contents.sp_item .menu_info .inner .img span {
  position: absolute;
  top: calc(100vw / (1200 /10));
  right: calc(100vw / (1200 /10));
  padding: calc(100vw / (1200 /5)) calc(100vw / (1200 /10));
  background: #b09a68;
  color: #fff;
}
#contents.sp_item .menu_info h2 {
  margin: calc(100vw / (1200 / 20)) calc(100vw / (1200 / 5)) calc(100vw / (1200 / 7));
  padding-bottom: calc(100vw / (1200 / 7));
  line-height: 1.1 !important;
  text-align: center;
  letter-spacing: 0.01em;
  font-size: calc(100vw / (1200 / 24));
  font-weight: bold;
  position: relative;
  color: #8a1311;
}
#contents.sp_item .menu_info h2 span {
  font-size: calc(100vw / (1200 / 18));
}
#contents.sp_item .menu_info .inner .box p.fs {
  position: absolute;
  top: calc(100vw / (1200 / 480));
  line-height: 1.5;
}
#contents.sp_item .menu_info .read {
  padding-bottom: calc(100vw / (1200 / 15));
  text-align: center;
  font-size: calc(100vw / (1200 / 20));
}
#contents.sp_item .menu_info .read.l1 {
  margin-bottom: calc(100vw / (1200 / 32));
}
#contents.sp_item .menu_info .inner ul.kome {
  width: 100%;
  margin-bottom: calc(100vw / (1200 / 20));
  padding-bottom: 0;
  position: absolute;
  bottom: calc(100vw / (1200 / -50));
  left: calc(100vw / (1200 / 20));
}
#contents.sp_item .menu_info .inner ul.kome li {
  margin-bottom: 0;
  padding-bottom: 0;
  text-align: left;
  line-height: 1.6;
  font-size: calc(100vw / (1200 / 14));
}
#contents.sp_item .menu_info .inner dl {
  padding: calc(100vw / (1200 / 8));
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  vertical-align: middle;
  align-items: center;
  justify-content: center;
}
#contents.sp_item .menu_info .inner dl dt {
  margin: 0 0 0 calc(100vw / (1200 / 20));
  width: calc(100vw / (1200 / 60));
  padding: 1px 0;
  border: 1px solid #313431;
  border-radius: 5px;
  text-align: center;
  vertical-align: middle;
}
#contents.sp_item .menu_info .inner dl dd {
  width: calc(100vw / (1200 / 220));
  letter-spacing: 0.01em;
  font-size: calc(100vw / (1200 / 22));
  font-weight: bold;
  display: inline-block;
  vertical-align: middle;
}
#contents.sp_item .menu_info .inner dl dd span.txM {
  font-size: calc(100vw / (1200 / 20));
}
#contents.sp_item .menu_info .inner dl dd span.txS {
  padding-left: 0.5em;
  font-size: calc(100vw / (1200 / 16));
  font-weight: normal;
}
#contents.sp_item .menu_info .inner .btn_cv {
  margin: 0 auto;
}
/*****btnarea****/
#contents.sp_item .cv .atn {
  width: calc(100vw / (1200 / 650));
  margin: 0 auto calc(100vw / (1200 / 100));
  line-height: 1.5;
  font-size: calc(100vw / (1200 /14));
  color: #fff;
}
#contents.sp_item .cv .atn li {
  margin-bottom: 0.6em;
  padding-left: 2em;
  position: relative;
}
#contents.sp_item .cv ul.atn li a {
  text-decoration: underline;
}
#contents.sp_item .cv .atn li::before {
  content: "※";
  display: inline-block;
  position: absolute;
  left: 0;
  top: 0;
}
#contents.sp_item .cv .btn_cv {
  margin: 0 auto calc(100vw / (1200 / 100));
}
#contents.sp_item .btnarea .btn_goto {
  width: calc(100vw / (1200 /650));
  margin: 0 auto calc(100vw / (1200 /100));
}


#contents .sega{
  margin:0 auto calc(100vw / (1200 / 50));
  text-align: center;
  font-size: calc(100vw / (1200 / 13));
  color: #fff;
}