@charset "UTF-8";
/* 全体 */
body {
  font-size: 14px;
  font-family: Arial, Verdana;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
  list-style: none;
}

a {
  text-decoration: none;
}

a:hover img {
  opacity: 0.5;
}

p {
  line-height: 1.8;
}
span.yellow_marker {
  background: linear-gradient(transparent 50%, yellow 50%);
  vertical-align: top;
  margin-left: 5px;
  padding: 0 3px;
}
span.marker_kiiro{
  text-decoration: underline;
  text-underline-offset: -0.2em;
  text-decoration-thickness: 0.5em;
  text-decoration-color: rgba(255, 228, 0, 0.6);
  text-decoration-skip-ink: none;
  margin: 0 auto;
}


.title_hidden{
  visibility: hidden;
}
/* 写真画像3：4size */
.aspect{
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
}

/* パソコンで見たときは"pc"のclassが表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassが表示される */
@media only screen and (max-width: 768px) {
    .pc { display: none !important; }
    .sp { display: block !important; }
}

#wrapper {
  width: 100%;
}

/* ヘッダー部分 */
#header {
  padding: 2vw;
}
#header img {
  width: 60%;
}

/* pcナビ用 */
.drawer-toggle.drawer-hamburger {
  top: 1vw;
  right: 1vw;
  padding: 8px 7px 18px;
  z-index:10010;
  background: #ee92a7;
}
.drawer-hamburger{
  position: unset;
}
.drawer-hamburger-icon,.drawer-hamburger-icon:after,.drawer-hamburger-icon:before {
    width: 100%;
    height: px;
    -webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
    transition: all .6s cubic-bezier(.19,1,.22,1);
    background-color: #fff;
}
.drawer-nav{
  width: 25%;
  overflow-y: scroll;
  scrollbar-width: none;
}
.drawer--right .drawer-nav{
  left: -100%;
}
.drawer--right.drawer-open .drawer-hamburger{
  left: 1vw;
}
.drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-nav, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    left: 0;
}
.drawer-brand,.drawer-menu-item{
  color: #FFF;
  font-weight: bold;
  padding-top: 0;
}
/* pcナビ用 */
/* スマホナビ用 */
@media only screen and (max-width: 768px){
  .drawer-toggle.drawer-hamburger {
    top: 1vw;
    right: 1vw;
    padding: 8px 7px 18px;
    z-index:10010;
    background: #ff3e9b;
    border-radius: 2vw;
  }
  .drawer-hamburger{
    position: fixed;
  }
  .drawer-hamburger-icon,.drawer-hamburger-icon:after,.drawer-hamburger-icon:before {
      width: 100%;
      height: px;
      -webkit-transition: all .6s cubic-bezier(.19,1,.22,1);
      transition: all .6s cubic-bezier(.19,1,.22,1);
      background-color: #fff;
  }
  .drawer-nav{
    width: 85%;
    overflow-y: scroll;
  }
  .drawer--right .drawer-nav{
    right: -100%;
  }
  .drawer--right.drawer-open .drawer-hamburger{
    right: 1vw;
  }
  .drawer--right .drawer-hamburger, .drawer--right.drawer-open .drawer-nav, .drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    left: unset;
  }
  .drawer-brand,.drawer-menu-item{
    color: #FFF;
    font-weight: bold;
    padding-top: 0;
  }
}
/* スマホナビ用ここまで */

.admission{
  position: absolute;
  top: 28vw;
  left: 68vw;
  text-align: center;
  width: 27.8vw;
}
.adm{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.4vw;
  margin-bottom: 0.5vw;
}

.enter1{
  background: linear-gradient(0deg, rgba(255, 194, 64, 1) 0%, rgba(255, 219, 151, 1) 100%);
  border: none;
  color: #fff;
  font-size: 1.8vw;
  width: 100%;
  border: 1px solid #fff;
  border-radius: 7px;
  font-weight: bold;
  font-family: 'Noto Sans JP';
  padding: 0.5vw 0;
}
.exit{
  background: linear-gradient(0deg, rgba(189, 181, 179, 1) 0%, rgba(232, 224, 222, 1) 100%);
  border: none;
  color: #fff;
  font-size: 1.8vw;
  width: 100%;
  border: 1px solid #fff;
  border-radius: 7px;
  font-weight: bold;
  font-family: 'Noto Sans JP';
  padding: 0.5vw 0;
}
.jyouhoukyoku_enter{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px 5px;
  margin-bottom: 0.5vw;
}
.jyouhoukyoku_text_box_wrapper{
  background: linear-gradient(0deg, rgba(235, 135, 155, 1) 0%, rgba(251, 136, 161, 1) 100%);
  border-radius: 8px;
  border: 2px solid #fff;
  line-height: 1.4;
  padding: 0.4vw 0;
  font-weight: bold;
}
.jyouhoukyoku{
  background: #EB879B;
}
.vanira{
  background: #FD9DAF;
}
.ichigo{
  background: #A0A7D0;
}
.girl_recruit {
    display: block;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    unicode-bidi: isolate;
}
.recruit_btn{
  background: linear-gradient(0deg, rgba(255, 102, 156, 1) 0%, rgba(245, 140, 168, 1) 100%);
  border-radius: 5px;
  font-size: 1.0vw;
  font-weight: bold;
  padding: 0.7vw;
  margin-bottom: 0.4vw;
}
.enter_notes{
  font-size: 0.8vw;
}
@media screen and (max-width: 767px) {
    .admission {
        position: static;
        width: 95vw;
        margin: 0 auto 1vw;
        padding: 0;
    }
    .enter1{
        font-size: 6.5vw;
        border-radius: 1.5vw;
        padding: 3vw 0;
    }
    .exit{
        font-size: 6.5vw;
        border-radius: 1.5vw;
        padding: 3vw 0;
    }
    .recruit_btn{
        font-size: 6vw;
        padding: 3vw 0px;
        margin-bottom: 3vw;
    }
    .enter_notes{
        font-size: 3vw;
    }
}
.group_list{
  display: flex;
  gap: 1vw;
  padding: 0 2vw;
  align-items: center;
  margin: 0;
}
@media screen and (max-width: 767px){
  .group_list{
    display: block;
  }
}
#concept {
  background: #4561AB;
  padding: 5vw 20vw;
}
#concept h2 {
  font-size: 3vw;
  color: #fff;
  margin-bottom: 2vw;
  font-weight: bold;
  font-family: "Mochiy Pop P One", sans-serif;
  letter-spacing: 1px;
  text-align: center;
}
#concept h3 {
    color: #DADF00;
    text-align: left;
    font-size: 1.1vw;
    padding-bottom: 1vw;
    margin-bottom: 1vw;
    border-bottom: 1px dotted #DADF00;
    font-weight: bold;
}
#concept p {
    text-align: left;
    color: #fff;
    line-height: 1.8;
    font-size: 1vw;
    margin-bottom: 2vw;
}
#concept h5 {
    color: #DADF00;
    text-align: left;
    font-size: 1.1vw;
    padding-bottom: 1vw;
    margin-bottom: 1vw;
    border-bottom: 1px dotted #DADF00;
    font-weight: bold;
}
@media screen and (max-width: 767px) {
    #concept {
        padding: 7vw 4vw;
        font-family: 'Noto Sans JP';
    }
    #concept h2 {
        font-size: 7vw;
        margin-bottom: 4vw;
    }
    #concept h3 {
        font-size: 2.5vw;
        line-height: 1.6;
    }
    #concept p {
        font-size: 2.9vw;
        margin-bottom: 5vw;
    }
    #concept h5 {
        font-size: 2.9vw;
        line-height: 1.6;
    }
}
#flow {
    background: #EAEAEA;
    padding: 1vw 4vw;
    margin-bottom: 2vw;
    margin-top: 4vw;
}
#flow h3 {
    background: #DADF00;
    text-align: center;
    width: 20vw;
    margin: 0 auto;
    padding: 1vw 0;
    font-size: 2vw;
    color: #000;
    font-size: 1.1vw;
    font-weight: bold;
    margin-top: -2.6vw;
}
@media screen and (max-width: 767px) {
    #flow h3 {
        font-size: 3.6vw;
        width: 61vw;
        margin-top: -4vw;
        margin-bottom: 4vw;
    }
}

.hygiene{
  background: #edf6ff;
  color: #11100e;
  padding: 3vw;
  width: 70vw;
  margin: 0 auto;
}
.anzen{
  display: grid;
  grid-template-columns: 0.7fr 6fr;
  gap: 1vw;
  text-align: center;
  width: 59vw;
  margin: 0 auto 3.5vw;
  align-items: center;
}
.anzen img{
  width: 100%;
}
.anshin{
  font-size: 2.4vw;
  letter-spacing: 0.2vw;
  font-weight: bold;
  color: #ed4f80;
  text-shadow: 1px 1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;
}
.anshin span{
  display: block;
  font-size: 1.4vw;
  color: #000;
  font-weight: initial;
}
.hygiene ul {
    width: 57.8vw;
    margin: 0 auto;
    margin-bottom: 0.9vw;
}
.hygiene li {
    display: grid;
    grid-template-columns: 4fr 1fr;
    gap: 2.7vw;
    align-items: center;
}
.hygiene dl {
    margin-bottom: 2.3vw;
}
.hygiene dt {
    color: #0071e4;
    font-size: 1.4vw;
    border-bottom: 1px dotted #000;
    margin-bottom: 1vw;
    font-weight: bold;
}
.hygiene dd {
    font-size: 1.1vw;
    letter-spacing: 0.1vw;
    font-size: 1.1vw;
}

