@charset "UTF-8";

/* ===================
Top Page 
======================*/
/* mv */
.mv-slick {
  width: 1000px;
  margin: 0 auto;
}

.slick-dotted.slick-slider {
  margin-bottom: 8rem;
}

.slick-dots {
  bottom: -55px;
}

.slick-arrow:before {
  content: "";
  display: block;
  width: 25px;
  height: 50px;
  position: absolute;
  top: 0;
  left: 0;
}

.slick-next {
  right: -20px;
}

.slick-next:before {
  background: url(../img/pc/arrow_r.svg);
  background-size: contain;
}

.slick-prev:before {
  background: url(../img/pc/arrow_l.svg);
  background-size: contain;
}

/* top-contents */
/* .top-contents .ttl-txt{
 position: relative;
}
.top-contents .ttl-txt .j-txt{
 font-size: 1.6rem;
 position: absolute;
 bottom: -2.4rem;
 left: 1rem;
 letter-spacing: .12em;
} */
/* top-news */
.top-news {
  margin-bottom: 3rem;
}

.top-news_contents {
  width: 600px;
  height: 340px;
  background: url(../img/pc/top-news_bg.png) no-repeat center bottom/100%;
  padding: 1.6rem;
}

.top-news_contents .top-news_image {
  width: 250px;
  height: 250px;
}

.top-news_contents .top-news_txt {
  background: rgba(255, 255, 255, .3);
  width: 307px;
  height: 250px;
  overflow-y: scroll;
  padding: 1rem;
}

.top-news_txt .news-time {
  margin-bottom: 0.5rem;
  font-size: 1.3rem;
}

.top-news_txt .news-ttl {
  font-weight: 600;
  line-height: 1.6;
  color: var(--main-red);
  margin-bottom: 2rem;
}

.top-news_txt .news-txt {
  font-size: 1.5rem;
  line-height: 1.8;
  font-weight: 600;
}

.news-txt .txt-red {
  color: var(--main-red);
}

.news-txt .fz-l {
  font-size: 2.8rem;
}

.news-slick .slick-dots {
  bottom: -40px;
}

.news-slick .slick-arrow:before {
  width: 9px;
  height: 15px;
  position: absolute;
  top: 0;
  left: 0;
}

.news-slick .slick-prev,
.news-slick .slick-next {
  bottom: -50px;
  top: inherit;
  z-index: 9999;
}

.news-slick .slick-prev {
  left: 15px;
}

.news-slick .slick-next {
  right: 5px;
}

.news-slick.slick-dotted.slick-slider {
  margin-bottom: 5rem;
}

.news-slick .slick-prev:before {
  background: url(../img/pc/news-arrow_l.svg) no-repeat;
}

.news-slick .slick-next:before {
  background: url(../img/pc/news-arrow_r.svg) no-repeat;
}

/* top-schedule */
.top-schedule {
  margin-bottom: 5rem;
}

.top-schedule_cast-wrap {
  gap: 5px;
  margin-bottom: 4rem;
}

.top-schedule_cast-image {
  position: relative;

}

.top-schedule_cast .rank {
  position: absolute;
  bottom: 0;
  left: 0;
}

.status {
  background: var(--acnt-black);
  padding: .3rem 0;
  width: 80%;
  border-radius: 5px;
  margin: 0 auto .5rem;
  color: var(--base);
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
}

.top-schedule_cast-info {
  padding: .5rem 0;
  text-align: center;
}

.top-schedule_cast-info .name {
  font-size: 1.6rem;
  margin-bottom: .5rem;
}

.top-schedule_cast-info .size {
  font-size: 1.3rem;
  margin-bottom: 0.5rem;
}

.timesheet {
  color: var(--main-red);
  font-size: 1.3rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
}

.timesheet::before {
  content: url(../img/pc/hours_icon.svg);
  display: block;
  width: 12px;
  height: 12px;
  margin-right: .5rem;
}

/* top-pick-up */
.top-pick-up {
  margin-bottom: 6rem;
}

.top-pick-up .pick-list li {
  margin-bottom: 1rem;
}

/* top-photo-diary */
.top-photo-diary {
  margin-bottom: 6rem;
}

.top-photo-diary .flexB {
  gap: 10px;
}

/* top-ranking */
.top-ranking ol {
  list-style: none;
  padding: 0 2rem;
}

.top-ranking li {
  margin-bottom: 3rem;
}

