@charset "utf-8";
:root {
  /* store */
  --fontgothic: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'メイリオ', 'Meiryo', sans-serif;
  --fontmincho:  '游明朝', 'YuMincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', 'HiraMinProN-W3', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'Noto Serif JP', serif;
  --red: #8c0201;
}
/* /all-color */

::-webkit-scrollbar {width: 10px}

::-webkit-scrollbar-thumb {
  background: rgba(0,0,0,0.3);
  border-radius: 5px
}

* {margin: 0;padding: 0;}

/* shadow box */
#sb-title-inner,#sb-info-inner,#sb-loading-inner,div.sb-message{font-family:"HelveticaNeue-Light","Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:200;color:#fff;}
#sb-container{position:fixed;margin:0;padding:0;top:0;left:0;z-index:999;text-align:left;visibility:hidden;display:none;}
#sb-overlay{position:relative;height:100%;width:100%;}
#sb-wrapper{position:absolute;visibility:hidden;width:100px;}
#sb-wrapper-inner{position:relative;border:1px solid #303030;overflow:hidden;height:100px;  margin: 5px auto;}
#sb-body{position:relative;height:100%;}
#sb-body-inner{position:absolute;height:100%;width:100%;}
#sb-player.html{height:100%;overflow:auto;}
#sb-body img{border:none;}
#sb-loading{position:relative;height:100%;}
#sb-loading-inner{position:absolute;font-size:14px;line-height:24px;height:24px;top:50%;margin-top:-12px;width:100%;text-align:center;}
#sb-loading-inner span{background:url(../images/loading.gif) no-repeat;padding-left:34px;display:inline-block;}
#sb-body,#sb-loading{background-color:#060606;}
#sb-title,#sb-info{position:relative;margin:0;padding:0;overflow:hidden;}
#sb-title,#sb-title-inner{height:26px;line-height:26px;}
#sb-title-inner{font-size:16px;}
#sb-info,#sb-info-inner{height:20px;line-height:20px;}
#sb-info-inner{font-size:12px;}
#sb-nav {float: right;height: 20px;padding: 0;width: 45%;}
#sb-nav a {display: block;float: right;height: 20px;width: 20px;margin-left: 3px;cursor: pointer;background-repeat: no-repeat;}
#sb-nav-close{background-image:url(../images/close.png);background-size: contain;}
/*
#sb-nav-next{background-image:url(next.png);}
#sb-nav-previous{background-image:url(previous.png);}
#sb-nav-play{background-image:url(play.png);}
#sb-nav-pause{background-image:url(pause.png);}
*/
#sb-counter{float:left;width:45%;}
#sb-counter a {padding:0 4px 0 0;text-decoration:none;cursor:pointer;color:#fff;}
#sb-counter a.sb-counter-current{text-decoration:underline;}
div.sb-message{font-size:12px;padding:10px;text-align:center;}
div.sb-message a:link,div.sb-message a:visited{color:#fff;text-decoration:underline;}
/* /shadow box */

body {
	line-height: 1.2;
	background-color: #fff;
	width: 100%;
	max-width: 1000px;
	margin: auto;
	overflow-x: hidden !important;
	color: #000;
	z-index: 1;
    position: relative;
    font-family: "Noto Serif JP", serif;
    font-optical-sizing: auto;
    font-weight: <weight>;
    font-style: normal;
}

a {
    text-decoration: none;
    transition: all 1s;
}

a:hover {opacity: 0.7;}

img {vertical-align: top;}

/* iOS */

input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {display: none;}

input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}

input, button, textarea, select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

/* /iOS */

/* flex */

.flex {
    display:-ms-flexbox;
    display:flex;
	flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	justify-content: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
}

.flex-s {justify-content:flex-start!important;}
.space-a {justify-content: space-around!important;}
.space-b {justify-content: space-between!important;}
.item-c {align-items: center;}

/* /flex */

/* buttn */

a.btn {
    display: block;
    font-size: 20px;
    position: relative;
    width: 96%;
    color: #fff;
    text-align: center;
    justify-content: space-between;
    align-items: center;
    transition: 0.5s;
    border: none;
    margin: 10px auto;
    padding: 0;

    img {
        width: 34px;
        position: absolute;
        top: 12px;
        right: 12px;
    }
}

.pc_none {display: none !important;}

main {}

/* top header */

header .main_head {
    background: url(../images/nav_bg.jpg) center top no-repeat;
    width: 100%;
    padding: 10px 2vw 10px;
    box-sizing: border-box;
    position: relative;
    z-index: 1000;
    background-size: cover;

    .boxs {
        display: flex;
        width: 100%;
        justify-content: center;

        .logo {
            margin: 20px auto;

            img {
                height: auto;
                width: 100%;
                max-width: 300px;

                @media screen and (max-width: 640px) {max-width: 180px;}
            }
        }
    }
}

/* /top header */

/* infobox */

.movie-inner {
	width: 100%;
	position: relative;

    .infobox {
        position: absolute;
        bottom: 20px;
        width: 100%;

        .snsbox {
            width: 100%;

            ul li {
                margin: 0 10px;

                img {width: 50px;}
            }
        }
    }

    .telbox {
        color: #fff;

        .tel {
            font-size: 20px;

            span {
                font-size: 34px;

                @media screen and (max-width: 414px) {font-size: 30px;}
            }
        }

        .open {
            font-size: 18px;
            background: #3b539b;
            padding: 4px;
            margin-right: 10px;

            @media screen and (max-width: 414px) {font-size: 16px;}
        }
    }
}

.top_header_movie {
    width: 100%;
    height: 57vw;
    position: relative;

	@media screen and (max-width: 640px) {height: 56vw;}

    video {
        width: 100%;
        z-index: -1;
        position: absolute;
        top: 0;
        max-width: 1000px;
    }

    img {
        width: 100%;
        height: auto;
    }
}

header .header_bar {
    position: absolute;
    width: 100%;
    z-index: 995;
    top: 0;
	background: rgba(0,0,0,0.75) ;
    max-width: 1000px;

    .boxs {
        display: flex;
        width: 100%;
        padding: 10px;
        box-sizing: border-box;
        margin: auto;
        justify-content: center;

        .logo {
            width: 140px;

            img {
                height: auto;
                width: 100%;
                padding: 0 0 0;
            }
        }

        .right_box {
            float: right;
            padding: 0 70px 0 0;

            .btn {
                color: #fff;

                span {
                    display: block;
                }
            }
        }
    }
}

/*** footer ***/

footer {
    background: #960000;

    #footer {
        display: flow-root;
        width: 100%;
        margin: auto;
    }

    .logo {
        width: 240px;
        text-align: center;
        margin: 5% auto 0;

        img {
            height: auto;
            width: 100%;
            padding: 0 0 0;
            max-width: 220px;
        }
    }

    .copy {
        width: 100%;
        text-align: center;
        font-size: 10px;
        padding: 10px 0 120px;

        a {color: #fff;}
    }
}

/*** /footer ***/

/* h2main */

.top-header h2 {
    color: #fff;
    text-align: center;
    line-height: 1.3;

    span {
        font-size: 50px;

        @media screen and (max-width:1000px) {font-size: 10vw;}
    }
}

/* /h2main */

/* index.html */

#index {
    position: relative;
    background: #000;

    .coverbg1 {
        background: rgb(0, 0, 0, .8);
        width: 100%;
        height: 187vh;
        z-index: -2;
        position: fixed;
    }

    .coverbg2 {
        background: url(../images/sp_enter_bg.jpg) no-repeat scroll center top;
        position: fixed;
        z-index: -3;
        width: 100%;
        height: 110vw;
        max-width: 1000px;
        background-size: contain;
    }

    main {
        background: none;
        padding: 22vw 0 0;
        z-index: 1;
    }

    #u-nav {display: none;}

    #page-top {display: none;}

    footer .copy {
        width: 100%;
        text-align: center;
        font-size: 12px;
        padding: 10px 0 10px;
    }
}

#index_logo {
    text-align: center;
    padding: 8%;
    
    img {width: 100%;max-width: 300px;}
}

main#main {padding: 0;}

.index_txt01 {
    font-size: 15px;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    margin: 60px auto 30px;
    box-sizing: border-box;
    padding: 8px;
}

.index_txt02 {
    font-size: 12px;
    line-height: 2;
    text-align: center;
    color: #fff;
    background: #960000;
    padding: 15px 8px 10px;
    margin-top: 15px;

    div {
        font-size: 18px;
        text-align: left;
        line-height: 1.3;
        margin-left: 10px;
    }

    a {
        text-decoration: underline;
        color: #fff;
    }
}

.index_linkbok {
    text-align: center;
    width: 100%;
    max-width: 1200px;
    padding: 50px 0;
    margin: auto;
    background: #960000;

    a {
        display: inline-block;
        margin: 0.5%;
    }

    div {
        text-align: center;
        width: 100%;
    }

    iframe {margin: 0.5%;}
}

#index footer #footer {display: none;}

#index .conbox {
    font-size: 12px;
    line-height: 2;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, .85);
    bottom: 0;
    left: 30vw;
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
    margin: 30px auto 0;
    box-shadow: 0 6px 20px #000;

    .snav {
        width: 100%;

        h3 {text-align: center;}

        ul {
            margin-top: 10px;

            li {
                margin: 0 10px;

                img {width: 50px;}
            }
        }
    }
}

.enter_btn {
    background: rgb(61, 84, 150, .8);
    width: 90%;
    margin: 0 auto 30px;
    max-width: 642px;
    line-height: 92px;
    background-size: 100% 100%;
    text-align: center;
    font-size: 40px;
    color: #fff;
    outline: 1px solid;
    outline-color: #333;
    outline-offset: 0px;
    display: block;
    transition: .3s;
}

.enter_btn:hover {
	animation: light .8s infinite;
	outline-color: #fff;
}

@keyframes light {
  100% {
    outline-color: transparent;
    outline-offset: 12px;
  }
}

.anime_button {
	z-index: 1;
	transition: .3s;
	position: relative;
}

.anime_button::before {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	/*background: #fff;*/
	transform-origin: 100% 50%;
	transform: scaleX(0);
	transition: transform ease .3s;
}

.anime_button:hover {opacity: 1 !important;}

.anime_button:hover::before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}

#top_box01 {
	display: flex;
	width: 98%;
	margin: auto;
}

@media screen and (max-width:1000px) {
	
    #top_box01 .top_slider_box .slider_box01 .slick-prev::before,
    #top_box01 .top_slider_box .slider_box02 .slick-prev::before,
    #top_box01 .top_slider_box .slider_box01 .slick-next::before,
    #top_box01 .top_slider_box .slider_box02 .slick-next::before {
		width: 40px;
		height: 40px;
		background-size: 100% 100%;
	}

	#top_box01 .top_slider_box .t {
        font-size: 40px;

        span {font-size: 18px;}
    }
}

@media screen and (max-width:1000px) {
    .movie .slick-prev::before,
    .movie .slick-next::before,
    #top_slider .slick-prev::before,
    #top_slider .slick-next::before,
    #profile .slick-prev::before,
    #profile .slick-next::before {
        width: 40px;
        height: 40px;
        background-size: 100% 100%;
	}
}

.girlsboxs {
	display: flex;
	width: 100%;
	margin: 0 auto;
	flex-wrap: wrap;

    .classicon {
        img {width: 100%;}
    }
}

.girlsboxs .onebox {
    display: block;
    width: calc(100% / 2 - 0px);
    border: 1px solid #000;
    color: #000;
    position: relative;
    box-sizing: border-box;
	padding: 1px;
	margin-top: 10px;

    .days {
        font-size: 24px;
        text-align: center;
        background-color: #000;
        padding: 1.5% 0;
    }

    .img {
        position: relative;

        .icon01,.icon02,.icon03,.icon04 {
            position: absolute;
            z-index: 50;
        }

        .icon01 {
            top: 0;
            left: 0;
            width: 40%;
            max-width: 120px;

            @media screen and (max-width: 414px) {width: 30%;}
        }

        .icon02 {
            top: 0;
            right: 8px;
            /*width: 30%;*/
            max-width: 100px;

            img {
                display: block;
                margin-top: 5px;
                max-width: 50px;
            }
        }

        .icon03 {
            bottom: 0;
            left: 0;
            width: 33%;
            max-width: 122px;

            img {
                max-width: 100px;
                width: 12vw;
            }
        }

        .icon04 {
            bottom: 0;
            right: 0;
            width: 33%;
            max-width: 122px;

            img {
                width: 100%;
                height: auto;
            }
        }
    }

    .profile {
        background: url(../images/panel_bg.jpg) center top no-repeat;
        background-size: 100% 100%;
        width: 100%;
        padding: 15px 0 0;

        .op {

            ul {
                margin: 1% auto;

                li {
                    font-size:3vw;
                    color: #fff;
                    background: #8d6e33;
                    width: calc(95% / 2);
                    margin: 0.5%;
                    text-align: center;
                    padding: 1%;
                    box-sizing: border-box;
                    overflow: hidden;
                    text-overflow: ellipsis;
                    white-space: nowrap;

                    @media screen and (max-width: 1000px){font-size: 3vw;}
                }
            }
        }

        div {text-align: center;}

        .name {
            font-size: 24px;
            margin-bottom: 5px;

            @media screen and (max-width: 1000px) {font-size: 4vw;}
            @media screen and (max-width: 414px) {font-size: 18px;}

            span {
                font-size: 18px;

                @media screen and (max-width: 1000px) {font-size: 2.4vw;}
                @media screen and (max-width: 414px) {font-size: 13px;}
            }
        }

        .size {
            font-size: 18px;
            padding-bottom: 10px;

            @media screen and (max-width: 414px) {font-size: 15px;}    
        }

        .time {
            background: #C50000;
            background: linear-gradient(90deg, rgba(197, 0, 0, 1) 0%, rgba(139, 0, 0, 1) 50%, rgba(197, 0, 0, 1) 100%);
            color: #fff;
            font-size: 13px;
            padding: 2% 0;
            width: 99%;
            background-size: contain;
            margin: 0 auto 0px;
            box-sizing: border-box;
            position: relative;

            .icon {
                position: absolute;
                top: 3px;
                left: 10%;

                    @media screen and (max-width: 600px) {left: 6%;}    
                    @media screen and (max-width: 480px) {top:4px;left: 2%;}    

                img {
                    width: 28px;

                    @media screen and (max-width: 600px) {width: 4vw;}    
                }
            }
        }

        .situbox {padding-bottom: 8px;height: 30px;}

        .situation {
            text-align: center;
            font-size: 14px;
            bottom: 0;
            width: 100%;

            span {color: #960000;}
        }

        .situation2 {
            text-align: center;
            font-size: 14px;
            width: 100%;
            margin-top: -18px;

            span {color: #960000;}
        }

        .situation.next {
            padding: 5px 0;
            font-size: 22px;

            div {
                font-size: 15px;
                line-height: 20px;
            }
        }
    }
}

/* /common girlsboxs */

.schedule .girlsboxs {margin: 0 auto ;}

#girls .girlsboxs {padding-bottom: 0;}

#top_movie .slick-slide {margin: 0px 0.1%;}

/* uevent */

#u_event {
    background: url(../images/sp_event_bg1.jpg) no-repeat scroll center bottom;
    background-size: 100%;
    position: relative;
    background-attachment: fixed;
}

#u_event .onebox {
    padding: 2% 3%;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    box-sizing: border-box;

    .bg {box-sizing: border-box;}

    .profbox {
        background: rgba(255, 255, 255, .7);
        border: 1px solid #000;
        box-sizing: border-box;
        padding: 2% 2%;
        margin-top: 3%; 
        
        .day {
            font-size: 14px;
            color: #000;
            padding: 5px 1%;
            text-align: center
        }

        .title {
            font-size: 18px;
            color: #fff;
            background: #960000;
            padding: 4px 1%;
            text-align: center;
        }

        .txt {
            color: #000;
            padding: 2%;
            text-align: center;
            height: 220px;
            overflow-y: auto;
            margin-top: 14px;
        }
    }

    .img {
        width: 100%;

        div {position: relative;text-align: center;}
    }

    .prof {width: 100%;}
}

#top_newface .slick-slider {position: inherit;}

/* /uevent */

#top_link {
    padding: 30px 0;
	background: #000;

    .links {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        margin: auto;
        justify-content: center;

        a {
            width: 100%;
            display: block;
            margin: 5px 0;

            img {
                width: 100%;
                height: auto;
            }
        }
    }
}

#pc_navbox {
	position: fixed;
	z-index: -1;
	top: 0;
	width: 100%;
	height: 100vh;
	background: #000;
	left: 0;
	transition: all 0.3s;
	display: block;
	z-index: 999;
}

#g-nav-list {
	position: fixed;
	width: 100%;
	height: 100vh!important;
	overflow: auto;
	-webkit-overflow-scrolling: touch;

    .snsbox {
        position: absolute;
        left: 5px;
        z-index: 1000;

        li {margin: 3px;}

        img {
            width: 50px;

            @media screen and (max-width: 428px) {width: 45px;}
        }
    }

    .lbox {
        width: 100%;
        text-align: center;
        margin: 0 auto 20px;

        img {
            width: 100%;
            height: auto;
            max-width: 180px;

            @media screen and (max-width: 428px) {max-width: 140px;}
        }
    }

    .rbox {
        width: 100%;
        padding: 2% 2% 20%;

        .txt {
            color: #fff;
            padding: 5px 0;
            font-size: 3.5vw;

            span {font-size: 1.5vw;}
        }

        ul {
            display: flex;
            flex-wrap: wrap;

            li {
                width: calc(100% / 2);

                .box {
                    display: flex;
                    justify-content: center;
                    color: #fff;
                    padding: 8% 0 8%;
                    width: 98%;
                    border-bottom: 1px solid #fff;

                    i {
                        padding-right: 2%;
                        width: 25%;
                        max-width: 70px;

                        img {
                            height: auto;
                            width: 100%;
                            max-width: 30px;
                        }
                    }

                    .t {
                        width: 73%;

                        p {
                            text-align: left;
                            font-size: 16px;
                        }
                    }
                }

                .box.b-none {border:none;}
            }
        }

        ul.shop_btn0 {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            margin: 0 auto;

            li {
                width: 100%;
                border-bottom: none;
                margin: 4px auto;
            }
        }

        ul.shop_btn1 {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            margin: 0 auto;
            padding: 0 0 5%;

            li {
                width: 100%;
                border-bottom: none;
                margin: 4px auto;
            }
        }

        ul.shop_btn2 {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            margin: 0 auto;
            padding: 1% 0;
            justify-content: center;

            li {
                width: calc(100% / 1- 2%);
                border-bottom: none;
                margin: 0 1%;
            }
        }
    }
}

.openbtn {
    position: absolute;
    cursor: pointer;
    width: 60px;
    height: 60px;
    right: 20px;
    top: 40px;
    z-index: 1000;

	@media screen and (max-width: 1000px) {
        right: 2vw;
        top: 4vw;
	}

	@media screen and (max-width: 428px) {
        right: 0.8vw;
        top: 3vw;
	}

    span {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 0;
        height: 2px;
        border-radius: 2px;
        background-color: #fff;
        width: 70%;
        right: 0;
        margin: auto;
    }

    span:nth-of-type(1) {top: 17px;}

    span:nth-of-type(2) {
        top: 0;
        bottom: 0;
    }

    span:nth-of-type(3) {bottom: 17px;}
}