@media screen and (max-width: 767px){
  .hygiene{
    width: 94vw;
    padding: 8vw 0 8vw;
  }
  .anzen{
    width: 90vw;
    display: block;
  }
  .anzen img{
    width: 9vw;
    margin-bottom: 2vw;
  }
  .anshin{
    font-size: 4vw;
  }
  .hygiene ul {
    width: 90vw;
  }
  .hygiene li {
    margin-bottom: 2vw;
  }
  .hygiene dl {
    margin-bottom: 2.3vw;
  }
  .hygiene dt {
    font-size: 2.6vw;
    margin-bottom: 1.4vw;
    padding-bottom: 0.2vw;
  }
  .hygiene dd {
    font-size: 2.1vw;
  }
}
.left_column{
  position: sticky;
  top: 0;
  left: 0;
  width: 22%;
  height: 100vh;
  background-image: url(../img/chepink_bg.png);
  padding: 1vw;
  box-sizing: border-box;
}
.right_column{
  width: 78%;
  margin: -100vh 0 0 auto;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .left_column {
    display: none;
    width: 100vw;
    padding-bottom: 20vw;
    transform: translateX(100%);
    transition: transform 0.3s ease;
    position: fixed;
  }
  .right_column {
    width: auto;
    margin: 0 auto;
  }
}
.l_c_sr{
  overflow: scroll;
  height: 50vw;
  -ms-overflow-style: none;
    scrollbar-width: none;
}
.l_c_sr::-webkit-scrollbar {
    display: none;
}
@media screen and (max-width: 767px) {
  .l_c_sr{
    height: 100vh;
  }
}
.left_rogo{
  width: 68%;
  margin: 0 auto 0.7vw;
  position: relative;
}
.left_rogo img {
  width: 100%;
  vertical-align: top;
}
ul.top_menu {
  width: 90%;
  margin: 0 auto 1.3vw;
  text-align: center;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5vw;
}
.top_menu li a {
  width: 100%;
  display: block;
  padding: 0.6vw 0;
  color: #FFF;
}
.top_menu li {
    background: #6accbf;
    border-radius: 1.5vw;
    font-size: 0.6vw;
    font-weight: 600;
}
li.online_link {
  grid-column: 1 / 3;
  background: #06c755;
}
.top_menu li a:hover{
  opacity: 0.5;
}
.sub_menu{
  width: 90%;
  margin: 0 auto 1vw;
  color: #2e9e8d;
  position: relative;
  border: 1px solid;
  display: grid;
  grid-template-columns: 1fr 1fr;
  padding: 1.5vw 0.8vw 0.9vw;
  font-size: 0.7vw;
  font-weight: 600;
  gap: 0.5vw;
}
.sub_menu a{
  color: #2e9e8d;
}
.sub_menu a:hover{
  opacity: 0.5;
}
.sub_menu dt {
  width: 33.9%;
  position: absolute;
  background: #fff;
  top: -7%;
  left: 0;
  right: 0;
  margin: auto;
  text-align: center;
  font-size: 0.9vw;
}
.sub_menu dd{
  margin-left: 0;
}
.media_link{
  width: 82%;
  margin: 0 auto 0.6vw;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.5vw;
}
.media_link img {
  width: 100%;
  vertical-align: top;
}
.credit{
  width: 82%;
  margin: 0 auto 0.6vw;
  text-align: center;
  background: #0e3778;
  color: #fff;
  padding: 0.4vw 0 0.5vw;
  font-size: 0.7vw;
  border-radius: 10vw;
  cursor: pointer;
}
.return_top {
  width: 90%;
  margin: auto;
  text-align: center;
  font-size: 0.8vw;
  font-weight: 600;
  border: solid 2px;
  padding: 0.7vw;
}
@media screen and (max-width: 767px) {
    .left_rogo {
        width: 50%;
        margin: 5vw auto;
        text-align: center;
    }
    ul.top_menu{
      width: 90%;
      margin: 5vw auto 7.8vw;
      gap: 2vw;
    }
    li.tel_link{
      background: #77ABE5;
    }
    li.online_link {
      grid-column: auto;
      background: #06c755;
    }
    .top_menu li {
        padding: 4vw 0;
        border-radius: 6vw;
        font-size: 3.7vw;
    }
    .sub_menu{
      margin: 0 auto 5vw;
      grid-template-columns: 1fr 1fr;
      padding: 5.4vw 4vw 4vw;
      font-size: 4vw;
      gap: 4.2vw;
      box-sizing: border-box;
    }
    .sub_menu dt{
      top: -8%;
      font-size: 4.2vw;
    }
    .media_link{
      margin: 0 auto 2.5vw;
      gap: 2vw;
    }
    .credit{
      margin: 0 auto 5vw;
      padding: 1.4vw 0 2vw;
      font-size: 3.6vw;
    }
    .return_top{
      font-size: 3.3vw;
      padding: 3.4vw;
    }
}

.main_head{
  margin-bottom: 1vw;
}
.main_head img{
  width: 100%;
  vertical-align: top;
}
.right_column h1 {
    color: #cb1b63;
    text-align: center;
    font-size: 13px;
    padding: 5px;
}
@media screen and (max-width: 767px){
  .head_title{
    font-size: 3.2vw;
  }
}

.event{
  box-sizing: border-box;
}
@media screen and (max-width: 767px){
  .event{
    padding-bottom: 12px;
  }
}
.iv_g{
  width: 100%;
  padding: 10px 0;
}
.iv_g img{
  width: 100%;
  vertical-align: bottom;
}

/*スライダーここから*/
.swiper-container {
  position: relative;
}
.swiper-flem{
  padding: 0 20px 10px;
}
.swiper-flem2{
  padding: 0 20px 10px;
}
@media screen and (max-width: 767px){
  .swiper-flem2{
    padding: 0;
  }
}
/*ショップページ　スライダー*/
.swiper-box{
  position: relative;
}
.swiper-box .swiper{
  width: 100%;
  text-align: center;
}
/*スライダーのサイズ調整*/
.swiper-box .swiper img{
  width: 100%;
  border-radius: 30px;
  border: 3px solid #FFF;
}
.swiper-box2 .swiper img{
  width: 100%;
  border-radius: 20px 20px 0 0;
}
.swiper-box2 .swiper img{
  width: 100%;
}
/*ページネーションの位置を調整*/
.swiper-pagination{
  background-color: rgba(255,255,255,0.6);
}
.swiper-pagination2{
  background-color: rgba(255,255,255,0.6);
  bottom: -40px !important;
}
/*ページネーションの色を変更*/
.swiper-box .swiper-pagination-bullet{
  background: #3d2cdb;
}
.swiper-slide {
  background-color: transparent;
}

/*swiper3 矢印の色を変更*/
.swiper-container3{
  position: relative;
  overflow: hidden;
}
.swiper-container3 .swiper-button-next,.swiper-container3 .swiper-button-prev{
    background-color: #ccc;
    border-radius: 50%;
    width: 2em;
    height: 2em;
}
.swiper-container3 .swiper-button-next::after, .swiper-container3 .swiper-button-prev::after {
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: #000;
    font-size: 1.2rem;
}

.swiper-container3 .swiper-button-next::after {
    content: '\f054'; /* FontAwesomeの右矢印 */
}

.swiper-container3 .swiper-button-prev::after {
    content: '\f053'; /* FontAwesomeの左矢印 */
}
/*スライダーここまで*/

