


/*-------------------------------------------------------------------- common */


*
{
    box-sizing: border-box;
}
ul li
{
list-style: none;
}

.yosakoinet-common .main-block .block-title.has-related-pages{
display: none;
}
.yosakoinet-common .related-pages{
display: none;
}
.yosakoinet-common .breadcrumb{
max-width: 1400px;
margin: 0 auto;
}
.yosakoinet-common .block-spot-detail .original-contents{
max-width: 100% !important;
}
.yosakoinet-common .block-spot-detail .original-contents,
.yosakoinet-common .main-block.block-spot-detail{
margin-top: 0;
}

.yosakoinet-common .main-block.block-spot-detail{
padding: 0;
}
div.heading img
{
    width: 43%;
    padding: 90px 0 70px 0;
}
section.common > div
{
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}
section.common > div > div
{
    width: 90%;
    margin: 0 auto;
}
.sp-only
{
    display: none;
}

.yosakoinet-common .main-block
{
    padding: 20px 0 20px 0!important;
}
.yosakoinet-common main
{
    padding: 20px 0px 0px 0px !important;
max-width: 100%;
}
.yosakoinet-common .main-block .block-title-tab
{
    padding: 50px 0 30px 0!important;
}
.yosakoinet-common .main-block .block-title-tab > a:nth-child(3)
{
    border-left: none!important;
}
.yosakoinet-common .main-block .block-title-tab > a:nth-child(4)
{
    border-left: #fff solid 2px;
}
.yosakoinet-common .main-block .block-title-tab .active
{
    border-left: 2px #00b2f2 solid;
}

/*-------------------------------------------------------------------- fv */

section.fv
{
    line-height: 1;
}
section.fv img
{
    width: 100%;
    display: block;
}
section.fv div.pc
{
    display: block;
}
section.fv div.sp
{
    display: none;
}

/*-------------------------------------------------------------------- about */


span.space
{
    padding-left: 1em;;
}

section.about
{
    position: relative;
    -webkit-clip-path: inset(0);
          clip-path: inset(0);
    padding-bottom: 90px;
    overflow: hidden;
}
section.about::before
{
    content: '';
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/images/ryoma/bg_01.jpg");
    background-size: cover;
}
section.about::after
{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/images/ryoma/curtain_beige.png") no-repeat;
    background-size: contain;
}
/* section.about div.heading
{
    padding: 90px 0 70px 0;
} */
section.about div.text p
{
    color: #3b2308;
    text-align: left;
    line-height: 28px;
}
section.about div.text
{
    background: rgba(255,255,255,0.4);
    padding: 20px 30px;
}
section.about ul
{
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding: 20px 0;
}
section.about ul li
{
    list-style: none;
}
section.about ul li a
{
    background: #c9b683;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 5px;
    width: 43%;
    margin: 0 auto;
    padding: 15px 10px;
    color: #3f280e !important;
    text-decoration: none;
    text-align: left;
    position: relative;
    font-size: 17px;
    /* line-height: 20px; */
}
section.about ul li a:hover
{
    opacity: 0.7;
}
section.about ul li a span
{
    font-size: 12px;
    letter-spacing: 1px;
}
section.about div.image img
{
    width: 100%;
}


/*-------------------------------------------------------------------- contents */


div.shadow
{
    box-shadow: 0px 0px 18px -4px #000000;
    /* margin-top: 100px; */
    width: 100%;
    height: 100%;
    z-index: 1;

}
section.contents
{
    position: relative;
    -webkit-clip-path: inset(0);
          clip-path: inset(0);
    padding-bottom: 90px;
    overflow: hidden;

}
section.contents::before
{
    content: '';
    position: fixed;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/images/ryoma/bg_02.jpg");
    background-size: cover;
}
section.contents::after
{
    content: '';
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("/images/ryoma/curtain_white.png") no-repeat;
    background-size: contain;
}
section .heading{
width: fit-content !important;
max-width: 516px !important;
margin: 0 auto !important;
}
section .heading img{
width: 100%;
}
section.contents div.time-line
{
    background: #fff;
    padding: 40px 30px;
}
section.contents div.time-line table th,
section.contents div.time-line table td
{
    vertical-align: top;
    padding: 10px 0;
}
section.contents div.time-line table th
{
    width: 150px;
    text-align: left;
    letter-spacing: 1.5px;
}
section.contents div.time-line table td
{
    text-align: left;
    color: #3b2308;
}
section.contents div.time-line div.flex
{
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
}
section.contents div.time-line div.flex img
{
    width: 100%;
    height: auto;
    display: block;
}
section.contents div.time-line div.flex div span
{
    color: #3b2308;
    font-size: 14px;
    text-align: right;
    display: block;
    padding-top: 10px;
}

section.contents img.line
{
    padding-top: 90px;
    display: block;
}

/*-------------------------------------------------------------------- movie */




section.contents div.movie ul
{
    padding: 0;
    width: 100%;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
}
section.contents div.movie ul li
{
    margin: 0 10px;
    position: relative;
}

section.contents div.movie div.image
{
    width: 100%;
    height: 498px;
    /* height: 300px; */
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    box-sizing: border-box;
    -webkit-transition: all .3s; 
    transition: all .3s;
    position: relative;
}
section.contents div.movie ul li:hover div.image::before,
section.contents div.movie ul li:hover a.hover-link
{
    opacity: 1;
    cursor: pointer;
}
section.contents div.movie div.image::before
{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-transition:	all 0.3s ease;
	transition:		all 0.3s ease;
    z-index: 1;
}
.slider .slick-list{
    overflow: visible;
}
section.contents div.movie p
{
    text-align: left;
    color: #fff;
}