.openbtn.active {
    position: absolute;

    span:nth-of-type(1) {
        top: 20px;
        left: 0;
        transform: translateY(6px) rotate(-45deg);
    }

    span:nth-of-type(2) {opacity: 0;}

    span:nth-of-type(3) {
        top: 25px;
        left: 0;
        transform: translateY(-6px) rotate(45deg);
    }
}

/* slider CSS */

.slider {
	width: 100%;
	margin: auto;
}

.slick-slide {
    margin: 0px 2px;
	transition: all ease-in-out .3s;
	opacity: 1;

    img {width: 100%;}
}

.slick-prev:before, .slick-next:before {color: black;}

.slick-active {opacity: 1;}
.slick-current {opacity: 1;}

#top_boxs01 {

    .boxs {
        padding-bottom: 5%;

        .box {
            max-width: 1200px;
            width: 100%;
            margin: auto;
            display: flex;

            a {
                width: 48%;
                margin: 1%;
                display: block;
            }
        }
    }
}

#top_boxs02 {
	background: url(../images/top_boxs02_bg.jpg);
	background-size: cover;

    .boxs { 
        padding-bottom: 120px;

        .box {
            max-width: 1200px;
            width: 100%;
            margin: auto;
            text-align: center;
            display: flex;
            justify-content: center;
            align-items: center;

            iframe {
                margin: 1%;
                width: 98%;
                width: calc(100% / 3 - 2%);
                max-width: 360px;
                display: inline-block;
            }
        }
    }
}

.t_slider01 .slick-slide {margin: 0px 5px;}

#hotel_menu .boxs {
    width: 100%;
    margin: auto;
    display: flex;
    flex-wrap: wrap;

    a {
        width: 94%;
        text-align: center;
        display: block;
        margin: 0 auto;
        color: #fff;
        font-size: 24px;
        padding: 2%;
        box-sizing: border-box;
        background: #960000;
        margin: 5% auto;

        @media screen and (max-width:428px) {font-size: 16px;}

        span {
            margin-left: 10px;
            vertical-align: middle;
        }
    }
}

.hotel_box01 {
	margin: 30px auto 0px;
	width: 98%;
	max-width: 1500px;

    .tit {
        font-size: 48px;
        text-align: center;
        position: relative;

        span {
            font-size: 24px;
            text-align: center;
            display: block;
        }
    }

    .area_box .txt {
        text-align: center;
        margin: 20px 0 20px;

        span {
            font-size: 26px;
            color: #000;
            margin: 0 10px;
        }
    }

    .area_box .txt::before {
        content: "";
        position: absolute;
        left: 0;
        height: 1px;
        width: 30%;
        background: #000;
        margin-top: 14px;
    }

    .area_box .txt::after {
        content: "";
        position: absolute;
        right: 0;
        height: 1px;
        width: 30%;
        background: #000;
        margin-top: 14px;
    }

    .area_box .boxs {
        width: 100%;
        margin: auto;
        display: flex;
        flex-wrap: wrap;

        a {
            width: calc(100% / 2 - 10px);
            display: block;
            /* border: 3px solid #000; */
            margin: 2% 1%;
            font-size: 4vw;
            color: #fff;
            position: relative;
            box-sizing: border-box;
            background: #960000;
            padding: 3% 1%;

            @media screen and (max-width:428px) {font-size: 16px;}

            div {
                padding: 14px 0 14px 0;
                transition: all 1s;
                text-align: center;

                span {
                    margin-left: 10px;
                    vertical-align: middle;
                }
            }
        }

        a:hover div {background-color: #000;}
    }
}

.hotel_box02 {
	margin: 0;
	width: 98%;
	padding-bottom: 70px;
	max-width: 1500px;

    .tit {
        font-size: 48px;
        text-align: center;

        span {
            font-size: 24px;
            text-align: center;
            display: block;
        }
    }

    .txt {
        font-size: 24px;
        padding: 50px 0 0;
        text-align: center;
    }

    .area {
        text-align: center;

        span {
            font-size: 26px;
            color: #000;
            margin: 0 10px;
        }
    }

    .area::before {
        content: "";
        position: absolute;
        left: 0;
        height: 1px;
        width: 20%;
        background: #000;
        margin-top: 14px;
    }

    .area::after {
        content: "";
        position: absolute;
        right: 0;
        height: 1px;
        width: 20%;
        background: #000;
        margin-top: 14px;
    }

    .hotelarea_box {
        font-size: 24px;
        color: #000;
        max-width: 1000px;
        margin: auto;

        .tit_box {
            background-color: #282828;
            color: #000;
            display: flex;
            width: 100%;

            div div {
                padding: 14px 8%;
                font-size: 16px;
            }
        }

        .type {
            width: 100%;
            border-bottom: 1px solid #000;
            border-left: 1px solid #000;
        }

        .name {
            width: 100%;
            border-bottom: 1px solid #000;
            border-left: 1px solid #000;
        }

        .tel {
            width: 100%;
            border-bottom: 1px solid #000;
            border-left: 1px solid #000;
        }

        .address {
            width: 100%;
            border-bottom: 1px solid #000;
            border-left: 1px solid #000;
        }

        .txtb {
            padding: 0px 2%;
            position: relative;
            font-size: 16px;
            width: calc(69% / 1);
            border-left: 2px solid #000;
            box-sizing: border-box;
            height: 100%;
            min-height: 40px;
            display: flex;
            flex-wrap: wrap;
            align-items: center;
        }

        .titb {
            width: calc(27% / 1);
            background: #fff;
            padding: 10px 2%;
            font-size: 16px;
        }

        .onebox {
            color: #000;
            border: 2px solid #000;
            margin: 5% 6px;
        }

        a:hover {opacity: 1;}

        a:hover .onebox {
            transition: all 1s;	
            background-color: #000;
        }

        a:hover .address .txtb::after {
            content: "⇀";
            right: 5%;
            position: absolute;
        }
    }
}

.hotel_shop_box {
    color: #000;

    .t1 {
        font-size: 24px;
        text-align: center;
        width: 98%;
        margin: 30px auto 10px;
    }

    .t2 {
        font-size: 16px;
        width: 98%;
        margin: 10px auto;
        max-width: 800px;

        p {
            width: 100%;
            font-size: 18px;
            line-height: 1.5;
        }
    }

    .hotelarea_map {
        width: 100%;
        max-width: 1000px;
        margin: auto;
    }

    .btn {
        display: block;
        font-size: 20px;
        position: relative;
        padding: 16px 0;
        width: 360px;
        margin: 70px auto;
        border: 3px solid #960000;
        color: #fff;
        text-align: center;
        justify-content: space-between;
        align-items: center;
        transition: 0.5s;
        background: none;
        border-radius: 0;
        box-sizing: border-box;
        background: #960000;

        span {margin-left: 10px;}
    }
}

.link_box01 {
	padding-bottom: 80px;
	border-bottom: 1px solid #000;

    .txt {
        text-align: center;
        color: #000;
        font-size: 18px;
        line-height: 1.5;
        margin-top: 70px;
        margin-bottom: 55px;
    }

    .boxs {
        width: 98%;
        max-width: 555px;
        margin: auto;

        .box {
            display: flex;
            margin-bottom: 20px;

            .t {
                font-size: 18px;
                color: #000;
                width: 15%;
                text-align: right;
                margin-right: 5%;
            }

            .b {width: 80%;}
        }
    }
}

.link_box02 {
    padding: 60px 0 0;

    .txt {
        padding: 0 0 40px;
        font-size: 30px;
        line-height: 1.5;
        color: #000;
        text-align: center;

        span {
            font-size: 24px;
            display: block;
            text-align: center;
        }
    }

    .boxs {
        width: 95%;
        max-width: 2000px;
        margin: auto;
        text-align: center;

        a {
            display: inline-block;
            margin: 0.5%;
        }
    }
}

/* schedule.html */

.schedule_btn {

    .schedule_btns {
        width: 100%;
        background: #893333;
        padding: 2%;
        box-sizing: border-box;

        ul {
            max-width: 800px;
            gap: 5px;

            li {
                width: calc(100% / 4 - 15px);
                padding: 1px;
                box-sizing: border-box;
                border: 1px solid #fff;

                @media screen and (max-width: 480px) {width: calc(100% / 3 - 56px);}
                @media screen and (max-width: 414px) {width: calc(100% / 3 - 38px);}
            }

            li.on {color: #893333;}
        }

        .btn {
            display: block;
            width: 100%;
            margin: 1px 1px;
            line-height: 1.6;
            padding: 8px 0px;
            text-align: center;
            color: #fff;
            font-size: 16px;

            @media screen and (max-width: 480px) {font-size: 13px;}
        }

        .on {
            background: #fff;
            
            border: none;

            .btn {color: #893333;}
        }
    }
}

.schedule_day {
    font-size: 22px;
    text-align: center;
    padding: 3% 0 2%;
    color: #000;
}

/* /schedule.html */

/* system.html */

#system {
    padding-bottom: 0;

    .tit {
        text-align: center;
        font-size: 30px;
        color: #fff;
        line-height: 1.8;

        span {
            text-align: center;
            font-size: 20px;
            display: block;
        }
    }

    .bg {
        background: url(../images/sys_bg1.jpg) no-repeat top center;
        background-attachment: fixed;
        background-size: 100% 100%;
        box-sizing: border-box;
    }
}

#system .subbox {

    .tit-e {
        position: relative;
        text-align: center;
        font-size: 34px;

        @media screen and (max-width: 480px) {font-size: 24px;}
        @media screen and (max-width: 414px) {font-size: 20px;}
    }

    .tit-e::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 14%;
        background: #FFF;
        height: 1px;
    }

    .tit-e::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: 14%;
        background: #FFF;
        height: 1px;
    }

    .tit-j {
        font-size: 16px;
        text-align: center;
        margin-top: 10px;
    }
}

/* sys00 */
.system_box00 {
    width: 100%;
    max-width: 1000px;
    padding: 5px 0 20px;

    .navbtn {
        width: 96%;
        max-width: 800px;
        margin: auto;

        .btns {
            width: 100%;

            .btn {
                width: 100%;
                border: 2px solid #fff;
                text-align: center;
                padding: 15px 0;
                display: block;
                font-size: 14px;
                color: #fff;
                margin: 0 auto 10px;
                box-sizing: border-box;
                background: none;
                border-radius: 0;

                span {
                    display: block;
                    font-size: 24px;
                    text-align: center;
                }     
            }
        }

        .btns:hover {
            opacity: 1;
            color: #fff;
        }
    }
}

/* /sys00 */

/* sys1 */

.system_box1 {
	width: 100%;
	margin: 0 auto 0;

    .txt {
        text-align: center;
        font-size: 14px;
        margin: 0 auto 50px;
    }

    .boxs {
        margin: 20px 4% 30px;
        max-width: 1000px;
        box-sizing: border-box;
        padding: 5% 0 4%;
        background: rgba(0, 0, 0, .65);

        .priceboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1000px;
            margin: auto;

            .onebox {
                width: 100%;
            
                .box {
                    padding: 6px 0;
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: center;
                    align-items: center;

                    .t {
                        color: #fff;
                        font-size: 16px;
                        width: 32%;
                        text-align: center;

                        span {font-size: 16px;}
                    }

                    .p {
                        font-size: 40px;
                        font-style: italic;
                        color: #960000;
                        text-align: left;
                        width: 61%;

                        @media screen and (max-width: 480px) {font-size: 34px;}

                        span {
                            font-size: 24px;
                            vertical-align: middle;
                            padding-left: 3%;
                            display: block;

                            @media screen and (max-width: 480px) {font-size: 18px;}
                        }
                    }
                }
            }
        }
    }
}

/* /sys1 */

/* sys2 */

.system_box2 {
	width: 100%;
	margin: 0 auto 0;

    .txt {
        text-align: center;
        font-size: 16px;
        margin: 15px auto;
    }

    .boxs {
        margin: 10px auto 0;
        max-width: 1000px;
        box-sizing: border-box;
        padding: 0;

        .opboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1000px;
            margin: auto;

            .onebox {
                width: calc(100% / 2 - 1px);

                .box {
                    padding: 3px 0;
                    border: 2px solid #fff;
                    box-sizing: border-box;
                    margin: 2% 2%;

                    .t {
                        color: #fff;
                        font-size: 24px;
                        text-align: center;

                        @media screen and (max-width: 480px) {font-size: 18px;}    
                    }
                }
            }
        }

        .priceboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1000px;
            margin: auto;

            .onebox {
                width:100%;
            
                .box {
                    padding: 0 2%;
                    position: relative;
                    border-top: 1px solid;

                    .t {
                        color: #fff;
                        font-size: 24px;
                        width: 100%;
                        text-align: center;
                        margin-top: 14px;

                        span {font-size: 16px;}
                    }

                    .p {
                        font-size: 40px;
                        font-style: italic;
                        color: #960000;
                        text-align: center;
                        width: 100%;

                        @media screen and (max-width: 480px) {font-size: 30px;}

                        span {
                            font-size: 24px;
                            vertical-align: middle;
                            padding-left: 3%;

                            @media screen and (max-width: 480px) {font-size: 18px;}
                        }
                    }

                    .info {
                        color: #fff;
                        font-size: 16px;
                        width: 100%;
                        text-align: center;
                        margin: 10px 3%;
                    }
                }
            }

            .onebox:last-of-type .box {  border-bottom: 1px solid; padding-bottom: 10px;}
        }
    }

    .ptboxs {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 1000px;
        margin: auto;

        .onebox {
            width: calc(100% / 2 - 1px);

            .box {
                border: 1px solid #fff;
                box-sizing: border-box;
                margin: 2% 2%;

                .t {
                    text-align: center;

                    img {
                        width: 100%;
                        max-width: 370px;
                    }
                }
            }
        }
    }
}

/* /sys2 */

/* sys3 */

.system_box3 {
    width: 100%;
    margin: 30px auto;

    .boxs {

        .credit {
            text-align: center;
            color: #fff;
            padding: 0px 0 8px;

            .box {
                background: url(../images/sys_bg3.jpg) no-repeat center top;
                width: 100%;
                background-size: cover;

                .t1,.t2,.t3 {text-align: center;}

                .t1 {
                    font-size: 30px;
                    padding: 0 0 20px;
                }

                .t2 {
                    font-size: 20px;
                    padding: 0 0 35px;
                }

                .t3 {
                    font-size: 16px;
                    line-height: 1.8;
                    margin: 2%;
                }

                .b {
                    text-align: center;
                    padding: 0 0 30px;

                    .i {
                        i {
                            width: calc(80% / 5);
                            margin: 5px;
                        }
                    }

                    .btn {
                        line-height: 60px;
                        text-align: center;
                        font-size: 18px;
                        color: #fff;
                        display: inline-block;
                        vertical-align: top;
                        width: 90%;
                        max-width: 388px;
                        padding-right: 12px;
                    }
                }
            }
        }
    }
}

/* /sys3 */

/* sys4 */

.system_box4 {
	width: 100%;
	margin: 50px auto 0;

    .txt {
        text-align: center;
        font-size: 16px;
        margin: 20px auto;
        padding: 0 10px;
        line-height: 1.4;
    }

    .pricebox {
        width: 100%;

        h4 {
            width: 100%;
            color: #960000;
            font-size: 30px;
            text-align: center;
            margin: 30px auto;
            line-height: 1.3;
        }

        .p-title {
            width: 94%;
            background: #960000;
            color: #fff;
            text-align: center;
            max-width: 1000px;
            margin: auto;
            padding: 4px;
            font-size: 24px;
        }

        .p-area {
            width: 94%;
            max-width: 1200px;
            margin: 20px auto;
            line-height: 1.5;
        }
    }

    .subbox .tit-e::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        width: 18%;
        background: #FFF;
        height: 1px;
    }

    .subbox .tit-e::after {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        width: 18%;
        background: #FFF;
        height: 1px;
    }

    .transportationboxs {
        width: 100%;
        max-width: 1000px;
        margin: 20px auto 30px;
        box-sizing: border-box;

        .boxs {

            .onebox {
                border-bottom: 1px solid #fff;
                padding: 20px 0;

                .box {
                    line-height: 1.5;

                    .t1 {
                        width: 100%;
                        color: #960000;
                        font-size: 32px;
                        font-style: italic;
                        text-align: center;

                        span {
                            font-size: 16px;
                            vertical-align: middle;
                            padding-left: 1px;
                        }
                    }

                    .t2 {
                        width: 100%;
                        color: #fff;
                        font-size: 18px;
                        padding: 0 10px;
                        box-sizing: border-box;
                    }
                }
            }

            .onebox:first-child {border-top: 1px solid #fff;}
            .onebox:last-child {border-bottom: none;}
        }
    }
}

/* /sys4 */

/* sys5 */

.system_box5 {
    width: 100%;
    margin: 10px auto 0;

    .txt {
        text-align: center;
        font-size: 24px;
        margin: 30px auto 20px;
    }
}

.system_box5 .boxs {
    margin: 0 auto 0;
    max-width: 1000px;
    box-sizing: border-box;
    padding: 2%;

    .priceboxs {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 1000px;
        margin: auto;

        .inbox {
            width: 100%;
            border-bottom: 1px solid #fff;
            padding-bottom: 10px;
        }

        .inbox:last-of-type {border:none;}

        .onebox {
            padding: 2%;

            .box {
                position: relative;
                justify-content: space-between;
                width: 100%;

                .t {
                    color: #fff;
                    font-size: 20px;
                    width: calc(60%/1 - 1px);

                    span {font-size: 13px;}

                    span.dot {
                        etter-spacing: -6px;
                    
                        @media screen and (max-width: 428px) {display: none;}
                    }
                }

                .p {
                    font-size: 24px;
                    font-style: italic;
                    color: #960000;
                    text-align: right;
                    width: calc(30%/1 - 1px);

                    @media screen and (max-width: 428px) {font-size: 28px;}

                    span {
                        font-size: 14px;
                        vertical-align: middle;
                        padding-left: 2%;
                    }
                }

                .info {
                    color: #fff;
                    font-size: 16px;
                    width: 100%;
                    padding-left: 10px;
                }
            }
        }
    }
}

/* /sys5 */

/* sys6 */

.system_box6 {
    width: 100%;
    padding: 10px 0 0;

    .transportationbtn {

        .btns {
            width: 100%;
            max-width: 800px;
            padding-bottom: 20px;

            .btn {
                width: 90%;
                text-align: center;
                padding: 18px 0;
                display: block;
                font-size: 20px;
                color: #fff;
                margin: 16px auto;
                box-sizing: border-box;
            }

            span {
                display: block;
                font-size: 18px;
                text-align: center;
            }
        }
    }
}

/* /sys6 */

/* sys7 */

.system_box7 {

    .matterboxs {
        width: 93%;
        max-width: 800px;
        margin: auto;
        padding: 40px 0 0;
        font-size: 18px;
        color: #fff;
        line-height: 1.3;
    }
}

