.special main{
padding: 0;
}

.MB_5-pc{
margin-bottom: 5px;
}
.MB_10-pc{
margin-bottom: 10px;
}
.MB_15-pc{
margin-bottom: 15px;
}
.MB_20-pc{
margin-bottom: 20px;
}
.MB_25-pc{
margin-bottom: 25px;
}
.MB_30-pc{
margin-bottom: 30px;
}
.MB_35-pc{
margin-bottom: 35px;
}
.MB_40-pc{
margin-bottom: 40px;
}
.MB_45-pc{
margin-bottom: 45px;
}
.MB_50-pc{
margin-bottom: 50px;
}
.MB_55-pc{
margin-bottom: 55px;
}
.MB_60-pc{
margin-bottom: 60px;
}
.MB_65-pc{
margin-bottom: 65px;
}
.MB_70-pc{
margin-bottom: 70px;
}
.MB_75-pc{
margin-bottom: 75px;
}
.MB_80-pc{
margin-bottom: 80px;
}
.MB_85-pc{
margin-bottom: 85px;
}
.MB_90-pc{
margin-bottom: 90px;
}
.MB_95-pc{
margin-bottom: 95px;
}
.MB_100-pc{
margin-bottom: 100px;
}

.MT_5-pc{
margin-top: 5px;
}
.MT_10-pc{
margin-top: 10px;
}
.MT_15-pc{
margin-top: 15px;
}
.MT_20-pc{
margin-top: 20px;
}
.MT_25-pc{
margin-top: 25px;
}
.MT_30-pc{
margin-top: 30px;
}
.MT_35-pc{
margin-top: 35px;
}
.MT_40-pc{
margin-top: 40px;
}
.MT_45-pc{
margin-top: 45px;
}
.MT_50-pc{
margin-top: 50px;
}
.MT_55-pc{
margin-top: 55px;
}
.MT_60-pc{
margin-top: 60px;
}
.MT_65-pc{
margin-top: 65px;
}
.MT_70-pc{
margin-top: 70px;
}
.MT_75-pc{
margin-top: 75px;
}
.MT_80-pc{
margin-top: 80px;
}
.MT_85-pc{
margin-top: 85px;
}
.MT_90-pc{
margin-top: 90px;
}
.MT_95-pc{
margin-top: 95px;
}
.MT_100-pc{
margin-top: 100px;
}



.w100 {
width: 100%;
display: block;
height: auto;
}

.sp_none{
display: block;
}
.pc_none{
display: none;
}

.sec_ttl{
margin-top: 80px;
}

ul{
padding: 0;
margin: 0;
}

.contents_center{
margin: 0 auto;
}

.key_visual {
position: relative;
width: 100%;
aspect-ratio: 1200 / 600;
overflow: hidden;
margin: 0 auto;
}

.slider_box {
position: relative;
width: 100%;
height: 100%;
}

.slide_img {
position: absolute;
top: 0;
left: 0;
width: 100%;
opacity: 0;
transition: opacity 1s ease;
}

.slide_img.active {
opacity: 1;
}

.contents_plr_15{
padding: 0 15px;
}

.modal_box{
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 12px;
}

.modal_img {
cursor: pointer;
}
.modal_img:hover{
opacity: 0.7;
}

.modal_new {
position: fixed;
inset: 0;
background: rgba(0,0,0,0.7);
display: none;
justify-content: center;
align-items: center;
z-index: 9999;
}

.modal_new.active {
display: flex;
}

.modal_inner {
position: relative;
animation: zoomIn 0.3s ease forwards;
}

.modal_inner img {
max-width: 90vw;
max-height: 90vh;
border-radius: 6px;
}

.modal_new_close {
position: absolute;
top: -35px;
right: -10px;
color: #fff;
width: 40px;
height: 40px;
border-radius: 50%;
display: flex;
justify-content: center;
align-items: center;
font-size: 22px;
cursor: pointer;
}

@keyframes zoomIn {
0% { transform: scale(0.6); opacity: 0; }
100% { transform: scale(1); opacity: 1; }
}

#modalCaption {
margin-top: 10px;
color: #fff;
text-align: center;
font-size: 14px;
}

.modal_inner {
  position: relative;
}

.modal_nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0);
  color: #fff;
  border: none;
  font-size: 70px;
  padding: 8px 12px;
  cursor: pointer;
  z-index: 10;
}
.modal_nav:hover{
opacity: 0.7;
}