.sokuhime{
  display: grid;
  grid-template-columns: 1.4fr 1fr;
  gap: 2vw;
  background: #FFE2E4;
  padding: 2vw 3vw;
}
.now{
  width: 38.2vw;
}
.now h2{
  margin-bottom: 1vw;
}
.now img{
  width: 100%;
  vertical-align: top;
}
.sokuhime h2{
  text-align: center;
  font-size: 3vw;
  font-weight: bold;
  border-bottom: 1px solid #F35497;
  color: #F35497;
  padding: 0 0 1vw;
}
.sokuhime h2 span {
  display: block;
  margin: 0.8vw 0 0.3vw;
  font-size: 2vw;
}
@media screen and (max-width: 767px) {
  .sokuhime{
    display: block;
    padding: 7vw 3vw;
  }
  .now{
    width: 100%;
    margin-bottom: 10vw;
  }
  .sokuhime h2{
    width: 90%;
    font-size: 7vw;
    padding-bottom: 3vw;
    margin: 0 auto 4vw;
  }
  .sokuhime h2 span {
    font-size: 6vw;
  }
}
.news h2{
  background: none;
  padding: 0;
  color: #fff;
  font-size: 1vw;
  font-weight: bold;
  letter-spacing: 1px;
  border-radius: 10px 10px 0 0;
  position: relative;
}
.news img{
  width: 100%;
  vertical-align: top;
}
.news_erea{
  background: #fff;
  height: 32.6vw;
  overflow-y: scroll;
  border: 3px solid #F782A9;
  margin: -0.2vw 0;
}
.s_s{
  border-radius: 20px;
  box-shadow: 0px 0px 15px -5px #777777;
  text-align: center;
  color: #fff;
  position: relative;
}
.s_s2{
  border-radius: 20px;
  box-shadow: 0px 0px 15px -5px #777777;
  text-align: center;
  color: #fff;
}
.s_s img{
  border-radius: 20px 20px 0 0;
}
.s_s img:nth-of-type(2){
    position: absolute;
    right: 0%;
    top: 0%;
    width: 100%;
    height: 100%;
    z-index: 1;
    border-radius: 20px;
}
.s_s span.ranking{
  color: #fff;
  position: absolute;
  top: 0.4vw;
  left: 0.4vw;
  background: #9B999A;
  padding: 0.4vw 0.7vw;
  font-size: 1.1vw;
  border-radius: 7px;
  box-shadow: 0px 0px 15px -5px #777777;
}
@media screen and (max-width: 767px){
  .news h2{
    width: 100%;
    margin: 0;
  }
  .s_s2{
    border-radius: 20px;
    box-shadow: 0px 0px 15px -5px #777777;
    text-align: center;
    color: #fff;
    background: #FFF;
  }
  .s_s span.ranking{
    font-size: 7vw;
    width: 10vw;
    height: 10vw;
    left: 2vw;
    top: 2vw;
  }
}
.girl_info{
  position: relative;
  padding: 1.1vw 0 0.7vw;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  border-radius: 0 0 20px 20px;
}
.girl_info a{
  color: #fff;
  text-decoration: none;
}
.girl_shifuto{
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -1.1vw;
  background: #ffffff;
  width: 80%;
  border-radius: 30px;
  padding: 0.2vw 0 0.2vw;
  font-size: 0.7vw;
  z-index: 2;
  font-weight: bold;
}
.girl_info2{
  background:#CCB359;
  position: relative;
  padding: 1.1vw 0 0.7vw;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  border-radius: 0 0 20px 20px;
}
.girl_info2 a{
  color: #fff;
  text-decoration: none;
}

.girl_shifuto2{
 color:#CCB359;
 border:2px solid #CCB359;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -1.1vw;
  background: #ffffff;
  width: 80%;
  border-radius: 30px;
  padding: 0.2vw 0 0.2vw;
  font-size: 0.7vw;
  z-index: 2;
  font-weight: bold;
}
.girl_info3{
  background:#808080;
  position: relative;
  padding: 1.1vw 0 0.7vw;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  border-radius: 0 0 20px 20px;
}
.girl_info3 a{
  color: #fff;
  text-decoration: none;
}

.girl_shifuto3{
 color:#808080;
 border:2px solid #808080;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -1.1vw;
  background: #ffffff;
  width: 80%;
  border-radius: 30px;
  padding: 0.2vw 0 0.2vw;
  font-size: 0.7vw;
  z-index: 2;
  font-weight: bold;
}
.girl_info4{
  background:#696969;
  position: relative;
  padding: 1.1vw 0 0.7vw;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  border-radius: 0 0 20px 20px;
}
.girl_info4 a{
  color: #fff;
  text-decoration: none;
}