.ranking-photo {
  border: 2px solid;
  border-image: linear-gradient(45deg, rgba(186, 148, 68, 1) 0%, rgba(84, 41, 33, 1) 35%, rgba(215, 215, 97, 1) 43%, rgba(208, 160, 68, 1) 69%, rgba(99, 36, 0, 1) 75%, rgba(211, 167, 68, 1)) 1;
  margin-bottom: 1.6rem;
  position: relative;
}

.cast-rank {
  position: absolute;
  right: -.5rem;
  top: -.8rem;
}

.ranking-icon {
  position: absolute;
  left: -3rem;
  bottom: -2rem;
}

.cast-name {
  text-align: center;
  font-weight: 600;
  margin-bottom: 1rem;
}

.cast-size {
  font-size: 1.2rem;
  text-align: center;
}

.top-ranking .button {
  width: auto;
}

/* top-newface */
.top-newface ul {
  list-style: none;
  padding: 0 2rem;
}

.top-newface li {
  margin-bottom: 3rem;
  text-align: center;
}

.newface-photo {
  border: 2px solid var(--base);
  position: relative;
  margin-bottom: 3rem;
}

.newface-photo .img-cover {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.newface-photo .top-new-face_enter-date {
  position: absolute;
  width: 58px;
  height: 70px;
  color: var(--base);
  font-size: 1.6rem;
  text-align: center;
  background: url(../img/pc/new-date_bg.png) no-repeat center / 100%;
  padding: 19px 0;
  text-shadow: 0.4px 0.75px 0.4px rgba(0, 0, 0, .4);
  left: 50%;
  translate: -50%;
  bottom: -25px;
}

.newface-photo .enter-date {
  font-size: 2rem;
}

.newface-photo .enter-shop {
  display: block;
  text-align: center;
  font-size: 1.3rem;
  margin-top: 0.3rem;
}

.top-newface .work-today {
  margin-bottom: 1rem;
}

.top-newface .button {
  width: auto;
}

/* ===================
Concept Page 
======================*/
.concept_read-area .read-txt {
  text-align: center;
  margin-bottom: 6rem;
}

.concept_read-area p {
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1.8;
  margin-bottom: 4rem;
  text-align: center;
}

.concept_read-area .c-red {
  color: var(--main-red);
}

.concept_basic-play-area p {
  font-weight: 600;
  margin-bottom: 4rem;
  text-align: center;
  line-height: 2;
}

.concept_basic-play-area .option {
  text-align: center;
}

/* ===================
about Page 
======================*/
.about-txt {
  text-align: center;
  line-height: 2;
  margin-bottom: 4rem;
}

.about01 .sub-ttl02 {
  font-size: 2.2rem;
}

.about01 .sub-ttl02 span {
  padding-bottom: 1rem;
}

.meeting-spot {
  margin-bottom: 4rem;
}

.meeting-spot .flexW {
  flex-direction: row-reverse;
  justify-content: flex-end;
  gap: 2.5rem;
}

.meeting-spot__ttl {
  font-size: 1.8rem;
  margin-bottom: 2rem;
  font-weight: 600;
}

.meeting-spot__address {
  line-height: 1.43;
}

.google_map {
  margin-bottom: 4rem;
}

.about01 .hotel-intro .hotel-list {
  list-style: none;
  margin-bottom: 8rem;
}

.about01 .hotel-list li {
  border-bottom: 1px solid var(--acnt-black);
  padding-top: 2rem;
  padding-bottom: 2rem;
  margin-bottom: 1.2rem;
  padding-left: 4rem;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 40px 40px;
  display: flex;
}

.about01 .hotel-list li:first-child {
  background-image: url(../img/pc/pin1.png);
}

.about01 .hotel-list li:nth-child(2) {
  background-image: url(../img/pc/pin2.png);
}

.about01 .hotel-list li:nth-child(3) {
  background-image: url(../img/pc/pin3.png);
}

.about01 .hotel-list li:nth-child(4) {
  background-image: url(../img/pc/pin4.png);
}

.about01 .hotel-list li:nth-child(5) {
  background-image: url(../img/pc/pin5.png);
}

.about01 .hotel-list li:nth-child(6) {
  background-image: url(../img/pc/pin6.png);
}

.about01 .hotel-list li:last-child {
  background-image: url(../img/pc/pin7.png);
}

.about01 .hotel-list .h-name {
  font-size: 1.8rem;
  margin-bottom: 0.5rem;
  width: 30%;
}

.about01 .hotel-list p {
  margin-bottom: 0;
}

.hotel-intro a {
  display: block;
  width: 360px;
  margin: 0 auto;
}

/* ===================
about02 Page 
======================*/
.about02 .sub-ttl02 {
  font-size: 2.2rem;
}

.about02 .sub-ttl02 span {
  padding-bottom: 1rem;
}

.delivery-fee {
  margin-bottom: 6rem;
}

.delivery-fee .fee-box {
  border: 2px solid var(--acnt-black);
  background: var(--base);
  margin-bottom: 2rem;
}

.delivery-fee .fee-box .fee-ttl {
  background: var(--acnt-black);
  color: var(--base);
  font-size: 1.8rem;
  text-align: center;
  padding: .9rem 0;
}

.delivery-fee .fee-box .fee-detail {
  font-size: 1.6rem;
  text-align: center;
  padding: 1.5rem 0;
}

.delivery-fee p {
  font-size: 1.1rem;
  padding-left: 1rem;
  margin-bottom: 0;
}

.hotel-delivery .step-ttl {
  font-size: 2.5rem;
}

.hotel-delivery ol {
  list-style-type: none;
  padding-top: 5rem;
}

.hotel-delivery ol .flexW {
  justify-content: space-between;
}

.hotel-delivery ol .flexW div:last-of-type {
  width: 367px;
}

.hotel-delivery ol .flexW div p {
  line-height: 2;
}

.nav_tel-btn {
  display: block;
  margin-bottom: 1.6rem;
}

.hotel-delivery li {
  margin-bottom: 6rem;
  padding-left: 125px;
  position: relative;
}

.hotel-delivery li:last-child {
  margin-bottom: 16rem;
}

.hotel-delivery li::before {
  content: "";
  display: inline-block;
  width: 100px;
  height: 100px;
  position: absolute;
  left: 0;
  top: -40px;
  z-index: 10;
}

.hotel-delivery li:first-child::before {
  background: url(../img/pc/about2_step1.png) no-repeat center/100%;
}

.hotel-delivery li:nth-child(2)::before {
  background: url(../img/pc/about2_step2.png) no-repeat center/100%;
}

.hotel-delivery li:last-child::before {
  background: url(../img/pc/about2_step3.png) no-repeat center/100%;
}

.hotel-delivery li:nth-child(2) {
  margin-bottom: 10rem;
}

.hotel-delivery li:first-child::after,
.hotel-delivery li:nth-child(2)::after {
  content: "";
  display: block;
  position: absolute;
  left: 42px;
  top: 70px;
  z-index: 0;
}

.hotel-delivery li:first-child::after {
  width: 14px;
  height: 288px;
  background: url(../img/pc/about2_step1-after.svg) no-repeat top center/100%;
  top: 50px;
}

.hotel-delivery li:nth-child(2)::after {
  width: 14px;
  height: 187px;
  background: url(../img/pc/about2_step2-after.svg) no-repeat top center/100%;
}

.hotel-delivery .step-ttl {
  margin-bottom: 4rem;
}

.hotel-delivery li:first-child dt {
  width: fit-content;
  border: 1px solid var(--acnt-black);
  margin-bottom: 1rem;
  padding: .3rem 1rem;
  border-radius: 1rem;
  font-weight: 600;
}

.hotel-delivery li:first-child dd:first-of-type {
  margin-bottom: 2rem;
}

.hotel-delivery li:first-child dd {
  line-height: 1.7;
  font-weight: 600;
}

.hotel-delivery li:first-child dd .red-txt {
  color: var(--main-red);
}

.hotel-delivery li:first-child dd .small-txt {
  font-size: 1.2rem;
  line-height: 1.3;
  display: block;
}

.hotel-delivery a {
  display: block;
  width: 360px;
  margin: 0 auto 8rem;
}

/* ===================
system Page 
======================*/
.system {
  margin-bottom: 6rem;
}

.system_basic-play-area {
  font-size: 2rem;
  line-height: 2;
  padding: 2rem 4%;
  margin-bottom: 4rem;
}

.system_basic-play-area p {
  letter-spacing: .12em;
  font-weight: 600;
  text-align: center;
}

.system_basic-play-area small {
  display: block;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.25;
  margin-top: 4.6rem;
}

.system_course-price-area {
  width: 100%;
}

.system_course-price-area-bg {
  width: 100%;
  position: relative;
  background: #fff;
  border: 2px solid var(--acnt-black);
  margin-bottom: 4rem;
}

.system_course-price-area-bg::before {
  content: "";
  display: block;
  width: 140px;
  height: 120px;
  background: url(../img/pc/price-bg_top.png) no-repeat top center/100%;
  position: absolute;
  top: 0;
  left: 0;
}

.system_course-price-area-bg_inner {
  background-size: 100%;
  padding: 8rem 70px 5rem;
  margin-bottom: 2rem;
}

.system_course-price-area-bg::after {
  content: "";
  display: block;
  width: 160px;
  height: 134px;
  background: url(../img/pc/price-bg_bottom.png) no-repeat bottom center/100%;
  position: absolute;
  bottom: 0;
  right: 0;
}

.system_course-price-area-bg_inner p {
  line-height: 1.769;
  margin-bottom: 3rem;
  text-align: center;
}

.system_course-price-area-bg_inner small {
  margin-top: 2.4rem;
  display: block;
}

.course-price {
  margin-bottom: 5rem;
}

.course-sub-ttl {
  text-align: center;
  font-weight: 600;
  font-size: 2rem;
}

.course-sub-ttl::after {
  content: "";
  display: block;
  width: 60px;
  height: 15px;
  background: url(../img/pc/course-other-ttl_deco.svg) no-repeat center/100%;
  margin: 1.6rem auto 2.6rem;
}

.course-other {
  margin-bottom: 6rem;
}

.other-card {
  text-align: center;
  margin-top: 4rem;
}

.free-option {
  padding: 4rem 70px;
  margin-bottom: 8rem;
  border: 2px solid var(--acnt-black);
  position: relative;
  background: var(--base);
}

.system_reservation-area {
  text-align: center;
}

.reservation-area_top {
  padding: 0 4%;
}

.reservation-reception-time {
  border: 2px solid var(--acnt-black);
  margin: 2rem auto 4rem;
  width: 500px;
}

.reception-time-ttl {
  background: var(--acnt-black);
  color: var(--base);
  font-weight: 600;
  text-align: center;
  padding: .3rem 0;
  font-size: 1.3rem;
}

.reception-time-txt {
  padding: 2rem 1.5rem 1.5rem;
  text-align: center;
  background: var(--base);
}

.reception-time-txt p {
  margin-bottom: 0.8rem;
}

.reception-time-txt p:first-child span {
  color: var(--main-red);
}

.reception-time-txt p:nth-child(2) {
  font-size: 2.5rem;
  font-weight: bold;
}

.reception-time-txt p:last-child {
  font-size: 1.3rem;
  margin-bottom: 0;
}

.reception-time-txt p:last-child span {
  font-weight: bold;
  font-size: 1.5rem;
}

.reservation-area_bottom {
  padding: 0 4%;
}

.reservation-area_bottom p {
  margin-bottom: 2rem;
  line-height: 1.76;
}

.reservation-area_bottom .button {
  width: 400px;
  font-size: 1.8rem;
  padding: 21px 0;
}

.system_how-to-area {
  background: #e0e0e0;
}

.system_how-to-area .flexB {
  padding: 4rem 5rem;
  margin-bottom: 8rem;
  gap: 20px;
}

.system_notes-area {
  margin-bottom: 6rem;
}

.notes-area_inner {
  padding: 0 4rem;
}

.system_notes-area p {
  font-size: 1.4rem;
  margin-bottom: 2rem;
  line-height: 1.85;
}

.system_notes-area li {
  font-size: 1.4rem;
  line-height: 1.85;
  margin-bottom: .5rem;
  position: relative;
  padding-left: 1rem;
}

.system_notes-area li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}