/* /sys7 */

/* /system.html */

/*movie*/

#movie {

    .obi-ttl {
        width: 100%;

        h2 {}

        h2::before {background: rgba(0,0,0,.2);}

        h2::after {background: rgba(0,0,0,.6);}

        .title-txt {

            .t_tit1 {color: #fff;}        
            .t_tit2 {color: #fff;}        
        }
    }

    .breadcrumb {
        background:none; 

        li {color: #fff;}    
    }

    .movie .oneboxs {
        display: flex;
        flex-wrap: wrap;
    }

    .movie .onebox {
        width: 100%;
        padding-bottom: 20px;
        display: block;
        padding: 3%;
        background: rgba(0, 0, 0, .5);
        margin: 0 auto 4%;

        .boxs {padding: 0px 1% 20px;}
    }

    .mbg {
        background: url(../images/mov_bg.jpg) no-repeat scroll center top #000;
        background-attachment: fixed;
    }
}

#top_movie {background: #000;}

.movie {
	padding: 0 0 10px;
	width: 100%;

    .oneboxs {padding: 0;}

    .onebox {
        background-size: 100% 100%;
        width: 100%;

        .boxs {
            padding: 0px 1% 0px;
            box-sizing: border-box;
            margin-bottom: 10px;
        }

        .txtbox {
            color: #fff;
            justify-content: space-between;
            padding: 0 3%;
            box-sizing: border-box;
            background-size: cover;

            .prof {
                width: 50%;
                line-height: 1.5;

                .name {
                    font-size:50px;

                    @media screen and (max-width: 1000px) {
                        font-size: 4.5vw;
                        margin-top: 3px;
                    }

                    span {
                        font-size: 30px;

                        @media screen and (max-width: 1000px) {font-size: 3vw;}
                    }
                }

                .size {
                    font-size: 30px;

                    @media screen and (max-width: 1000px) {font-size: 3vw;}
                }
            }

            .icon {
                width: 33%;
            
                .icon01.no {background: #282828;}

                .icon01 {
                    margin: 0 2%;
                    text-align: center;
                    font-size: 3.2vw;
                    background: #960000;
                    padding: 2px 0;
                }

                .time {
                    text-align: center;
                    font-size: 3vw;
                    padding: 5px 2.5% 0;

                    span {color: #ffff00;}
                }
            }
        }

        .movie_img {
            width: 100%;
            background: url(../images/nobg.jpg) no-repeat center top;
            background-size: 100%;
            margin-top: 10px;
            height: 58vw;

            video {
                width: 100%;
                height: auto;
            }
        }

        .links {
            width: 90%;
            max-width: 280px;
            margin: auto;

            a {
                display: block;
                background: #fff;
                border-radius: 50px;
                border: 2px solid #960000;
                color: #960000;
            }

            a:hover {color: #960000;}

            p {
                color: #960000;
                font-size: 22px;
                text-align: center;
                padding: 10px;
                box-sizing: border-box;

                span { font-size: 20px;}
            }
        }
    }

    .top_movie_btn {
        width: 360px;
        text-align: center;
        line-height: 60px;
        border: 3px solid #fff;
        color: #fff;
        position: relative;
        margin: auto;
        display: block;
        font-size: 22px;

        span {font-size: 18px;}
    }

    .slick-prev {left: 0;}

    .slick-prev:before {
        background: url(../images/naxt_left.png) no-repeat;
        width: 60px;
        height: 60px;
        content: '';
        display: block;
        z-index: 500;
    }

    .slick-next {right: 40px;}

    .slick-next:before {
        background: url(../images/naxt_right.png) no-repeat;
        width: 60px;
        height: 60px;
        content: '';
        display: block;
    }
}

 /* ranking.hrml */

#ranking {

    .rank-nav1 {
        width: 100%;
        position: relative;
        padding: 10px 0 20px;
        
        .tit-box {
            width: 100%;
            justify-content: center;
            margin: 0 auto 40px;

            h3 {
                font-size: 30px;
                font-weight: bold;
            }
    
            img {
                width: 40px;
                margin: 0 10px;
            } 
        }

        .month-nav ul {

            li {
                margin: 0 10px;

                a {
                    color: #fff;
                    font-size: 24px;
                    border: 3px solid #960000;
                    padding: 10px 15px;
                    box-sizing: border-box;
                    background: #960000;

                    @media screen and (max-width: 640px) {
                        padding: 8px 6px;
                        font-size: 20px;
                    }
                }

                span {
                    font-size: 18px;
                    margin-left: 8px;
                }
            }
        }
    }

    .rank-nav2 {
        margin: 30px auto;

        .op-nav {

            ul {

                li {
                    width: 45%;
                    margin: 8px 1%;

                    a {
                        color: #000;
                        font-size: 3vw;
                        border: 1px solid #000;
                        border-radius: 50px;
                        padding: 5% 3%;
                        box-sizing: border-box;
                        width: 100%;
                        display: block;
                        text-align: center;
                        font-weight: bold;

                        @media screen and (max-width: 640px) {
                            font-size: 16px;
                            padding: 5px 10px;
                        }

                        @media screen and (max-width: 480px) {
                            font-size: 13px;
                            padding: 5px 6px;
                        }
                    }

                    a.active {
                        color: #fff;
                        background: #960000;
                        border: 1px solid #960000;
                    }

                    span {
                        font-size: 18px;
                        margin-left: 8px;	
                    }
                }
            }
        }
    }

    .ranking {

        .oneboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;

            .bg {
                background: url(../images/sp_rank_bg.jpg) no-repeat center top;
                background-size: cover;
                width: 100%;
                padding: 30px 10px;
                box-sizing: border-box;
                margin-bottom: 20px;

                .boxs {
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: flex-start;
                    width: 100%;
                    max-width: 1000px;
                    margin: 0 auto;

                    .box1 {
                        width: 58%;
                        padding: 0px 0% 0 40%;

                        .ranking_img {
                            background: url(../images/rank_frame.png) no-repeat center top;
                            text-align: center;
                            padding: 12px;
                            background-size: contain;
                        }

                        img {
                            width: 100%;
                            height: auto;
                            max-width: 480px;
                        }

                    }

                    .box2 {width: 55%;}
    
                    .ranking_no {
                        position: relative;

                        img {
                            width: 56vw;
                            height: auto;
                            max-width: 430px;
                            position: absolute;
                            top: 23px;
                            left: -23px;
                        }
                    }
                }

            }

            .box2 {
                padding: 3%;
                color: #000;
                box-sizing: border-box;

                .ranking_txt {
                    background: rgba(255, 255, 255, .8);
                    border: 1px solid #000;
                    border-radius: 20px;
                    padding: 3%;
                    box-sizing: border-box;

                    .name {
                        font-size: 22px;
                        margin-bottom: 5px;
                        text-align: center;

                        span {font-size: 18px;}
                    }

                    .size {
                        font-size: 18px;
                        margin-bottom: 5px;
                        text-align: center;
                    }

                    .txt {
                        font-size: 16px;
                        font-family: var(--fontgothic);
                        height: 300px;
                        overflow-y: scroll;
                        box-sizing: border-box;
                        margin-top: 14px;
                    }
                }
            }
        }
    }

    .girlsboxs {
        display: flex;
        width: 100%;
        margin: 20px auto 145px;
        flex-wrap: wrap;
    }
}

 /* /ranking.hrml */

/* news.html */

.news {
    background: url(../images/sp_news_bg.jpg) center top;
    background-attachment: fixed;
    background-size: contain;

    .oneboxs {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
        max-width: 1000px;
        margin: auto;

        .onebox {
            background: #fff;
            margin: 1% 1% 4%;
            padding: 5% 0;
            display: flex;
            width: 100%;
            box-sizing: border-box;
            border: 1px solid #000;
            border-radius: 20px;

            .inner {padding:0;}

            .info {
                font-size: 16px;
                margin: 10px auto 10px;
                background: #000;
                padding: 4px 0;
                width: 90%;
                text-align: center;
                max-width: 450px;
            }
        }

        .imgbox {
            padding: 0 2%;
            box-sizing: border-box;
            width: 100%;
            text-align: center;
        }

        .txtbox {
            width: 98%;

            .prof {
                font-family: var(--fontgothic);
            
                .time {
                    border: 1px solid #fff;
                    padding: 10px 10px 5px;
                    font-size: 24px;
                    line-height: 50px;
                    margin-bottom: 20px;
                    display: inline-block;

                    span {
                        color: #f00;
                        font-weight: 500;
                        line-height: 50px;
                        font-size: 40px;
                    }

                    span:last-child {
                        font-size: 24px;
                        font-family: var(--fontgothic);
                    }
                }

                .txt {
                    overflow-y: auto;
                    color: #000;
                    margin: 30px auto;
                    width: 100%;
                }
            }
        }

        .title {
            font-size: 18px;
            margin: 0 auto 10px;
            background: #960000;
            color: #fff;
            padding: 4px 0;
            width: 100%;
            text-align: center;
            font-family: var(--fontgothic);
        }
    }
}

.scrolldesign::-webkit-scrollbar {width: 5px;}

.scrolldesign::-webkit-scrollbar-track {
	background-color: #676167;
	border-radius: 100px;
}

.scrolldesign::-webkit-scrollbar-thumb {
	background-color: #000;
	border-radius: 100px;
}

/* /news.html */

/* mailmagazine.html */

#mailmagazine {

    .bg {
        background: url(../images/member_bg.jpg) top center no-repeat;
        background-attachment: fixed;
        padding: 4% 2%;
    }

    .mailmagazine_box01 {
        .txt {
            text-align: center;
            font-size: 24px;
            margin-bottom: 40px;
            color: #000;
            border: 2px solid #000;
            width: 300px;
            padding: 5px;
            box-sizing: border-box;
            margin: 50px auto;
        }
    }

    .mailmagazine_box02 {
        width: 90%;
        max-width: 900px;
        margin: auto;

        .txt {
            width: 100%;
            color: #000;

            .t1 {
                font-size: 18px;
                margin-bottom: 30px;
                text-align: center;

                @media screen and (max-width:428px) {font-size: 16px;}
            }

            .t2 {
                font-size: 18px;
                line-height: 1.8;
                margin-bottom: 20px;
                text-align: center;

                @media screen and (max-width:428px) {font-size: 16px;}

                span {font-size: 24px;}
            }

            .btn {
                border: 2px solid #960000;
                padding: 20px 0;
                font-size: 18px;
                color: #fff;
                display: block;
                margin-top: 20px;
                text-align: center;
                margin: 0 auto;
                max-width: 400px;
                font-weight: bold;
                background: #960000;
                border-radius: 0;
            }
        }

        .img {
            width: 100%;
            margin-top: 20px;

            .box {
                padding: 20px;
                text-align: center;

                img {
                    width: 250px;
                    height: auto;
                }

                .txtbox {
                    padding: 20px;
                    background: #fff;
                    margin-top: 24px;
                    width: 100%;
                    max-width: 520px;
                    margin: 24px auto;
                }

                .t1 {
                    text-align: center;
                    font-size: 18px;
                    color: #000;
                }

                .t2 {
                    text-align: center;
                    font-size: 18px;
                    margin-top: 10px;
                    line-height: 1.5;
                    color: #000;
                }
            }
        }
    }
}

/* /mailmagazine.html */

/* pagination */

.pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px 0px 10px;
    font-size: 20px;
    width: 98%;
    box-sizing: border-box;
    max-width: 360px;
    margin: auto;

    button a {color: #fff;}

    button a:active{color: #960000;}

    .disabled {display: none;}

    .pagination-list {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;

        a {
            color: #000;
            display: block;
            width: 30px;
            text-align: center;
            line-height: 30px;
            margin: 0 2.5px;
        }
    }

    .item a {
        background-color: #960000;
        color: #fff;
    }

    .items {margin: 0 2%;}

    button {
        background: none;
        color: #fff;
        border: none;
        font-size: 20px;
    }

    .prev {margin-right: 5%;}

    .next {margin-left: 5%;}
}

/* /pagination */

/*
.UpMove.DownMove {display: none;}

#header_bar.UpMove {
	position: fixed;
	width: 100%;
	animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-100px);
  }
}

#header_bar.DownMove {
	position: fixed;
	width: 100%;
	animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
  from {
    opacity: 0;
    transform: translateY(-100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
*/

/* caption effect */

figure.cap-efct {
    position: relative;
    overflow: hidden;
    width: 100%;
    text-align: center;
    color: #686868;
    background: rgb(255,255,255,0.5);

    img {
        width: 100%;
        transition: opacity 0.3s;
        opacity: 1;
    }

    span {
        width: 100%;
        transition: opacity 0.3s;
        opacity: 1;
    }

    figcaption {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 100%;
        padding: 5px;
        opacity: 0;
    }

    figcaption::before {
        position: absolute;
        top: 50%;
        right: 30px;
        bottom: 50%;
        left: 30px;
        content: '';
        transition: all 0.2s;
        transition-delay: 0.1s;
        opacity: 0;
        background-color: #fff;
    }

    p {
        text-align: center;
        font-size: 16px;
        padding: 65% 0;
        color: #fff;

        @media screen and (max-width: 1000px) {font-size: 1.8vw;}

        span {
            border: 2px solid #fff;
            padding: 5px 15px;
            letter-spacing: 4px;
        }
    }

    .txt {
        position: absolute;
        top: 33px;
        left: 0px;
        text-align: center;
        font-size: 12px;
        padding: 5px;
        color: #fff;
        height: 80px;
        width: 100%;
        overflow-y: auto;

        @media screen and (max-width: 1920px) {font-size: 1.4vw;}
    }

    a {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        color: #fff;
    }
}

figure.cap-efct * {box-sizing: border-box;}

figure.cap-efct p,
figure.cap-efct .txt-space {
    margin: 0 0 5px;
    transition: opacity 0.3s, transform 0.3s;
    opacity: 0;
}

figure figcaption:hover {background: rgba(0,0,0,.6);}

figure.cap-efct:hover {

    img {opacity: 0.35;}
    
    figcaption {
        h2 {
            transition-delay: 0.3s;
            transform: translate3d(0%, 0%, 0);
            opacity: 1;
        }

        p {
            transition-delay: 0.3s;
            opacity: 0.9;
        }

        .txt-space {
            transition-delay: 0.3s;
            opacity: 1;
        }
    }

    figcaption::before {
        top: 30px;
        bottom: 30px;
        transition-delay: 0s;
        opacity: 1;
        background: rgba(27, 37, 56, 0);
    }
}

.girlsboxs a .onebox .img figure {
	margin: 0;
	padding: 0;
	overflow: hidden;
	position: relative;

    figcaption {
        position: absolute;
        width: 100%;
        left: 0;
        bottom: 0;
        z-index: 1;
    }
    
    img {	
        width: 100%;
        max-width: 375px;
        transform: scale(1);
        transition: .3s ease-in-out;
    }
}

.girlsboxs a .onebox .img figure:hover img {transform: scale(1.1);}

/* /caption effect */

/* ALL TITLE */

.t_tit {
	font-size: 70px;
	letter-spacing: 3px;
	line-height: 1.4;
	padding: 20px 0;
	text-align: center;
	color: #fff;

	@media screen and (max-width:1000px) {font-size: 10vw;}

    span {
        font-size: 18px;
        display: block;
        text-align: center;

        @media screen and (max-width:1000px) {font-size: 16px;}

        @media screen and (max-width:428px) {font-size: 13px;}
    }
}

.titlebox {
    width: 100%;
    position: relative;

    .title-txt {
        width: 100%;
        position: relative;
        padding: 5%;
        box-sizing: border-box;
        z-index: 2;

        .t_tit1 {
            font-size: 10vw;
            text-align: center;
            color: #000;
            padding-bottom: 10px;
            
            span {color: #960000;}

            img { 
                width:7vw ;
                max-width: 42px;
                vertical-align: initial;
                margin-left: 15px;      
            }
        }

        .t_tit2 {
            font-size: 5vw;
            letter-spacing: 8px;
            line-height: 1.4;
            text-align: center;
            color: #000;
        }
    } 

    .white {
        background: rgba(255, 255, 255, .6);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .tt {
        position: fixed;
        height: 33vh;
        width: 100%;
        z-index: -1;
        top: 0px;
        max-width: 1000px;

        @media screen and (max-width: 1000px) {height: 60vw;}
    }

    .tt.girl {
        background: url(../images/tit_sch.jpg) no-repeat scroll center top #0000;
        background-size: cover;
    }

    .tt.sys {
        background: url(../images/sp_tit_sys.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.sch {
        background: url(../images/sp_tit_sch.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.now {
        background: url(../images/sp_tit_now.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.mov {
        background: url(../images/sp_tit_mov.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.hl {
        background: url(../images/sp_tit_hl.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.ht {
        background: url(../images/sp_tit_ht.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.news {
        background: url(../images/sp_tit_news.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.topnf {
        background: url(../images/sp_tit_new2.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.event {
        background: url(../images/sp_tit_evt.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.nf {
        background: url(../images/sp_tit_newface.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.cnt {
        background: url(../images/sp_tit_cnt.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.wait {
        background: url(../images/sp_tit_sys.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.how {
        background: url(../images/sp_tit_sys.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.prof {
        background: url(../images/sp_tit_sch.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.rank {
        background: url(../images/sp_tit_rank.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.mm {
        background: url(../images/sp_tit_mm.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.mov {
        background: url(../images/sp_tit_mov.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.cos {
        background: url(../images/sp_tit_sch.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .tt.pd {
        background: url(../images/sp_tit_pd.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }
}

.title-bg {
    width: 100%;
    z-index: -1;
    padding: 210px 0 90px;

	@media screen and (max-width: 1000px) {padding: 10% 0;}
}

.under.title-bg {
    width: 100%;
    z-index: -1;
	padding: 5% 0 12%;

    @media screen and (max-width: 414px) {padding: 16% 0 12%;}
}

.under {

    .tt {
        position: fixed;
        height: 44vw;
        width: 100%;
        z-index: -1;
        top: 15vw;
        max-width: 1000px;

        @media screen and (max-width: 640px) {top: 17vw;}
        @media screen and (max-width: 414px) {top: 19vw;}
        
    }
}

.t-ttl-border {border-bottom: 4px solid #960000;}

.topttl {
    position: relative;
    background: #000;
    position: relative;

    .mov {

    .title-txt {

            .t_tit1 {
                color: #fff;
                
                span {color: #fff;}
            }

            .t_tit2 {color: #fff;}
        } 
    }

    .title-bg {
        z-index: -1;
        padding: 0;
    }

    .fixed {
        position: fixed;
        height: 12vh;
        width: 100%;
        z-index: -1;
    }

    .sch {
        background: url(../images/sp_sch_bg.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .nf {
        background: url(../images/sp_nf_bg.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .news {
        background: url(../images/sp_tit_new.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .pickup {
        background: url(../images/sp_tit_new.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .rank {
        background: url(../images/sp_rnk_bg.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }

    .pd {
        background: url(../images/sp_pd_bg.jpg) no-repeat scroll center top #000;
        background-size: cover;
    }
}

/* /ALL TITLE */

/* #top_schedule */

#top_schedule {background: #fff;}

#top_schedule .navbox {
	background: #893333;
    padding: 2% 6%;
    box-sizing: border-box;

    ul {
        justify-content: space-between;;
        width: 100%;
        max-width: 1000px;
        margin: auto;

        li {
            display: block;
            border: 1px solid #fff;
            color: #fff;
            padding: 2%;
            box-sizing: border-box;
            width: 48%;
            text-align: center;
            margin: 10px 0;
            font-size: 4vw;
            cursor: pointer;
            font-weight: bold;
        }

        li.select {
            background: rgba(255, 255, 255, 1);
            opacity: 1;
            transition: all 1s;
            color: #893333;
        }
    }
}

.hide {display: none;}	

/* /#top_schedule */

@media screen and (max-width:1000px) {

	#top_g-nav.panelactive #top_g-nav-list .rbox ul li .box .i {padding-right: 0.5%;}
	#top_g-nav.panelactive #top_g-nav-list .rbox ul li .box {padding: 25% 0 10%;}
	#top_g-nav.panelactive #top_g-nav-list .rbox ul li .box .t {font-size: 14px;}
	#top_g-nav.panelactive #top_g-nav-list .rbox ul li .box .t span {font-size: 18px;}
	footer #footer .prof .shopname {font-size: 2.5vw;}
	footer #footer .prof .shopname span, footer #footer .prof .open {font-size: 1.2vw;}
	footer #footer .prof .tel, footer #footer .prof .mail {
		font-size: 1.4vw;
		margin-bottom: 2%;
	}	
}
	
@media screen and (max-width:1000px) {

	.profile_box05 .boxs .box .t1 {font-size: 16px;}
	.profile_box05 .boxs .box .t2 {font-size: 1.8vw;}
	.profile_box05 .boxs .box .t3 {
		font-size: 14px;
		padding: 8px 0;
		width: 95%;
	}
}

@media screen and (max-width:1000px) {
	
	header .header_bar .boxs .telbox .tel {font-size: 1.6vw;}

	header .header_bar .boxs .telbox .open {font-size: 1.2vw;}

	header .header_bar .boxs .nav ul li a span {
		font-size: 14px;
		font-size: 1.2vw;
	}

	header .header_bar .boxs .nav ul li {
		font-size: 12px;
		font-size: 1vw;
		padding: 20px 1.5%;
	}

	header .header_nav nav ul li {font-size: 1.2vw;}
	header .header_nav nav ul li span {font-size: 1.4vw;} 
}

@media screen and (max-width:1000px) {
	
	.review_box .onebox .profbox .name {
		font-size: 25px;
		padding: 0 0 10px 0;
	}
	
	.review_box .onebox .img .img_box .link .btn {
		line-height: 1;
		padding: 10% 0;
		top: 44%;
	}
	
	.review_box .onebox .profbox .txt .t01 .t01i {
		display: ruby;
		margin-right: 2%;
		width: 24%;
	}
}


@media screen and (max-width:1000px) {
	
	.girlsboxs a {width: calc(100% / 2 - 0px);}
}


 @media screen and (max-width:1000px) {
	#top_newface .onebox .profbox .box {font-size: 25px;}
	#top_newface .onebox .profbox .name {font-size: 20px;}
}
	
@media screen and (max-width:1000px) {
	
	.news .oneboxs .txtbox .prof .time {
		padding: 2% 2% 1%;
		font-size: 16px;
		line-height: 30px;
		margin-bottom: 3%;
	}

	.news .oneboxs .txtbox .prof .time span {
		line-height: 0;
		font-size: 25px;
	}

	.news .oneboxs .txtbox .prof .time span:last-child {font-size: 16px;}
	.news .oneboxs .txtbox .prof .tit {
		font-size: 20px;
		padding-bottom: 2%;
		margin-bottom: 3%;
	}

	.news .oneboxs .txtbox .prof .txt {font-size: 14px;}
}
	
@media screen and (max-width:1000px) {
	
	#profile .tit {font-size: 40px;}
	#profile .tit span {font-size: 18px;}
	#profile .tit span.r {font-size: 14px;}
	.profile_box04 .option .boxs .box .t1 {font-size: 22px;}
}
	
@media screen and (max-width:1000px) {
	
	.system_box03 .optionboxs .boxs .box .onebox .t3 {font-size: 23px;}
	.system_box03 .optionboxs .boxs .box .onebox .t3 span {font-size: 16px;}
	.system_box03 .optionboxs .boxs .box .onebox .t2 {font-size: 17px;}
	.system_box03 .optionboxs .boxs .box .onebox .t1 {font-size: 20px;}
}

/* btn01 */

.btn-box {
	width: 240px;
	margin: 20px auto 0;
}

.more-btn {
	width: 240px;
	text-align: center;
	position: relative;
	cursor: pointer;

    span {
        font-size: 1.2rem;
        color: #fff;
        line-height: 48px;
        letter-spacing: 1.4px;
        position: relative;
        left: 14px;
        z-index: 110;
        font-family: 'Lusitana', serif;
    }
}

.more-btn-inner {
	width: 46px;
	height: 46px;
	border-radius: 35px;
	position: absolute;
	left: 0;
	z-index: 100;
	background: #fff;
}

.into {
	display: inline-block;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 15.5px;
	top: 15px;
	/*transition: all .3s;*/
	z-index: 120;

    span {
        display: block;
        background: #000;
        transition: all .2s;
        position: absolute;
        border-radius: 1px;
    }

    span.plus1 {
        width: 16px;
        height: 2px;
        top: 8px;
        left: 0px;
    }

    span.plus2 {
        width: 2px;
        height: 16px;
        top: 1px;
        left: 7px;
    }

    span.plus3 {
        width: 0px;
        height: 2px;
        left: 9px;
        top: 0px;
        transform: rotate(45deg);
        transform-origin: right top;
    }

    span.plus4 {
        width: 0px;
        height: 2px;
        left: 4px;
        top: 0px;
        transform: rotate(-45deg);
        transform-origin: left top;
    }
}

/* /btn01 */

/* btn02 */

.more {}

.btn02 {
    width: 360px;
    text-align: center;
    line-height: 60px;
    border: 3px solid #fff;
    color: #fff;
    position: relative;
    margin: auto;
    display: block;
    font-size: 22px;
	background: #000;

    span {font-size: 18px;}
}

/* /btn02 */

/* top-news */

#top-newsbox {
    width: 100%;
    margin: 0 auto 30px;

    .box {height: 100px;}

    #new-cast {
        margin-right: 0;
        padding-bottom: 29px;
    }
}

#top-newsbox > article {
	width: 100%;
	margin-right: 20px;
	border-left: solid 1px #000;
	box-sizing: border-box;
	border-bottom: solid 30px #000;
	border-right: solid 1px #000;
	max-width: 990px;
	border-top: solid 1px #000;
}

#news {padding-bottom: 30px;}

#news .top-header {
    background-image: url(../images/tit_new1.jpg);
    height: 225px;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    box-sizing: border-box;
    padding: 10px 15px;
	justify-content: space-between;

    h2 span {
        font-size: 5.0rem;

        @media screen and (max-width:1500px) {font-size: 3.5rem;}
    }
}

#news .news_slide .btn_prev,
#news .news_slide .btn_next {
	position: absolute;
	top: 0;
	height: 100%;
	padding: 1px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	cursor: pointer;
}

#news .news_slide .btn_prev {
    left: 5px;

    img {width: 50px;}
}

#news .news_slide .btn_next {
    right: 5px;

    img {width: 50px;}
}

#news .news_slide .slick-img img {
	width: 100%;
	max-width: 450px;
}

#news .slick-slide img {margin: 0 auto;}

#news .slick-dots li.slick-active button:before {
	opacity: 1;
	color: #960000;
}

#top-newsbox .more {margin-top: 20px;}

#news .news0_slide .btn_prev, #news .news0_slide .btn_next {
	position: absolute;
	top: 0;
	height: 100%;
	padding: 1px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	z-index: 500;
	cursor: pointer;
}

#news .news0_slide .btn_prev {
    left: 5px;

    img {width: 50px;}
}

#news .news0_slide .btn_next {
    right: 5px;

    img {width: 50px;}
}

/* /top-news */

/*** top-newsbox #pickup ***/

#pickup {
	margin-right: 1%;
	padding-bottom: 29px;

    .top-header h2 {color: #fff;}

    .pickup_slide {

        .btn_prev,.btn_next {
            position: absolute;
            top: 0;
            height: 100%;
            padding: 1px 0;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            align-items: center;
            z-index: 500;
            cursor: pointer;
        }

        .btn_prev {
            left: -26px;

            img {width: 54px;}
        }

        .btn_next {
            right: -26px;

            img {width: 54px;}
        }

        .slick-img img {
            width: 100%;
            max-width: 450px;
        }

        .slick-slide img {margin: 0 auto;}
    }

    .slick-dots li.slick-active button:before {
        opacity: 1;
        color: #960000;
    }

    .news-cont {
        background:none;
        display: block;
        padding: 0;
        width: 70vw;
        border: none;
        box-sizing: border-box;
        border-radius: 0;

        .more {
            margin: 4% auto;
        }

        .cast-img {
            width: 100%;
            border-radius: 10px;
            overflow: hidden;
        }

        .box {
            background: rgba(0, 0, 0, 1);
            height: auto;
            padding: 5% 0;
            margin: 6px 0;
            box-sizing: border-box;
            color: #fff;
            border-radius: 10px;
            width: 100%;

            .name {
                text-align: center;
                font-size: 22px;
            }

            .size {
                text-align: center;
                margin-top: 5px;
            }
        }
    }
}

/*** /top-newsbox #pickup ***/

/*** #top-pd ***/

#top-pd {

    .girlsboxs {
        width: 100%;
        max-width: 1600px;

        a {width: 100%;}

        .onebox {
            background: #fff;
            width: 100%;
            margin: 0;
            padding: 2% 1% 0.5%;
            border: 0;
            display: flex;

            .img {
                position: relative;
                width: 30%;
                
                figure {
                    border-radius: 10px;
                    height: 28vw;
                    max-height: 280px;
                }

                .g-thm {
                    position: absolute;
                    top: 15px;
                    left: 6px;
                    width: 40%;
                    max-width: 100px;
                    z-index: 50;

                    .inner {
                        z-index: 500;

                        a {
                            width: 50px;
                            height: 50px;
                            background: #000;
                            border-radius: 50%;
                            display: block;
                            overflow: hidden;
                            box-sizing: border-box;

                            img {
                                width: 100%;
                                height: auto;
                            }
                        }
                    }
                } 
            }

            .d-box {

                border: 1px solid #000;
                padding: 2%;
                width: 69%;
                box-sizing: border-box;
                margin-left: 1%;

                .ttl {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 1;
                    overflow: hidden;
                    font-size: 18px;

                    img{width: 20px;}
                }

                .ymd {
                    font-size: 16px;
                    margin-top: 5px;
                    border-bottom: 1px solid #000;
                    padding-bottom: 8px;                    
                }

                .txt {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 3;
                    overflow: hidden;
                    font-size: 18px;
                    padding-top: 2%;
                    box-sizing: border-box;
                }
                
            }
            
            .profile {
                background:none;

                .name {font-size: 16px;}

                .size {font-size: 16px;}
            }
        }
    }

    .more {width: 100%;margin: 3% auto;}
}

/*** /#top-pd ***/

/* top-nf */

#top-nfbox {
    width: 100%;
    margin: 0 auto 30px;

    .box {height: 100px;}
}

#top-nfbox > article {
	width: 100%;
	margin-right: 20px;
	border-left: solid 1px #000;
	box-sizing: border-box;
	border-bottom: solid 30px #000;
	border-right: solid 1px #000;
	max-width: 990px;
	border-top: solid 1px #000;
}

#new-cast {
    margin-right: 0;
    padding-bottom: 29px;

    .onebox {width: 100vw; }

    .girlsboxs .onebox .img figure img {
        width: 100%;
        max-width: 800px;
        transform: scale(1);
        transition: .3s ease-in-out;
    }
    
    .top-header {
        background-image: url(../images/tit_new1.jpg);
        height: 225px;
        background-repeat: no-repeat;
        position: relative;
        display: flex;
        flex-wrap: wrap;
        align-items: end;
        box-sizing: border-box;
        padding: 10px 15px;
        justify-content: space-between;

        h2 {
            color: #fff;

            span {
                font-size: 5.0rem;

                @media screen and (max-width:1000px) {font-size: 3.5rem;}
            }
        }
    }
}

#new-cast .newcast_slide .btn_prev,
#new-cast .newcast_slide .btn_next {
	position: absolute;
	top: 0;
	height: 100%;
	padding: 1px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	z-index: 1000;
	cursor: pointer;
}

#new-cast .newcast_slide .btn_prev {
    left: 5px;

    img {width: 30px;}
}

#new-cast .newcast_slide .btn_next {
    right: 5px;

    img {width: 30px;}
}

#new-cast .newcast_slide .slick-img img {
	width: 100%;
	max-width: 450px;
}

#new-cast .slick-slide img {margin: 0 auto;}

#new-cast .slick-dots li.slick-active button:before {
	opacity: 1;
	color: #960000;
}

#new-cast .top-header {
	background-image: url("../images/tit_new2.jpg");
    height: 225px;
    background-repeat: no-repeat;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    box-sizing: border-box;
    padding: 10px 15px;
	justify-content: space-between;
}

#new-cast .girlsboxs .onebox .img .icon02 img {
    display: block;
    margin-top: 5px;
}

/* / top-nf */

/** top-newsbox .news-cont common **/

.news-cont {
    box-sizing: border-box;
    padding: 2%;
    border: 1px solid #000;
    margin: 1%;

    .box { width: 98vw;}

    .title {
        font-size: 1vw;
        margin: 0 0 2%;
        background: #960000;
        color: #fff;
        padding: 1%;
        width: 100%;
        text-align: left;
        box-sizing: border-box;
        line-height: 1.2;
        font-size: 3vw;
    }

    .more-btn span {color: #fff;}

    .cast-img {
        width: 54%;
        position: relative;

        img {width: 100%;}

        .icon-twitter {
            right: 10px;
            bottom: 10px;
        }
    }

    article {
        width: 45%;
        padding: 0px 0 0 1%;
        box-sizing: border-box;

        .info {
            font-size: 16px;
            margin: 10px auto 10px;
            background: #960000;
            color: #fff;
            padding: 4px 0;
            width: 90%;
            text-align: center;
        }

        .time {
            font-size: 18px;
            color: #000;
        }

        .name {
            font-size: 1.6rem;
            margin: 10px 0;
            color: #000;
        }

        .age {font-size: 1.2rem;}

        .size {
            font-size: 1rem;
            display: block;
            letter-spacing: 0.05em;
            color: #000;
        }
    }

    .comment {
        font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
        font-size: 1.2rem;
        color: #000;
        line-height: 2.16em;
        height: 70vw;
        overflow-y: auto;
        text-align: justify;
        padding-right: 10px;
        box-sizing: border-box;
        width: 90%;
    }
}

/** /top-newsbox .news-cont common **/

/* top-slider */

#top-slider {

    .bg {
        position: relative;
        padding: 5% ;
    }

    .top_slide figure.space {padding: 0 15px;}

    .top_slide figure img {width: 100vw;}

    .top_slide .slick-dots {
        text-align: center;
        position: absolute;
        display: block;
        width: 100%;
        padding: 0;
        margin: 0;
        list-style: none;
        padding-left: 0;
    }

    .btn_prev, .btn_next {
        position: absolute;
        top: 0;
        width: 25%;
        height: 100%;
        padding: 1px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        z-index: 1;
    }

    .btn_prev {left: 0;}
    .btn_next {right: 0;}
}

/* /top-slider */

/*-- pd --*/

#top-pd {
    width: 100%;
    margin: 0 auto 30px;
    justify-content: center;
    align-items: stretch;
}

#top-pd > article {
	width: 100%;
	box-sizing: border-box;
	max-width: 990px;
}

#pd .top-header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    box-sizing: border-box;
    padding: 20px 15px;
    justify-content: center;

    h2 {
        color: #fff;
        text-align: center;
        line-height: 1.3;

        span {
            font-size: 50px;

            @media screen and (max-width:1000px) {font-size: 10vw;}
        }
    }
}

#pd .other-cont .box iframe {width: 100%;}

/*-- /pd --*/

.other-cont .box  {margin-top: 10px;}

/* miechat */

#top-other {
    width: 100%;
    margin: 0 auto 30px;
    justify-content: center;
    align-items: stretch;
}

#top-other > article {
	width: 100%;
	box-sizing: border-box;
	max-width: 990px;
}

#other .top-header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    box-sizing: border-box;
    padding: 20px 15px;
    justify-content: center;

    h2 {
        color: #fff;
        text-align: center;
        line-height: 1.3;

        em {}

        span {
            font-size: 5.0rem;

            @media screen and (max-width:1000px) {font-size: 3.5rem;}
        }
    }
}

#other .other-cont .miebox {
    width: 100%;
    text-align: center;
	margin: 10px 0;

    .txt {
        text-align: center;

        span {font-size: 12px;}
    }

    .icon {
        width: 24px;
        margin-left: 5px;
        vertical-align: middle;
    }
}


/* /miechat */

/* newface.html */

#newface #nfbox {
    width: 100%;
    display: flex;
    margin: 0 0 30px;
    justify-content: center;
    flex-wrap: wrap;

    .new-cast {
        background: url(../images/nf_bg.png) no-repeat center top;
        background-size: cover;
        box-sizing: border-box;
    }
}

#newface #nfbox > article {
    width: 100%;
    box-sizing: border-box;
    background-color: #fff;
	margin: 15px auto;
}

#newface .nf-cont {
    padding: 5% 5%;
    width: 100%;
    align-items: center;
    box-sizing: border-box;

    .girlsimg {
        display: block;
        width: 100%;
        margin: 0;
        position: relative;

        .classicon {

            img {width: 100%}
        }

        .onebox {
            display: block;
            width: 100%;
            border: none;
            margin: 0;
            color: #fff;
            position: relative;
            box-sizing: border-box;

            .days {
                font-size: 24px;
                text-align: center;
                background-color: #000;
                padding: 15px 0;
            }

            .img {
                z-index: 50;

                .icon01 {
                    position: absolute;
                    top: 0;
                    left: 0;
                    width: 40%;
                    max-width: 150px;
                }

                .prof {
                    position: absolute;
                    bottom: 20px;
                    left: 20px;
                    width: 90%;
                    z-index: 50;

                    img {
                        width: 80%;
                        max-width: 400px;

                        @media screen and (max-width: 1000px) {max-width: 300px;}
                    }

                    .name {
                        font-size: 6vw;
                        margin: 20px 0 0;

                        span {font-size: 4.2vw;}
                    }

                    .size {font-size: 4.5vw;}
                }

                img {
                    width: 89.4vw;
                    height: auto;
                    z-index: 40;
                    position: relative;
                    max-width: 520px;
                }
            }
        }

        .onebox::after {
            content: "";
            width: 96%;
            height: 100%;
            position: absolute;
            background: #960000;
            top: 7px;
            right: -7px;
        }
    }

    article {
        width: 100%;
        padding: 3% 0;
        margin: 10px 0;
        box-sizing: border-box;

        .box {
            background: #fff;
            border-radius: 12px;
            padding: 5% 3%;
            box-sizing: border-box;
            margin: 5% 0;
        }

        .title {
            font-size: 16px;
            margin: 10px 0;
            color: #960000;
            padding: 4px 0;
            width: 96%;
            text-align: center;
            font-family: var(--fontgothic);
        }

        .info {
            font-size: 16px;
            margin: 10px auto 10px;
            background: #000;
            color: #fff;
            padding: 4px 0;
            width: 90%;
            text-align: center;
        }

        .tbox {

            .time {
                font-size: 24px;
                color: #960000;
                text-align: center;

                span {
                    font-size: 12px;
                    color: #fff;
                    background: #960000;
                    padding: 3px 6px;
                    margin-right: 6px;
                    vertical-align: middle;
                }
                
            }
        }

        .name {
            font-size: 18px;
            margin: 10px 0;
            color: #000;
            text-align: center;
        }

        .age {font-size: 1.2rem;}

        .size {
            font-size: 13px;
            display: block;
            letter-spacing: 0.05em;
            color: #000;
            text-align: center;
        }
    }

    .comment {
        font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
        font-size: 1.2rem;
        color: #000;
        line-height: 2.16em;
        overflow-y: auto;
        text-align: center;
        height: 200px;
    }
}

/* reserve.html */

#reserve {

    .form-box {
        padding: 20px;
        margin: 0px auto;
        max-width: 1000px;
        width: 100%;
        box-sizing: border-box;
    }

    .form-inner {

        h4 {
            font-size: 24px;
            text-align: center;
            padding: 80px 0 0;
        }
    }

    .form-main {padding: 40px 0 0;}

    .linkimg {text-align: center;}
}

/* /reserve.html */

/* form-all */

.formnote {
    text-align: center;
    padding: 50px 0 0;
    font-size: 16px;
    line-height: 32px;

    span {color: #960000;}
}

.bg-set {
    border-radius: 0 16px 16px 0;
    box-sizing: border-box
}

.cont_form {
    width: 100%;
    margin: 0px auto;
    max-width: 1680px;

    .two {width: 50%;}
}

.entry-form {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;

    dl {
        padding: 10px 0;
        box-sizing: border-box;
        margin: 15px 0;

        dt {
            border: 0px;
            text-align: left;
            font-size: 16px;
            width: 100%;
            padding-right: 5px;
            box-sizing: border-box;
            border-radius: 10px 0 0 10px;
            display: flex;
            align-items: center;
            margin-bottom: 10px;

            img {
                width: 25px;
                margin-right: 15px;

                @media screen and (max-width: 1700px){margin-right: 0.8824vw;}
            }

            span {
                font-weight: normal;
                padding: 10px 14px;
                font-size: 13px;
                margin-left: 15px;
                color: #fff;
                background: #960000;
                border-radius: 40px;
            }
        }

        dt:before {content: none}	
            
        dd {width: 100%}
    }

    label {display: block}

    label > span {
        width: 100px;
        font-weight: bold;
        float: left;
        padding-top: 8px;
        padding-right: 5px
    }

    span.required {color: red}

    input.input-field {width: 100%;}
        
    input.input-field, .textarea-field, .select-field {
        box-sizing: border-box;
        padding: 12px;
        outline: none;
        line-height: 1.6;
        appearance: none;
        font-size: 18px;
        border: 1px solid #ccc;
    }

    .select-field {
        width: 35%;	
        height: 45px;
        font-size: 17px
    }
        
    .input-field:focus, 
    .textarea-field:focus,  
    .select-field:focus {
        border: 5px solid #774491
    }

    .textarea-field {
        height:200px;
        width: 100%
    }
}

.entry-form.cofirm dl:last-of-type dt {height: auto;}

.entry-form.confirm dl dd {padding: 20px 0;}

/* form-all-radio */

.f-btn {

    .list_item {
        margin: 0px;
        padding: 24px
    }

    label {
        font-family: Arial, sans-serif;
        line-height: 135%;
        position: relative;
        margin: 0.5rem;
        cursor: pointer;
        font-size: 20px
    }

    .option-input {
        position: relative;
        margin: 7px 20px 0px 0px;
        cursor: pointer
    }

    .option-input::before,
    .option-input::after {
        position: absolute;
        z-index: 1;
        top: -1px;
        left: -5px;
        width: 15px;
        height: 15px;
        content: "";
        transition: all 0.3s ease-in-out 0s;
        border: 2px solid #333;
        border-radius: 50%;
        background: #ffffff
    }

    .option-input:after {
        z-index: 0;
        top: 0;
        border: none
    }

    .option-input:checked:before {
        transform: rotateY(180deg);
        background: #774491
    }
}

/* /form-all-radio */	

.entry-form .f-submit {
    width: 100%;
    max-width: 340px;
    margin: 20px auto;

    label {margin: 0}
}

.entry-form input[type="submit"], .entry-form input[type="button"] {
    background: #707070;
    font-family: 'Gilda Display', serif;
    padding: 8px 15px;
    width: 100%;
    appearance: none;
    border: none;
    box-sizing: border-box;
    height: 60px;
    font-weight: bold;
    font-size: 20px;
    color: #fff;
    text-align: center;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
}

.entry-form input[type=submit]:hover,
.entry-form input[type=button]:hover {
	opacity: .8
}

.entry-form dd.select {
    position: relative;

    label::before {
        position: absolute;
        top: 0.9em;
        right: 17.8em;
        width: 0;
        height: 0;
        padding: 0;
        content: '';
        border-left: 9px solid transparent;
        border-right: 8px solid transparent;
        border-top: 15px solid #000;
        pointer-events: none
    }

    select option {line-height: 1}
}

.parsley-custom-error-message, .parsley-required, .parsley-equalto, .parsley-errors-list filled {
    color: #f00;
    font-size: 16px;
    padding: 15px;
}

.entry-form dl dt.item {color: #9d8aee}			
			
.entry-form dl dd.form-txt {
    font-size: 16px;
    padding: 10px 0
}			
				
/* form-all-select */

.entry-form .select {
    background: #fff;
    box-sizing: border-box;
    padding: 3px;
    outline: none;
    line-height: 2;
    appearance: none;
    font-size: 18px;
	border: 1px solid #ccc;
    position: relative;
}

.entry-form .select::after {
	position: absolute;
    content: "";
    width: 8px;
    height: 8px;
    right: 18px;
    top: 46%;
    transform: translateY(-50%) rotate(45deg);
    border-bottom: 3px solid #8c8a8b;
    border-right: 3px solid #8c8a8b
}

.entry-form .select2 {
    background: #ffffff;
    padding: 7px;
    width: 140px;
    position: relative;
    z-index: 1;
    display: inline-block;
    box-sizing: border-box;
    border: 1px solid #ccc;
	margin: 0;

	@media screen and (max-width: 1000px){width: 34.8vw;}
}

.entry-form .select2::after {
    position: absolute;
    content: '';
    width: 5px;
    height: 5px;
    right: 18px;
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
    border-bottom: 1px solid #282828;
    border-right: 1px solid #282828;
    z-index: -1
}

.entry-form label {font-size: 20px}

.entry-form select {
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    background: none;
    border: none;
    color: #333;
    font-size: 18px;
    width: 100%;
    height: 100%;
    padding: 8px;
}

/* /form-all-select */
	
::placeholder {color: #ccc}

.entry-form .f-back {
    width: 100%;
    max-width: 340px;
    margin: 20px auto;

    button {
        background: #707070;
        font-family: 'Gilda Display', serif;
        padding: 8px 15px;
        width: 100%;
        appearance: none;
        border: none;
        box-sizing: border-box;
        height: 60px;
        font-weight: bold;
        font-size: 20px;
        color: #fff;
        text-align: center;
        cursor: pointer;
        -webkit-appearance: none;
        -moz-appearance: none;
        margin: 0;
    }
}

.entry-form .f-back button:hover {opacity: .8}

#reserve .f-top {
    margin: 50px auto;
    text-align: center;

    a {
        margin: 0;
        background: #707070;
        font-family: 'Gilda Display', serif;
        padding: 19px 30px;
        width: 100%;
        appearance: none;
        border: none;
        /* border-radius: 100px; */
        box-sizing: border-box;
        height: 60px;
        font-weight: bold;
        font-size: 20px;
        color: #fff;
        text-align: center;
        cursor: pointer;
        -webkit-appearance: none;
        -moz-appearance: none;
    }

    a:hover {opacity: .8}
}

/* /form-all */

/* confirm thanks */

.confirm dl {
    padding: 10px 0;
    box-sizing: border-box;
    margin: 30px 0;
    border-bottom: 1px solid #fff;
}

.thanks_txt {
    margin-top: 50px;

    p {text-align: center;}

    .tel {
        font-size: 16px;
        margin-top: 50px;
    }
}

/* /confirm thanks */

/* waiting.html */

#waitingplace {

    h3 {
        color: #000;
        font-size: 24px;
        text-align: center;
        line-height: 38px;
        margin: 0px auto 10px;
        border-top: 1px solid #fff;
        padding-top: 10px;

        span {
            display: block;
            font-size: 16px;
            text-align: center;
        }
    }

    p.h3sub {
        font-size: 16px;
        text-align: center;
        margin: 20px auto;
    }

    p#pink-box {
        color: #000;
        margin: 0px auto 20px;
        text-align: center;
        line-height: 1.5;
    }

    .box {
        width: 100%;
        max-width: 1000px;
        margin: 10px auto;
    }
}

ul#area-btn {
	width: 100%;
	max-width: 880px;
	margin: 10px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;

    li {
        width: calc(100% / 2 - 10px);
        
        .circle {
            display: block;
            width: 150px;
            height: 150px;
            margin: 8px auto;
            background: #960000;
            transform: rotate(45deg);

            @media screen and (max-width: 450px){
                width: 120px;
                height: 120px;
            }

            a {color: #fff;}

            p {
                line-height: 29px;
                padding: 12% 0;
                box-sizing: border-box;

                @media screen and (max-width: 450px){
                    line-height: 24px;
                    padding: 9% 0;
                }

                span {font-size: 0.8em;}
            }
        }

        .mb10 {font-size: 18px;}

        p {
            text-align: center;
            font-size: 1em;
            transform: rotate(-45deg);

            @media screen and (max-width: 450px){
                font-size: 13px;
            }
        }

        p.area {
            transform: rotate(0deg);
            margin-bottom: 20%;
        }
    }
}

#flow-step {
    width: 100%;
    max-width: 880px;
    margin: 10px auto 0;

    dl {
        margin: 0 auto 40px;

        dt {
            font-size: 1.8em;
            text-align: center;
            position: relative;
            width: 140px;
            margin: 0 auto;
        }

        dt::before,
        dt::after {
            content: "";
            background: #000;
            height: 100%;
            width: 4px;
            position: absolute;
        }

        dt::before {left: 0;}

        dt::after {right: 0;}

        dd {
            padding-top: 20px;

            p {
                text-align: center;
                line-height: 1.5;
            }

        }
    }
}

.area-container {
    margin: 0 auto 40px;

    .mbox {
        width: 100%;
        max-width: 1000px;
        background: #fff8e6;
        margin: 0 0 40px;
        display: flex;
        box-sizing: border-box;

        .inner {width: 100%;}
    }
}

.area-box {
    position: relative;
    margin: 0 auto 40px;

    .info {
        width: 100%;
        max-width: 900px;
    }

    h4 {
        font-size: 1.4em;
        text-align: center;
        margin: 0;
        color: #fff;
        background: #960000;
        box-sizing: border-box;
        padding: 5px 0 2px;
    }

    .map {
        width: 100%;

        iframe {width: 100%;}
    }
}

.map_txtwrap {

    .txtbox {
        width: 100%;
        padding:0 18px 0; 
    }

    p {
        color: #000;
        line-height: 1.5;
        padding: 0 0.5%;
    }

    p.map_tit {
        font-size: 1.3em;
        margin-top: 12px;
        color: #960000;
        font-weight: bold;
    }

    .map_photo {
        width: 100%;
        margin-top: 20px;
        text-align: center;
    }
}

/* /waiting.html */

/* howto.html */

#howto {

    .box {
        width: 100%;
    
        ul {
            margin: 20px auto;
        
            li {
                position: relative;
                padding: 3% 2%;
            }
        }
    }

    .step {
        position: relative;
        top: -0;
        left: -0;
        box-sizing: border-box;
        border-radius: 12px;
        padding: 20px;
        width: 100px;
        height: 100px;
        background: #000;

        @media screen and (max-width: 480px) {
                border-radius: 10px;
                width: 20vw;
                height: 20vw;
        }
        
        p {
            text-align: center;
            z-index: 2;
            letter-spacing: 0;
            color: #fff;
        }

        p:first-of-type {
            position: absolute;
            left: -26px;
            top: 22px;
            width: 100%;
            font-size: 20px;
            margin-bottom: 0px;
            letter-spacing: 1px;
            transform: rotate(90deg);

            @media screen and (max-width: 480px) {font-size: 4vw;}
        }

        p:last-of-type {
            position: absolute;
            bottom: 0;
            right: 14px;
            font-size: 84px;

            @media screen and (max-width: 480px) {font-size: 16vw;}
        }
    }

    .border {
        position: absolute;
        left: 50%;
        top: 90px;
        width: 5px;
        height: 100%;
        background: #3b539b;
    }

    .step.border.tate1 {
        content: "";
        position: absolute;
        left: 50%;
        top: 90px;
        width: 5px;
        height: 100%;
        background: #3b539b;
    }

    .txt p {
        font-size: 16px;
        line-height: 1.6;
        font-weight: 500;

        span {font-size: 22px;}
    }

    .title {
        color: #000;
        font-size: 6vw;
        font-weight: bold;
        width: 74%;
        margin-left: 3%;
        line-height: 1.8;

        span { border-bottom: 3px solid #960000;}
    }

    .img {
        padding: 0 15px;

        img {width: 300px;}
    }
}

.contents h2.howto {
	color: #313131;
	font-size: 50px;
	text-align: center;
	letter-spacing: 3px;
	line-height: 36px;
	margin: 90px auto 20px;
}

/* /howto.html */

/* profile.html */

#profile {
    color: #000;

    .tit {
        font-family: "Cinzel", serif;
        padding: 2%;
        font-size: 8vw;
        box-sizing: border-box;
        text-align: center;
        color: #960000;
        position: relative;
        color:#960000;

        span {
            display: block;
            font-size: 22px;
            text-align: center;
            margin-top: 5px;

            @media screen and (max-width: 428px) {font-size: 18px;}     
        }

        span.r {
            position: absolute;
            right: 0;
            font-size: 18px;
            bottom: 10px;
        }    
    }

    .tit::before {
        content: "";
        height: 100%;
        width: 8px;
        background-color: #960000;
        position: absolute;
        top: 0;
        left: 0;
    }

    .tit::after {
        content: "";
        height: 100%;
        width: 8px;
        background-color: #960000;
        position: absolute;
        top: 0;
        right: 0;
    }

    .slick-prev:before {
        background: url(../images/naxt_left.png) no-repeat;
        width: 60px;
        height: 60px;
        content: '';
        display: block;
        z-index: 500;
    }

    .slick-next:before {
        background: url(../images/naxt_right.png) no-repeat;
        width: 60px;
        height: 60px;
        content: '';
        display: block;
    }
}

/* box00 */

.profile_box00 {
	width: 98%;
	margin: 0 auto ;
	position: relative;

    .box00 {
        width: 100%;
        margin: 0 auto 5%;
        position: relative;

        .container {position: relative;}
    }

    .box01 {
        width: 100%;
        padding: 0 2%;
        margin: 0 auto;
        position: relative;
        box-sizing: border-box;

        .container {position: relative;}
    }

    .box {position: relative;}

    .onebox {
        position: relative;
    
        .icon01 {
            position: absolute;
            top: 0;
            left: 0;
            width: 20;
            max-width: 150px;
        }

        .icon02 {
            position: absolute;
            bottom: 10px;
            left: 10px;
            width: 20%;
            max-width: 100px;

            img {
                display: block;
                margin-top: 5px;
            }
        }

        .icon03 {
            position: absolute;
            top: 10px;
            right: 10px;
            width: 20%;
            max-width: 122px;
        }
    }

    .slick-prev {left: 33%;}
    .slick-next {right: calc(100% / 3 - -30px);}
}

/* slider */

.profile_box00 {

    .box02 {
        width: 100%;
        margin-bottom: 50px;
        padding: 0 2%;
        box-sizing: border-box;

        .box {

            .txt {
                padding: 2%;
                line-height: 1.5;
                box-sizing: border-box;
                font-size: 18px;
                border: 2px solid #000;
                margin-top: 15px;
                box-sizing: border-box;
                height: 100vw;
                max-height: 800px;
                overflow: auto;
                background: #fff;
                box-shadow: 0px 0 7px #4e4e4e;
            }
        }
    }

    .price .box {

        .txt {
            font-size: 7vw;
            font-family: inherit;
            text-align: center;
            box-shadow: none;
            border: none;
            height: auto;
            padding: 0 0 2%;
            line-height: inherit;
            margin-top: 0;

            .pri {
                background-color: #960000;
                color: #fff;
                font-size: 4vw;
                padding: 0.3% 5% 0.6%;
                box-sizing: border-box;
                text-align: center;
                border-radius: 50px;
                vertical-align: middle;
            }
            
            .tax {
                font-size: 3vw;
                margin-left: 5px;
            }
        }
    }

    .prof-links {
        width: 100%;
        min-height: 30px;
        height: 75px;
        overflow: hidden;

        a:hover {opacity: 1;}

        .link01 {
            display: block;
            background: #d70079;
            color: #fff;
            padding: 10px;
            box-sizing: border-box;
            width: 40%;
            text-align: center;
            font-size: 22px;
            position: relative;
        }

        .link01::after {
            content: "";
            position: absolute;
            background: #d70079;
            top: 0;
            right: -79px;
            height: calc(tan(45deg)* 151px / 2);
            width: 80px;
            clip-path: polygon(0% 0, 100% 100%, 0 100%);
            z-index: 100;
        }

        .link02 {
            display: block;
            background: #00ff54;
            color: #000;
            padding: 10px;
            box-sizing: border-box;
            width: 60%;
            text-align: center;
            font-size: 22px;
            position: relative;
            padding-left: 15%;
        }

        .link01 span, 
        .link02 span {
            display: block;
            font-size: 13px;
            text-align: center;
        }

        .link01 span.tr, 
        .link02 span.tr {
            font-size: 13px;
        }
    }

    .infobox {
        padding: 5% ;
        box-sizing: border-box;
        color: #000;
        justify-content: space-between;
        width: 100%;
        background: rgba(255, 255, 255, .9);
        box-shadow: 1px 0px 10px #ccc;
        margin: 4% 0;
        justify-content: space-between;

        .info {width: 60%;}

        .info-mark {
            color: #fff;
            background: #8d6e33;
            width: 40%;
            max-width: 240px;
            border-radius: 14px;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            padding: 2% 3%;
            box-sizing: border-box;

            .txt1 {
                width: 100%;
                text-align: center;
                font-size: font-size: 5vw;

                img {
                    width: 20px;
                    margin-right: 5px;
                    vertical-align: top;
                }
            }

            .txt2 {
                width: 100%;
                text-align: center;
                font-size: 4vw;
            }
        }

        .info-icon {

            .icon1 {
                text-align: center;
                margin: 10px 0;

                img {
                    width: 100%;
                    max-width: 495px;
                }
            }

            .icon2 {
                text-align: center;
                margin: 10px 0;
            }
        }

        .name {
            font-size: 6vw;
            text-align: center;
            margin: 10px 0;

            span {
                font-size: 3vw;
                margin-left: 10px;
            }
        }

        .size {
            font-size: 4vw;
            text-align: center;
        }
    }
}

/* /box00 */

/* box2 */

.profile_box02 {
	width: 98%;
	margin: 20px auto 20px;

    .pd {

        .more {margin: 3% auto 0;}
    }

    .tit {
        padding-bottom: 10px;
        border-bottom: 1px solid #fff;
        text-align: left;
    }

    .box02 {
        width:100%;
        margin: 2% 1% 0 1%;

        .qa .boxs {
            margin-top: 20px;
            height: 60vw;
            overflow: auto;
            min-height: 880px;

            .onebox {
                padding: 2% 1% 4%;
                box-sizing: border-box;
                line-height: 1.3;
                border-bottom: 1px solid #000;
                font-size: 3.3vw;

                span {
                    font-size: 3.3vw;
                    display: block;
                }

                .q {
                    width: 100%;
                    display: flex;

                    span {color: #000; font-family: "Cinzel", serif;}
                }

                .a {
                    width: 100%;
                    display: flex;

                    span {color: #000; font-family: "Cinzel", serif;}
                }
            }
        }
    }

    .box01 {
        width: 100%;
        margin: 0 auto;
        box-sizing: border-box;

        .box .txt {
            padding: 40px 10px;
            line-height: 1.5;
            font-family: var(--fontgothic);
            box-sizing: border-box;
        }

        .box .frame {
            
            margin: 20px auto;

            iframe {width: 100%;}
        }
    }

    .navbtn {
        width: 96%;
        max-width: 800px;
        margin: auto;

        .btns {
            width: 100%;

            .btn {
                width: 100%;
                border: 2px solid #fff;
                text-align: center;
                padding: 15px 0;
                display: block;
                font-size: 24px;
                color: #fff;
                margin:20px auto 0px;
                box-sizing: border-box;
                background: none;
                border-radius: 0;

                span {
                    display: block;
                    font-size: 24px;
                    text-align: center;
                }
            }
        }
    }
}

/* /box2 */

/* box3 */

.profile_box03 {

    .subtit {
        border-bottom: 1px solid #fff;
        margin: 20px auto;
        padding-bottom: 6px;
        width: 100%;
        text-align: center;
        font-size: 20px;
    }

    .box-a {
        max-width: 1000px;
        margin: 5% auto;
        width: 98%;
    }

    .boxs {
        width: 97%;
        max-width: 1000px;
        margin: 0 auto;
    }

    .option .boxs {
        display: flex;
        flex-wrap: wrap;

        .box {
            width: calc(96% / 2);
            border: 2px solid #bebebe;
            margin: 1%;
            line-height: 1.5;
            background-color: #bebebe;
            border-radius: 50px;
            justify-content: space-between;
            padding: 0.5% 1%;
            box-sizing: border-box;
            min-height: 50px;

            .t1 {
                text-align: center;
                font-size: 4vw;
                width: 100%;
                color: #787878;
            }

            .t2 {
                text-align: center;
                font-size: 3vw;
                color: #787878;
                width: 100%;
                margin-top: -6px;
            }
        }

        .box.on {
            background: #fff;
            border: 2px solid #960000;

            .t1 {color: #960000;}
            .t2 {color: #960000;}
        }
    }

    .option2 .boxs {
        display: flex;
        flex-wrap: wrap;

        .box {
            width: calc(96% / 2);
            border: 2px solid #8d6e33;
            margin: 1%;
            line-height: 1.5;
            background-color: #8d6e33;
            border-radius: 50px;
            justify-content: space-between;
            padding: 0.5% 1%;
            box-sizing: border-box;
            min-height: 50px;

            .t1 {
                text-align: center;
                font-size: 4vw;
                width: 100%;
                color: #fff;
            }
        }
    }
}

/* /box3 */

/* schedulebox */

.schedulebox { 
    padding:0 1%;

    .tit .t {
        font-size: 18px;
        text-align: center;
    }

    .boxs {
        width: 98%;
        margin: 0 auto;
        padding-bottom: 30px;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;

        .box {
            width:100%;
            margin: 3% 0 1%;
        
            .inner {
                border-bottom: 1px solid #000;
                box-sizing: border-box;
                padding-bottom: 2px;
            }

            .t1 {
                font-size: 18px;
                text-align: center;
                padding: 10px 0 10px;
                width: 20%;
                margin: auto;

                @media screen and (max-width: 428px) {font-size: 16px;}
            }

            .t2 {
                font-size: 16px;
                width: 36%;

                @media screen and (max-width: 428px) {font-size: 16px;}

                span {
                    font-size: 13px;
                    margin: 0 5px;

                    @media screen and (max-width: 428px) {
                        font-size: 12px;
                        margin: 0 3px;
                    }
                }

                div {
                    text-align: center;
                    padding: 10px 0 10px;
                }
            }

            .t3 {
                font-size: 18px;
                text-align: center;
                padding: 10px 0;
                width: 40%;
                margin: 5px auto;
                background: #960000;
                display: block;
                color: #fff;
                position: relative;
                box-sizing: border-box;
                font-weight: bold;

                @media screen and (max-width: 428px) {
                    font-size: 20px;
                    padding: 8px 0;
                    margin: 5px auto;
                }
            }
        }

        .box.on {background-color: #f3ce7a;}

        .off {
            background: #282828!important;
            color: #aaaaaa;
            pointer-events: none;
        }
    }
}

/* /schedulebox */

/* profile_slider */

.profile_slider01 {

    .container {
        margin: 30px auto 0;
        width: 100%;
    }

    .slick-slide img {
        height: auto;
        opacity: .3;
        transition: opacity .5s, transform .5s;
        width: 100vw;
    }

    .slick-center img {
        opacity: 1;
        transform: scale(1);
    }

    .btn_prev,.btn_next {
        position: absolute;
        top: 0;
        height: 100%;
        padding: 1px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        z-index: 1000;
        cursor: pointer;
    }

    .btn_prev {
        left: 5px;

        img {width: 30px;}
    }

    .btn_next {
        right: 5px;

        img {width: 30px;}
    }

    .slick-img img {
        width: 100%;
        max-width: 450px;
    }

    img {margin: 0 auto;}

    .slick-dots li.slick-active button:before {
        opacity: 1;
        color: #960000;
    }
}

.profile_box-last {
    padding: 0 1%;
    box-sizing: border-box;

    .boxs {
        width:100%;
        max-width: 1800px;
        margin: auto;

        .box {
            width:100%;
        
            .txt {
                padding: 20px 10px 0;
                line-height: 1.5;
                box-sizing: border-box;
            }
        }
    }
}

.p-mov {
    position: absolute;
    bottom: 20px;
    z-index: 500;
    right: 20px;

	@media screen and (max-width: 480px){
        bottom: 14px;
        right: 14px;
	}

    a {display: block;}

    a:hover {opacity: 1;}

    a.movlink {
        display: block;
        width: 100%;
        height: 180px;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 100;

        @media screen and (max-width: 480px){height: 135px;}

        @media screen and (max-width: 428px){height: 100px;}
    }

    video {
        width: 100%;
        max-width: 320px;

        @media screen and (max-width: 480px){max-width: 240px;}

        @media screen and (max-width: 428px){max-width: 180px;}
    }
}

.modaal-video-wrap {
    margin: auto 20px!important;
    position: relative;
}

/*動画表示のモーダルの余白を変更したい場合*/
.p-mov .modaal-video .p-mov .modaal-inner-wrapper {padding:0;}

/*モーダルのボタンの色を変更したい場合*/
.p-mov .modaal-close:after, 
.p-mov .modaal-close:before{
  background:#ccc;  
}

.p-mov .modaal-close:focus:after,
.p-mov .modaal-close:focus:before,
.p-mov .modaal-close:hover:after,
.p-mov .modaal-close:hover:before {
  background:#666;
}

/* /profile.html */

/* tab_item */

#top-scheduletab .tab_item {
    width: 29.8%;
    background-color: #000;
    font-size: 2.4vw;
    text-align: center;
    color: #fff;
    display: inline-block;
    transition:  0.2s ease;
    position: relative;
    margin-right: 5px;
    cursor: pointer;
	border: 2px solid #fff;
	box-sizing: border-box;
	margin-bottom: 20px;
	padding: 10px 0;

	@media screen and (max-width: 680px){
        font-size: 3.0294vw;
        margin-right: 0px;
	}

    span {
        display: block;
        font-size: 40px;
        text-align: center;
    
        @media screen and (max-width: 1000px){font-size: 4vw;}
    }
}

#top-scheduletab .tab_item:hover {opacity: 0.75;}

/*タブ切り替えの中身のスタイル*/
#top-scheduletab .tab_content {
    display: none;
    padding: 0;
    clear: both;
    overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#day-schdule:checked ~ #day-schdule_content,
#gonow:checked ~ #gonow_content,
#newface:checked ~ #newface_content {
	display: block;
}

/*選択されているタブのスタイルを変える*/
#top-scheduletab .tabs input:checked + .tab_item {
    background-color: #000;
    color: #fff;
	opacity: 1;
	position: relative;
	cursor: pointer;
}

/*タブ切り替え全体のスタイル*/
#top-scheduletab .tabs {
    width: 100%;
    margin: 20px auto 0;
    z-index: 3;
	text-align: center;
}

/*** 共通 top schedule now girl ***/

#top-scheduletab .list {
    margin:3px 0 11px;

    ul.list_wrap {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        max-width: 765px;
        margin: 10px auto;

        li {	
            background: url(../images/list_bg02.jpg) no-repeat;
            width: 49%;
            height: 100%;
            max-width: 374px;
            max-height: 784px;
            background-size: cover;
            position: relative;
            margin: 1px;
            box-sizing: border-box;

            .inner {padding: 3px;}

            a {text-decoration:none;}

            .girlIcon {
                position:absolute;
                bottom:7px;
                left:2px;

                li {
                    background:url(../images/bg_girl_ico.jpg) no-repeat;
                    width:50px;
                    height:10px;
                    background-size:50px 10px;
                    float:left;
                    font-size:8px;
                    margin:0 1px 1px 0;
                    color:#FFF;
                    display:block;
                    letter-spacing:-.5px;
                    line-height:10px;
                }
            }

            p {
                text-align: left;
                text-decoration: none;
            }

            p.grank {
                position: absolute;
                top: 300px;
                left: 10px;

                @media screen and (max-width: 760px){
                    top: 39.4737vw;
                    left: 1.3158vw;
                }

                img {
                    width: 150px;

                    @media screen and (max-width: 760px){width: 19.7368vw;}
                }
            }

            .list_name {
                text-align: center;
                font-size: 16px;
                background: #282828;
                color: #fff;
                padding: 5px;
                margin-bottom: 5px;
            }

            .list_data {
                font-size: 13px;
                color: #282828;
                margin: 10px 0 5px 0px;
                text-align: center;
            }

            .list_time {
                font-size: 14px;
                color: #770994;
                margin: 10px 0 5px 10px;
                text-align: center;

                .material-icons {
                    font-size: 16px;
                    vertical-align: middle;
                    margin-right: 2px;
                }
            }

            .list_info {
                text-align: center;
                font-size: 14px;
                color: #fff;
                margin: 5px auto 0;
                padding: 5px;
                background: rgb(208,10,175);
                background: -moz-linear-gradient(-45deg, rgba(208,10,175,1) 0%, rgba(152,16,187,1) 100%);
                background: -webkit-linear-gradient(-45deg, rgba(208,10,175,1) 0%,rgba(152,16,187,1) 100%);
                background: linear-gradient(135deg, rgba(208,10,175,1) 0%,rgba(152,16,187,1) 100%);
                filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#d00aaf', endColorstr='#9810bb',GradientType=1 );
            }
        }
    }
}

#top-scheduletab .list_rank {

    img {
        width: 100%;
        max-width: 600px;	
    }
}
								
#top-scheduletab .list_photo {

    img {
        width: 100%;
        max-width: 600px;
    }
}

.arrow_box {
    position:relative;
    background:#000000;
    text-align:center;
    color:#FFFFFF;
}

.arrow_box:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(0, 0, 0, 0);
    border-top-width:14px;
    border-bottom-width:14px;
    border-left-width:8px;
    border-right-width:8px;
    margin-left: -8px;
    border-top-color:#fff;
    top:100%;
    left:50%;
}

/*** /#top-scheduletab ***/

/* hotline */

#hotline {

    .box {
        background: #960000;
        justify-content: space-between;
        padding: 5px 10px 5px 10px;
        color:#fff;
    }

    h2 {   
        width: 20%;
        text-align: center;
    }

    .info {
        background: #fff;
        width: 74%;
        color: #000;
    }

    marquee { padding: 5px 0 0px;}
}

/* /hotline */

/*　all-page-top */

#page-top {
    position: fixed;
    bottom: 30px;
    right: 10px;
    transition: all .3s ease-in;
    background: #000;
    text-decoration: none;
    color: #fff;
    width: 100px;
    height: 100px;
    padding: 30px;
    box-sizing: border-box;
    display: block;
    border-radius: 50%;
    z-index: 810;

	@media screen and (max-width: 480px) {
        bottom: 10px;
        right: 15px;
        width: 58px;
        height: 58px;
        padding: 8px 12px 12px 12px;
	}

    .arrow-up {
        position: relative;
        padding-bottom: 18px;
    }	

    .arrow-up::before,
    .arrow-up::after {
        position: absolute;
        top: 4px;
        bottom: 0;
        left: 0;
        margin: auto;
        content: "";
        vertical-align: middle;
    }	
		
    .arr-up::after {
        left: 8px;
        width: 20px;
        height: 20px;
        border-top: 5px solid #fff;
        border-right: 5px solid #fff;
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);

        @media screen and (max-width: 480px) {
            left: 11px;
            width: 10px;
            height: 10px;
            border-top: 3px solid #fff;
            border-right: 3px solid #fff;
        }
    }

    .txt {
        text-align: center;
        font-size: 14px;

        @media screen and (max-width: 480px) {
            font-size: 10px;
        }
    }
}

#page-top.-scrolled {
	transition: all .3s ease-in;
	opacity: 1;
	z-index: 1001;
}

/*　/all-page-top */

/*　u-nav */

#u-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    bottom: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.8);
    z-index: 800;
    padding: 10px 0;
	max-width: 1000px;

    li {
        color: #fff;
        border-right: 1px solid #fff;
        box-sizing: border-box;
        text-align: center;

        a {
            display: block;
            font-size: 16px;
            padding: 10% 0;
            text-align: center;
            color: #fff;

            @media screen and (max-width: 428px) {font-size: 12px;}
        }

        img {
            margin: 0 auto 10%;
            display: block;
            width: 40px;

            @media screen and (max-width: 428px) {width: 30px}
        }
    }

    li:last-of-type {
        border-right: none;
        width: 30%;

        @media screen and (max-width: 480px) {width: 22%;}

        a {
            font-size: 2.1rem;
            display: flex;
            justify-content: center;
            align-items: center;

            @media screen and (max-width: 428px) {font-size: 1.6rem}
        }
    }
}

#u-nav.five li {width: calc(100%/5)}
#u-nav.four li {width: calc(100%/4)}
#u-nav.three li {width: calc(100%/3)}
#u-nav.two li {width: calc(100%/2)}

#u-nav.three li:last-of-type,
#u-nav.two li:last-of-type {width: 100%}

#u-nav.five li:last-of-type a {padding: 14% 0}
#u-nav.four li:last-of-type a {padding: 16% 0}
#u-nav.three li:last-of-type a {padding: 7% 0}
#u-nav.two li:last-of-type a {padding: 9% 0}

#u-nav li:last-of-type img {
	display: inline-block;
	margin: 0 3% 0 0;
	width: 30px;

	@media screen and (max-width: 428px) {width: 22px}
}

/*　/u-nav */

/*　h-nav */

#h-nav {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;

    li {
        color: #960000;
        box-sizing: border-box;
        text-align: center;

        a {
            display: block;
            font-size: 14px;
            text-align: center;
            color: #960000;

            @media screen and (max-width: 428px) {font-size: 12px;}
        }

        img {
            margin: 0 auto 10%;
            display: block;
            width: 40px;

            @media screen and (max-width: 428px) {width: 30px}
        }
    }

    li:last-of-type {
        border-right: none;
        width: 20%;

        @media screen and (max-width: 480px) {width: 22%;}

        a {
            font-size: 2.1rem;
            display: flex;
            justify-content: center;
            align-items: center;

            @media screen and (max-width: 428px) {font-size: 1.6rem}
        }
    }
}

#h-nav.five li {width: calc(100%/5)}
#h-nav.four li {width: calc(100%/4)}
#h-nav.three li {width: calc(100%/3)}
#h-nav.two li {width: calc(100%/2)}

#h-nav.three li:last-of-type,
#h-nav.two li:last-of-type {width: 100%}

#h-nav.five li:last-of-type a {padding: 14% 0}
#h-nav.four li:last-of-type a {padding: 16% 0}
#h-nav.three li:last-of-type a {padding: 7% 0}
#h-nav.two li:last-of-type a {padding: 9% 0}

#h-nav li:last-of-type img {
	display: inline-block;
	margin: 0 3% 0 0;
	width: 30px;

	@media screen and (max-width: 428px) {width: 22px}
}

/*　/h-nav */

/* X icon */

.girlsboxs .icon-x {
    z-index: 500;

    a {
        width: 20px;
        height: 20px;
        background: #000;
        border-radius: 50%;
        display: block;
        padding: 10px;

        img {
            width: 100%;
            height: auto;
        }
    }
}

/* /X icon */

/*** bread ***/

.breadcrumb {
    padding: 10px 20px;
    box-sizing: border-box;
    font-size: 13px;
    margin: 0 auto;
    z-index: 20;
    position: relative;
    background: #fff;

    li {
        display: inline-block;
        color: #000;

        a { color: #960000;display: inherit;}
    }
}

/*** /bread ***/

.en_nav {
    justify-content: space-around;
    width: 100%;
    max-width: 800px;
    margin: 31px auto;

    .more {
        position: relative;
        width: 100%;
        max-width: 400px;
        margin: auto;
        text-align: center;
        
        .m-btn01 {
            min-width: 320px;
            justify-content: center;
            padding: 2% 0 3%;
            box-sizing: border-box;
            min-height: auto;
        }

        .m-btn01 .en {
            letter-spacing: 0;
            font-size: 40px;
            color: #960000;

            @media only screen and (min-width: 1000px) {font-size: 4vw;}

            @media only screen and (min-width: 768px) {
                letter-spacing:0
            }
        }

        .m-btn01 .arrow {
            position: relative;
            width: 30px;
            position: absolute;
            right: 14px;
        }

        .m-btn01.-black .arrow:before {
            background: #000;
        }

        .m-btn01.-black .arrow:after {
            display: none;

            @media only screen and (min-width: 768px) {background:#000;}
        }
    }
}

.en_nav .ent {
    font-size: 34px;
    padding: 5px 0;
    height: 50px;
    box-sizing: border-box;
}

a.btn.ent img {
    top: 5px;
    right: 12px;
}

.en_nav .anime_button::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background: #fff;
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform ease .3s;
}

.top_header_cover {
    width: 100%;
    height: 112vw;
    position: relative;

    img {
        width: 100vw;
        z-index: -3;
        position: fixed;
        top: 0;
        max-width: 1000px;
    }
}

header .header_bar .boxs .inner {
    justify-content: flex-start;
	width: 100%;

    .logo {
        margin-right: 6%;
        width: 53%;

        img {
            width: 100%;
            max-width: 300px;
        }
    }

    .infobox {

        .telbox {

            a {color:#fff;display: block;}

            .open {
                font-size: 2.5vw;
                background: #3b539b;
                padding: 4px;
                width: 15vw;
                box-sizing: border-box;
            }

            .tel {
                font-size: 22px;
            
                @media screen and (max-width: 1000px){font-size: 2.2vw;}

                span {
                    font-size: 50px;

                    @media screen and (max-width: 1000px){font-size: 5vw;}
                }
            }
        }
    }
}

footer #footer .navbox {
    width: 100%;background: #000;

    ul {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto;
        justify-content: flex-start;
        padding: 5% 2% 8%;
        box-sizing: border-box;

        li {
            color: #fff;
            position: relative;
            line-height: 1.6;
            width: calc(98% / 3);
            padding-left: 2px;

            a {
                color: #fff;
                position: relative;
                font-size: 30px;
                font-weight: 100;
                transition: all 1s;

                @media screen and (max-width: 1000px){font-size: 4vw;}
            }
        }
    }
}

/* special */

.special {
	width: 100%;
	margin: 0 auto 0;

    .pricebox {
        width: 100%;
        max-width: 1200px;
        margin: 0;
        margin: 20px auto;

        .obox {
            padding: 10px 0 10px;
            width: 94%;
            border: 1px solid #fff;
            box-sizing: border-box;
            border-radius: 16px;
            margin: 0 auto 4%;

            p {text-align: center;}

            .time {font-size: 22px;}

            .ttl {
                font-size: 24px;
                font-style: italic;
                background: #960000;
                padding: 5px;
                margin-top: 10px;
            }

            .pri {
                font-size: 34px;
                font-style: italic;
                color: #960000;
                margin-top: 5px;

                span {
                    font-size: 18px;
                    padding-left: 10px;
                }

                span.blo {
                    display: block;
                    text-align: center;
                    font-size: 24px;
                }
            }

            .ri {margin-right: 10px;}
        }
    }
    
}

/* /special */

/** #top_nf **/

.info-bg {
    background: url(../images/info_bg1.jpg) center top no-repeat;
    width: 100%;
    background-size: cover;
    padding-bottom: 20px;
}

#top_nf {
    width: 100%;

    .girlsboxs {
        display:block;
        width: auto;
        margin: 0;

        .onebox {
            width: 82vw;
            margin: 0;
            border: 1px solid #ffd7a2;

            .days {
                font-size: 22px;
                color: #fff;
                background: #960000;
                padding: 6px 0;
            }

            .profile {background: #fff5eb;}
        }
    }

    .btn_prev,.btn_next {
        position: absolute;
        top: 0;
        width: auto;
        height: 100%;
        padding: 1px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        z-index: 500;
    }

    .btn_prev,.btn_next img {cursor: pointer;width: 50px;}

    .btn_prev {left: 0;}

    .btn_next {	right: 0;}

    .slick-dots {margin-top: 20px;}
}

/** /#top_nf **/

/** #top_ranking **/

#top_ranking {
    background: url(../images/top_rank_bg.jpg) center top no-repeat;
    width: 100%;
    background-attachment: fixed;

    .girlsboxs {
        display:block;
        width: auto;
        margin: 0;

        .onebox {
            margin: 0 3px;
            width: 100%;
            border: none;

            .profile {
                color:#fff;
                background: #960000;
                padding: 8px 0 5px;
                border-radius: 14px;
            }

            .img {
                position: relative;
                width: 325px;
            }

            .rank {
                margin: 5px auto;
                width: 100%;
                text-align: center;
                min-height: 140px;

                img {
                    width: 98%;
                    margin: auto;
                    max-width: 280px;
                }
            }

            .rank01 {background: #b3a45c;}
            .rank02 {background: #8a8fa0;}
            .rank03 {background: #a98f81;}
            .rank04 {background:#960000}
        }

        .onebox:first-of-type .rank01 {background:#b3a45c;}
        .onebox:nth-of-type(2) .rank01 {background:#8a8fa0;}
        .onebox:nth-of-type(3) .rank01 {background:#a98f81;}
        .onebox:nth-of-type(n+4) .rank01 {background:#960000;}
    }

    .btn_prev img,.btn_next img {cursor: pointer;}

    .btn_prev,.btn_next {
        position: absolute;
        top: 0;
        width: 60%;
        height: 100%;
        padding: 1px 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        z-index: 500;
    }

    .btn_prev {left: 0;}

    .btn_next {	right: 0;}

    .slick-dots {margin-top: 20px;}

    .rankscll {
        overflow-x: scroll;
        display: flex;
        flex-wrap: nowrap;
        background: #fff;
    }

    .scllnav {
        text-align: right;
        background: #fff;
        padding: 14px 10px 14px 0px;

        img {width: 120px;}
    }
}

/** /#top_ranking **/

/* more btn */

.more {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: auto;
    text-align: center;
	
    .m-btn01 {
        position: relative;
        align-items: center;
        border: 1px solid #000;
        border-radius: 3.75rem;
        display: inline-flex;
        min-height: 2.75rem;
        min-width: 13.25rem;
        padding: .5625rem .5rem .5625rem 1.4375rem;
        justify-content: flex-start;
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 {
            padding:.5625rem 1.4375rem;
            transition: .3s ease-out;
            transition-property: border,background;
        }
    }

    @media only screen and (min-width: 768px) and (hover:hover) {
        .m-btn01:hover {
            background:#fff;
            border-color: #000;
            opacity: 1;
        }

        .m-btn01:hover .arrow {
            -webkit-transform: translate(.875rem);
            transform: translate(.875rem);
            width: 2.5rem;
        }

        .m-btn01:hover .arrow:before {
            background: #000;
            width: 2.5rem;
        }

        .m-btn01:hover .arrow:after {
            opacity: 1;
            -webkit-transform: translate(.3125rem,-50%);
            transform: translate(.3125rem,-50%)
        }
    }

    @media only screen and (min-width: 768px) and (hover:none) {
        .m-btn01:active {
            background:#cf2f33;
            border-color: #cf2f33
        }

        .m-btn01:active .en {
            color: #fff
        }

        .m-btn01:active .arrow {
            -webkit-transform: translate(.875rem);
            transform: translate(.875rem);
            width: 2.5rem
        }

        .m-btn01:active .arrow:before {
            background: #000;
            width: 2.5rem
        }

        .m-btn01:active .arrow:after {
            opacity: 1;
            -webkit-transform: translate(.3125rem,-50%);
            transform: translate(.3125rem,-50%)
        }
    }

    .m-btn01 .en,.m-btn01 .txt {
        font-size: 1.2rem;
        position: relative
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 .en,.m-btn01 .txt {
            transition:.3s ease-out;
            transition-property: color
        }
    }

    .m-btn01 .en {
        letter-spacing: .06em;
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 .en {
            letter-spacing:0
        }
    }

    .m-btn01 .arrow {
        aspect-ratio: 1 / 1;
        border-radius: 50%;
        /* display: inline-block; */
        /* margin-left: auto; */
        position: relative;
        width: 2.5rem;
        position: absolute;
        /* top: 0; */
        right: 22px;
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 .arrow {
            transition:.3s ease-out;
            width: 1.5rem
        }
    }

    .m-btn01 .arrow:after,.m-btn01 .arrow:before {
        content: "";
        display: block;
        position: absolute
    }

    .m-btn01 .arrow:before {
        animation: btnMove 2.5s ease-out infinite;
        aspect-ratio: 1/1;
        background: #000;
        border-radius: 50%;
        left: 0;
        top: 0;
        width: 100%
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 .arrow:before {
            animation: none;
            left: 50%;
            top: 50%;
            transform: translate(-50%,-50%);
            transition: .3s ease-out;
            transition-property: width,background;
            width: 1.5rem
        }
    }

    .m-btn01 .arrow:after {
        aspect-ratio: 1/1;
        background: url(../images/b_arr.png) no-repeat 50%/100% auto;
        right: .75rem;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        width: 1.0625rem
    }

    @media only screen and (min-width: 768px) {
        .m-btn01 .arrow:after {
            opacity:0;
            right: 1rem;
            transition: .3s ease-out;
            transition-property: opacity,-webkit-transform;
            transition-property: transform,opacity;
            transition-property: transform,opacity,-webkit-transform
        }
    }

    .m-btn01.-black {
        background: #fff;
        color: #000;
    }

    @media only screen and (min-width: 768px) and (hover:hover) {
        .m-btn01.-black:hover {
            background:#fff
        }

        .m-btn01.-black:hover .en {
            color: #000
        }

        .m-btn01.-black:hover .arrow:before {
            background: #000
        }
    }

    @media only screen and (min-width: 768px) and (hover:none) {
        .m-btn01.-black:active {
            background:#fff
        }

        .m-btn01.-black:active .en {
            color: #fff
        }

        .m-btn01.-black:active .arrow:before {
            background: #000
        }
    }

    .m-btn01.-black .arrow:before {
        background: #000;
    }

    .m-btn01.-black .arrow:after {
        background: url(../images/b_arr.png) no-repeat 50%/100% auto
    }

    @media only screen and (min-width: 768px) {
        .m-btn01.-black .arrow:after {
            background:url(../images/b_arr.png) no-repeat 50%/100% auto
        }
    }
}

/* /more btn */

/* /common btn */

.sl-event {
    background: url(../images/event_bg.jpg) center top no-repeat;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    background-size: 100%;
}

.top_sum {margin-top:10px;}

.under {
    margin-top: 23vw;

    @media screen and (max-width: 640px) {margin-top: 24vw;}
	@media screen and (max-width: 414px) {margin-top: 16vw;}

    .title-txt {
        width: 100%;
        position: relative;
        padding: 2%;
        box-sizing: border-box;
        
        .t_tit1 {
            font-size: 10vw;
            text-align: center;
            color: #000;
            padding-bottom: 0;
            
            span {
                color: #960000;
            }

            img { 
                width:7vw ;
                max-width: 42px;
                vertical-align: initial;
                margin-left: 15px;      
            }

        }

        .t_tit2 {
            font-size: 3.3vw;
            letter-spacing: 0;
            line-height: 1.4;
            text-align: center;
            color: #000;
        }
    } 

    .white {
        background: rgba(255, 255, 255, .6);
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }  
}

/* obi-ttl */
	
.u_tit {
    font-size: 48px;
    letter-spacing: 3px;
    line-height: 1.4;
    text-align: center;
    color: #fff;
}

#mailmagazine {
    .t_tit1 {
        font-size: 8vw;
    }

    .u_tit {font-size: 30px;}
}

#waiting .u_tit {font-size: 30px;}

.obi-ttl {
    width: 100%;

    h2 {
        font-size: 30px;
        font-weight: 500;
        text-align: center;
        letter-spacing: 0.1em;
        position: relative;
        z-index: 1;
    }

    h2::before {
        content: '';
        background: rgba(255,255,255,.8);
        height: 19vw;
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -2;
    }

    h2::after {
        content: '';
        height: 19vw;
        display: block;
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
    }
}

.obi-ttl::after {background: rgba(255,255,255,.6);}

.obi-ttl h2.scroll-move.active::before {
	width: 100%;
	animation: BgColor .4s ease-in-out forwards;
}

.obi-ttl h2.scroll-move.active::after {
	width: 100%;
	animation: BgColor .4s ease-in-out .4s forwards;
	transform: scaleX(0);
}

@keyframes BgColor {
	0% {
		transform-origin: left;
		transform: scaleY(0);
	}
	100% {
		transform-origin: left;
		transform: scaleY(1);
	}
}

/* /obi-ttl */

/* bg */

.mbg {
    background: #fff;
    padding-bottom: 30px;
}

/* /bg */

/* animation */

.img_x {
  animation: img_x 1.5s linear infinite;
  transform-origin: 50% 50%;
}
 
@keyframes img_x {
  0% { transform: translateX(0) }
  33.33333% { transform: translateX(-3px) }
  66.66667% { transform: translateX(3px) }
  100% { transform: translateX(0) }
}	

/* /animation */

.innner-bg {background:#fff;z-index: -2;position: relative}

/** o_ranking **/

#o_ranking {width: 100%;}

#o_ranking .girlsboxs {
    display:block;
    width: auto;
    margin: 0;
}

#o_ranking .girlsboxs .onebox {
    margin: 0 3px;
	width: 100%;
	border: none;
}

#o_ranking .girlsboxs .onebox .profile {color:#000;padding: 8px 0 5px;}

#o_ranking .girlsboxs .onebox .img {
    position: relative;
    width: 123px;
}

#o_ranking .girlsboxs .onebox .rank {
    margin: 5px auto;
    width: 100%;
    text-align: center;
}

#o_ranking .girlsboxs .onebox .rank img {
    width: 98%;
    margin: auto;
    max-width: 280px;
}

#o_ranking .girlsboxs .onebox .rank01 {background: linear-gradient(to right,  rgba(207,180,142,1) 0%,rgba(198,151,85,1) 50%,rgba(207,180,142,1) 100%);}
#o_ranking .girlsboxs .onebox .rank02 {background: linear-gradient(to right,  rgba(208,207,208,1) 0%,rgba(173,159,184,1) 50%,rgba(208,207,208,1) 100%);}
#o_ranking .girlsboxs .onebox .rank03 {background: linear-gradient(to right,  rgba(232,206,196,1) 0%,rgba(207,148,125,1) 50%,rgba(232,206,196,1) 100%);}
#o_ranking .girlsboxs .onebox .rank04 {background: linear-gradient(to right,  rgba(255,198,236,1) 0%,rgba(255,156,222,1) 50%,rgba(255,198,236,1) 100%);}

#o_ranking.btn_prev img, #o_ranking .btn_next img {cursor: pointer;}

#o_ranking .btn_prev, #o_ranking .btn_next {
    position: absolute;
    top: 0;
    width: 60%;
    height: 100%;
    padding: 1px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	z-index: 500;
}

#o_ranking .btn_prev {left: 0;}

#o_ranking .btn_next {right: 0;}

#o_ranking .slick-dots {margin-top: 20px;}

#o_ranking .rankscll {
    overflow-x: scroll;
    display: flex;
    flex-wrap: nowrap;
	background: #000;
}

#o_ranking .scllnav {
    text-align: right;
    background: #000;
    padding: 14px 10px 14px 0px;
}

#o_ranking .scllnav img {width: 120px;}

#o_ranking .girlsboxs .onebox .profile .name {
	font-size: 24px;
	margin-bottom: 5px;
}

	@media screen and (max-width: 1000px) {
		#o_ranking .girlsboxs .onebox .profile .name {font-size: 3vw;}
	}

	@media screen and (max-width: 414px) {
		#o_ranking .girlsboxs .onebox .profile .name {font-size: 13px;}
	}

#o_ranking .girlsboxs .onebox .profile .name span {font-size: 20px;}

	@media screen and (max-width: 1000px) {
		#o_ranking .girlsboxs .onebox .profile .name span {font-size: 1.8vw;}
	}

	@media screen and (max-width: 414px) {
		#o_ranking .girlsboxs .onebox .profile .name span {font-size: 12px;}
	}

#o_ranking .girlsboxs .onebox .profile .size {font-size: 14px;}

	@media screen and (max-width: 414px) {
		#o_ranking .girlsboxs .onebox .profile .size {font-size: 11px;}
	}

/** /#o_ranking **/

.top_header_cover .tcover_slide {
    width: 100%;
    height: 118vw;
	z-index: -3!important;
    position: fixed!important;
    top: 0!important;
    max-width: 1000px;
}

#index #f-now {display:none;}

#f-now {
    position: fixed;
    bottom: 250px;
    right: 10px;
    transition: all .3s ease-in;
    text-decoration: none;
    box-sizing: border-box;
    display: block;
    z-index: 810;
}

	@media screen and (max-width: 480px) {
		#f-now {
			position: fixed;
			bottom: 160px;
		}
	}

#f-now img {
    width: 100px;
}

	@media screen and (max-width: 480px) {
		#f-now {
			width: 70px;
		}
	}