.girl_shifuto4{
 color:#696969;
 border:2px solid #696969;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -1.1vw;
  background: #ffffff;
  width: 80%;
  border-radius: 30px;
  padding: 0.2vw 0 0.2vw;
  font-size: 0.7vw;
  z-index: 2;
  font-weight: bold;
}
.dpg{
 color:#696969;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -5vw;
  width: 80%;
  padding: 0.2vw 0 0.2vw;
  z-index: 1;
  font-size: 2.5vw;
  font-weight: bold;
}
.dpg2{
 color:#696969;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -5vw;
  width: 80%;
  padding: 0.2vw 0 0.2vw;
  z-index: 1;
  font-size: 2.5vw;
  font-weight: bold;
}
.dpg3{
 color:#696969;
  position: absolute;
  right: 0;
  left: 0;
  margin: auto;
  top: -4.1vw;
  width: 80%;
  padding: 0.2vw 0 0.2vw;
  z-index: 1;
  font-size: 2vw;
  font-weight: bold;
}
.prd_f{
  color: #696969;
  text-shadow:2px 2px 0 #000, -2px -2px 0 #000,
              -2px 2px 0 #000, 2px -2px 0 #000,
              0px 2px 0 #000,  0-2px 0 #000,
              -2px 0 0 #000, 2px 0 0 #000;
}
.prp_f{
  color: #808080;
  text-shadow:2px 2px 0 #000, -2px -2px 0 #000,
              -2px 2px 0 #000, 2px -2px 0 #000,
              0px 2px 0 #000,  0-2px 0 #000,
              -2px 0 0 #000, 2px 0 0 #000;
}
.prg_f{
  color: #CCB359;
  text-shadow:2px 2px 0 #000, -2px -2px 0 #000,
              -2px 2px 0 #000, 2px -2px 0 #000,
              0px 2px 0 #000,  0-2px 0 #000,
              -2px 0 0 #000, 2px 0 0 #000;
}
.girl_name{
  margin-bottom: 0.5vw;
  border-bottom: 0.5px dashed #fff;
  padding-bottom: 0.5vw;
}
.name_size{
  font-size: 1.2vw;
  margin-right: 0.5vw;
  font-weight: bold;
}
.age_size{
  font-size: 0.7vw;
}
.girl_size{
  font-size: 1vw;
  margin-bottom: 0.5vw;
}
.syame_paji{
  display: flex;
  justify-content: center;
  gap: 1vw;
  margin: 0;
  font-size: 0.6vw;
}
.syame_paji p{
  border: 1px solid #fff;
  padding: 0.3vw;
  border-radius: 20px;
  margin: 0.4vw;
  font-size: 0.6vw 1vw;
}
.sy_2{
  display: flex;
  justify-content: center;
  gap: 2vw;
  margin: 0;
  font-size: 0.6vw;
}
.sy_2 p{
  border: 1px solid #fff;
  padding: 0.3vw;
  border-radius: 20px;
  margin: 0;
  font-size: 0.6vw 1vw;
}
@media screen and (max-width: 767px){
  .girl_shifuto{
    font-size: 3vw;
    width: 90%;
    border-radius: 10px;
    padding: 0.2vw 0 0.4vw;
    margin-top: -10vw;
    position: static;
    font-weight: bold;
  }
  .girl_shifuto2{
    font-size: 3vw;
    width: 90%;
    border-radius: 10px;
    padding: 0.2vw 0 0.4vw;
    margin-top: -10vw;
    position: static;
    font-weight: bold;
  }
  .girl_shifuto3{
    font-size: 3vw;
    width: 90%;
    border-radius: 10px;
    padding: 0.2vw 0 0.4vw;
    margin-top: -10vw;
    position: static;
    font-weight: bold;
  }
  .girl_shifuto4{
    font-size: 3vw;
    width: 90%;
    border-radius: 10px;
    padding: 0.2vw 0 0.4vw;
    margin-top: -10vw;
    position: static;
    font-weight: bold;
  }
  .shifuto_font_sp{
    font-size: 3.5vw;
  }
  .shifuto_m_t{
    margin-top: -3vw;
  }
  .dpg{
    top: -19vw;
    font-size: 7vw;
  }
  .dpg2{
    top: -8vw;
    font-size: 4vw;
  }
  .dpg3{
    top: -20vw;
    font-size: 10vw;
  }
  .girl_name{
    padding: 1vw 0 1.7vw;
    margin-bottom: 1.4vw;
  }
  .name_size{
    font-size: 5vw;
  }
  .age_size{
    font-size: 3.5vw;
  }
  .girl_size{
    font-size: 3vw;
    padding-bottom: 1vw;
  }
  .gs_2{
    font-size: 4vw;
  }
  .syame_paji{
    padding: 0 0 2.3vw 0;
    margin: 0 1vw;
  }
  .syame_paji p{
    font-size: 3vw;
    padding: 0.8vw 1vw;
  }
  .sy_2{
    gap: 0.8vw;
    padding: 0 0 2.3vw 0;
  }
  .sy_2 p{
    font-size: 3.5vw;
    padding: 0.8vw 2vw;
  }
  .news_erea{
    height: 80vw;
  }
}
.new_girl{
  background: #fff;
  padding-bottom: 3.3vw;
  background-image: url(../img/star_v2.jpg);
  background-attachment: fixed;
  background-size: cover;
}
.new_girl h2{
  text-align: center;
  padding: 2.5vw 0 1vw;
  font-size: 1.8vw;
  font-weight: bold;
  border-bottom: 1px solid #3C8813;
  width: 54vw;
  margin: 0 auto 1vw;
  color: #3C8813;
}
.new_girl img{
  width: 100%;
  vertical-align: top;
}
.new_girl h2 span{
  color: #3C8813;
  display: block;
  margin: 0.8vw 0 0.3vw;
  font-size: 3vw;
}
.new_girl h2 a{
  color: #fff;
  text-decoration: none;
}
.new_girl h2 button {
    background: #8CC600;
    border: none;
    color: #fff;
    border-radius: 40px;
    padding: 0.6vw;
    font-size: 1vw;
    cursor: pointer;
    text-align: center;
    width: 11.7vw;
}
@media screen and (max-width: 767px){
  .new_girl h2 {
    width: 90%;
    font-size: 7vw;
    padding-top: 3.5vw;
    padding-bottom: 3vw;
    margin: 0 auto 4vw;
  }
  .new_girl h2 span{
    font-size: 8vw;
  }
}
.c_list{
    backface-visibility: hidden;
    display: -ms-flexbox;
    display: flex;
    height: 100%;
    margin: 0 !important;
    padding: 0 !important;
}
.c_li{
  display: grid;
  grid-template-columns: 1.15fr 1fr;
  gap: 1vw;
  padding: 1vw;
  background: #fff;
  box-sizing: border-box;
  border-radius: 20px;
  position: relative;
}
.c_li img{
  object-fit: cover;
}
.c_li img:nth-of-type(2){
  position: absolute;
  left: 3%;
  top: 3%;
  width: 50%;
  z-index: 1;
}
@media screen and (max-width: 767px){
  .c_li img:nth-of-type(2){
    left: 8px;
    top: 7px;
    width: 94%;
    z-index: 0;
  }
}
.c_info{
  padding: 0;
  text-align: center;
}
.n_day{
  background: #8CC600;
  color: #fff;
  border-radius: 30px;
  font-size: 1vw;
  padding: 0.4vw 0;
  margin: 0 auto 0.6vw;
}
.c_name{
  color: #EE92A7;
  padding-bottom: 0;
}
.name_t_size{
  font-size: 1.6vw;
}
.age_t_size{
  font-size: 1.2vw;
}
.c_shifuto{
  font-size: 1vw;
  width: 10vw;
  padding: 0.2vw 0;
  border: 2px solid #EE92A7;
  color: #F4567A;
  text-align: center;
  margin: 0 auto;
  border-radius: 9px;
  margin-bottom: 0.5vw;
  position: initial;
}
.c_size{
  font-size: 1vw;
  color: #EE92A7;
  margin-bottom: 0.7vw;
  letter-spacing: 2px;
}
.c_syame{
  display: flex;
  justify-content: center;
  gap: 0.6vw;
  font-size: 0.6vw;
  margin-bottom: 0.4vw;
}
.c_syame a{
  color: #FFF;
}
.c_syame p{
  background: #71BDFF;
  color: #FFF;
  padding: 0.3vw 1vw;
  border-radius: 10px;
}
.c_komento{
  text-align: left;
  color: #000;
  line-height: 1.4;
  font-size: 0.6vw;
  margin-bottom: 1.1vw;
  height: 8.5vw;
  overflow: hidden;
}
.c_info button {
    background: #F783AA;
    border: none;
    width: 100%;
    color: #fff;
    font-size: 0.9vw;
    padding: 0.2vw 0 0.4vw;
    border-radius: 5px;
}
@media screen and (max-width: 767px){
  .c_li{
    width: 100%;
    margin: 0;
    display: block;
    padding: 2vw;
    border-radius: 0;
  }
  .n_day{
    font-size: 4vw;
    padding: 1.7vw 0 1.9vw;
    width: 80%;
    margin: 0 auto;
    margin-top: -6vw;
    box-sizing: border-box;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .c_name{
    font-size: 3vw;
    padding-top: 5vw;
  }
  .name_t_size{
    font-size: 4vw;
    font-weight: bold;
  }
  .age_t_size{
    font-size: 3vw;
    font-weight: bold;
  }
  .c_shifuto{
    font-size: 3.3vw;
    width: 30vw;
    padding: 1vw 0 1vw;
    margin-bottom: 0;
    font-weight: bold;
  }
  .c_size{
    font-size: 3.5vw;
    font-weight: bold;
  }
  .c_syame{
    gap: 1vw;
    margin-bottom: 2vw;
  }
  .c_syame p{
    font-size: 3vw;
    padding: 1vw 3vw;
    color: #FFF;
  }
  .c_komento{
    font-size: 3vw;
    height: 12vw;
    margin-bottom: 4vw;
  }
  .c_info button{
    font-size: 3vw;
    padding: 1.5vw 0 1.7vw;
  }
}
button.new_more{
  background: green;
  padding: 2vw;
  margin: 3vw auto;
  display: block;
  width: 52vw;
  text-align: center;
  border-radius: 30px;
  font-size: 4.9vw;
  color: #FFF;
}
.photo{
  display: grid;
  grid-template-columns: 1fr 2.1fr;
  background: #FFCADA;
}
.photo img{
  width: 100%;
  vertical-align: top;
}
.photo h2{
  padding: 2vw 2.8vw 0.6vw;
  color: #7F0637;
  font-family: serif;
  font-weight: bold;
  border-bottom: 1px solid #7F0637;
  font-size: 2.7vw;
  margin-bottom: 1vw;
}
.photo h2 span{
  display: block;
  font-size: 1.1vw;
  margin-bottom: 0.1vw;
}
.photo h2 em {
  font-size: 1.1vw;
}
.photo ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.7vw;
    padding: 0 2.2vw;
}
.photo ul li{
  border-radius: 1vw;
}
li.gravure_last_item svg {
    font-size: 2vw;
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
}
.svg-inline--fa {
    display: var(--fa-display, inline-block);
    height: 1em;
    overflow: visible;
    vertical-align: -.125em;
}
li.gravure_last_item a {
    background: #E2698C;
    border-radius: 23px;
    display: grid;
    align-items: center;
    justify-content: center;
    color: #F9CFD0;
    font-weight: bold;
    font-size: 0.9vw;
    padding-top: 4vw;
    position: relative;
    cursor: pointer;
    height: 100%;
    box-sizing: border-box;
}
@media screen and (max-width: 767px){
  .photo{
    grid-template-columns: 1fr;
  }
  .photo ul {
    grid-template-columns: repeat(2, 1fr);
    padding: 5vw 2vw;
    gap: 2vw 1vw;
  }
  .photo ul li {
    border-radius: 19px;
  }
  li.gravure_last_item a {
    font-size: 3.5vw;
    padding-top: 16vw;
  }
  li.gravure_last_item svg {
    font-size: 10vw;
    top: 9vw;
  }
}
.schedule{
  background: #fff3f3;
  background-image: url(../img/pink-bg.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  padding-bottom: 1px;
}
.schedule h2{
  text-align: center;
  padding: 2.5vw 0 1vw;
  font-size: 3vw;
  font-weight: bold;
  border-bottom: 1px solid #F35497;
  width: 54vw;
  margin: 0 auto 1vw;
  color: #F35497;
}
.schedule h2 span {
  display: block;
  margin: 0.8vw 0 0.3vw;
  font-size: 1vw;
}
dl.week_list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 0.7vw;
  margin: 2vw 11.5vw;
}
dl.week_list dt.target_day {
  background: #EE92A7;
  color: #fff;
}
dl.week_list dt {
  background: #ffffff;
  color: #cdacb7;
  text-align: center;
  padding: 0.7vw 0 0.8vw;
  font-size: 0.8vw;
  font-weight: 600;
  border-radius: 20px;
  cursor: pointer;
}
.cast_grid{
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.5vw 0.7vw;
  margin: 0 2.2vw;
}

.splide__slide{
  backface-visibility: hidden;
  box-sizing: border-box;
  margin: 0;
}

.caption {
  font-size: 1.2vw;
  padding: 1.2vw 1.2vw 0;
  color: #fff;
  text-align: left;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 12;
}
.splide__slide .mask {
  width:      100%;
  height:     100%;
  position:   absolute; /* 絶対位置指定 */
  top:      0;
  left:     0;
  opacity:    0;  /* マスクを表示しない */
  /* background-color: rgba(0,0,0,0.4);  マスクは半透明 */
  -webkit-transition: all 0.2s ease;
  transition:   all 0.2s ease;
}
.splide__slide:hover .mask {
  opacity:    1;  /* マスクを表示する */
}
.cast_list ul li {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  text-align: center;
  color: #fff;
  box-shadow: 0px 0px 15px -5px #e7e7e7;
}
.cast_list img:nth-of-type(2){
  position: absolute;
  right: 0%;
  top: 0%;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.rnk{
  position: absolute;
  right: 7%;
  top: 3%;
  width: 30%;
  z-index: 2;
}
.rnk img{
  width: 100%;
}
.rnk2{
  position: absolute;
  right: 50%;
  top: 3%;
  width: 15%;
  z-index: 2;
}
.rnk2 img{
  width: 100%;
}
@media screen and (max-width: 767px){
  .rnk2{
    right: 7%;
    top: 3%;
    width: 30%;
  }
}
.gtc_g ul li {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  text-align: center;
  color: #fff;
  box-shadow: 0px 0px 15px -5px #e7e7e7;
}
.s_bg2{
  background:#CCB359;
}
.s_bg3{
  background:#808080;
}
.s_bg4{
  background:#696969;
}
@media screen and (max-width: 767px){
  .schedule h2{
    width: 90%;
    font-size: 7vw;
    padding-top: 10vw;
    padding-bottom: 3vw;
  }
  .schedule h2 span {
    font-size: 3vw;
    margin-bottom: 2vw;
  }
  .cast_grid{
    grid-template-columns: repeat(2, 1fr);
  }
  .cast_list ul li {
    display: grid;
    margin: 1.2vw 0.5vw;
    gap: 5vw 1vw !important;
  }
  .gtc_g ul li{
    display: grid;
    margin: 0.5vw 0.5vw;
    gap: 0 !important;
  }
}



/* メニューリスト　タブメニュー */
.tab {
  max-width: 80％;
  margin: 0 auto;
}
.tab__menu {
  display: flex;
  align-items: flex-end; /* メニューを下揃え */
  justify-content: right;
  min-height: 50px; /* メニュー切替時にタブがズレないように */
  padding: 0;
  margin: 2vw 11.5vw;
}
@media screen and (max-width: 767px){
    .tab__menu{
      margin: 2vw 0.5vw;
    }
}
.tab__menu-item:last-of-type {
  margin-right: 0px;
}

/* is-activeがついている時のスタイル */
.tab__menu-item.is-active {
  background-color: #EE92A7;
  color: #ffffff;
  padding: 12px 5px;
  font-size: 20px;
}

/* タブパネル */
.tab__panel {
 width: 100%;
}

.tab__panel-box {
  border-radius: 10px;
}

.tab__panel-box001 {
  display: none;
}

.tab__panel-box002 {
  display: none;
}

.tab__panel-box003 {
  display: none;
}

.tab__panel-box004 {
  display: none;
}

.tab__panel-box005 {
  display: none;
}

.tab__panel-box006 {
  display: none;
}

.tab__panel-box007 {
  display: none;
}

/* is-showがついている時のスタイル */
.tab__panel-box.is-show {
  display: block;
}

/* タブメニュー 追加css　ここから　*/
#wrap { 
  width: 100%; 
  margin: 20px auto;
}
.tabMenu {
  padding: 0px;
  margin: 0px;
  text-align:center; 
  display: flex;
  display: -webkit-flex;
  flex-flow: row nowrap;
}
.tabMenu li {
  font-weight: bold;
  list-style: none;
  flex-grow: 1;
  align-items: flex-end; /* メニューを下揃え */
}