.notes-attention {
  text-align: center;
  border: 2px solid var(--acnt-black);
  padding: 2rem;
  font-weight: 600;
  line-height: 2;
  margin-top: 3rem;
}

/* ===================
Cast Page 
======================*/
.cast-list {
  gap: 12px;
  padding: 0 12px;
}

.cast-item {
  padding: 1.3rem;
  background: var(--base);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
  position: relative;
  transition: .3s ease-in-out;
}

.cast-item:hover {
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.6);
}

.cast-rank {
  position: absolute;
  right: 1.3rem;
  top: -1.3rem;
}

.cast-item {
  margin-bottom: 1rem;
}

.cast-photo {
  width: 33%;
  margin-right: 3%;
}

.cast-item_inner {
  width: 64%;
}

.cast-item_inner > .flexW:first-of-type{
  align-items: center;
  margin-bottom: 0.6rem;
  gap: .8rem;
}

.cast-copy {
  color: var(--main-red);
  margin-bottom: 1rem;
  font-size: 1.3rem;
  font-weight: 600;
}

.cast-review {
  font-size: 1.3rem;
  margin-bottom: 1.6rem;
}

.cast-label .label {
  margin-right: 0.5rem;
  margin-bottom: 0.5rem;
}

.label {
  font-size: 1.1rem;
  padding: .3rem .8rem;
  border: 1px solid var(--acnt-black);
  border-radius: 1rem;
}