section.contents div.movie a.hover-link
{
    background: #c9b683;
    color: #3b2308;
    text-decoration: none;
    padding: 13px 0;
    width: 60%;
    display: block;
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -45%);
    opacity: 0;
    transition: opacity 0.3s ease;
    z-index: 2;
}
section.contents div.movie a.hover-link::after
{
    content: "笆ｶ  ";
    position: absolute;
    right: 10px;
}

.slick-arrow
{
    z-index:1;
    width:80px !important;
    height:80px !important;
    position: absolute;
    top: 40%;
    transform: translateY(-40%);
    cursor: pointer;
}
.slick-arrow:hover
{
    opacity: 0.8;
}
.slick-next
{
    right:-10px !important;
}
.slick-prev
{
    left: -10px !important;
}



/*-------------------------------------------------------------------- yukari */

section.contents div.yukari ul
{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    /* gap: 10px; */
    padding: 0;
}
section.contents div.yukari ul li
{
    width: calc(90%/4);
    padding-top: 20px;
}
section.contents div.yukari ul img
{
    width: 100%;
    display: block;
}
section.contents div.yukari ul p
{
    text-align: left;
    color: #fff;
    margin-top: 10px;
}
section.contents div.yukari ul div
{
    position: relative;
}
section.contents div.yukari ul div:hover:before,
section.contents div.yukari ul div:hover a
{
    opacity: 1;
}
section.contents div.yukari ul div:before
{
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    background-color: rgba(255, 255, 255, 0.5);
    -webkit-transition:	all 0.2s ease;
	transition:		all 0.2s ease;
}
section.contents div.yukari ul a
{
    background: #c9b683;
    color: #3b2308 !important;
    text-decoration: none;
    padding: 6px 0;
    width: 70%;
    display: block;
    position: absolute;
    top: 55%;
    left: 50%;
    transform: translate(-50%, -55%);
    opacity: 0;
    transition: opacity 0.3s ease;
text-align: center;
}


/*-------------------------------------------------------------------- youtube */

section.youtube
{
    background: url("/images/ryoma/bg_03.jpg") no-repeat;
    background-position: top center;
    background-size: cover;
    width: 100%;
    height: auto;
    padding: 90px 0;
    position: relative;
    line-height: 1;
    top: -1px;
}
section.youtube > div
{
    max-width: 50%;
    margin: 0 auto;
}
section.youtube > div > div
{
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 56.25%;
    margin: 0 auto;
}
section.youtube iframe
{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 768px){






/*-------------------------------------------------------------------- common */

div.heading{
width: 90% !important;
}
div.heading img
{
   /** width: 90%;**/
    padding: 60px 0 30px 0;
margin: 0 auto;
display: block;
}
.sp-only
{
    display: block;
}



.yosakoinet-common .main-block
{
    padding-bottom: 0!important;
}
.yosakoinet-common .main-block .block-title-tab
{
    flex-wrap: wrap;
    padding-top: 25px !important;
}
.yosakoinet-common .main-block .block-title-tab > *
{
    border-top: 2px #fff solid!important;
}
.yosakoinet-common .main-block .block-title-tab > a
{
    height: 50px;
    margin-top: auto;
}
.yosakoinet-common-sp .main-block .block-title-tab > *:nth-child(4)
{
    border-left: 2px #fff solid;
}
.yosakoinet-common .main-block .block-title-tab .active
{
    border-right: none!important;
    border-top: 2px #00b2f2 solid!important;
}



/*-------------------------------------------------------------------- fv */

section.fv div.pc
{
    display: none;
}
section.fv div.sp
{
    display: block;
}
section.fv
{
    position: relative;
    top: 13px;
    /* z-index: 2; */
}

/*-------------------------------------------------------------------- about */


section.about
{
    padding-bottom: 60px;
}
section.about ul li a
{
    width: 100%;
}
section.about div.text
{
    padding: 10px 20px;
}
section.about ul li a
{
    font-size: 16px;
}
section.about ul
{
    gap: 15px;
}

/*-------------------------------------------------------------------- content */


section.contents div.time-line
{
    padding: 20px;
}
section.contents div.time-line div.flex
{
    flex-direction: column;
}
section.contents div.time-line table th
{
    width: auto;
    padding-bottom: 5px;
}
section.contents div.time-line table th,
section.contents div.time-line table td
{
    display: block;
}
section.contents div.time-line table td
{
    padding-top: 0;
}


section.contents img.line
{
    width: 300%;
    padding-top: 50px;
}

/*-------------------------------------------------------------------- movie */


section.contents div.movie div.image
{
    height: 300px;
}
.slick-arrow img
{
    width: 60px !important;
    height: 60px !important;
}
.slick-next
{
    right:-20px !important;
}
.slick-prev
{
    left: 0px !important;
}



/*-------------------------------------------------------------------- yukari */


section.contents div.yukari ul
{
    justify-content: space-around;
}
section.contents div.yukari ul li
{
    width: calc(90%/2);
    padding-top: 0px;
}
section.contents div.yukari ul a
{
    width: 90%;
    font-size: 15px;
}



/*-------------------------------------------------------------------- youtube */

section.youtube > div
{
    max-width: 90%;
}
}