.tabMenu li a {
  display:block;
  text-decoration: none;
}
.tabMenu li, 
.tabMenu li a {
  color: #000;
}
.tabMenu li.select, 
.tabMenu li.select a {
  color: #fff;
}
.tabContent { 
}
.tabContent.disnon {
  display: none;
}
.tabContent.select {
  display: block;
}
.tabContent dl {
    width: 1000px;
    margin: 10px;
    border-bottom: 1px solid #ccc;
}
.tabContent dt{ 
  float: left;
  width: 200px;
  padding: 11px 0;
  clear: both;
  font-weight: bold;
  border-top: 1px solid #ccc;
}
.tabContent dd {
  width: 800px;
  margin-left: 200px;
  padding: 13px 0;
  border-top: 1px solid #ccc;
}
.panel_boder{

}

.tab__menu-item {
  list-style: none;
  width: 200px;
  padding: 8px 5px;
  text-align: center;
  margin-top: 10px; /* メニューに高さを付ける */
  margin-right: 6px;
  color: #000;
  background-color: #DDDDDD;
  border-radius: 10px;
  cursor: pointer;
  transition: all .3s; /* アニメーション */
}
/* is-activeがついている時のスタイル */
.tab__menu-item.select {
  background-color: blue;
  color: #ffffff;
  padding: 12px 5px;
  margin-top: -10px; /* メニューに高さを付ける */
  font-size: 20px;
}
/* タブメニュー 追加css　ここまで　*/


.any_cast{
  width: 42.9vw;
  margin: 2.4vw auto 3vw;
}
.any_cast ul{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1vw;
}
.any_cast li{
  border: 1px solid #3F272F;
  color: #3F272F;
  text-align: center;
  padding: 0.6vw 0;
  font-size: 1vw;
  border-radius: 20px;
}
@media screen and (max-width: 767px){
  .any_cast{
    width: auto;
    margin: 6vw 8vw 10vw;
    box-sizing: border-box;
  }
  .any_cast ul{
    grid-template-columns: 1fr;
    gap: 2vw;
  }
  .any_cast li{
    font-size: 4vw;
    padding: 3vw;
  }
}
.ranking{
  background: #fff3f3;
  background-image: url(../img/kyoushitu-bg.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
  padding-bottom: 5vw;
}
.ranking h2{
  text-align: center;
  padding: 2.5vw 0 1vw;
  font-size: 1.8vw;
  font-weight: bold;
  border-bottom: 1px solid #FFF;
  width: 54vw;
  margin: 0 auto 1vw;
  color: #FFF;
}
.ranking h2 span {
  display: block;
  margin: 0.8vw 0 0.3vw;
  font-size: 1vw;
}
.ranking h3{
    text-align: center;
    background: #fff;
    width: 22.7vw;
    margin: 0 auto 1.8vw;
    font-size: 1.0vw;
    padding: 0.3vw 0 0.5vw;
    border-radius: 30px;
    color: #787876;
    letter-spacing: 1px;
}
@media screen and (max-width: 767px){
  .ranking h2{
    width: 90%;
    font-size: 3vw;
    padding-top: 10vw;
    padding-bottom: 3vw;
  }
  .ranking h2 span {
    font-size: 7vw;
    margin-bottom: 2vw;
  }
  .ranking h3{
    width: 70vw;
    font-size: 4vw;
    margin: 5vw auto 7vw;
  }
}
.ranking_area{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.4vw;
  width: 66vw;
  margin: 0 auto;
}
.ranking_area article {
    padding: 1vw;
    text-align: center;
    border-radius: 20px;
    background: #FEF4D1;
    color: #856327;
    width: 32.1vw;
    box-sizing: border-box;
}
.ranking_area article:nth-of-type(2) {
    background: #F3F3F3;
}
.ranking_area article h4 {
    color: #B48A06;
    font-size: 2.5vw;
    font-family: serif;
    margin: 0.6vw 0 0.3vw;
    letter-spacing: 2px;
}
.ranking_area article h4 span {
    display: block;
    font-size: 1.5vw;
    margin: 0.4vw 0 0.6vw;
}
.ranking_area article sub {
    color: #B48A06;
    display: block;
    font-size: 0.9vw;
    margin-bottom: 0.9vw;
    font-weight: bold;
}
@media screen and (max-width: 767px){
  .ranking_area {
    grid-template-columns: 1fr;
    width: 90%;
  }
  .ranking_area article{
    width: 88vw;
    padding-bottom: 6vw;
    margin-bottom: 3vw;
  }
  .ranking_area article h4{
    padding: 4vw 0 0;
    font-size: 11vw;
  }
  .ranking_area article h4 span{
    font-size: 6vw;
  }
  .ranking_area article sub{
    font-size: 4.4vw;
    margin: 0;
    margin-bottom: 9vw;
    width: 100%;
  }
}
.shame_movie{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.8vw;
  padding: 3.3vw;
  text-align: center;
  position: relative;

  background: #fff3f3;
  background-image: url(../img/bg_back_girl_v2.jpg);
  background-attachment: fixed;
  background-size: cover;
  background-position: center;
}

.shame h2, .movie h2 {
  color: #EF93A8;
  font-size: 2.3vw;
  letter-spacing: 0px;
  font-weight: bold;
  width: 78%;
  margin: 0 auto;
  margin-bottom: 1.4vw;
}
.shame h2 span, .movie h2 span{
  display: block;
  font-size: 1vw;
  border-top: 5px solid #EF93A8;
  margin-top: 0.6vw;
  padding-top: 0.6vw;
  color: #3D0014;
  font-weight: 500;
}
.shame_area{
  background: #fff;
  padding: 1vw;
  box-shadow: 0px 0px 15px -5px #777777;
  border-radius: 10px;
}
.fujoho_custom_banner{
    width: 30vw;
}
.pc_top_short_movie{
  height: 430px;
  overflow: overlay;
}
.movie_area{
  background: #fff;
  padding: 1vw;
  box-shadow: 0px 0px 15px -5px #777777;
  border-radius: 10px;
}
.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}
.pc_top_short_movie.movie_area ul{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px 5px;
}
.pc_top_short_movie.movie_area ul li {
    box-sizing: border-box;
}