.modal_nav.prev {
  left: 10px;
}

.modal_nav.next {
  right: 10px;
}

p.modal_caption {
text-align: center;
color: #fff;
margin: 5px auto;
max-width: 850px;
white-space: pre-line;
}

.content_bg_01{
background: #F3EFE7;
padding-bottom: 80px;
}
.content_bg_02{
background: #ECE6D9;
padding-bottom: 80px;
}

.logo_box{
width: 73.75%;
margin: 0 auto;
}

.movie_btn_box{
width: 68.57833333%;
margin: 60px auto;
}
.movie_btn_box a:hover{
opacity: 0.7;
}

.c_item{
background: #fff;
border: solid 3px #000;
border-radius: 20px;
height: 635px;
}

.c_img {
padding: 20px 30px;
}

.c_txt {
width: 85%;
}

.c_comment {
padding: 0 20px 20px 35px;
}
.c_comment_01 {
padding: 20px 20px 20px 35px;
}

.re_grid{
display: flex;
flex-wrap: wrap;
justify-content: center;
width: 95%;
margin: 0 auto 30px;
gap: 3%;
}

.grid_right_01 {
width: 72%;
}

.grid_left_01 {
width: 23%;
}

.grid_right_02 {
width: 23%;
}

.grid_left_02 {
width: 72%;
}