.cast .cast-name {
  text-align: left;
}

.cast .cast-size {
  text-align: left;
  margin-bottom: 1rem;
}

/* ===================
New face Page 
======================*/
.new-face_enter-date {
  position: absolute;
  width: 80px;
  height: 93px;
  color: var(--base);
  font-size: 2rem;
  text-align: center;
  background: url(../img/pc/new-date_bg.png) no-repeat center / 100%;
  padding: 21px 0;
  text-shadow: 0.4px 0.75px 0.4px rgba(var(--black), .4);
  right: 1.3rem;
  top: -1.3rem;
  font-weight: 600;
}

.enter-date {
  font-size: 2.5rem;
}

.enter-shop {
  display: block;
  text-align: center;
  font-size: 1.8rem;
  margin-top: 0.5rem;
}

.newface .cast-item:not(:last-child) {
  margin-bottom: 3rem;
}

.newface .cast-photo {
  border: 1px solid var(--acnt-gold);
}

.newface .cast-copy {
  font-size: 1.5rem;
}

.newface .cast-item_inner .flexW {
  gap: 10px;
  margin-bottom: 1rem;
  padding-right: 8rem;
}

.newface .cast-name {
  margin-bottom: 0;
  font-size: 2rem;
}

.newface .cast-size {
  margin-bottom: 0;
  font-size: 1.4rem;
  align-self: center;
}