@media screen and (max-width: 767px){
  .shame_movie {
    grid-template-columns: 1fr;
    padding-bottom: 11vw;
  }
  .shame_movie h2 {
    width: fit-content;
    font-size: 8vw;
    line-height: 1.5;
    margin: 8vw auto 3vw;
  }
  .shame_movie h2 span {
    font-size: 3.9vw;
    margin-bottom: 5vw;
    padding-top: 3vw;
  }
  .shame_area, .movie_area {
    padding: 3vw 0;
    box-shadow: none;
    border-radius: 0;
  }
  .fujoho_custom_banner{
    width: 80vw;
  }
  .movie_area {
    padding: 0;
    box-shadow: none;
    border-radius: 0;
  }
  .pc_top_short_movie.movie_area ul {
    display: flex;
    overflow: scroll;
    width: 92.5vw;
  }
  .pc_top_short_movie.movie_area{
    height: auto;
  }

}
.system h2 {
    text-align: center;
    color: #fff;
    font-weight: bold;
    padding: 1vw 0;
    font-size: 1.8vw;
    letter-spacing: 1px;
    background: repeating-linear-gradient(312deg, #F997C6, #F997C6 10px, #F897C4 10px, #EDA2C5 20px);
}
.system h2 span {
    color: #FFDD01;
    font-size: 1.2vw;
}
.system_block{
  padding: 2vw 3.6vw;
  background: #FFCADA;
}
.system_grid_2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: url(../img/bg_ao_naisou.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 1.5vw;
  margin-bottom: 1.2vw;
}
@media screen and (max-width: 767px){
  .system_block{
    background: #FFF;
  }
  .system h2 {
    font-size: 7vw;
    text-align: center;
    display: flex;
    align-items: baseline;
    justify-content: center;
    padding: 4vw 0;
  }
  .system h2 span {
      font-size: 4.6vw;
  }
  .system_grid_2col {
    display: block;
    background: none;
  }
}
.system_box{
  padding: 0.7vw 1.4vw 1.8vw 2vw;
}
.system_left_img img{
  width: 100%;
  padding: 10px 0 15px 15px;
  box-sizing: border-box;
}
.options_box{
  padding: 1.6vw 4vw;
}
.options_box dt {
  margin: 0 auto 1vw;
}
.options_box dd {
  gap: 1.1vw 1vw;
  flex-direction: column;
  flex-wrap: wrap;
  padding-bottom: 1.4vw;
}
.option_list {
  position: relative;
  color: #fff;
  border: solid 1px;
  padding: 0.8vw;
}
.option_list p{
  position: absolute;
  top: -0.9vw;
  left: 34%;
  font-size: 1vw;
  display: inline-block;
  padding: 0 0.5vw;
  background: #ffa500;
}
ul.option_list_menu {
  display: flex;
  flex-wrap: wrap;
  gap: 0.1vw 0.5vw;
  font-size: 0.8vw;
  padding-top: 5px;
}
@media screen and (max-width: 767px){
  .system_box{
    padding: 0;
  }
  .system_left_img img{
    padding: 0;
  }
  .options_box{
    padding: 0 0 5vw;
  }
  .options_box dt {
    width: 100%;
    background: none;
    border: none;
    text-align: left;
    font-size: 5.4vw;
    border-bottom: 1px solid #ED6A9E;
    padding: 2vw 0;
    margin-bottom: 4vw;
    border-radius: 0;
    color: #ED6A9E;
  }
  .options_box dd {
    display: block;
    height: 100%;
    margin-top: 6vw;
  }
  .option_list{
    width: 100%;
    color: #63102a;
    padding: 5vw 2.5vw;
    box-sizing: border-box;
  }
  .option_list p{
    top: -4.5vw;
    left: 40%;
    font-size: 5vw;
    padding: 0 0.5vw;
    background: #ffffff;
    color: #eb5a91;
    font-weight: 600;
  }
  ul.option_list_menu{
    display: block;
    font-size: 3.2vw;
    font-weight: 600;
  }
}

header {
  position: sticky;
  top: 0;
  z-index: 4;
}
.global_menu{
  display: flex;
  padding: 1vw 0;
  align-items: center;
  gap: 1vw;
  justify-content: center;
  background: #fff;
  box-sizing: border-box;
  position: sticky;
  top: 0;
  box-shadow: 0px 0px 15px -5px #777777;
}
@media screen and (max-width: 767px) {
  .global_menu {
    grid-template-columns: 4fr 1fr;
    gap: 24vw;
    padding: 3vw;
    align-items: center;
  }
}
.header_content01{
  color: #3a1924;
  font-weight: 600;
  font-size: 0.7vw;
  display: grid;
  gap: 0.6vw;
  line-height: 18px;
}
.header_content01_text{
  letter-spacing: 1px;
  margin-bottom: 0.5vw;
  color: #3a1924;
  font-weight: 600;
  font-size: 0.7vw;
}
.header_content01_text p{
  line-height: 18px;
}
.header_content01_time{
  display: flex;
  align-items: end;
  letter-spacing: 1px;
  line-height: normal;
}
.size13{
  font-size: 1.3em;
}
.l_box{
  display: inline-flex;
  justify-content: center;
  align-items: center;
  font-size: 0.5vw;
  padding: 0.2vw 0.3vw;
  border: solid 1px;
  margin: 0 auto 0 0.3vw;
}
.header_content02_text{
  color: #3a1924;
  font-size: 0.6vw;
  font-weight: 600;
  margin-bottom: 0.5vw;
}
.header_content02_tel{
  color: #e995a5;
  font-size: 0.9vw;
  font-weight: 800;
}
.header_content02_tel span{
  font-size: 1.7em;
  letter-spacing: 0vw;
  margin-left: 0.2vw;
}
.top_l_btn{
  color: #fff;
  background: #ee92a7;
  display: grid;
  justify-content: center;
  align-items: center;
  padding: 0.4vw 3vw;
  text-align: center;
  gap: 0.1vw;
  border-radius: 5vw;
}
.top_l_btn_text1{
  font-size: 0.9vw;
  font-weight: 800;
  letter-spacing: 1px;
}
.top_l_btn_text2{
  font-size: 0.6vw;
  letter-spacing: 0.1vw;
}
.profile_contents {
  background-attachment: fixed;
  background-size: auto;
  background-position: center;
  display: grid;
  grid-template-columns: 0.7fr 1.3fr;
}
.left_column_main{
  position: sticky;
  top: 0;
  left: 0;
  padding: 8vw 1vw 3vw 3vw;
  height: 100vh;
  background-color: #ffffff;
  background-image: repeating-linear-gradient(45deg, #ffbce780, #ffbce780 20px, transparent 20px, transparent 40px), repeating-linear-gradient(-45deg, #ffbce780, #ffbce780 20px, transparent 20px, transparent 40px);
  box-sizing: border-box;
}
.right_column_main{
    padding: 2vw 6.4vw;
    background: #FFF2E9;
    background-image: url(../img/bg_pink4.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
    font-size: 0.9vw;
    box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .right_column_main{
    width: 100vw;
    margin: 0 auto;
    padding: 5vw 3vw;
    background: #FFF0F5;
  }
  .profile_contents {
    grid-template-columns: 1fr;
  }
  .left_column_main{
    position: static;
    width: 100vw;
    height: auto;
    margin: 0 auto;
    padding: 5vw 3vw;
    background: #FFF0F5;
    background-image: url(../img/bg_pink4.jpg);
    background-attachment: fixed;
    background-size: cover;
    background-position: center;
  }
}
.profile_girl{
  width: 55%;
  margin: 0 5vw 1.3vw 4vw;
}
@media screen and (max-width: 767px){
  .profile_girl{
    width: 94%;
    margin: 0;
  }
}
#base{
  width: 100%;
  height: auto;
}
#mainImage img{
  width: 100%;
}
#imageList{
  margin-bottom: 20px;
  height: auto;
}
div#imageList ul {
  width: 100%;
  margin: 0;
  padding: 0;
}
div#imageList li {
  width: 20%;
  float: left;
}
div#imageList li img {
  width: 100%;
}

.profile_girl_catch{
  text-align: center;
  color: #E74667;
  font-weight: 600;
  margin-bottom: 0.3vw;
  font-size: 1vw;
}
.profile_girl_catch p{
  font-family: "Kiwi Maru", serif;
}
.profile_girl_name{
  display: flex;
  justify-content: center;
  align-items: baseline;
  gap: 1vw;
  color: #f56996;
  font-size: 2.8vw;
  font-weight: 600;
  letter-spacing: 0vw;
  margin-bottom: -0.3vw;
}