.toprank-link {
    width: 100%;
	margin: 20px auto;
}

.toprank-link img {
    width: 100%;
	max-width: 640px;
}

.girlsboxs .onebox .img .icon00 {
    position: absolute;
    bottom: 8px;
    right: 0;
    width: 22%;
    max-width: 100px;
    z-index: 50;
}

.girlsboxs .onebox .img .icon00 img {
	display: block;
	margin-top: 5px;
	width: 100%;
	max-width: 40px;
}

#newface .girlsboxs .onebox .img .icon00 {
    right: -10px;
}

#newface .girlsboxs .onebox .img .icon00 img {
	max-width: 60px;
}

#top_nf .girlsboxs .onebox .img .icon00 {
    width: 24%;
    max-width: 100px;
}

#top_nf .girlsboxs .onebox .img .icon00 img {
	max-width: 60px;
}

.r-w {color:#fe8ae1!important;}
.r-m {color:#6cc3ff!important;}


.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox {
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p {
    width:37%;
    text-align: center;
    font-style: italic;
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p:last-of-type {
    margin-right: 5%;
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p span {
    width: 100%;
    display: block;
    margin-top: -10px;
    text-align: center;
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p.space {
    width:10%;
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p.cp {
    width: 72%;
    text-align: center;
    color: #fbfbfb;
    background: #960000;
    font-size: 30px;
}

/** SNS **/
#sns-box {
    background-color: rgba(0,0,0,.6);
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    width: 92%;
    margin: 0 auto 20px;

    .title {
        width: 100%;
        text-align: center;
        background: linear-gradient(to right,  rgba(168,42,228,0.6) 0%,rgba(58,94,219,0.6) 100%);
        padding: 4px;
        box-sizing: border-box;

        div {
            padding: 0.05em 0;
            font-size: 30px;
            text-align: center;
            letter-spacing: 4px;
        }
    }

    .list{
        display: flex;
        gap: 30px;
        padding: 4%;

        li{
            a{
                display: flex;
                flex-direction: column;
                text-align: center;
                color: #fff;

                em {
                    text-align: center;
                    font-size: 3vw;
                }

                img {vertical-align: top;}

                span {text-align: center;}
            }

            em {
                text-align: center;
                font-size: 3vw;
            }

        }
    }
}

#profile #sns-box {
    width: 100%;
    margin: 0 auto;

    .list {
        display: flex;
        gap: 10px;
        padding: 2%;
    }
}

/** /SNS **/

/* number icon */

.girlsboxs .onebox .img .iconos {

    position: absolute;
    top: -20px;
    left: 6px;
    width: 40%;
    max-width: 100px;
    z-index: 50;

    @media screen and (max-width: 480px) {
        top: -3vw;
    }

    .number {
        box-sizing: border-box;
        background: linear-gradient(to right,  rgba(168,42,228,1) 0%,rgba(58,94,219,1) 100%);
        width: 50px;
        height: 50px;
        display: flex;
        justify-content: center;
        align-items: center;

        @media screen and (max-width: 480px) {
            top: -3vw;
            width: 40px;
            height: 40px;
        }

        p {
            width: 40px;
            height: 40px;
            border: 1px solid #fff;
            font-size: 24px;
            padding: 4px 5px;
            box-sizing: border-box;
            text-align: center;

            @media screen and (max-width: 480px) {
                width: 33px;
                height: 33px;

                font-size: 20px;
            }
        }
    }
}

/* /number icon */

/***** 【 header 】 *****/
.mainheader {
    background:#960000;
    width: 100%;
    max-width: 1000px;
    padding: 0 ;
    box-sizing: border-box;
    z-index: 1000;
	top: 0;
    position: fixed;

    .boxs {
        display: flex;
        width: 100%;
        justify-content: space-between;
        padding: 2%;
        box-sizing: border-box;
        align-items: center;

        .menutxt {
            font-family: "noto-sans-cjk-jp", sans-serif;
            color: #fff;
            font-size: 0.6vw;
            letter-spacing: 2px;
        }

        .nav-l {
            width: 60%;
            justify-content: flex-start;

            @media screen and (max-width: 414px) {width: 90%;}

            .logo {

                .main {}

                .clone {display: none;}

                img {
                    height: auto;
                    width: 23vw;
                    max-width: 220px;

                    @media screen and (max-width: 414px) {width: 26vw;}
                    
                }
            }

            .telbox {
                color: #fff;
                justify-content: flex-start;

                .tel {
                    font-size: 3vw;

                    @media screen and (max-width: 414px) {font-size: 5vw;}

                    span {
                        font-size: 3.3vw;

                        @media screen and (max-width: 414px) {font-size: 5.3vw;}

                    }
                }

                .open {
                    font-size: 1.5vw;
                    padding-bottom: 4px;margin-top: 10%;

                        @media screen and (max-width: 414px) {font-size: 3vw;}
                }
            }

            .infobox {}
        }

        .nav {
            width: 92%;

            ul {
                display: flex;
                justify-content: flex-end;

                li {
                    font-size: 1vw;
                    padding: 0% 1%;
                    text-align: left;
                    display: block;
                    line-height: 1.5;
                    position: relative;
                    z-index: 1;
                    transition: .3s;
                    width: 5.4vw;
                    border-left: 1px solid #fff;
                    font-weight: bold;

                    a {
                        color: #fff;
                        transition: all 1s;
                        display: block;
                        text-align: left;
                        transition-duration: .4s;

                        span {
                            display: block;
                            text-align: left;
                            font-size: 0.7vw;
                            font-weight: normal;
                        } 
                    }

                    a:hover {
                        color: #960000;
                        opacity: 1;
                    }
                }

                li:hover {
                    transition: all 0.5s;
                    background: none;
                    opacity: 1;

                    a {color: #960000;}
                }
            }
        }

        .right_box {
            float: right;
            padding: 0 70px 0 0;

            .btn {
                color: #fff;

                span {display: block;}
            }
        }
    }

    .inner {
        width: 45%;
    }

    .conlink {
        width: 10%;

        .m-btn02 {
            display: inline-block;
            width: 100%;
            max-width: 150px;
            text-align: center;
            line-height: 3;
            text-decoration: none;
            outline: none;
            color: #fff;
            background-color: #960000;
            position: relative;
            border: 1px solid #960000;
            transition: color 0.5s ease;

            .text1 {position: relative;}
            .text2 {position: relative;font-size: 13px;margin-left: 20px;}
        }

        .m-btn02:hover {color: #960000;}

        .m-btn02:hover::before {transform: scaleY(1);}

        .m-btn02::before {
            position: absolute;
            top: 0;
            left: 0;
            content: "";
            display: block;
            width: 100%;
            height: 100%;
                color: #960000;

            background: #fff;
            transform: scaleY(0);
            transition: all 0.5s ease;
            transition-property: transform;
        }
    }
}

/* ハンバーガー */	

.mainheader #gnav-btn {
	position: static;

	@media screen and (max-width: 480px) {
        top: 0;
        left: -13px;
	}
}

.mainheader #gnav-input:checked ~ #gnav-content {left: 0;}

#gnav-content {
	position: fixed;
	left: -100%;
	top: 0;
	z-index: 1000;
	transition: 0.3s;
	background: rgba(255,255,255,1);
	color: #fff;
	width: 100%;
	height: 100vh;
	overflow: auto;

    .logobox {

        justify-content: space-between;
        h1  {
            img {width: 45px; }
        } 

        .menu-trigger {

            span {
                height: 3px;
                background-color: #000;
            }
        }
    }
}

#gnav-content ul.nv-box {padding: 0 3% 10%;
    box-sizing: border-box;}

#gnav-content ul.nv-box li {
    width: 100%;
    padding: 1%;
    margin: 0;
    box-sizing: border-box;
    text-align: left;
    position: relative;
    border-bottom: 1px solid #000;
    margin: 1% 0;
    position: relative;

    .en {
        font-size: 5.5vw;
        color: #960000;
        width: 48%; 
    }


    .ja {
        font-size: 3.5vw;
        color: #000;
    }
}


#gnav-content ul.nv-box li:last-of-type {
    border:none;

}

#gnav-content ul.nv-box li::after {
    content: "";
    position: absolute;
    top: 33%;
    right: 10px;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 10px solid #960000;
    border-right: 0;

}

#gnav-content ul.nv-box li a {
    justify-content: flex-start;
	height: 100%;
	box-sizing: border-box;
}