.newface .work-today {
  margin-bottom: 0;
}

.newface .cast-label.flexW {
  gap: 9px;
}

.newface .cast-label .label {
  margin-right: 0;
  margin-bottom: 0;
  font-size: 1.3rem;
}

.newface .cast-review {
  font-size: 1.4rem;
}

.newface .newface-comment {
  height: 180px;
  overflow-y: scroll;
  font-size: 1.5rem;
  line-height: 1.73;
}

/* ===================
Ranking Page 
======================*/
.ranking .sub-ttl02 {
  text-align: center;
  margin-bottom: 5.6rem;
  padding: 0 2.1rem;
  font-size: 2.8rem;
  font-weight: 600;
}

.ranking .sub-ttl02 span {
  display: block;
  border-bottom: 2px solid var(--acnt-black);
  margin: 0 auto 1.3rem;
  position: relative;
  line-height: 1;
  color: var(--acnt-black);
  font-weight: 600;
  padding: 0 1rem 2.2rem;
}

.ranking .sub-ttl02 span::before,
.ranking .sub-ttl02 span::after {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background: url(../img/pc/sub-ttl_deco.svg) no-repeat center/100%;
  position: absolute;
}

.ranking .sub-ttl02 span::before {
  bottom: -8px;
  left: -21px;
}

.ranking .sub-ttl02 span::after {
  bottom: -8px;
  right: -21px;
}

.ranking-list {
  padding: 0 2.7rem;
}

.ranking-item {
  padding: 2.6rem;
  background: var(--base);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
  position: relative;
  margin-bottom: 3rem;
}

.ranking-item_inner {
  width: 41.8%;
}

.ranking-item_inner .rank {
  text-align: center;
  margin-bottom: 1rem;
}

.ranking .cast-icon {
  gap: 1rem;
  align-items: center;
  margin-bottom: 1rem;
}

.ranking .cast-rank {
  position: inherit;
}

.rank-copy {
  color: var(--main-red);
  margin-bottom: 0.8rem;
  font-size: 1.4rem;
  font-weight: 600;
}

.ranking .cast-name {
  font-size: 2rem;
}

.ranking .cast-size {
  font-size: 1.4rem;
}

.cast-mini-photo {
  flex-wrap: nowrap;
  border: 1px solid var(--acnt-gold);
  margin: 2rem 0;
}

.ranking .cast-comment {
  border: 1px solid #999;
  padding: 1.5rem 1.6rem;
  height: 275px;
  overflow-y: scroll;
}

.ranking .cast-comment p {
  line-height: 1.6;
}

.ranking .cast-photo {
  width: 54.2%;
  margin-right: 0;
  margin-left: 4%;
}