.profile_girl_name h2{
  font-family: "Cherry Bomb One", system-ui;
  font-weight: 400;
}
.profile_girl_age{
  font-size: 1.7vw;
}
.profile_girl_age p{
  font-family: "Cherry Bomb One", system-ui;
  font-weight: 400;
}
.profile_girl_3size{
  text-align: center;
  color: #170422;
  font-weight: 600;
  letter-spacing: 4.5px;
  font-size: 1vw;
  font-family: "Kiwi Maru", serif;
  line-height: 1;
  margin-bottom: 1vw;
}
.girl_syukin{
  display: grid;
  grid-template-columns: 1fr 1.4fr;
  text-align: center;
  margin: 2.5vw auto 2vw;
}
.girl_syukin li{
  padding: 0.4vw;
  font-size: 1vw;
  font-weight: 600;
  letter-spacing: 6px;
}
.g_t_c{
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-align: center;
  margin: 0.5vw auto 2vw
}
.g_t_c a{
  border: solid 1px #E74667;
  padding: 0.5vw;
  color: #E74667;
}
.g_t_c li{
  position: relative;
  display: inline-block;
  padding: 0.5vw 0;
  font-size: 1.5vw;
}
.g_t_c li:before {
  content: '';
  width: 18px;
  height: 18px;
  background: #E74667;
  border-radius: 50%;
  position: absolute;
  top: 0;
  right: -3vw;
  bottom: 0;
  margin: auto;
}
.g_t_c li:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 0;
  right: -2.65vw;
  bottom: 0;
  margin: auto;
}
@media screen and (max-width: 767px){
  .g_t_c{
    margin-top: 3vw;
  }
  .g_t_c a{
    padding: 2vw;
  }
  .g_t_c li{
    font-size: 3vw;
  }
  .g_t_c li:before{
    right: -6vw;
  }
  .g_t_c li:after{
    right: -4.8vw;
  }
}
.today_text{
  background: #E74667;
  color: #fff;
}
.today_time {
  background: #fff;
  color: #0c0043;
}
.qa_area {
  background: #fff;
  border-radius: 12px;
  padding: 0.5vw 1.5vw;
  margin-bottom: 2vw;
}
.qa_area ul{
  display: grid;
  grid-template-columns: 1fr 1.6fr;
  padding: 1vw 1vw 0.7vw;
  border-bottom: dotted 1px #000;
  line-height: 1.5;
  align-items: center;
  gap: 1vw;
}
.qa_area ul:last-of-type {
    border-bottom: none;
}
.q_area{
  color: #f56996;
}
@media screen and (max-width: 767px){
  .profile_girl_catch{
    font-size: 3.6vw;
    margin: 5vw 0 2vw;
    font-weight: 400;
  }
  .profile_girl_name{
    font-size: 9vw;
    font-weight: 400;
    letter-spacing: 1px;
    gap: 2.3vw;
  }
  .profile_girl_age{
    font-size: 5.4vw;
    letter-spacing: 1px;
  }
  .profile_girl_3size{
    margin-bottom: 5vw;
    font-size: 3vw;
    font-weight: 400;
  }
  .girl_syukin{
    margin: 5vw auto;
    width: 96%;
  }
  .girl_syukin li{
    letter-spacing: 0.7vw;
    padding: 2.2vw;
    font-size: 3.4vw;
  }
  .qa_area{
    margin-bottom: 10vw;
    background: #fff;
    border-radius: 12px;
    padding: 0.5vw 1.5vw;
  }
  .qa_area ul{
    padding: 3vw 2vw 2.5vw;
    line-height: 1.7;
    display: block;
    font-size: 3.5vw;
    border-bottom: dotted 1px #8f8f8f;
  }
}
.girl_week_schedule{
  margin-bottom: 2vw;
}
.girl_week_schedule h2{
  border-left: none;
  margin-bottom: 1.5vw;
  padding: 0 0 0.5vw;
  display: flex;
  border-bottom: dotted 2px #ffcdd7;
  font-size: 3.8vw;
  align-items: baseline;
}
.girl_title{
  font-family: "Cherry Bomb One", system-ui;
  font-weight: 400;
  color: #faebf2;
  -webkit-text-stroke: 2px #eb1b9b;
  text-shadow: 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd, 0 0 3px #fcb4dd;
  font-size: 2.4vw;
}
.girl_title_jp{
  font-size: 1.6vw;
  font-family: "Kiwi Maru", serif;
  font-weight: 500;
  padding-left: 10px;
}
.girl_schedule_list{
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.3vw;
  grid-auto-flow: column;
  grid-template-rows: repeat(3, auto);
}
.girl_schedule_list dl{
  display: grid;
  grid-template-columns: 30% 1fr;
  font-weight: 600;
  margin: 0;
}
.girl_schedule_list dt {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffcdd7;
  color: #e84768;
  font-weight: bold;
}
.girl_schedule_list dd{
  display: grid;
  grid-template-columns: 1fr 4.5vw;
  align-items: center;
  background: #fff;
  padding: 0.5vw;
  margin-left: 0;
}
.girl_schedule_list dd span {
    text-align: center;
}
span.timu_day{
  color: #e84768;
}
.tel_toiawase{
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 0.5vw;
  padding: 0.7vw;
  letter-spacing: 0.15vw;
}
.tel_botan{
  background: #ffe24e;
  color: #e84768;
  border: solid #fff 1px;
}
.toiawase_botan{
  background: #fff;
  color: #000;
  border: solid 1px;
}
@media screen and (max-width: 767px){
  .girl_week_schedule{
    margin-bottom: 10vw;
  }
  .girl_week_schedule h2{
    padding-bottom: 2vw;
  }
  .girl_title{
    -webkit-text-stroke: 1px #eb1b9b;
    font-size: 6.7vw;
  }
  .girl_title_jp{
    font-size: 5vw;
  }
  .girl_schedule_list{
    grid-template-columns: 1fr;
    gap: 0.8vw;
    grid-template-rows: max-content;
    grid-auto-flow: dense;
    font-size: 3vw;
  }
  .girl_schedule_list dl{
    display: grid;
    grid-template-columns: 30% 1fr;
    font-weight: 600;
  }
  .girl_schedule_list dt {
    display: flex;
    justify-content: center;
    align-items: center;
    background: #ffcdd7;
    color: #e84768;
  }
  .girl_schedule_list dd {
    grid-template-columns: 2.5fr 1fr;
  }
  .tel_toiawase{
    border-radius: 2.8vw;
    padding: 2.3vw;
  }
}
.girl_komento{
  margin-bottom: 2vw;
}
.girl_komento h2{
  border-left: none;
  margin-bottom: 1.5vw;
  padding: 0 0 0.5vw;
  display: flex;
  border-bottom: dotted 2px #ffcdd7;
  font-size: 3.8vw;
  align-items: baseline;
}
.girl_komento_text{
  line-height: 1.8;
  font-size: 0.9vw !important;
  padding: 0 1vw;
  height: auto;
  letter-spacing: 1px;
  font-weight: 400 !important;
  overflow-wrap: anywhere;
}
@media screen and (max-width: 767px){
  .girl_komento{
    margin-bottom: 10vw;
  }
  .girl_komento h2{
    padding-bottom: 2vw;
  }
  .girl_komento_text{
    line-height: 1.1;
    height: auto;
    background: #fdf8f8;
    padding: 4vw 3vw;
    font-size: 3.5vw !important;
  }
}
.girl_option{
  margin-bottom: 2vw;
}
.girl_option h2{
  border-left: none;
  margin-bottom: 1.5vw;
  padding: 0 0 0.5vw;
  display: flex;
  border-bottom: dotted 2px #ffcdd7;
  font-size: 3.8vw;
  align-items: baseline;
}
.girl_option dl {
  margin-bottom: 1vw;
  margin-left: 1vw;
}
.girl_option dt {
    border-bottom: dotted 1px #e6437b;
    color: #e6437b;
    padding: 0.5vw;
    font-weight: bold;
    margin-bottom: 0.5vw;
    font-size: 1vw;
}
.girl_option dl div {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.girl_option dd {
  font-size: 0.9vw;
  padding: 0.5vw;
  margin-left: 0.7vw;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px){
  .girl_option dl{
    margin-bottom: 5vw;
    font-size: 3.9vw;
  }
  .girl_option dt{
    padding: 2vw 1vw;
    font-size: 4.2vw;
  }
  .girl_option dd{
    padding: 2vw 0 1vw;
    font-size: 3.9vw;
  }
}
.girl_syamenikki{
  margin-bottom: 2vw;
}
.girl_syamenikki h2{
  border-left: none;
  margin-bottom: 1.5vw;
  padding: 0 0 0.5vw;
  display: flex;
  border-bottom: dotted 2px #ffcdd7;
  font-size: 3.8vw;
  align-items: baseline;
}
.fujoho_box_iframe{
  width: 100%;
  height: 320px;
  display: block;
}
.girl_x{
  margin-bottom: 2vw;
}
.girl_x h2{
  border-left: none;
  margin-bottom: 1.5vw;
  padding: 0 0 0.5vw;
  display: flex;
  border-bottom: dotted 2px #ffcdd7;
  font-size: 3.8vw;
  align-items: baseline;
}
.girl_x_img{
  width: 100%;
}
.girl_x_img img{
  width: 100%;
}
.campaign h2{
  margin: auto;
  text-align: center;
  color: #ff6fa3;
  font-family: serif;
  font-weight: bold;
  font-size: 3.0vw;
  background-image: url(../img/bg_pink5.jpg);
  background-attachment: fixed;
  background-size: cover;
  padding-top: 15px;
  padding-bottom: 15px;
}
.campaign h2 span {
  display: block;
  font-size: 1.8vw;
  margin-top: 1.1vw;
}
@media screen and (max-width: 767px){
  .campaign h2{
    font-size: 9.9vw;
  }
  .campaign h2 span {
    font-size: 4vw;
    padding-top: 1vw;
  }
}
.campaign_body{
  width: 54vw;
  margin: auto;
}
ul.campaign_item{
  margin-top: 3vw;
}
li.campaign_list{
  margin-bottom: 3vw;
  padding: 1vw;
  background: #fff;
}
li.campaign_list h3 {
  color: #000;
  padding: 0 0 1vw;
  font-size: 1.2vw;
  font-weight: 600;
}
li.campaign_list img{
  width: 100%;
}
@media screen and (max-width: 767px){
  .campaign_body{
    width: 90vw;
  }
  ul.campaign_item{
    margin-top: 0;
  }
  li.campaign_list{
    margin-bottom: 3vw;
    padding: 2vw;
  }
  li.campaign_list h3 {
    padding: 1vw 0 3vw;
    font-size: 3.8vw;
    font-weight: 600;
  }
}
.event_komento{
  padding: 1.5vw;
}
.event_komento h4{
  padding: 0.5vw 0;
  box-sizing: border-box;
  text-decoration: underline;
  text-underline-offset: -0.2em;
  text-decoration-thickness: 0.5em;
  text-decoration-color: rgba(255, 228, 0, 0.6);
  text-decoration-skip-ink: none;
  margin: 0 auto;
}
.event_komento p{
  line-height: 1.4;
}
@media screen and (max-width: 767px){
  .event_komento h4{
    padding: 4vw 0 7vw;
  }
}
.zaiseki_eria{
  width: 95vw;
  margin: 3vw auto;
}
.zaiseki_eria ul.cast_grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1vw 0.4vw;
}
@media screen and (max-width: 767px){
  .zaiseki_eria ul.cast_grid{
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 5vw 1vw !important;
  }
  .zaiseki_eria div.girl_shifuto{
    font-size: 2.9vw !important;
  }
  .zaiseki_eria div.girl_shifuto2{
    font-size: 2.9vw !important;
  }
  .zaiseki_eria div.girl_shifuto3{
    font-size: 2.9vw !important;
  }
  .zaiseki_eria div.girl_shifuto4{
    font-size: 2.9vw !important;
  }
}
.cosplay_eria{
  padding: 3vw 2.2vw;
  background: #FFEEF6;
}
.cosplay_group{
  margin: 0 auto 1.5vw;
}
ul.cosplay_item {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.4vw;
}
li.cosplay_list {
    background: #91DACF;
    text-align: center;
}
.cosplay_img{
  position: relative;
}
.cosplay_img img{
  width: 100%;
}
li.cosplay_list p.cosplay_money{
    background: #fff;
    width: 13vw;
    padding: 0.2vw 0;
    margin: 0 auto;
    border-radius: 20px;
    color: #EF95AE;
    font-weight: bold;
    font-size: 1.1vw;
    border: 2px solid #91DACF;
    margin-bottom: 0.2vw;
    margin-top: -0.9vw;
    position: relative;
}
li.cosplay_list p.cosplay_name {
    margin: 0 0.6vw 0.8vw;
    color: #F9F5D8;
    font-size: 1vw;
    font-weight: 600;
    height: 2.1vw;
    line-height: 1.3;
    display: grid;
    align-items: center;
}
li.cosplay_list p.cosplay_f {
    border: 2px solid #fff;
    width: 13vw;
    margin: 0 auto;
    padding: 0.2vw 0 0.3vw;
    color: #fff;
    border-radius: 12px;
    font-size: 0.9vw;
    margin-bottom: 0.9vw;
}
@media screen and (max-width: 767px){
  .cosplay_eria{
    padding: 3vw 2.2vw;
    background: #FFEEF6;
  }
  .cosplay_group{
    margin-bottom: 7vw;
  }
  ul.cosplay_item{
    grid-template-columns: repeat(2, 1fr);
    gap: 2vw 1vw;
  }
  li.cosplay_list p.cosplay_money{
    width: 41vw;
    font-size: 4vw;
    margin-top: -3vw;
    margin-bottom: 3vw;
  }
  li.cosplay_list p.cosplay_name{
    font-size: 3vw;
    line-height: 0;
    margin-bottom: 4vw;
  }
  li.cosplay_list p.cosplay_f{
    width: 32vw;
    font-size: 3vw;
    margin-bottom: 3vw;
  }
}
.gravure_eria{
  display: block;
  padding: 1vw 4vw;
  margin: 3vw auto;
  background: #FFCADA;
}
.mtpt{
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 4vw;
  padding-bottom: 7vw;
}