#gnav-content .nb-box {
    justify-content: flex-start;
    margin: 5px auto;
}

	@media screen and (max-width: 480px) {
		#gnav-content .nb-box {justify-content: center;}
	}

#gnav-content .nb-box a {
    margin: 10px;
}

#gnav-content .nb-box a img {
    width: 100%;
    max-width: 330px;
}

#humb-menu label {
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 1rem;
	cursor: pointer;
	width: 50px;
	height: 50px;

	@media screen and (max-width: 414px){
        padding: 5% 0 2%;
        margin-top: 0px;
	}
}

#humb-menu input {display: none;}

#humb-menu .accshow {
	height: 0;
	overflow: hidden;
}

#humb-menu .accshow p {padding: 1.5rem;}

#humb-menu .cssacc:checked + .accshow {height: auto;}

.mainheader .menu-trigger,.mainheader .menu-trigger span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

.mainheader .menu-trigger {
	position: relative;
	width: 50px;
	height: 45px;
    top: 6px;
}

	@media screen and (max-width: 480px){
		.mainheader .menu-trigger {width: 40px;}
	}

.mainheader .menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	background-color: #fff;
}

.mainheader .menu-trigger span:nth-of-type(1) {top: 0;}
.mainheader .menu-trigger span:nth-of-type(2) {top: 16px;width: 70%;}
.mainheader .menu-trigger span:nth-of-type(3) {bottom: 10px;}