.ranking .under .ranking-item_inner {
  width: 70.4%;
}

.ranking .under .cast-detail {
  align-items: flex-end;
  gap: 1rem;
  margin-bottom: 2rem;
}

.ranking .cast-detail .cast-name,
.ranking .cast-detail .cast-size {
  margin-bottom: 0;
}

.ranking .under .cast-comment {
  height: 137px;
}

.ranking .under .cast-photo {
  width: 27.2%;
  margin-left: 2.4%;
}

/* ===================
Profile Page 
======================*/
.profile {
  padding-bottom: 13.4rem;
}

.cast-profile_wrap {
  margin-bottom: 9.5rem;
}

.profile .cast-rank {
  position: static;
  margin-right: 1.5rem;
  margin-bottom: 1.5rem;
}

.cast-profile {
  margin-bottom: 4rem;
}

.cast-profile>.flexW {
  padding: 0 2.6rem;
  margin-bottom: 2.7rem;
}

.profile-detail {
  margin-bottom: 1rem;
}

.profile .cast-name {
  font-size: 2.5rem;
  margin-right: 1.5rem;
  margin-bottom: 0;
}

.profile .rank{
  margin: 0 .5rem;
}
.profile-detail .flexW:first-of-type{
  margin-bottom: 1rem;
}
.profile-detail .flexW {
  align-items: center;
}

.profile .cast-size {
  font-size: 1.6rem;
  text-align: left;
  margin-bottom: 1rem;
}

.profile .cast-label .label {
  font-size: 1.4rem;
  padding: .5rem 1.5rem;
  border-radius: 1.5rem;
}

.profile .cast-photo {
  width: 47.7%;
  margin-right: 2.3%;
}

.profile .cast-photo .slide {
  margin-bottom: .5rem;
}

.profile .cast-photo .slide,
.profile .cast-photo .thumbnail {
  border: 1px solid var(--acnt-gold);
}

.profile .cast-photo .thumbnail .thumbnail-img {
  border-right: 1px solid var(--acnt-gold);
  cursor: pointer;
}

.profile .cast-photo .thumbnail .thumbnail-img:hover {
  opacity: .6;
}

.profile .cast-photo .thumbnail .thumbnail-img:last-child {
  border-right: none;
}

.profile .cast-photo .thumbnail .slick-track {
  transform: unset !important;
}

.profile .comment {
  width: 50%;
}

.profile .sub-ttl02 {
  text-align: left;
  margin-bottom: 4rem;
  padding: 0 .8rem;
  font-size: 1.8rem;
  font-weight: 600;
}

.profile .comment-inner {
  font-size: 1.4rem;
  line-height: 1.78;
  height: 560px;
  overflow-y: scroll;
}

.profile .comment-inner p {
  margin-bottom: 2rem;
}

.profile .option .sub-ttl02,
.profile .schedule-info .sub-ttl02,
.profile .photo-diary .sub-ttl02,
.profile .profile-review .sub-ttl02 {
  margin-bottom: 3rem;
}

.profile .option {
  margin-bottom: 5rem;
}

.profile .option p {
  margin-top: 0.5rem;
  font-size: 1.2rem;
}

.profile .option-inner {
  border: 2px solid var(--acnt-black);
  padding: 1.5rem 3rem;
  position: relative;
  background: var(--base);
  margin-bottom: 0;
}