ul.gravure_grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 10px;
}
.gravure_eria img{
  vertical-align: bottom;
}
.gravure_date {
  font-size: 13px;
  line-height: 1.7;
  padding: 3px 0;
  text-align: center;
  letter-spacing: 1.3px;
  background: #fff;
  color: #000;
}
.gravure_date article {
    font-size: 1.5vw;
    font-weight: bold;
    color: #000;
}
.gravure_date p {
    padding: 0;
    margin: 0;
    font-size: 1vw;
    line-height: 18px;
}
.gravure_list{
  position: relative;
}
.gravure_list img:nth-of-type(2){
  position: absolute;
  left: 0;
  top: 0
  width: 94%;
  z-index: 0;
}
@media screen and (max-width: 767px){
  .gravure_eria{
    width: 100%;
    padding: 4vw 0;
  }
  .gravure_list{
    margin: 0;
  }
  ul.gravure_grid{
    grid-template-columns: repeat(2, 1fr) !important;
    padding: 5vw 2vw;
  }
  .gravure_date{
    font-size: 13px;
    line-height: 1.7;
    padding: 3px 0;
    text-align: center;
    color: #686868;
    letter-spacing: 1.3px;
  }
  .gravure_date article{
    font-size: 3.5vw;
    font-weight: bold;
  }
  .gravure_date p{
    font-size: 3vw;
    padding: 0;
    margin: 0;
  }
}
.bg_img_none{
  background-image: none;
}
.cast_list ul.cast_grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1.5vw 0.7vw;
    margin: 0 2.2vw;
}
.gtc_g ul.cast_grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.7vw 0.7vw;
    margin: 0 2.2vw;
}
.b_vw{
  margin-bottom: 3.5vw;
}
@media screen and (max-width: 767px){
  .cast_list ul.cast_grid{
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0;
    margin: 0 2.2vw;
  }
  .gtc_g ul.cast_grid{
    display: grid;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 0 !important;
    margin: 0 2.2vw;
  }
  .b_vw{
    margin-bottom: 8vw;
  }
}
.peji_top_a_img{
  width: 7%;
  position: fixed;
  bottom: 0px;
  right: 20px;
  z-index: 9999;
}
@media screen and (max-width: 767px){
  .peji_top_a_img{
    width: 30%;
    bottom: 75px;
    right: 10px;
    z-index: 1;
  }
}
.peji_top_a_img img{
  width: 100%;
}

.peji_top_a_img2{
  width: 7%;
  position: fixed;
  bottom: 0px;
  left: 20px;
  z-index: 9999;
}
@media screen and (max-width: 767px){
  .peji_top_a_img2{
    width: 30%;
    bottom: 75px;
    left: 10px;
    z-index: 1;
  }
}
.peji_top_a_img2 img{
  width: 100%;
}
.peji_sp_ikon{
  width: 100%;
}
.peji_sp_ikon li {
  width: 19%;
  display: inline-block;
}
.peji_sp_ikon img {
  width: 100%;
  margin: 0 auto;
}
/*グローバルナビ　下に固定*/
.peji_sp_ikon-fixed {
    position:fixed;
    bottom:0;
    left:0;
    width: 100%;
    z-index: 20;
}
@keyframes fade-in {
0%{margin-top:-64px;}
100%{margin-top:0;}
}


section {
 max-width: 600px;
 width: 100%;
 margin: 0 auto;
}
img {
 width: 100%;
 height: auto;
}
.center {
 display: flex;
 align-items: center;
 margin: 0 auto;
 margin-bottom: 0.5em;
}
.arrow {
  cursor: pointer;
  background: black;
  color: #FFF;
  border-radius: 50%;
  padding: 10px;
  z-index: 1;
}
.pal30{
  padding-left: 10px !important;
}
@media screen and (max-width: 767px){
  .w85{
    width: 100%;
  }
  .pal30{
    padding-left: 10px !important;
  }
}

.icon_3{
  top: 42px;
  right: 5px;
  width: 40px;
  position: fixed;
  z-index: 2;
}
.icon_3 li{
  margin-top: 10px;
}
.icon_3 img{
  width: 100%;
}

.keiretu_annai{
  border:5px double #ffffff;
  background-color:#f8edeb;
  box-shadow:0 0 0 6px #f8edeb;
  padding:8px 16px;
  margin:0 20px 5PX;
  font-size: 2vw;
  font-weight: bold;
  text-align:center;
}
@media screen and (max-width: 767px){
  .keiretu_annai{
    font-size: 6vw;
    margin:20px 20px 5PX;
  }
}
.nagare {
  width: 100%;
}
.nagare img{
  width: 100%;
}
.nagare h2 {
  padding: 10px 20px;
}
.nagare h3{
  margin: 30px 0 15px;
}

.nagare ol li {
  list-style-type: decimal;
  margin: 20px 0  20px 2em;
}

.nagare ol li .flex {
  display: flex;
}
.p_2{
  background-color: pink;
  color: #FFF;
  margin: 50px 0 5px;
}
.step_wrapper{
  width: 100%;
  background-color: rgba(255,255,255,0.5);
}
.step_li{
  width: 100%;
  display:block;
}
.step div{
  display : inline-block;
  vertical-align: top;
}
.steple{
  margin: 10px;
  width: 60px;
  height: 60px;
  background-color: pink;
  border-radius: 50%;
  color: #fff;
}
.steple p {
  text-align: center;
  font-weight: bold;
  margin-top: 10px;
}
.steple br {
display: block;
content: "";
margin: -10px 0;
}
.stepri{
  width: 80%;
  margin-top: 10px;
  margin-left: 20px;
}
.stepri h3 {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .stepri h3 {
    width: 100%;
  margin-top: 0;
  }
}
.stepri p{
  padding-bottom: 20px;
}

.vul{
  width: 100%;
}
.vli{
  width: 40%;
  display : inline-block;
  vertical-align: top;
  margin: 15px 30px;
}
@media screen and (max-width: 767px){
  .vli{
    width: 100%;
    margin: 0;
  }
}
.vli video {
  width: 100%;
}
.tyuui{
  width: 100%;
  background-color: rgba(255,255,255,0.5);
}
.box24 {
    position: relative;
    padding: 0.5em 0.7em;
    margin: 2em 0;
    background: pink;
    color: #FFF;
    font-weight: bold;
}
.box24:after {
    position: absolute;
    content: '';
    top: 100%;
    left: 30px;
    border: 15px solid transparent;
    border-top: 15px solid pink;
    width: 0;
    height: 0;
}
.n_k{
  padding: 0 20px 40px 0;
  box-sizing: border-box;
  text-align: right;
}
@media screen and (max-width: 767px){
  .n_k{
    text-align: left;
  padding: 20px 10px 10px;
  }
}
.box24 p {
    margin: 0; 
    padding: 0;
}
.footer {
  padding: 10px 30px 10px 30px;
  position: relative;
  display: block;
  color: #FFF;
  background-color: #000;
}
.footer p {
  text-align: center;
}