.under_line{
background: linear-gradient(transparent 50%, #FFF500 50%);
}

.re_bubble_right{
position: relative;
display: inline-block;
margin-right: 20px;
padding: 16px;
border: 3px solid #000000;
border-radius: 8px;
background-color: #ffffff;
text-align: left;
font-size: 16px;
font-weight: 400;
color: #000000;
font-weight: bold;
}

.re_bubble_right::before {
content: "";
position: absolute;
top: 67%;
right: 0;
border-style: solid;
border-width: 0 0 40px 40px;
border-color: transparent transparent transparent #000000;
translate: 100% -50%;
}

.re_bubble_right::after {
content: "";
position: absolute;
top: 67%;
right: 0;
border-style: solid;
border-width: 0 35.2px 35.2px;
border-color: transparent transparent transparent #ffffff;
translate: 100% calc(-50% - 0.4px);
}



.re_bubble_left{
position: relative;
display: inline-block;
margin-left: 20px;
padding: 16px;
border: 3px solid #000000;
border-radius: 8px;
background-color: #ffffff;
text-align: left;
font-size: 16px;
font-weight: 400;
color: #000000;
font-weight: bold;
}

.re_bubble_left::before {
content: "";
position: absolute;
top: 50%;
left: 0;
border-style: solid;
border-width: 0 40px 40px 0;
border-color: transparent #000000 transparent transparent;
translate: -100% -50%;
}

.re_bubble_left::after {
content: "";
position: absolute;
top: 50%;
left: 0;
border-style: solid;
border-width: 0 35.2px 35.2px 0;
border-color: transparent #ffffff transparent transparent;
translate: -100% calc(-50% - 0.4px);
}

.re_bubble_left p{
font-weight: bold;
}

.re_bubble_right p{
font-weight: bold;
}

.re_bubble_right-2 p{
font-weight: bold;
}

.comment_txt{
line-height: 1.5;
margin-bottom: 10px;
}

.name{
font-weight: bold;
font-size: 2rem;
line-height: 1.1;
display: block;
}

.name_small{
font-size: 0.8em;
}

.e_bike_pc{
display: block;
margin: 10px 0 0 auto;
padding-right: 25px;
}

.e_bike_pc_02{
display: block;
margin: 10px -25px 0 auto;
padding-right: 25px;
}

.e_bike_sp{
display: none;
}

@media (max-width: 639px) {
.MB_5-sp{
margin-bottom: 5px;
}
.MB_10-sp{
margin-bottom: 10px;
}
.MB_15-sp{
margin-bottom: 15px;
}
.MB_20-sp{
margin-bottom: 20px;
}
.MB_25-sp{
margin-bottom: 25px;
}
.MB_30-sp{
margin-bottom: 30px;
}
.MB_35-sp{
margin-bottom: 35px;
}
.MB_40-sp{
margin-bottom: 40px;
}
.MB_45-sp{
margin-bottom: 45px;
}
.MB_50-sp{
margin-bottom: 50px;
}
.MB_55-sp{
margin-bottom: 55px;
}
.MB_60-sp{
margin-bottom: 60px;
}
.MB_65-sp{
margin-bottom: 65px;
}
.MB_70-sp{
margin-bottom: 70px;
}
.MB_75-sp{
margin-bottom: 75px;
}
.MB_80-sp{
margin-bottom: 80px;
}
.MB_85-sp{
margin-bottom: 85px;
}
.MB_90-sp{
margin-bottom: 90px;
}
.MB_95-sp{
margin-bottom: 95px;
}
.MB_100-sp{
margin-bottom: 100px;
}

.MT_5-sp{
margin-top: 5px;
}
.MT_10-sp{
margin-top: 10px;
}
.MT_15-sp{
margin-top: 15px;
}
.MT_20-sp{
margin-top: 20px;
}
.MT_25-sp{
margin-top: 25px;
}
.MT_30-sp{
margin-top: 30px;
}
.MT_35-sp{
margin-top: 35px;
}
.MT_40-sp{
margin-top: 40px;
}
.MT_45-sp{
margin-top: 45px;
}
.MT_50-sp{
margin-top: 50px;
}
.MT_55-sp{
margin-top: 55px;
}
.MT_60-sp{
margin-top: 60px;
}
.MT_65-sp{
margin-top: 65px;
}
.MT_70-sp{
margin-top: 70px;
}
.MT_75-sp{
margin-top: 75px;
}
.MT_80-sp{
margin-top: 80px;
}
.MT_85-sp{
margin-top: 85px;
}
.MT_90-sp{
margin-top: 90px;
}
.MT_95-sp{
margin-top: 95px;
}
.MT_100-sp{
margin-top: 100px;
}

.content_bg_01{
padding-bottom: 40px;
}
.content_bg_02{
padding-bottom: 40px;
}



.sp_none{
display: none;
}
.pc_none{
display: block;
}

.sec_ttl{
margin-top: 40px;
}

.movie_btn_box{
margin: 30px auto;
}

.c_profile{
display: flex;
align-items: center;
padding: 10px;
}
.c_img {
width: 70%;
padding: 0;
}

.re_grid{
flex-direction: column;
}

.grid_right_01 {
width: 100%;
}

.grid_left_01 {
width: 100%;
display: flex;
align-items: flex-end;
}

.flex_right{
justify-content: right;
}

.grid_right_02 {
width: 25%;
}

.grid_left_02 {
width: 100%;
}

.grid_item_01{
order: 1;
}

.grid_item_02{
order: 2;
}

.re_bubble_left p{
font-weight: bold;
}

.re_bubble_right-2 {
position: relative;
display: inline-block;
margin-top: 40px;
padding: 16px;
border: 2px solid #000000;
border-radius: 8px;
background-color: #ffffff;
text-align: left;
font-size: 16px;
font-weight: 400;
color: #000000;
}

.re_bubble_right-2::before {
content: "";
position: absolute;
top: 0;
left: 10%;
border-style: solid;
border-width: 0 0 30px 30px;
border-color: transparent transparent #000000;
translate: -50% -100%;
}

.re_bubble_right-2::after {
content: "";
position: absolute;
top: 0;
left: 10%;
border-style: solid;
border-width: 0 0 25.2px 25.2px;
border-color: transparent transparent #ffffff;
translate: calc(-50% + 0.4px) -100%;
}

.re_bubble_left-2 {
  position: relative;
  display: inline-block;
  margin-top: 40px;
  padding: 16px;
  border: 2px solid #000000;
  border-radius: 8px;
  background-color: #ffffff;
  text-align: left;
  font-size: 16px;
  font-weight: bold;
  color: #000000;
  font-weight: bold;
}

.re_bubble_left-2::before {
  content: "";
  position: absolute;
  top: 0;
  left: 87%;
  border-style: solid;
  border-width: 0 30px 30px 0;
  border-color: transparent transparent #000000;
  translate: -50% -100%;
}

.re_bubble_left-2::after {
  content: "";
  position: absolute;
  top: 0;
  left: 87%;
  border-style: solid;
  border-width: 0 25.2px 25.2px 0;
  border-color: transparent transparent #ffffff;
  translate: calc(-50% - 0.4px) -100%;
}

.modal_box{
display: grid;
grid-template-columns: repeat(2, 1fr);
}

.modal_nav {
  font-size: 32px;
}

.e_bike_pc{
display: none;
}

.e_bike_pc_02{
display: none;
}

.e_bike_sp{
display: block;
margin: 0 10px;
}

.re_img{
width: 35%;
}

.c_item {
height: 322px;
}
}