.profile .option__grid {
  font-weight: 600;
  font-size: 1.8rem;
  text-align: center;
  display: grid;
  align-items: center;
  gap: 2rem;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.profile .option__grid li {
  line-height: 1.3;
}

.profile .option__grid li.non-option {
  color: var(--gray);
}

.profile .option__grid span {
  display: block;
  font-size: 1.1rem;
}

.schedule-table {
  border: 2px solid var(--acnt-black);
  margin-bottom: 5rem;
  width: 100%;
  padding: 1rem 0;
  font-size: 1.4rem;
  border-collapse: collapse;
  background: var(--base);
  font-weight: 600;
}

.schedule-table__date {
  background: var(--acnt-black);
  color: var(--base);
  width: 119px;
  padding: 1rem 0;
  font-size: 1.8rem;
}

.schedule-table__date:not(:last-child) {
  border-right: 1px solid var(--base);
}

.schedule-table .schedule-table__time:nth-child(even) {
  background: var(--gray2);
}

.schedule-table__time {
  padding: 2.5rem 0 1.5rem;
  ;
  text-align: center;
  position: relative;
  font-size: 1.6rem;
}

.schedule-table__time .schedule-today {
  display: inline-block;
  background: var(--main-red);
  color: #fff;
  padding: .3rem;
  font-size: 1rem;
  border-radius: 3px;
  vertical-align: middle;
  position: absolute;
  top: 5px;
  left: 50%;
  translate: -50% 0;
}

.profile .photo-diary {
  width: 33.3%;
  margin-right: 2.5%;
}

.profile .photo-diary .sub-ttl02 span {
  font-size: 2rem;
}

.profile .photo-diary_inner {
  padding: 0 3%;
  position: relative;
  height: 0;
  padding-top: 178.5%;
}

.profile .photo-diary_inner iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

.profile .profile-review-contents {
  height: 500px;
  overflow-y: scroll;
  padding-bottom: 2rem;
}

.profile .profile-review {
  width: 64.2%;
  position: relative;
}

.profile .review-comment {
  position: absolute;
  top: -10px;
  right: 20px;
  gap: 2rem;
  align-items: center;
}

.profile .review-number {
  font-size: 1.5rem;
}

.profile .review-btn {
  display: block;
  background: var(--acnt-black);
  color: var(--base);
  font-size: 1.3rem;
  font-weight: 600;
  padding: 1rem 1.5rem;
  border-radius: calc(1px / 0);
  box-shadow: 0px 0px 8px 0px rgba(0, 0, 0, 0.35);
}

.profile .review-btn:hover {
  background: var(--main-red);
}

.profile-review__post {
  padding: 0 1rem;
}

.profile .review-info {
  font-size: 1.3rem;
  margin-bottom: 1rem;
}

.review-content {
  padding: 2rem 1.5rem;
  margin-bottom: 2.6rem;
  position: relative;
  background-color: var(--base);
  border: 1px solid #999;
  border-radius: 1rem;
  margin-top: 2rem;
}

.review-content::before,
.review-content::after {
  content: '';
  position: absolute;
  top: -10px;
  left: 4%;
  border-right: 10px solid transparent;
  border-bottom: solid 10px #999;
  border-left: 10px solid transparent;
}

.review-content::after {
  top: calc(-8px - 1px);
  border-bottom: solid 10px var(--base);
}

.review-content p {
  line-height: 2;
}

.profile .profile-btn {
  width: 300px;
  margin: 0 auto;
}

/* ===================
Schedule Page 
======================*/
.schedule-contents {
  padding: 0 1.3rem;
}

.schedule-list {
  background: rgba(255, 255, 255, .5);
  border: 1px solid var(--base);
  flex-wrap: nowrap;
  gap: 1.4rem;
  margin-bottom: 5rem;
  padding: 2.2rem 0;
}

.schedule .cast-list {
  padding: 0;
}

.day-wrap {
  background: url(../img/pc/schedule-otherday_bg.png) no-repeat center/100%;
  position: relative;
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
  border-radius: calc(1px / 0);
}

.day-wrap.today {
  background: url(../img/pc/schedule-today_bg.png) no-repeat center/100%;
}

.day-wrap a {
  display: block;
  width: 70px;
  height: 70px;
}

.day {
  position: absolute;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  text-align: center;
  letter-spacing: .08em;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
}

.day span {
  font-size: 1.2rem;
  display: block;
  text-transform: uppercase;
}

.time-guid {
  width: fit-content;
  text-align: center;
  /* padding-top: 1rem; */
}

.schedule .timesheet {
  font-weight: 600;
  margin-bottom: 0.5rem;
}

.schedule .status {
  width: 100%;
  margin-bottom: .5rem;
  padding: .3rem 1rem;
}

.schedule .cast-name {
  font-size: 1.8rem;
  font-weight: 600;
  text-align: left;
  margin-bottom: 1rem;
}

.schedule  .cast-name_wrap{
  align-items: center;
}

.schedule .cast-size {
  font-size: 1.3rem;
  margin-bottom: 1rem;
  text-align: left;
}

/* ===================
Review Page 
======================*/
.review {
  padding-bottom: 10rem;
}

.review-list {
  padding: 0 2.7rem;
}

.review-detail {
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.3);
  background: var(--base);
  padding: 2.6rem;
  margin-bottom: 3.6rem;
}

/* .review-detail > .flexW{
  align-items: center;
  margin-bottom: 1.6rem;
} */
.review-detail>div:first-child {
  width: 23%;
}

.review-detail .cast-tmb {
  width: 100px;
  height: 100px;
  border-radius: calc(1px / 0);
  overflow: hidden;
  margin: 0 auto 1.5rem;
}