.mainheader .menu-trigger.active span:nth-of-type(1) {
	-webkit-transform: translateY(20px) rotate(-315deg);
	transform: translateY(20px) rotate(-315deg);
}

.mainheader .menu-trigger.active span:nth-of-type(2) {opacity: 0;}

.mainheader .menu-trigger.active span:nth-of-type(3) {
	-webkit-transform: translateY(-20px) rotate(315deg);
	transform: translateY(-20px) rotate(315deg);
}

.mainheader .menu-trigger.active span:nth-of-type(1) {top: -1px;}
.mainheader .menu-trigger.active span:nth-of-type(3) {bottom: 4px;}
/* /ハンバーガー */

.mainheader h1 {    margin: 0 0 0 5%;}

.mainheader h1 img {width: 220px;}

	@media screen and (max-width: 414px){
		.mainheader h1 img {width: 80px;}
	}

.mainheader .link-box {
    margin: 0px auto;
	padding: 5px;
}

.mainheader .link-box p {
    width: 100%;
    max-width: 400px;
    padding: 1px;
    margin: 5px auto;
    background: #fff;
    border-radius: 12px;
    font-size: 14px;
    font-weight: bold;
    color: #ff0000;
    text-align: center;
}

	@media screen and (max-width: 414px){
		.mainheader .link-box p {width: 80%;}
	}

.mainheader .link-box img {
    width: 100%;
    max-width: 320px;
}

.mainheader .link-box .inner {margin: 10px auto;}

.mainheader .link-box .inner a {margin: 5px;}

.mainheader i img {width: 20px;}

.mainheader .h-icon-box {display:none;}

/***** /【 header 】 *****/

/***** 【 clone header 】 *****/

.clone-nav {
	position: fixed;
	top: 0px;
	left: 0;
	z-index: 2;
	width: 100%;
	transition: .1s;
	transform: translateY(-100%);
	padding: 0;
    display: none;

    #humb-menu {display: block;}
}
	
	
.is-show {transform: translateY(0);}	

.clone-nav .mainheader {
    .conlink {
        width: 10%;

        .m-btn02 {
            display: inline-block;
            width: 100%;
            max-width: 150px;
            text-align: center;
            line-height: 3;
            text-decoration: none;
            outline: none;
            color: #960000;
            background-color: #fff;
            position: relative;
            border: 1px solid #fff;
            transition: color 0.5s ease;

            .text1 {position: relative;}
            .text2 {position: relative;font-size: 13px;margin-left: 20px;}
        }

        .m-btn02:hover {color: #fff;}

        .m-btn02:hover::before {transform: scaleY(1);}

        .m-btn02::before {
            position: absolute;
            top: 0;
            left: 0;
            content: "";
            display: block;
            width: 100%;
            height: 100%;
            color: #fff;
            background: #960000;
            transform: scaleY(0);
            transition: all 0.5s ease;
            transition-property: transform;
        }
    }
}

/***** /【 clone header 】 *****/

/** cont-mainBgimage **/

.cont-m-title {
    width: 100%;
    max-width: 2000px;

    img {width: 100%;}
}

.cont-m-bg {
    background: url(../images/top_bg2.jpg) no-repeat center top;
    background-attachment: fixed;
    background-size: 100%;
}

/** /cont-mainBgimage **/

/*** #photodiary ***/

#photodiary {
    .mbg {
        background: url(../images/pd_bg1.jpg) no-repeat scroll center top #000;
        background-attachment: fixed;
    }    
}