.review-detail .cast-tmb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 50%;
}

.review .cast-detail .cast-name {
  margin-bottom: 1rem;
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
}

.review .cast-detail .cast-size {
  font-size: 1.3rem;
  text-align: center;
}

.review-info {
  font-size: 1.3rem;
  margin-bottom: 1.5rem;
}

.review-info p:first-of-type {
  margin-right: 2rem;
}

.review-post {
  width: 73%;
}

.review-content {
  font-size: 1.4rem;
  line-height: 1.64;
}

.page-button {
  text-transform: uppercase;
  gap: 3rem;
}

.review-button .button {
  margin: 0 0 2rem auto;
}

/* ===================
Mail magazine Page 
======================*/
.mail-read {
  text-align: center;
  line-height: 1.5;
  margin-bottom: 3rem;
}

.mail-read p {
  margin-bottom: 2rem;
}

.mail-read p span {
  color: var(--main-red);
}

.mail-register {
  margin-bottom: 4rem;
}

.mail-register p {
  line-height: 1.8;
}

.mail-register p span {
  color: var(--main-red);
  font-weight: 600;
}

.mail .form-txt {
  border: 1px solid var(--gray);
  border-radius: .5rem;
  padding: 1.1rem 1.5rem;
  width: 100%;
  background: var(--base);
}

.mail .button {
  margin: 2rem auto 3rem;
}

.domain p {
  line-height: 1.6;
  margin-bottom: 3rem;
}

.career {
  padding: 1.6rem;
  background: var(--base);
  box-shadow: 0px 0px 3px 0px rgba(0, 0, 0, 0.3);
  position: relative;
}

.career {
  margin-bottom: 4rem;
}

.mail .logo {
  padding: 1rem 0;
  text-align: center;
  max-width: none;
}

.mail .docomo {
  width: 160px;
}

.mail .au {
  width: 90px;
}

.mail .softbank {
  width: 200px;
}

.mail h4 {
  font-size: 1.8rem;
  margin-bottom: 2rem;
}

.career ol {
  padding-left: 2.5rem;
}

.career li {
  margin-bottom: 1rem;
  line-height: 1.6;
}

.mail-notes p {
  line-height: 1.6;
  margin-bottom: 3rem;
}

.flexC.confirm-btn .button {
  margin: 0;
}

/* ===================
Link Page 
======================*/
.link__recruiting {
  margin-bottom: 4rem;
}

.link__recruiting p {
  text-align: center;
  margin-bottom: 4rem;
}

.link__recruiting table {
  border: 1px solid var(--gray);
  width: 70%;
  border-collapse: collapse;
  margin: 0 auto;
}

.link__recruiting th,
.link__recruiting td {
  border: 1px solid var(--gray);
  border-collapse: collapse;
  padding: 1rem;
}

.link__recruiting th {
  width: 26%;
  vertical-align: top;
}

.link__recruiting table p {
  margin-top: 1rem;
}

.link__other-shop {
  margin-bottom: 4rem;
}

.link__other-shop ul {
  gap: 25px;
  text-align: center;
  justify-items: center;
}

.link__other-shop ul li a {
  display: block;
}

.link__other-shop ul li p {
  margin-top: 1rem;
  font-size: 1.4rem;
  line-height: 1.3;
}

/* ===================
Hotel List Page 
======================*/
.hotel-list .list-area {
  margin-bottom: 3rem;
}

.hotel-list .list-area,
.hotel-list .list-area li {
  border-bottom: 1px solid var(--gray);
}

.hotel-list .list-area li:nth-last-child(-n+2) {
  border-bottom: none;
}

.hotel-list .list-area li a {
  display: block;
  padding: 1.5rem 1rem;
  transition: .3s ease-in-out;
}

.hotel-list .list-area li a:hover {
  color: var(--acnt-gold);
  background: var(--acnt-black);
}

.hotel-list .area-wrap {
  padding: 2rem 1.3rem;
}

.hotel-list .area-wrap li {
  padding-bottom: 2rem;
  border-bottom: 1px solid var(--gray);
  margin-bottom: 2rem;
}

.hotel-list .area-wrap .hotel_name {
  background: #000;
  width: fit-content;
  color: var(--acnt-gold);
  padding: .5rem 1rem;
  margin-bottom: 1rem;
  border-radius: 6px;
  font-weight: bold;
}
.hotel-list .area-wrap .hotel_add {
  margin-bottom: 0.5rem;
}