#pdiary {

    .maininfo {
        width: 96%;
        max-width: 560px;
        padding: 1% 2%;
        box-sizing: border-box;
        background: rgba(255, 255, 255, .8);
        border: 1px solid #000;
        border-radius: 10px;
        margin: 0 auto 3%;
        justify-content: space-between;

        .g-thm {
            width: 40%;
            max-width: 100px;
            z-index: 50;

            .inner {
                z-index: 500;

                a {
                    width: 160px;
                    height: 160px;
                    background: #000;
                    border-radius: 50%;
                    display: block;
                    overflow: hidden;
                    box-sizing: border-box;

                    @media screen and (max-width: 480px){
                        width: 140px;
                        height: 140px;
                    }

                    img {
                        width: 100%;
                        height: auto;
                    }
                }
            }  
        } 

        .profile {
            background: none;
            padding: 0;
            width: 52%;
            margin-left: 1%;

            .name {
                font-size: 24px;
                text-align: left;

                @media screen and (max-width: 480px){ font-size: 20px;}

                span {
                    font-size: 18px;

                    @media screen and (max-width: 480px){ font-size: 16px;}

                }
            }

            .ttl {
                font-size: 24px;
                text-align: left;
                margin: 5px auto;

                @media screen and (max-width: 480px){ font-size: 20px;}

            }

            .size {
                font-size: 16px;
                text-align: left;
            }
        }
    } 

    .search-box {
        display: flex;
        position: relative;
        margin: 0 auto 0;
        align-items: center;
        width: fit-content;
        padding: 5% 0;

		&::after{
			position: absolute;
			right: 15px;
			width: 10px;
			height: 7px;
			background-color: #535353;
			clip-path: polygon(0 0, 100% 0, 50% 100%);
			content: '';
			pointer-events: none;
		}
	
		select {
			appearance: none;
			min-width: 340px;
			height: auto;
			padding: 1em calc(1em + 30px) 1em 1em;
			border: 1px solid #d0d0d0;
			border-radius: 3px;
			background-color: #fff;
			color: #000;
			cursor: pointer;
            border: 1px solid;
		}
	}
        
    .girlsboxs {
        width: 100%;
        max-width: 1600px;

        a {width:100%;} 

        .onebox {
            background: #fff;
            width: 100%;
            margin: 0;
            padding: 2%;
            box-sizing: border-box;
            border: 0;
            display: flex;
            border-bottom: 1px solid #000;

            .img {
                position: relative;
                width: 30%;
                
                figure {
                    border-radius: 10px;
                    height: 28vw;
                    max-height: 280px;
                }

                .g-thm {
                    position: absolute;
                    top: 15px;
                    left: 6px;
                    width: 40%;
                    max-width: 100px;
                    z-index: 50;

                    .inner {
                        z-index: 500;

                        a {
                            width: 50px;
                            height: 50px;
                            background: #000;
                            border-radius: 50%;
                            display: block;
                            overflow: hidden;
                            box-sizing: border-box;

                            img {
                                width: 100%;
                                height: auto;
                            }
                        }
                    }
                } 
            }

            .d-box {

                padding: 2%;
                width: 69%;
                box-sizing: border-box;
                margin-left: 1%;

                .ttl {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 1;
                    overflow: hidden;
                    font-size: 18px;
                    background: #960000;
                    padding: 1%;
                    box-sizing: border-box;
                    color: #fff;

                    img{width: 20px;}
                }

                .ymd {
                    font-size: 16px;
                    margin-top: 5px;
                    border-bottom: 1px solid #000;
                    padding-bottom: 8px;                    
                }

                .txt {
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 3;
                    overflow: hidden;
                    font-size: 18px;
                    padding-top: 2%;
                    box-sizing: border-box;
                }
                
            }
            
            .profile {
                background:none;

                .name {
                    font-size: 16px;
                }

                .size {
                    font-size: 16px;
                }
            }
            
            .more {width: 100%;max-width: 120px;margin: 3% auto;}
        }
    }

    .detail {
        width: 100%;
        max-width: 1000px;
        margin: auto;
        padding: 3%;
        box-sizing: border-box;

        .d-box {
            margin: 2% auto;

            .ttl {
                display: -webkit-box;
                -webkit-box-orient: vertical;
                -webkit-line-clamp: 1;
                overflow: hidden;
                background: #960000;
                padding: 1%;
                box-sizing: border-box;
                color: #fff;
                font-size: 28px;
                
                img{width: 30px;vertical-align: middle;margin-right: 10px;}
            }
        }

        .image {
            max-width: 600px;
            margin: 1% auto;
            overflow: hidden;
            width: 94vw;
            height: 100vw;
            border-radius: 20px;

            .ymd {
                font-family: var(--fontgothic);
                font-size: 13px;
                margin-bottom: 5px;
            }

            img {width: 100%;}
        }

        .txt {
            font-family: var(--fontgothic);
            box-sizing: border-box;
            color: #000;
            line-height: 1.5;
            font-size: 18px;
            background: #fff;
        }
    }

    .pnbox {
        max-width: 600px;
        margin: auto;
        justify-content: space-between;
        padding: 3%;
        box-sizing: border-box;

        a { width:100%; color: #000;margin: 1% auto;}

        .prev,.next {

            background: #fff;
            border: 1px solid #000;
            padding: 1%;
            box-sizing: border-box;

            .img {
                    width: 80px;
                    height: 80px;
                    border-radius: 12px;
                    max-width: 100px;
                    z-index: 50;
                    overflow: hidden;
                    box-sizing: border-box;
                
                img {
                    width: 100%;
                    display: block;
                }
            }

            .d-box {
                width: 70%;
                margin: 2%;

                @media screen and (max-width: 480px){ width: 65%;}     

                .ttl {
                    font-family: var(--fontgothic);
                    display: -webkit-box;
                    -webkit-box-orient: vertical;
                    -webkit-line-clamp: 1;
                    overflow: hidden;
                    background: #960000;
                    padding: 1% 2%;
                    box-sizing: border-box;
                    color: #fff;
                    max-height: 36px;
                    line-height: 1.3;
                    font-size: 22px;
                    
                    @media screen and (max-width: 480px){ font-size: 16px;}     

                    img {
                        width: 20px;
                        vertical-align: middle;
                        margin-right: 2px;

                        @media screen and (max-width: 480px){ width: 16px;}     

                    }
                }

                .ymd {font-family: var(--fontgothic);font-size: 13px;margin-top: 10px;}
            }
        }

        .prev {padding: 4% 4% 4% 4%;}

        .next { padding: 4% 4% 4% 4%;}

        .arrow {position: relative;}

        .prev.arrow::before,
        .prev.arrow::after {
            content: "";
            position: absolute;
            top: calc(50% - 2px);
            left: 8px;
            width: 20px;
            height: 2px;
            border-radius: 9999px;
            background-color: #000000;
            transform-origin: 2px 50%;

            @media screen and (max-width: 480px){left: 5px; width: 14px;}     
        }

        .next.arrow::before,
        .next.arrow::after {
            content: "";
            position: absolute;
            top: calc(50% - 2px);
            right:8px;
            width: 20px;
            height: 2px;
            border-radius: 9999px;
            background-color: #000000;
            transform-origin: calc(100% - 2px) 50%;

            @media screen and (max-width: 480px){ right: 5px;width: 14px;}     
        }
        
        .arrow::before {transform: rotate(45deg);}

        .arrow::after {transform: rotate(-45deg);}
    }

    .listlink {
        text-align: center;
        padding-bottom: 5%;

        a {color: #000;}

        span {
            font-size: 6vw;
            border-bottom:solid 1px #000;
        }

    }
}

/*** /#photodiary ***/

/*------------ slider dots-wrap ------------*/

.dots-wrap {
    display: flex;
    justify-content: center;
    margin-top: 3vw;

    li {
        width: 40px;
        height: 4px;
        margin: 0 5px;
        background: #fede89;
        cursor: pointer;

        button {
            display: none;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            outline: none;
            padding: 0;
            border: none;
            background-color: transparent;
        }
    }

    li:hover,
    li.slick-active {
        background: #960000;
    }
}

/*------------ /slider dots-wrap ------------*/
