@charset "utf-8";
:root {
  /* store */
  --fontgothic: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", 'メイリオ', 'Meiryo', sans-serif;
  --fontmincho: 'Lora', serif, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", 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;z-index: 1001}
#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 {
	font-family: '游明朝', 'YuMincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', 'HiraMinProN-W3', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'Noto Serif JP', serif;
	line-height: 1.2;
	background-color: #000;
	width: 100%;
	overflow-x: hidden !important;
	color: #fff;
	z-index: 1;
}

a {text-decoration: none;transition: all 0.4s;}

a:hover {opacity: 0.5;}

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,e
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 */

.pc_none {display: none !important;}

a.btn {
    line-height: 60px;
    text-align: center;
    font-size: 22px;
    color: #fff;
    display: inline-block;
    vertical-align: top;
    margin-left: 2%;
    width: calc(60% - 2px);
    max-width: 388px;
    position: relative;
}

a.btn img {
    width: 40px;
    position: absolute;
    top: 9px;
    right: 12px;
}

main {
	padding-bottom: 120px;
	position: relative;
	/*z-index: 10;*/
}

/* top header */

header .main_head {
    background: url(../images/nav_bg.jpg);
    width: 100%;
    padding: 16px 0 16px;
    box-sizing: border-box;
    position: absolute;
    z-index: 1000;
	border-bottom: 4px solid #dcb24c;
	top: 0;
}

header .main_head .boxs {
    display: flex;
    width: 100%;
    justify-content: space-between;
    background: rgba(0, 0, 0, 0.75);
    padding: 10px 20px 10px;
    box-sizing: border-box;
    box-shadow: 0px 0px 20px #000;
}

header .main_head .boxs .logo {width: 20%; margin-left: 8%;}

header .main_head .boxs .logo img {
	height: auto;
	width: 100%;
	max-width: 240px;
}

header .main_head .inner {width: 76%}

header .main_head .inner .infobox {
    justify-content: space-between;
    width: 90%;
}

header .main_head .inner .infobox .snsbox { margin-left: 3%;}

header .main_head .inner .infobox .snsbox ul {}

header .main_head .inner .infobox .snsbox ul li {margin: 0 10px;}

header .main_head .inner .infobox .snsbox ul li img {width: 40px;}

header .main_head .inner .infobox .snsbox .tit {
    color: #fff;
    border: 2px solid #fff;
    box-sizing: border-box;
    padding: 5px 10px;
    font-size: 18px;
}

header .main_head .boxs .telbox {color: #fff;}

header .main_head .boxs .telbox .tel {font-size: 20px;}

header .main_head .boxs .telbox .tel span {font-size: 41px;}

header .main_head .boxs .telbox .open {
    font-size: 18px;
    background: #3b539b;
    padding: 4px;
    margin-left: 10px;
}

header .main_head .boxs .nav {width: 92%;}

header .main_head .boxs .nav ul {display: flex;}

header .main_head .boxs .nav ul li {
	font-size: 14px;
	padding: 20px 2%;
	text-align: center;
	display: block;
	line-height: 2;
	position: relative;
	z-index: 1;
	transition: .3s;
}

header .main_head .boxs .nav ul li:hover {
	background-color: #3d5496;
	transition: all 1s;
}

header .main_head .boxs .nav ul li:hover a {color: #000;}

header .main_head .boxs .nav ul li a {
	color: #fff;
	transition: all 1s;
}

header .main_head .boxs .nav ul li a span {
	display: block;
	text-align: center;
}

header .main_head .boxs .right_box {
	float: right;
	padding: 0 70px 0 0;
}

header .main_head .boxs .right_box .btn {color: #fff;}

header .main_head .boxs .right_box .btn span {display: block;}

header .main_head .boxs .nav ul {
	display: flex;
	justify-content: flex-end;
}

header .main_head .boxs .nav ul li {
    font-size: 1vw;
    padding: 0;
    text-align: center;
    display: block;
    line-height: 2;
    position: relative;
    z-index: 1;
    transition: .3s;
    width: 7.4vw;
}

header .main_head .boxs .nav ul li:hover {
	transition: all 0.5s;
	background: none;
	opacity: 1;
}

header .main_head .boxs .nav ul li:hover a {color: #C07FFF;}

header .main_head .boxs .nav ul li a {
	color: #fff;
	transition: all 1s;
	padding: 10px 0 0;
	display: block;
	text-align: center;
	transition-duration: .4s;
}

header .main_head .boxs .nav ul li a:hover {
	color: #C07FFF;
	opacity: 1;
}

header .main_head .boxs .nav ul li a span {
	display: block;
	text-align: center;
	font-size: 0.9vw;
}

header .main_head .boxs .right_box {
	float: right;
	padding: 0 70px 0 0;
}

header .main_head .boxs .right_box .btn {color: #fff;}

header .main_head .boxs .right_box .btn span {display: block;}

.top_header_movie {
    width: 100%;
    position: relative;
}

.top_header_movie video {
    width: 100vw;
    z-index: -1;
    position: fixed;
    top: 0;
}

header .top_header_movie img {
	width: 100%;
	height: auto;
}

.top_header_cover {
    width: 100%;
    height: 49.5vw;
    position: relative;
}

.top_header_cover img {
    width: 100vw;
    z-index: -1;
    position: fixed;
    top: 0;
}

header .header_bar {
    position: fixed;
    width: 100%;
    z-index: 995;
    top: 0;
    background: rgba(0, 0, 0, .8);
}

header .header_bar .boxs {
    display: flex;
    width: 100%;
    padding: 10px;
	box-sizing: border-box;
    margin: auto;
    justify-content: center;
}

header .header_bar .boxs .logo {width: 140px}

header .header_bar .boxs .logo img {
	height: auto;
	width: 100%;
	padding: 0 0 0;
}

header .header_bar .boxs .right_box {
	float: right;
	padding: 0 70px 0 0;
}

header .header_bar .boxs .right_box .btn {color: #fff;}

header .header_bar .boxs .right_box .btn span {display: block;}

/* /top header */

/* footer */

footer {background: #000;}

footer .logo {
	text-align: center;
	margin-bottom: 10px;
}

footer .logo img {width: 200px;}

footer #footer {
    display: flow-root;
    width: 98%;
    margin: auto;
    padding: 0 0 20px;
}

footer #footer .navbox {width: 100%;margin-top: 10px;}

footer #footer .navbox ul {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

footer #footer .navbox ul li {
    color: #fff;
    font-size: 18px;
    position: relative;
	line-height: 1.8
}

footer #footer .navbox ul li a {
    color: #fff;
    padding-left: 10px;
    position: relative;
    font-size: 16px;
    font-weight: 100;
    transition: all 1s;
    margin-right: 12px;
}

footer #footer .navbox ul li::after {
    content: "│";
    position: absolute;
    top: 1px;
    right: -8px;
}

footer .copy {
	width: 100%;
	text-align: center;
	font-size: 12px;
	padding: 10px 0;
}

footer .copy a {color: #fff;}

.f-border {
    background: url(../images/footborder.jpg) center bottom no-repeat;
    width: 100%;
    height: 477px;
    z-index: 1;
    margin-top: -300px;
}

/* /footer */

/* index.html */

#index {position: relative;	}

#index .coverbg1 {
    background: rgb(0, 0, 0, .8);
    width: 100%;
    height: 187vh;
    z-index: -2;
    position: fixed;
}

#index .coverbg2 {
    background: url(../images/enter_bg.jpg) no-repeat scroll center top;
    position: fixed;
    z-index: -3;
    width: 100%;
    height: 100vh;
}

#index .coverbg3 {
    background: url(../images/enter.jpg) no-repeat center bottom;
    background-size: cover;
    width: 100%;
    z-index: -1;
    background-attachment: fixed;
}

#index main {
	background: none;
	padding: 100px 0 0;
	z-index: 1
}

#index_logo {
	text-align: center;
	padding: 0 5% 20px;
}

main#main {padding: 0;}

.en_nav {
    justify-content: space-around;
    width: 100%;
    max-width: 800px;
    margin: 31px auto;
}

.en_nav .ent {
    font-size: 34px;
    padding: 5px 0;
}

a.btn.ent img {
    top: 15px;
    right: 12px;
}

.en_nav .deli {
    background: linear-gradient(to right, rgba(255, 158, 1, 1) 0%, rgba(255, 188, 30, 1) 100%);
    font-size: 18px;
	padding: 5px 0;
}

.index_txt01 {
    font-size: 13px;
    line-height: 2;
    text-align: center;
    color: #fff;
    margin: 20px auto 30px;
    text-shadow: 1px 1px BLACK;
}

.index_txt02 {
    font-size: 12px;
    line-height: 2;
    text-align: center;
    color: #fff;
    background: rgba(0, 0, 0, .85);
    width: 600px;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 20px 20px 0 0;
    margin: 100px auto 0;
}

.index_txt02 div {text-align: center;}

.index_txt02 a {
    text-decoration: underline;
    color: #fff;
}

.index_txt02 .conbox {justify-content: space-between;}

.index_txt02 .conbox .over {}

.index_txt02 .conbox .over img {width: 60px;}

.index_txt02 .conbox .att {
	text-align: left;
	line-height: 1.4;
	font-size: 16px;
}

.index_txt02 .conbox .snav {width: 40%;}

.index_txt02 .conbox .snav h3 {text-align: center;}

.index_txt02 .conbox .snav ul {margin-top: 10px;}

.index_txt02 .conbox .snav ul li {margin: 0 10px;}

.index_txt02 .conbox .snav ul li img {width: 50px;}

.index_link {background-color: #000;}

.index_linkbok {
	text-align: center;
	width: 100%;
	max-width: 1000px;
	padding: 50px 0 0;
	margin: auto;
}

.index_linkbok a {
	display: inline-block;
	margin: 0.5%;
}

.index_freebok {
	text-align: center;
	width: 100%;
	max-width: 1200px;
	padding: 50px 0 100px;
	margin: auto;
}

.index_freebok div {
	text-align: center;
	width: 100%;
}

.index_freebok iframe {margin: 0.5%;}

#index footer #footer {display: none;}

.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;
}

/* /index.html */

/* button */

@keyframes light {
  100% {
    outline-color: transparent;
    outline-offset: 12px;
  }
}

.anime_button {
	z-index: 1;
	transition: .3s;
	position: relative;
	background: linear-gradient(to right,  rgba(181,2,230,1) 0%,rgba(0,97,218,1) 100%);
	border-radius: 40px;
}

.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;
	border-radius: 40px;	
}

.anime_button:hover {
	color: #000 !important;
	opacity: 1 !important;
}

.anime_button:hover::before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}

.anime_button2 {
	z-index: 1;
	transition: .3s;
	position: relative;
	background: linear-gradient(to right,  rgba(234,12,87,1) 0%,rgba(203,57,106,1) 100%);
	border-radius: 40px;
}

.anime_button2::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;
	border-radius: 40px;	
}

.anime_button2:hover {
	color: #000 !important;
	opacity: 1 !important;
}

.anime_button2:hover::before {
	transform-origin: 0% 50%;
	transform: scaleX(1);
}

/* /button */

#top_box01 {
	display: flex;
	width: 98%;
	margin: auto;
}

/* common girlsboxs */

.girlsboxs {
	display: flex;
	width: 100%;
	margin: 0 auto;
	flex-wrap: wrap;
}

.girlsboxs .classicon {}

.girlsboxs .classicon img {width: 100%}

.girlsboxs  .onebox {
    display: block;
    width: calc(100% / 5 - 0px);
    border: 1px solid #fff;
    color: #fff;
    position: relative;
    box-sizing: border-box;
	padding: 1px;
	margin-top: 10px;
}

.girlsboxs .onebox .days {
	font-size: 24px;
	text-align: center;
	background-color: #000;
	padding: 15px 0;
}

.girlsboxs .onebox .img {position: relative}

.girlsboxs .onebox .img .icon01 {
    position: absolute;
    top: 15px;
    left: 6px;
    width: 40%;
    max-width: 100px;
    z-index: 50;
}

.girlsboxs .onebox .img .icon02 {
    position: absolute;
    top: 5px;
    right: 10px;
    width: 30%;
    max-width: 100px;
	z-index: 50;
}

.girlsboxs .onebox .img .icon02 img {
	display: block;
	margin-top: 5px;
}

.girlsboxs .onebox .img .icon03 {
	position: absolute;
	top: 0;
	right: 0;
	width: 33%;
	max-width: 122px;
}

.girlsboxs .onebox .img img {
	width: 100%;
	height: auto;
}

.girlsboxs .onebox .profile {
    background: url(../images/panel_bg.jpg) center top no-repeat;
	background-size: 100% 100%;
	width: 100%;
	padding: 15px 0 0;
}

.girlsboxs .onebox .profile .op {}

.girlsboxs .onebox .profile .op ul {margin: 1% auto;}

.girlsboxs .onebox .profile .op ul li {
	font-size: 1.1vw;
	color: #fff;
	background: #3a1f30;
	width: calc(95% / 2);
	margin: 0.5%;
	text-align: center;
	padding: 1px;
	box-sizing: border-box;
	min-height: 34px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.girlsboxs .onebox .profile div {text-align: center;}

.girlsboxs .onebox .profile .name {
	font-size: 24px;
	margin-bottom: 5px;
}

.girlsboxs .onebox .profile .name span {font-size: 18px;}

.girlsboxs .onebox .profile .size {
	font-size: 18px;
	padding-bottom: 10px;
}

.girlsboxs .onebox .profile .time {
    background: url(../images/time_bg.png) no-repeat center top;
    font-size: 16px;
    padding: 1% 0;
    width: 99%;
    background-size: contain;
    margin: 0 auto 0px;
    box-sizing: border-box;
}

.girlsboxs .onebox .profile .situbox {height: 60px;}

.girlsboxs .onebox .profile .situation {
    text-align: center;
    font-size: 20px;
    bottom: 0;
    width: 100%;
}

.girlsboxs .onebox .profile .situation span {color: #e1a3ed;}

.girlsboxs .onebox .profile .situation2 {
    text-align: center;
    font-size: 14px;
    width: 100%;
    margin-top: -18px;
}

.girlsboxs .onebox .profile .situation2 span {color: #e1a3ed;}

.girlsboxs .onebox .profile .situation.next {
	padding: 5px 0;
	font-size: 22px;
}

.girlsboxs .onebox .profile .situation.next div {
	font-size: 15px;
	line-height: 20px;
}

/* /common girlsboxs */

.schedule .girlsboxs {margin: 0 auto 145px;}

#girls .girlsboxs a {padding-bottom: 0;}

#top_movie .slick-slide {margin: 0px 0.1%;}

/* topevent */

.top_event {
    position: relative;
    width: 34%;
	margin-left: 1%;
}

#event .top_event {background: none;}

.top_event .onebox {
    width: 100%;
    max-width: 1600px;
    margin: 0 1%;
    box-sizing: border-box;
}

.top_event .onebox .bg {
    background: url(../images/ts_img01.jpg) repeat center top;
    background-size: cover;
    box-sizing: border-box;
    border-radius: 20px;
}

.top_event .onebox .bg-bl {
    background: rgba(0, 0, 0, .8);
    width: 100%;
    height: 100%;
    border-radius: 20px;
    box-sizing: border-box;
    border: 1px solid #fff;
}

.top_event .onebox .profbox {}

.top_event .onebox .profbox .day {
	font-size: 14px;
	color: #fff;
	padding: 0 0 20px 15px;
	padding: 0 0 2% 4%;
	text-align: center
}

.top_event .onebox .profbox .title {
	font-family: var(--fontgothic);
	font-size: 20px;
	color: #ff4b8f;
	padding: 0 0 20px 15px;
	padding: 0 0 2% 4%;
	text-align: center;
	font-weight:bold
}

.top_event .onebox .profbox .txt {
    color: #000;
    padding: 10px;
    font-family: var(--fontgothic);
    text-align: center;
    height: 39vh;
    overflow-y: auto;
    background: #fff;
    border-radius: 20px;
}

.top_event .onebox .img {width: 40%;}

.top_event .onebox .img div {position: relative;}

.top_event .onebox .prof {
    width: 100%;
    padding: 20px;
    box-sizing: border-box;
}

.top_event .more-btn span {color: #ffffff;}

.top_event .btn-box {margin: 0 auto 20px;}

#top_newface .slick-slider {position: inherit;}

/* /topevent */

#top_link {background: #000;}

#top_link .links {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: auto;
	justify-content: center;
}

#top_link .links a {
    width: 100%;
    display: block;
    margin: 10px auto;
}

#top_link .links a img {
  width: 100%;
  height: auto;
}

/* navbox */

#pc_navbox {
	position: fixed;
	z-index: -1;
	display: none; 
	top: 0;
	width: 100%;
	height: 100vh; 
	background: #000;
	left: 0;
	transition: all 0.3s;
}

#pc_navbox {
	display: block;
	z-index: 999;
}

#g-nav-list {
	position: fixed;
	width: 100%;
	height: 100vh; /*表示する高さ*/
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	display: flex;
}

#g-nav-list .lbox {
    width: 100%;
    text-align: center;
}

#g-nav-list .lbox img {
	width: 100%;
	height: auto;
	max-width: 300px;
}

#g-nav-list .rbox {
    width: 100%;
	margin-top: 20px;
}

#g-nav-list .rbox .txt {
	color: #fff;
	padding: 5px 0;
	font-size: 3.5vw;
}

#g-nav-list .rbox .txt span {
	font-size: 24px;
	font-size: 1.5vw;
}
#g-nav-list .rbox ul {
	display: flex;
	flex-wrap: wrap;
}

#g-nav-list .rbox ul li {width: calc(100% / 5);}

	@media screen and (max-width: 1300px) {
		#g-nav-list .rbox ul li {width: calc(100% / 3);}
	}

#g-nav-list .rbox ul li .box {
	display: flex;
	justify-content: center;
	color: #fff;
	padding: 50px 0 20px;
	padding: 20% 0 10%;
}

	@media screen and (max-width: 1300px) {
		#g-nav-list .rbox ul li .box {padding: 10% 0 8%;}
	}

#g-nav-list .rbox ul li .box .i {
	padding-right: 2%;
	width: 25%;
	max-width: 70px;
}

#g-nav-list .rbox ul li .box .i img {
	height: auto;
	width: 100%;
	max-width: 60px;
}

#g-nav-list .rbox ul li .box .t {width: 73%;}

#g-nav-list .rbox ul li .box .t p {margin-left: 5px;}

#g-nav-list .rbox ul li .box .t p:first-of-type {font-size: 22px;}

#g-nav-list .rbox ul li .box .t p:last-of-type {
	margin-top: 5px;
	font-size: 13px;
}

#g-nav-list .rbox ul.shop_btn0 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin: 0 auto;
	padding: 5% 0 0;
}

#g-nav-list .rbox ul.shop_btn0 li {
	width:100% ;
	border-bottom: none;
	margin: 0 1%;
}

#g-nav-list .rbox ul.shop_btn1 {
	display: flex;
	flex-wrap: wrap;
	width: 70%;
	margin: 0 auto;
	padding: 5% 0 0;
}

#g-nav-list .rbox ul.shop_btn1 li {
	width: calc(100% / 2 - 2%);
	border-bottom: none;
	margin: 0 1%;
}

#g-nav-list .rbox ul.shop_btn2 {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 auto;
    padding: 1% 0;
    justify-content: center;
}

#g-nav-list .rbox ul.shop_btn2 li {
	width: calc(100% / 1- 2%);
	border-bottom: none;
	margin: 0 1%;
}

.openbtn {
	position: absolute;
	cursor: pointer;
	width: 60px;
	height: 60px;
	right: 20px;
	top: 5vw;
	z-index: 1000;
}

.openbtn.active {position: absolute;}

.openbtn 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;
}

.openbtn span:nth-of-type(1) {top: 17px;}

.openbtn span:nth-of-type(2) {
	top: 0;
	bottom: 0;
}

.openbtn span:nth-of-type(3) {bottom: 17px;}

.openbtn.active span:nth-of-type(1) {
	top: 20px;
	left: 0;
	transform: translateY(6px) rotate(-45deg);
}

.openbtn.active span:nth-of-type(2) {opacity: 0;}

.openbtn.active 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 0.05%;}

.slick-slide img {width: 100%;}

.slick-prev:before, .slick-next:before {color: black;}

.slick-slide {
	transition: all ease-in-out .3s;
	opacity: 1;
}

.slick-active {opacity: 1;}

.slick-current {opacity: 1;}

/* /slider CSS */

#top_boxs01 {}
#top_boxs01 .boxs {padding-bottom: 5%;}

#top_boxs01 .boxs .box {
	max-width: 1200px;
	width: 100%;
	margin: auto;
	display: flex;
}

#top_boxs01 .boxs .box a {
	width: 48%;
	margin: 1%;
	display: block;
}

#top_boxs02 {
	background: url(../images/top_boxs02_bg.jpg);
	background-size: cover;
}

#top_boxs02 .boxs {padding-bottom: 120px;}

#top_boxs02 .boxs .box {
	max-width: 1200px;
	width: 100%;
	margin: auto;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

#top_boxs02 .boxs .box 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%;
    max-width: 1100px;
    margin: 50px auto 0;
    display: flex;
    height: 250px;
}

#hotel_menu .boxs a {
	width: calc(100% / 2 - 84px);
	text-align: center;
	display: block;
	margin: 0 30px;
	color: #fff;
	font-size: 24px;
	padding: 0 30px;
}

#hotel_menu .boxs a span {
    margin-left: 10px;
    vertical-align: middle;
}

.hotel_box01 {
	margin: 60px auto 0px;
	width: 98%;
	max-width: 1500px;
}

.hotel_box01 .tit {
	font-size: 48px;
	text-align: center;
	position: relative;
}

.hotel_box01 .tit span {
	font-size: 24px;
	text-align: center;
	display: block;
}

.hotel_box01 .area_box .txt {
	text-align: center;
	margin: 65px 0 35px;
}

.hotel_box01 .area_box .txt span {
	font-size: 26px;
	color: #fff;
	margin: 0 10px;
}

.hotel_box01 .area_box .txt::before {
    content: "";
    position: absolute;
    left: 0;
    height: 1px;
    width: 35%;
    background: #fff;
    margin-top: 14px;
}

.hotel_box01 .area_box .txt::after {
	content: "";
	position: absolute;
	right: 0;
	height: 1px;
	width: 35%;
	background: #fff;
    margin-top: 14px;
}

.hotel_box01 .area_box .boxs {
	width: 100%;
	margin: auto;
	display: flex;
	flex-wrap: wrap;
}

.hotel_box01 .area_box .boxs a {
	width: calc(100% / 2 - 22px);
	display: block;
	border: 3px solid #fff;
	margin: 15px 10px;
	font-size: 24px;
	color: #fff;
	position: relative;
	box-sizing: border-box;
}

.hotel_box01 .area_box .boxs a div {
    padding: 14px 0 14px 0;
    transition: all 1s;
    text-align: center;
}

.hotel_box01 .area_box .boxs a div span {
    margin-left: 10px;
    vertical-align: middle;
}

.hotel_box01 .area_box .boxs a:hover div {background-color: #3d5496;}

.hotel_box02 {
	margin: 60px auto 0px;
	width: 98%;
	padding-bottom: 70px;
	max-width: 1500px;
}

.hotel_box02 .tit {
	font-size: 48px;
	text-align: center;
}

.hotel_box02 .tit span {
	font-size: 24px;
	text-align: center;
	display: block;
}

.hotel_box02 .txt {
	font-size: 24px;
	padding: 50px 0 0;
	text-align: center;
}

.hotel_box02 .area {
	text-align: center;
	margin: 65px 0 35px;
}

.hotel_box02 .area span {
	font-size: 26px;
	color: #fff;
	margin: 0 10px;
}

.hotel_box02 .area::before {
    content: "";
    position: absolute;
    left: 0;
    height: 1px;
    width: 35%;
    background: #fff;
    margin-top: 14px;
}

.hotel_box02 .area::after {
	content: "";
	position: absolute;
	right: 0;
	height: 1px;
	width: 35%;
	background: #fff;
    margin-top: 14px;
}

.hotel_box02 .hotelarea_box {
    font-size: 24px;
    color: #fff;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    max-width: 1200px;
    margin: auto;
}

.hotel_box02 .hotelarea_box .tit_box {
	background-color: #282828;
	color: #fff;
	display: flex;
	width: 100%;
}

.hotel_box02 .hotelarea_box .tit_box div div {
    padding: 14px 8%;
    font-size: 16px;
}

.hotel_box02 .hotelarea_box .type {
	width: calc(30% - 1px);
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}

.hotel_box02 .hotelarea_box .name {
	width: calc(30% - 1px);
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}

.hotel_box02 .hotelarea_box .tel {
	width: calc(25% - 1px);
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}

.hotel_box02 .hotelarea_box .address {
	width: calc(45% - 1px);
	border-bottom: 1px solid #fff;
	border-left: 1px solid #fff;
}

.hotel_box02 .hotelarea_box .txtb {
	padding: 14px 8%;
	position: relative;
	font-size: 16px;
}

.hotel_box02 .hotelarea_box .titb {display: none;}

.hotel_box02 .hotelarea_box .onebox {
	display: flex;
	color: #fff;
}

.hotel_box02 .hotelarea_box a:hover {opacity: 1;}

.hotel_box02 .hotelarea_box a:hover .onebox {
	transition: all 1s;	
	background-color: #3d5496;
}

.hotel_box02 .hotelarea_box a:hover .address .txtb::after {
	content: "⇀";
	right: 5%;
	position: absolute;
}

.hotel_shop_box {color: #fff;}

.hotel_shop_box .t1 {
    padding-bottom: 30px;
    font-size: 24px;
    text-align: center;
    width: 98%;
    margin: auto;
}

.hotel_shop_box .t2 {
    padding-bottom: 30px;
    font-size: 16px;
    line-height: 1;
    text-align: center;
    width: 98%;
    margin: auto;
    justify-content: space-evenly;
    max-width: 800px;
}

.hotel_shop_box .hotelarea_map {
	width: 100%;
	max-width: 1000px;
	margin: auto;
}

.hotel_shop_box .btn {
    display: block;
    font-size: 20px;
    position: relative;
    padding: 0;
    width: 360px;
    margin: 70px auto;
    border: 3px solid #fff;
    color: #fff;
    text-align: center;
    justify-content: space-between;
    align-items: center;
    transition: 0.5s;
}

.hotel_shop_box .btn span {margin-left: 10px;}

.hotel_shop_box .anime_button {
	background: none;
	border-radius: 0;
}

.hotel_shop_box .anime_button::before {border-radius: 0;}

a.btn {
    display: block;
    font-size: 22px;
    position: relative;
    width: 360px;
    color: #fff;
    text-align: center;
    justify-content: space-between;
    align-items: center;
    transition: 0.5s;
    border: none;
    margin: auto;
    padding: 0;
}

.link_box01 {
	padding-bottom: 80px;
	border-bottom: 1px solid #fff;
}

.link_box01 .txt {
	text-align: center;
	color: #fff;
	font-size: 18px;
	line-height: 1.5;
	margin-top: 70px;
	margin-bottom: 55px;
}

.link_box01 .boxs {
	width: 98%;
	max-width: 555px;
	margin: auto;
}

.link_box01 .boxs .box {
	display: flex;
	margin-bottom: 20px;
}

.link_box01 .boxs .box .t {
	font-size: 18px;
	color: #fff;
	width: 15%;
	text-align: right;
	margin-right: 5%;
}

.link_box01 .boxs .box .b {width: 80%;}

.link_box02 {padding: 60px 0 0;}

.link_box02 .txt {
	padding: 0 0 40px;
	font-size: 30px;
	line-height: 1.5;
	color: #fff;
	text-align: center;
}

.link_box02 .txt span {
	font-size: 24px;
	display: block;
	text-align: center;
}

.link_box02 .boxs {
	width: 95%;
	max-width: 2000px;
	margin: auto;
	text-align: center;
}

.link_box02 .boxs a {
	display: inline-block;
	margin: 0.5%;
}

/* schedule.html */

.schedule_btn {}

.schedule_btn .schedule_btns {width: 100%;}

.schedule_btn .schedule_btns ul {	
	max-width: 1680px;
	margin: 70px auto 0;
	gap:5px; 
}

.schedule_btn .schedule_btns ul li {
    width: calc(100% / 7 - 50px);
    box-sizing: border-box;
    border: 1px solid #fff;
}

.schedule_btn .schedule_btns ul li.on {
    width: calc(100% / 7 - 50px);
    box-sizing: border-box;
    border: none;
}

.schedule_btn .schedule_btns .btn {
    display: block;
    margin: 1px 1px;
    line-height: 1.6;
    padding: 13px 5px 10px 8px;
    text-align: center;
    font-size: 20px;
    width: 100%;
    color: #fff;
    box-sizing: border-box;
}

.schedule_btn .schedule_btns ul li.on .btn {
	background: linear-gradient(to right, rgba(181, 2, 230, 1) 0%, rgba(0, 97, 218, 1) 100%);
}

.schedule_btn .schedule_btns .btn:hover {
	background-color: #3d5496;
	color: #fff;
}

.schedule_day {
	font-size: 24px;
	text-align: center;
	padding: 45px 0 10px;
	color: #fff;
}

/* /schedule.html */

/* system.html */

#system {padding-bottom: 0;}

#system .tit {
  text-align: center;
  font-size: 30px;
  color: #fff;
  line-height: 1.8;
}

#system .tit span {
  text-align: center;
  font-size: 20px;
  display: block;
}

#system .subbox {padding: 50px 0 0;}

#system .subbox .tit-e {
    position: relative;
    text-align: center;
    font-size: 46px;
}

	@media screen and (max-width: 1400px) {
		#system .subbox .tit-e {font-size: 34px;}
	}

#system .subbox .tit-e::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 27%;
	background: #FFF;
	height: 1px;
}

#system .subbox .tit-e::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 27%;
	background: #FFF;
	height: 1px;
}

#system .subbox .tit-j {
	font-size: 16px;
	text-align: center;
	margin-top: 10px;
}

#system .bg {
	background: url(../images/sys_bg1.jpg) no-repeat top center;
	background-attachment: fixed;
}

/* sys00 */

.system_box00 {
    width: 90%;
    max-width: 1500px;
    margin: 20px auto;
}

.system_box00 .navbtn {}

.system_box00 .navbtn .btns {width: 100%;}

.system_box00 .navbtn .btns .btn {
    width: calc(100% / 2 - 42px);
    border: 4px solid #fff;
    text-align: center;
    padding: 15px 0;
    display: block;
    font-size: 16px;
    color: #fff;
    margin: 0 20px;
    box-sizing: border-box;
    background: none;
    border-radius: 0;
    max-width: 100%;
    vertical-align: unset;
    line-height: normal;
}

.system_box00 .navbtn .btns .btn span {
	display: block;
	font-size: 42px;
	text-align: center;
}

.system_box00 .anime_button::before {border-radius: 0;}

/* /sys00 */

/* sys1 */

.system_box1 {
	width: 100%;
	margin: 0 auto 0;
}

.system_box1 .txt {
    text-align: center;
    font-size: 16px;
    margin: 50px auto 80px;
}

.system_box1 .boxs {
    margin: 50px auto;
    box-sizing: border-box;
    padding: 2% 7% 2% 10%;
    width: 100%;
    background: #000;
}

.system_box1 .boxs .priceboxs {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1200px;
    margin: auto;
}

.system_box1 .boxs .priceboxs .onebox {width: calc(100% / 3 - 1px);}

.system_box1 .boxs .priceboxs .onebox .box {padding: 20px 0;}

.system_box1 .boxs .priceboxs .onebox .box .t {
	color: #fff;
	font-size: 25px;
}

.system_box1 .boxs .priceboxs .onebox .box .t span {font-size: 16px;}

.system_box1 .boxs .priceboxs .onebox .box .p {
    font-size: 42px;
    font-style: italic;
    color: #ff4b8f;
    text-align: left;
}

.system_box1 .boxs .priceboxs .onebox .box .p span {
    font-size: 24px;
    vertical-align: middle;
    padding-left: 2%;
    font-style: italic;
}

.system_box1 .boxs .priceboxs .onebox2 {width:100%}

.system_box1 .boxs .priceboxs .onebox2 .box {padding: 20px 0;}

.system_box1 .boxs .priceboxs .onebox2 .box .t {
	color: #fff;
	font-size: 25px;
}

.system_box1 .boxs .priceboxs .onebox2 .box .t span {font-size: 16px;}

.system_box1 .boxs .priceboxs .onebox2 .box .p {
    font-size: 42px;
    font-style: italic;
    color: #ff4b8f;
    text-align: left;
    width: 43%;
	margin-left: 8px;
}

.system_box1 .boxs .priceboxs .onebox2 .box .p span {
    font-size: 24px;
    vertical-align: middle;
    padding-left: 2%;
    font-style: italic;
}


/* /sys1 */

/* sys2 */

.system_box2 {
	width: 100%;
	margin: 0 auto 0;
}

.system_box2 .txt {
    text-align: center;
    font-size: 16px;
    margin: 30px auto;
}

.system_box2 .boxs {
    margin: 50px auto 0;
    max-width: 1600px;
    box-sizing: border-box;
    padding: 2% 7% 2% 7%;
}

.system_box2 .boxs .opboxs {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1600px;
    margin: auto;
}

.system_box2 .boxs .opboxs .onebox {width: calc(100% / 4 - 1px);}

.system_box2 .boxs .opboxs .onebox .box {
    padding: 10px 5px;
    border: 3px solid #fff;
    box-sizing: border-box;
    margin: 2% 2%;
}

.system_box2 .boxs .opboxs .onebox .box .t {
	color: #fff;
	font-size: 28px;
	text-align: center;
}

.system_box2 .boxs .priceboxs .onebox .box .p .n {font-size: 30px;}

.system_box2 .boxs .priceboxs .onebox .box .p .w {font-size: 40px;}

.system_box2 .boxs .priceboxs .onebox .box .p .r {font-size: 24px;}

.system_box2 .boxs .priceboxs {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1600px;
    margin: auto;
}

.system_box2 .boxs .priceboxs .onebox {width: calc(100% / 2 - 1px);}

.system_box2 .boxs .priceboxs .onebox .box {
    padding: 0 2%;
    position: relative;
    margin: 2% 0;
    min-height: 150px;
}

.system_box2 .boxs .priceboxs .onebox:last-of-type .box {min-height:inherit ;}

.system_box2 .boxs .priceboxs .onebox .box::before {
	content: "";
	position: absolute;
	left: 0;
	width: 10px;
	height: 100%;
	background: #FFF;
}

.system_box2 .boxs .priceboxs .onebox .box .t {
	color: #fff;
	font-size: 25px;
	width: 100%;
	padding-left: 10px;
}

.system_box2 .boxs .priceboxs .onebox .box .t span {font-size: 16px;}

.system_box2 .boxs .priceboxs .onebox .box .p {
    font-size: 40px;
    font-style: italic;
    color: #ff4b8f;
    text-align: left;
	width: 100%;
	padding-left: 10px;
}

.system_box2 .boxs .priceboxs .onebox .box .p span {
    font-size: 24px;
    vertical-align: middle;
    padding-left: 1%;
    font-style: italic;
}

.system_box2 .boxs .priceboxs .onebox .box .info {
	color: #fff;
	font-size: 16px;
	width: 100%;
	padding-left: 10px;
}

.system_box2 .ptboxs {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
    width: 100%;
    max-width: 1600px;
    margin: auto;
}

.system_box2 .ptboxs .onebox {width: calc(100% / 4 - 1px);}

.system_box2 .ptboxs .onebox .box {
    border: 1px solid #fff;
    box-sizing: border-box;
    margin: 2% 2%;
}

.system_box2 .ptboxs .onebox .box .t {text-align: center;}

.system_box2 .ptboxs .onebox .box .t img {
	width: 100%;
	max-width: 370px;
}

/* /sys2 */

/* sys3 */

.system_box3 {
    background: url(../images/sys_bg3.jpg) no-repeat center top;
    width: 100%;
    margin: 50px auto;
}

.system_box3 .boxs {}

.system_box3 .boxs .credit {
	text-align: center;
	color: #fff;
	padding: 35px 0 40px;
}

.system_box3 .boxs .credit .box {}
.system_box3 .boxs .credit .box .t1 {
	text-align: center;
	font-size: 30px;
	padding: 0 0 10px;
}

.system_box3 .boxs .credit .box .t2 {
	text-align: center;
	font-size: 20px;
	padding: 0 0 35px;
}

.system_box3 .boxs .credit .box .t3 {
	text-align: center;
	font-size: 16px;
	line-height: 1.8;
}

.system_box3 .boxs .credit .box .b {
    text-align: center;
    padding: 40px 0;
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    width: 90%;
    margin: 30px auto 15px;
	position: relative;
}

.system_box3 .boxs .credit .box .b::before {
    content: "";
    position: absolute;
    top: 0px;
    right: 0;
    border-top: 1px solid #fff;
    width: 37%;
}

	@media screen and (max-width: 1500px) {
		.system_box3 .boxs .credit .box .b::before {width: 30%;}
	}

.system_box3 .boxs .credit .box .b::after {
    content: "";
    position: absolute;
    top: 0px;
    left: 0;
    border-top: 1px solid #fff;
    width: 37%;
}

	@media screen and (max-width: 1500px) {
		.system_box3 .boxs .credit .box .b::after {width: 30%;}
	}

.system_box3 .boxs .credit .box .b .htxt {
    position: absolute;
    top: -12px;
    left: 40%;
}

	@media screen and (max-width: 1500px) {
		.system_box3 .boxs .credit .box .b .htxt {left: 38%;}
	}

.system_box3 .boxs .credit .box .b .htxt p {
    text-align: center;
    font-size: 24px;
}

.system_box3 .boxs .credit .box .b .i {width: 20%;}

.system_box3 .boxs .credit .box .b .i i {
    width: calc(90% / 3);
    margin: 5px;
}

.system_box3 .boxs .credit .box .b .i i img {}

.system_box3 .boxs .credit .box .b .btn {
    line-height: 60px;
    text-align: center;
    font-size: 20px;
    color: #fff;
    display: inline-block;
    vertical-align: top;
    margin-left: 0;
    width: calc(60% - 2px);
    max-width: 388px;
    position: relative;
    border: none;
    margin: 0 20px;
    padding: 0;
}

.system_box3 .boxs .credit .box .b .btn img {
    width: 34px;
    position: absolute;
    top: 12px;
    right: 12px;
}

/* /sys3 */

/* sys4 */

#system .system_box4 .subbox .tit-e::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 23%;
	background: #FFF;
	height: 1px;
}

#system .system_box4 .subbox .tit-e::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 23%;
	background: #FFF;
	height: 1px;
}

.system_box4 {
	width: 100%;
	margin: 50px auto 0;
}

.system_box4 .txt {
    text-align: center;
    font-size: 16px;
    margin: 30px auto;
	line-height: 1.5;
}

.system_box4 .pricebox {width: 100%;}

.system_box4 .pricebox h4 {
    width: 100%;
    color: #ff4b8f;
    font-size: 48px;
    text-align: center;
    margin: 30px auto;
}

	@media screen and (max-width: 1500px) {
		.system_box4 .pricebox h4 {font-size: 34px;}
	}

.system_box4 .pricebox h4 span {font-size: 64px;}

	@media screen and (max-width: 1500px) {
		.system_box4 .pricebox h4 span {font-size: 54px;}
	}

.system_box4 .pricebox .p-title {
    width: 94%;
    background: #ff4b8f;
    color: #fff;
    text-align: center;
    max-width: 1400px;
    margin: auto;
    padding: 4px;
    font-size: 24px;
}

.system_box4 .pricebox .p-area {
    width: 94%;
    max-width: 1200px;
    margin: 20px auto;
    line-height: 1.5;
}

.system_box4 .transportationboxs {
    width: 90%;
    max-width: 1400px;
    margin: 20px auto 100px;
    border-bottom: 1px solid #fff;
}

.system_box4 .transportationboxs .boxs {}

.system_box4 .transportationboxs .boxs .onebox {
  border-bottom: 1px solid #fff;
  padding: 30px 0;
}

.system_box4 .transportationboxs .boxs .onebox:first-child {border-top: 1px solid #fff;}

.system_box4 .transportationboxs .boxs .onebox:last-child {border-bottom: none;}

.system_box4 .transportationboxs .boxs .onebox .box {
    display: flex;
    line-height: 1.5;
    align-items: center;
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 {
	width: 42%;
	color: #ff4b8f;
	font-size: 42px;
	font-style: italic;
	text-align: center;
}

	@media screen and (max-width: 1500px) {
		.system_box4 .transportationboxs .boxs .onebox .box .t1 {font-size: 34px;}
	}

.system_box4 .transportationboxs .boxs .onebox .box .t1 span {
	font-size: 24px;
	vertical-align: middle;
	padding-left: 3%;
}

	@media screen and (max-width: 1500px) {
		.system_box4 .transportationboxs .boxs .onebox .box .t1 span {font-size: 20px;}
	}

.system_box4 .transportationboxs .boxs .onebox .box .t2 {
    width: 57%;
    padding-left: 1%;
    color: #fff;
    font-size: 20px;
}

/* /sys4 */

/* sys5 */

.system_box5 {
	width: 100%;
	margin: 50px auto ;
}

.system_box5 .txt {
    text-align: center;
    font-size: 40px;
    margin: 30px auto;
}

	@media screen and (max-width: 1300px) {
		.system_box5 .txt {
			font-size: 33px;
			padding: 2% 2% 4% 24%;
		}
	}

.system_box5 .boxs {
	margin: 50px auto 0;
	max-width: 1600px;
	box-sizing: border-box;
	padding: 2% 7% 2% 7%;
}

.system_box5 .boxs .priceboxs {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1600px;
    margin: auto;
}

.system_box5 .boxs .priceboxs .inbox {width: calc(100% / 2 - 1px);}

.system_box5 .boxs .priceboxs .onebox {padding: 0% 2% 0% 26%;}

.system_box5 .boxs .priceboxs .onebox .box {
    position: relative;
    margin: 2%;
}

.system_box5 .boxs .priceboxs .onebox .box .t {
	color: #fff;
	font-size: 25px;
	width: 100%;
	padding-left: 10px;
}

.system_box5 .boxs .priceboxs .onebox .box .t span {font-size: 16px;}

.system_box5 .boxs .priceboxs .onebox .box .p {
    font-size: 44px;
    font-style: italic;
    color: #ff4b8f;
    text-align: left;
	width: 100%;
	padding-left: 10px;
}

.system_box5 .boxs .priceboxs .onebox .box .p span {
    font-size: 24px;
    vertical-align: middle;
    padding-left: 3%;
    font-style: italic;
}

.system_box5 .boxs .priceboxs .onebox .box .info {
	color: #fff;
	font-size: 16px;
	width: 100%;
	padding-left: 10px;
}

/* /sys5 */

/* sys6 */

.system_box6 {
    width: 100%;
    margin: 50px auto 0;
}

.system_box6 .transportationbtn {
    justify-content: space-evenly;
    max-width: 1200px;
    margin: 50px auto;
}

.transportationbtn .more {margin: 50px 0 0;}

.transportationbtn .more span {top: 18px;}

.system_box6 .transportationbtn .btns {
	width: 100%;
	max-width: 800px;
	margin: 35px auto 0;
	display: flex;
}

.system_box6 .transportationbtn .btns .btn {
    width: calc(100% / 2 - 42px);
    border: 4px solid #fff;
    text-align: center;
    padding: 15px 0;
    display: block;
    font-size: 20px;
    color: #fff;
    margin: 0 20px;
}

.system_box6 .transportationbtn .btns .btn span {
	display: block;
	font-size: 24px;
	text-align: center;
}

/* /sys6 */

/* sys7 */

.system_box7 {padding: 50px 0 130px;}

.system_box7 .matterboxs {
    width: 94%;
    max-width: 880px;
    margin: auto;
    padding: 60px 0 0;
    font-size: 20px;
    color: #fff;
    line-height: 1.8;
}

/* /sys7 */

/* special */

.special {
	width: 100%;
	margin: 0 auto 0;
}

.special .pricebox {
    width: 100%;
    max-width: 1200px;
    margin: 0;
    margin: 50px auto;
}

.special .pricebox .obox {
    padding: 10px 0 10px;
    width: 43%;
    border: 1px solid #fff;
    box-sizing: border-box;
    border-radius: 16px;
    margin: 1%;
}

.special .pricebox .obox p {text-align: center;}

.special .pricebox .obox .time {font-size: 22px;}

.special .pricebox .obox .ttl {
    font-size: 24px;
	font-style: italic;
	background: #ff4b8f;
    padding: 8px;
    margin-top: 10px;
}

.special .pricebox .obox .pri {
    font-size: 40px;
	font-style: italic;
	color: #ff4b8f;
}

.special .pricebox .obox .pri span {
    font-size: 28px;
    padding-left: 10px;
    vertical-align: middle;
    font-style: italic;
}

/* /special */

/* /system.html */

/*movie*/

#top_movie {
    background: url(../images/mov_bg1.jpg) no-repeat center top;
    background-attachment: fixed;
	background-size: 100%;
}

.movie {
	padding: 0 0 60px;
	width: 100%;
}

.movie .onebox {
    width: calc(98% / 3);
    gap: 1%;
    margin: 0.3%;
}

.movie .oneboxs {padding: 0 0 20px;}

.movie .onebox .boxs {
    border: 5px solid #fff;
    box-sizing: border-box;
	border-image: linear-gradient(to right, #b402e6, #0161da);
	border-image-slice: 1;
}

.movie .onebox .txtbox {
    background: url(../images/mov_bg.jpg) no-repeat center top;
    color: #fff;
    justify-content: space-between;
    padding: 16px 4%;
    box-sizing: border-box;
        border-bottom: 1px solid #fff;
}

.movie .onebox .movie_img {
    width: 100%;
    padding: 5%;
    box-sizing: border-box;
}

.movie .onebox .movie_img video {
	width: 100%;
	height: auto;
}

.movie .onebox .txtbox .prof {
	width: 100%;
    line-height: 1.5;
    justify-content: space-between;
}

.movie .onebox .txtbox .prof .name {font-size: 22px;}

	@media screen and (max-width: 1600px) {
		.movie .onebox .txtbox .prof .name {font-size: 1.3vw;}
	}

.movie .onebox .txtbox .prof .name span {font-size: 16px;}

	@media screen and (max-width: 1600px) {
		.movie .onebox .txtbox .prof .name span {font-size: 1vw;}
	}

.movie .onebox .txtbox .prof .size {font-size: 14px;}

	@media screen and (max-width: 1300px) {
		.movie .onebox .txtbox .prof .size {font-size: 12px;}
	}

.movie .onebox .txtbox .icon {width: 33%;}

.movie .onebox .txtbox .icon .icon01 {
    margin: 0 2% 4px;
    text-align: center;
    font-size: 16px;
	background: linear-gradient(to right,  rgba(255,76,143,1) 0%,rgba(255,139,156,1) 100%);
    padding: 2px 0;
}

	@media screen and (max-width: 1300px) {
		.movie .onebox .txtbox .icon .icon01 {font-size: 13px;}
	}

.movie .onebox .txtbox .icon .time {
	text-align: center;
	font-size: 15px;
	padding: 0 2.5%;
}

	@media screen and (max-width: 1300px) {
		.movie .onebox .txtbox .icon .time {font-size: 13px;}
	}

.movie .onebox .txtbox .icon .time span {color: #e50201;}

.movie .onebox .txtbox .links {
    width: 33%;
    background: linear-gradient(to right, rgba(181, 2, 230, 1) 0%, rgba(0, 97, 218, 1) 100%);
    border-radius: 40px;
}

	@media screen and (max-width: 1600px) {
		.movie .onebox .txtbox .links {width: 28%;}
	}

.movie .onebox .txtbox .links:hover p {color: #000;}

.movie .onebox .txtbox .links p {
    color: #fff;
    font-size: 16px;
    text-align: center;
    padding: 10px;
}

	@media screen and (max-width: 1600px) {
		.movie .onebox .txtbox .links p {
			font-size: 13px;
			padding: 8px;
		}
	}

.movie .onebox .txtbox .links p span { font-size: 13px;}

	@media screen and (max-width: 1600px) {
		.movie .onebox .txtbox .links p span { font-size: 11px;}
	}

.movie .top_movie_btn {
    width: 360px;
    text-align: center;
    line-height: 60px;
    color: #fff;
    position: relative;
    margin: auto;
    display: block;
    font-size: 22px;
}

.movie .top_movie_btn span {font-size: 18px;}

.movie .slick-prev {left: 0;}

.movie .slick-prev:before {
	background: url(../images/naxt_left.png) no-repeat;
	width: 60px;
	height: 60px;
	content: '';
	display: block;
	z-index: 500;
}

.movie .slick-next {right: 40px;}

.movie .slick-next:before {
	background: url(../images/naxt_right.png) no-repeat;
	width: 60px;
	height: 60px;
	content: '';
	display: block;
}

#movie .movie .oneboxs {
	display: flex;
	flex-wrap: wrap;
}

#movie .movie .onebox {
	width: calc(100% / 3);
	margin: 0;
	display: block;
    padding: 0.3%;
    box-sizing: border-box;


}

#movie .movie .onebox .boxs {
    border: 5px solid #000;
    box-sizing: border-box;
    border-image: #000;
    border-image-slice: 1;
        box-sizing: border-box;
    border: 1px solid #fff;

}

 /* ranking.hrml */

#ranking {}

#ranking .rank-nav1 {
    width: 100%;
    position: relative;
}

#ranking .rank-nav1 .tit-box {
    width: 52%;
    justify-content: end;
}

#ranking .rank-nav1 .tit-box h3 {
    font-size: 40px;
    font-weight: bold;
}

#ranking .rank-nav1 .tit-box img {
    width: 60px;
    margin: 0 10px;
}

#ranking .rank-nav1 {
    width: 100%;
    position: relative;
    margin: 10px 0 50px;
}

#ranking .rank-nav1 .month-nav ul {}

#ranking .rank-nav1 .month-nav ul li {margin: 0 10px;}

#ranking .rank-nav1 .month-nav ul li a {
    color: #fff;
    font-size: 24px;
    border: 3px solid #fff;
    padding: 10px 35px;
    box-sizing: border-box;
}

#ranking .rank-nav1 .month-nav ul li span {
	font-size: 18px;
	margin-left: 8px;
}
			
#ranking .rank-nav2 {margin: 30px auto;}

#ranking .rank-nav2 .op-nav {}
#ranking .rank-nav2 .op-nav ul {}

#ranking .rank-nav2 .op-nav ul li {
    margin: 0 10px;
    width: 25.2%;
}

	@media screen and (max-width: 1300px) {
		#ranking .rank-nav2 .op-nav ul li {width: 30.2%;}
	}

#ranking .rank-nav2 .op-nav ul li a {
    color: #fff;
    font-size: 24px;
    border: 3px solid #fff;
    padding: 10px 35px;
    box-sizing: border-box;
    width: 100%;
    display: block;
    text-align: center;
}

#ranking .rank-nav2 .op-nav ul li a.active {
    color: #ff4b8f;
	border: 3px solid #ff4b8f;
}

#ranking .rank-nav2 .op-nav ul li span {
	font-size: 18px;
	margin-left: 8px;	
}

#ranking .ranking {}

#ranking .girlsboxs .onebox {
    width: calc(100% / 5 - 0px);
    border: none;
}

#ranking .girlsboxs .onebox .profile {background: none;}

#ranking .ranking .oneboxs {
	display: flex;
	flex-wrap: wrap;
}

#ranking .ranking .oneboxs a.onebox {
	width: 100%;
	margin-bottom: 30px;
}

#ranking .ranking .oneboxs a.onebox:hover {
	opacity: .8;
	transition: all 1s;
}

#ranking .ranking .oneboxs a.onebox .bg {
	background: url(../images/rank_bg.jpg);
	background-position: top center;
	background-size: 100% 100%;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
    width: 100%;
    max-width: 1600px;
    margin: 0 auto;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box1 {width: 32%;}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 {width: 55%;}
  
#ranking .ranking .oneboxs a.onebox .bg .boxs .box1 .ranking_img {
    background: url(../images/rank_frame.png) no-repeat center top;
    text-align: center;
    padding: 18px 20px;
    background-size: contain;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box1 img {
    width: 100%;
    height: auto;
    max-width: 480px;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 {
	padding: 5% 5% 5% 0;
	color: #fff;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_no {
    margin-bottom: 10px;
    text-align: right;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_no img {
    width: 38vw;
    height: auto;
    max-width: 540px;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt {}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt {
    background: rgba(0, 0, 0, .8);
    padding: 10px 15px;
    height: 25vw;
    max-height: 412px;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt .name {
	font-size: 22px;
	padding: 0 1% 5px;
	margin-bottom: 5px;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt .name span {font-size: 18px;}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt .size {
	font-size: 18px;
	padding: 0 1% 5px;
	margin-bottom: 5px;
}

#ranking .ranking .oneboxs a.onebox .bg .boxs .box2 .ranking_txt .txt {
	font-size: 18px;
	font-family: var(--fontgothic);
	padding: 5px 1% 0;
	margin-top: 5px;
	height: 18.5vw;
	overflow-y: scroll;
}

#ranking .girlsboxs {
    display: flex;
    width: 100%;
    margin: 20px auto 145px;
    flex-wrap: wrap;
}

 /* /ranking.hrml */

/* news.html */

.news .oneboxs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    max-width: 1680px;
    margin: auto;
}

.news .oneboxs .onebox {
    background: rgba(0, 0, 0, .6);
    margin: 1%;
    padding: 1.5%;
    display: flex;
    width: 48%;
    box-sizing: border-box;
    border: 1px solid #fff;
    border-radius: 20px;
}

.news .oneboxs .onebox .inner {}

.news .oneboxs .onebox .info {
    font-size: 16px;
    margin: 10px auto 10px;
    background: #3d5496;
    padding: 4px 0;
    width: 90%;
    text-align: center;
    max-width: 450px;
}

.news .oneboxs .imgbox {
    padding: 0;
    width: 100%;
    margin: 30px auto 10px;
    text-align: center;
}

.news .oneboxs .imgbox img {
    max-width: 600px;
    width: 100%;

}

.news .oneboxs .txtbox {width: 98%;}

.news .oneboxs .txtbox .prof {font-family: var(--fontgothic);}

.news .oneboxs .txtbox .prof .time {
	border: 1px solid #fff;
	padding: 10px 10px 5px;
	font-size: 24px;
	line-height: 50px;
	margin-bottom: 20px;
	display: inline-block;
}

.news .oneboxs .txtbox .prof .time span {
	color: #f00;
	font-weight: 500;
	line-height: 50px;
	font-size: 40px;
	font-family: '游明朝', 'YuMincho', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN W3', 'HiraMinProN-W3', 'ヒラギノ明朝 ProN', 'Hiragino Mincho ProN', 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'Noto Serif JP', serif;
}

.news .oneboxs .txtbox .prof .time span:last-child {
	font-size: 24px;
	font-family: var(--fontgothic);
}

.news .oneboxs .title {
    font-size: 1.4em;
    margin: 0 auto 10px;
    background: #ff4b8f;
    color: #fff;
    padding: 4px 0;
    width: 100%;
    text-align: center;
	font-family: var(--fontgothic);
	border-radius: 30px;
	max-height: 23px;
}

.news .oneboxs .txtbox .prof .txt {
    height: 12vw;
    overflow-y: auto;
    margin: 30px auto;
    width: 90%;
    text-align: center;
    color: #fff;
}

.scrolldesign::-webkit-scrollbar {width: 5px;}

.scrolldesign::-webkit-scrollbar-track {
	background-color: #676167;
	border-radius: 100px;
}

.scrolldesign::-webkit-scrollbar-thumb {
	background-color: #3d5496;
	border-radius: 100px;
}

/* 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: #fff;
    border: 2px solid #fff;
    width: 300px;
    padding: 5px;
    box-sizing: border-box;
    margin: 50px auto;
}

.mailmagazine_box02 {
    width: 90%;
    max-width: 900px;
    margin: auto;
}

.mailmagazine_box02 .txt {
	width: 100%;
	color: #fff;
}

.mailmagazine_box02 .txt .t1 {
    font-size: 18px;
    margin-bottom: 30px;
    text-align: center;
}

.mailmagazine_box02 .txt .t2 {
    font-size: 18px;
    line-height: 1.8;
    margin-bottom: 20px;
    text-align: center;
}

.mailmagazine_box02 .txt .t2 span {font-size: 24px;}

.mailmagazine_box02 .txt .btn {
    border: 2px solid #fff;
    padding: 20px 0;
    font-size: 22px;
    color: #fff;
    display: block;
    margin-top: 20px;
    text-align: center;
    margin: 0 auto;
    max-width: 400px;
    font-weight: bold;
	background: none;
    border-radius: 0;
    line-height: normal;
}

.mailmagazine_box02 .txt .anime_button::before {border-radius: 0;}

.mailmagazine_box02 .img {
    width: 100%;
    margin-top: 20px;
}

.mailmagazine_box02 .img .box {
    padding: 20px;
    text-align: center;
}

.mailmagazine_box02 .img .box img {
	width: 250px;
	height: auto;
}

.mailmagazine_box02 .img .box .txtbox {
    padding: 20px;
    background: #fff;
    margin-top: 24px;
    width: 100%;
    max-width: 520px;
    margin: 24px auto;
}

.mailmagazine_box02 .img .box .t1 {
    text-align: center;
    font-size: 18px;
    color: #3d5496;
}

.mailmagazine_box02 .img .box .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 30px;
	font-size: 20px;
}

.pagination button a {color: #fff;}

.pagination button a:active{color: #ff4b8f;}

.pagination .disabled {display: none;}

.pagination .pagination-list {display: flex;}

.pagination .pagination-list a {
	color: #fff;
	display: block;
	width: 30px;
	text-align: center;
	line-height: 30px;
	margin: 0 2.5px;
}

.pagination .item a {
	background-color: #ff4b8f;
	color: #fff;
}

.pagination .items {margin: 0 2%;}

.pagination button {
	background: none;
	color: #fff;
	border: none;
	font-size: 20px;
}

.pagination .prev {margin-right: 5%;}
.pagination .next {margin-left: 5%;}

/* /pagination */

/*.UpMove.DownMove {display: none;}*/

#header_bar.UpMove {
	position: fixed;
	width: 100%;
	animation: UpAnime 0.2s 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.0s forwards;
	top: 0
}

@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%;
    margin: 10px auto;
    text-align: center;
    color: #000;
   /* background: rgb(255,255,255,0.8);*/
}

figure.cap-efct * {box-sizing: border-box;}

figure.cap-efct img {
	width: 100%;
	transition: opacity 0.3s;
	opacity: 1;
}

figure.cap-efct span {
	width: 100%;
	transition: opacity 0.3s;
	opacity: 1;
}

figure.cap-efct figcaption {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 5px;
}

figure.cap-efct 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;
}

figure.cap-efct p,
figure.cap-efct .txt-space {
    margin: 0 0 5px;
    transition: opacity 0.3s, transform 0.3s;
    opacity: 0;
}

figure.cap-efct p {
    text-align: center;
    font-size: 16px;
    padding: 65% 0;
    color: #fff;
}

	@media screen and (max-width: 1920px) {
		figure.cap-efct p {font-size: 1.1vw;}
	}

	@media screen and (max-width: 1300px) {
		figure.cap-efct p {font-size: 13px;}
	}

figure.cap-efct .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) {
		figure.cap-efct .txt {font-size: 1.4vw;}
	}

figure.cap-efct p span {
    border: 2px solid #fff;
    padding: 5px 15px;
    letter-spacing: 4px;
}

figure.cap-efct a {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	color: #fff;
}

figure figcaption:hover {background: rgba(0,0,0,.4);}

figure.cap-efct:hover img {opacity: 0.9;}

figure.cap-efct:hover figcaption h2 {
	transition-delay: 0.3s;
	transform: translate3d(0%, 0%, 0);
	opacity: 1;
}

figure.cap-efct:hover figcaption p {
	transition-delay: 0.3s;
	opacity: 0.9;
}

figure.cap-efct:hover figcaption .txt-space {
	transition-delay: 0.3s;
	opacity: 1;
}
/*
figure.cap-efct:hover figcaption::before {
	top: 30px;
	bottom: 30px;
	transition-delay: 0s;
	opacity: 1;
	background: rgba(0, 0, 0, .4);
}*/

.girlsboxs .onebox .img figure {
	margin: 0;
	padding: 0;
	overflow: hidden;
	position: relative;
}

.girlsboxs .onebox .img figure img {	
	width: 100%;
	max-width: 428px;
	transform: scale(1);
	transition: .3s ease-in-out;
}

.girlsboxs .onebox .img figure figcaption {
    position: absolute;
    width: 100%;
    left: 0;
    bottom: 0;
	z-index: 1;
}

.girlsboxs .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: 50px 0 30px;
	text-align: center;
	color: #fff;
}

	@media screen and (max-width:1300px) {.t_tit {font-size: 50px;}}

.t_tit span {
	font-size: 24px;
	display: block;
	text-align: center;
}

	@media screen and (max-width:1300px) {.t_tit span {font-size: 20px;}}

.titlebox {
    width: 100%;
    position: relative;
}

.title-bg {
    width: 100%;
    z-index: -1;
}

.title-bg.girl {
    background: url(../images/tit_girl.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.sch {
    background: url(../images/tit_sch.jpg) scroll center top;
    background-attachment: fixed;
	background-size: cover;
}

#top_schedule.tsch {
    background: url(../images/top_sch_bg1.jpg) scroll center top;
    background-attachment: fixed;
	background-size: cover;
}

.title-bg.now {
    background: url(../images/tit_now.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.mov {
    background: url(../images/tit_mov.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.hl {
    background: url(../images/tit_hl.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.ht {
    background: url(../images/tit_ht.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}
.title-bg.news {
    background: url(../images/tit_news.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.event {
    background: url(../images/tit_evt.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.nf {
    background: url(../images/tit_newface.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.cnt {
    background: url(../images/tit_cnt.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.sys {
    background: url(../images/tit_sys.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.wait {
    background: url(../images/tit_sys.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.how {
    background: url(../images/tit_sys.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.prof {
    background: url(../images/tit_sch.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.mm {
    background: url(../images/tit_mm.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.rank {
    background: url(../images/tit_rank.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.mov {
    background: url(../images/tit_mov2.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.rank {
    background: url(../images/tit_rank.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

.title-bg.cos {
    background: url(../images/tit_sch.jpg) no-repeat scroll center top #000;
	background-attachment: fixed;
}

/* /ALL TITLE */

@media screen and (max-width:1600px) {
	#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:1600px) {
	.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:1520px) {
	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:1520px) {
	.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:1300px) {
	#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, .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%;
	}
}

@media screen and (max-width:1300px) {	
	.girlsboxs .onebox {width: calc(100% / 4 - 2px);}
	#top_box01 .top_slider_box .t {font-size: 40px;}
	#top_box01 .top_slider_box .t span {font-size: 18px;}
	#top_newface .onebox .profbox .box {font-size: 25px;}
	#top_newface .onebox .profbox .name {font-size: 20px;}
}
	
@media screen and (max-width:1300px) {
	.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:1300px) {	
	#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:1300px) {	
	.system_box03 .optionboxs .boxs .box .onebox .t1 {font-size: 20px;}
	.system_box03 .optionboxs .boxs .box .onebox .t2 {font-size: 17px;}
	.system_box03 .optionboxs .boxs .box .onebox .t3 {font-size: 23px;}
	.system_box03 .optionboxs .boxs .box .onebox .t3 span {font-size: 16px;}
}

/* btn01 */

.btn-box {
	width: 240px;
	margin: 20px auto 0;
}

.more-btn {
	width: 240px;
	text-align: center;
	position: relative;
	cursor: pointer;
}

.more-btn-inner {
	width: 46px;
	height: 46px;
	border-radius: 35px;
	position: absolute;
	left: 0;
	z-index: 100;
	background: linear-gradient(to right,  rgba(181,2,230,1) 0%,rgba(0,97,218,1) 100%);

}

.more-btn-inner:hover {background: linear-gradient(to right,  rgba(181,2,230,1) 0%,rgba(0,97,218,1) 100%);}

.more-btn span {
	font-size: 1rem;
	color: #313131;
	line-height: 48px;
	letter-spacing: 1.4px;
	position: relative;
	left: 0px;
	z-index: 110;
	font-family: 'Lusitana', serif;
}

.more-btn:hover span {
	color: #fff;
	left: 18px;
	transition: 1.4s;
}

.into {
	display: inline-block;
	width: 18px;
	height: 18px;
	position: absolute;
	left: 15.5px;
	top: 15px;
	transition: all .3s;
	z-index: 120;
}

.into span {
	display: block;
	background: #fff;
	transition: all .2s;
	position: absolute;
	border-radius: 1px;
}

.more-btn:hover .into span {background: #fff;}

.into span.plus1 {
	width: 16px;
	height: 2px;
	top: 8px;
	left: 0px;
}

.into span.plus2 {
	width: 2px;
	height: 16px;
	top: 1px;
	left: 7px;
}

.into span.plus3 {
	width: 0px;
	height: 2px;
	left: 9px;
	top: 0px;
	transform: rotate(45deg);
	transform-origin: right top;
}

.into span.plus4 {
	width: 0px;
	height: 2px;
	left: 4px;
	top: 0px;
	transform: rotate(-45deg);
	transform-origin: left top;
}

.more-btn:hover .into {
	transform: rotate(90deg);
	height: 13px;
	left: 25px;
}

.more-btn:hover .into span.plus1 {
	width: 0;
	left: 9px;
	opacity: 0;
}

.more-btn:hover .into span.plus2 {
	height: 18px;
	top: -4px;
	left: 10px;
}

.more-btn:hover .into span.plus3 {
	width: 10px;
	transition-delay: .1s;
}

.more-btn:hover .into span.plus4 {
	width: 10px;
	transition-delay: .1s;
}

/* /btn01 */

/* btn02 */

.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: #3d5496;
}

.btn02 span {font-size: 18px;}

/* /btn02 */

/*-- newface --*/
#top-newsbox {
	width: 100%;
	max-width: 1980px;
	display: flex;
	margin: 0 auto ;
	justify-content: center;
	min-width: 1200px;
	align-items: stretch;
}

#top-newsbox .box {height: 100px;}

#top-newsbox > article {
	width: calc(50% - 10px);
	margin-right: 20px;
	box-sizing: border-box;
	max-width: 990px;
}

#top-newsbox #pickup {
	margin-right: 0;
	padding-bottom: 29px;
}

#news .top-header {
    background-image: url(../images/tit_new1.jpg);
    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;
}

#news .top-header h2 span {font-size: 5.0rem;}

	@media screen and (max-width:1500px) {
		#news .top-header h2 span {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: 500;
	cursor: pointer;
}

#news .news_slide .btn_prev {left: 5px;}
#news .news_slide .btn_next {right: 5px;}

#news .news_slide .btn_prev img {width: 30px;}
#news .news_slide .btn_next img {width: 30px;}

#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: #ff4b8f;
}

#news .bgc {
	background: url(../images/info_bg1.jpg) no-repeat top center;
	background-attachment: fixed;
}

#pickup .top-header {
    background-image: url(../images/tit_new1.jpg);
    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;
}

#pickup .top-header h2 {color: #fff;}

#pickup .top-header h2 span {font-size: 5.0rem;}

	@media screen and (max-width:1500px) {
		#pickup .top-header h2 span {font-size: 3.5rem;}
	}

#pickup .pickup_slide .btn_prev, #pickup .pickup_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;
}

#pickup .pickup_slide .btn_prev {left: 5px;}
#pickup .pickup_slide .btn_next {right: 5px;}

#pickup .pickup_slide .btn_prev img {width: 30px;}
#pickup .pickup_slide .btn_next img {width: 30px;}

#pickup .pickup_slide .slick-img img {
	width: 100%;
	max-width: 450px;
}

#pickup .slick-slide img {margin: 0 auto;}

#pickup .slick-dots li.slick-active button:before {
	opacity: 1;
	color: #ff4b8f;
}

.news-cont {
    display: flex;
    padding: 20px;
    width: 48vw;
    border: 1px solid #fff;
    box-sizing: border-box;
    border-radius: 40px;
    margin: 10px 0 0;
	background: rgba(0, 0, 0, .5);
}

#pickup .news-cont {
	background:none;
	display: block;
    padding: 0;
    width: 20vw;
    border: none;
    box-sizing: border-box;
    border-radius: 0;
    margin: 10px 0 0;
}

#pickup .news-cont .cast-img {width: 100%;}

#pickup .news-cont .box {
    background: rgba(0, 0, 0, .8);
    height: auto;
    padding: 10px 0;
    margin: 6px 0;
    box-sizing: border-box;
}

#pickup .news-cont .box .name {
	text-align: center;
	font-size: 22px;
}

#pickup .news-cont .box .size {
	text-align: center;
	margin-top: 5px;
}

.news-cont .more-btn span {color: #fff;}

.news-cont .cast-img {
	width: 50%;
	position: relative;
}

.news-cont .cast-img img {width: 100%;}

.news-cont .cast-img .icon-twitter {
	right: 10px;
	bottom: 10px;
}

.news-cont article {
    width: 50%;
    padding: 0px 0 0 20px;
}

.news-cont article .title {
    font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
    font-size: 18px;
    margin: 0;
    background: #ff4b8f;
    color: #fff;
    padding: 6px 12px;
    width: 96%;
    text-align: left;
    font-weight: bold;
    box-sizing: border-box;
    border-radius: 40px;
    line-height: 1.2;
}

.news-cont article .info {
	font-size: 16px;
	margin: 10px auto 10px;
	background: #3d5496;
	color: #fff;
	padding: 4px 0;
	width: 90%;
	text-align: center;
}

.news-cont article .time {
    font-size: 18px;
    color: #000;
}

.news-cont article .name {
    font-size: 1.6rem;
    margin: 10px 0;
    color: #000;
}

.news-cont article .age {font-size: 1.2rem;}

.news-cont article .size {
    font-size: 1rem;
    display: block;
    letter-spacing: 0.05em;
    color: #000;
}

.news-cont .comment {
	font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
	font-size: 1.2rem;
	color: #fff;
	line-height: 2.16em;
	height: 330px;
	overflow-y: auto;
	text-align: justify;
	padding-right: 10px;
}

	@media screen and (max-width:1680px) {
		#news .btn02,
		#new-cast .btn02 {
			width: 260px;
		    font-size: 18px;
		}
	}

	@media screen and (max-width:1500px) {
		#news .btn02,
		#new-cast .btn02 {
			width: 200px;
		    font-size: 16px;
		}
	}

/* top-slider */

#top-slider {/*margin: 50px auto;*/}

#top-slider .bg {position: relative;}

#top-slider .top_slide figure img {
    width: 60vw;
    max-width: 960px;
}

#top-slider .top_slide .slick-dots {
	text-align: center;
	position: absolute;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    padding-left: 0;
}

#top-slider .top_slide .slick-dots li {
    width: 35px;
    margin: 2.7vw 5px 0;
}
	
	@media screen and (max-width: 1680px) {
		#top-slider .top_slide .slick-dots li {margin: 2vw 5px 0;}
	}

	@media screen and (max-width: 1500px) {
		#top-slider .top_slide .slick-dots li {margin: 2.5vw 5px 0;}
	}

	@media screen and (max-width: 1300px) {
		#top-slider .top_slide .slick-dots li {margin: 2.3vw 5px 0;}
	}

#top-slider .top_slide .slick-dots li button:before {font-size: 25px;}

	@media screen and (max-width: 1680px) {
		#top-slider .top_slide .slick-dots li button:before {font-size: 20px;}
	}

#top-slider .btn_prev, #top-slider .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;
}

#top-slider .btn_prev {left: 0;opacity: 0}
#top-slider .btn_next {right: 0;opacity: 0}

.top_sum .slick-slide {cursor: pointer;}

.top_sum .btn_prev, .top_sum .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;
}

.top_sum .btn_prev {left: -45px;}
.top_sum .btn_next {right: -45px;}

.top_sum .btn_prev img {width: 40px;}
.top_sum .btn_next img {width: 40px;}

#news .slick-slide img {margin: 0 auto;}

/* /top-slider */

/*-- top other cont --*/

#top-other {
    background: #000;
    width: 100%;
    max-width: 1980px;
    display: flex;
    margin: 0 auto;
    justify-content: center;
    min-width: 1200px;
    align-items: stretch;
    padding-bottom: 30px;
}

#top-other > article {
    width: 100%;
    margin-right: 0;
    box-sizing: border-box;
    max-width: 740px;
}

#other-l .top-header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    box-sizing: border-box;
    padding: 50px 15px;
	justify-content: space-between;
}

#other-l .top-header h2 span {font-size: 5.0rem;}

	@media screen and (max-width:1500px) {
		#other-l .top-header h2 span {font-size: 3.5rem;}
	}

#other-l .other-cont .box iframe {width: 100%;}

#other-r .top-header {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: end;
    box-sizing: border-box;
    padding: 50px 15px;
	justify-content: space-between;
}

#other-r .top-header h2 {color: #fff;}

#other-r .top-header h2 span {font-size: 5.0rem;}

	@media screen and (max-width:1500px) {
		#other-r .top-header h2 span {font-size: 3.5rem;}
	}

.other-cont .box  {margin-top: 50px;}

#other-r .other-cont .miebox {
    width: 50%;
    text-align: center;
    margin: 50px 0;
}

#other-r .other-cont .miebox .txt {text-align: center;}

#other-r .other-cont .miebox .txt span {font-size: 12px;}

#other-r .other-cont .miebox .icon {
    width: 24px;
    margin-left: 5px;
	vertical-align: middle;
}

/*-- /top other cont --*/

/*-- newface.html --*/

#newface #nfbox {
    width: 100%;
    display: flex;
    margin: 0 0 30px;
    justify-content: center;
    flex-wrap: wrap;
}

#newface #nfbox .box {}

#newface #nfbox > article {
    width: 50%;
    border-left: solid 1px #000;
    box-sizing: border-box;
    background-color: #fff;
    border-bottom: solid 20px #000;
    border-right: solid 1px #000;
    border-top: solid 1px #000;
}

#newface #nfbox .new-cast {
	background: url(../images/nf_bg.jpg) no-repeat center top;
	background-size: cover;
}

#newface .nf-cont {
    display: flex;
    background: none;
    padding: 0;
    width: 100%;
    align-items: center;
}

#newface .girlsboxs {
    display: block;
    width: 50%;
    margin: 0;
}

#newface .girlsboxs .classicon {}

#newface .girlsboxs .classicon img {width: 100%}

#newface .girlsboxs .onebox {
	display: block;
	width: 100%;
	border: none;
	margin: 0;
	color: #fff;
	position: relative;
	box-sizing: border-box;
	background: rgba(0, 0, 0, .9);
}

#newface .girlsboxs .onebox .days {
	font-size: 24px;
	text-align: center;
	background-color: #000;
	padding: 15px 0;
}

#newface .girlsboxs .onebox .img {position: relative}

#newface .girlsboxs .onebox .img .icon01 {
	position: absolute;
	top: 0;
	left: 0;
	width: 40%;
	max-width: 150px;
}

#newface .girlsboxs .onebox .img .icon02 {
    position: absolute;
    top: 5px;
    right: 15px;
    width: 30%;
    max-width: 100px;
	z-index: 10
}

#newface .girlsboxs .onebox .img .icon02 img {
	display: block;
	margin-top: 5px;
}

#newface .girlsboxs .onebox .img .icon03 {
	position: absolute;
	top: 0;
	right: 0;
	width: 33%;
	max-width: 122px;
}

#newface .girlsboxs .onebox .img img {
	width: 100%;
	height: auto;
}

#newface .nf-cont article {
    width: 50%;
    padding: 10px;
    box-sizing: border-box;
}

#newface .nf-cont article .bg {
    background: rgba(0, 0, 0, .8);
    padding: 10px;
    box-sizing: border-box;
	height: 31vw
}

#newface .nf-cont article .title {
    font-size: 1.3em;
    margin: 10px 0;
    color: #ff4b8f;
    padding: 4px 0;
    width: 96%;
    text-align: center;
    font-family: var(--fontgothic);
}

	@media screen and (max-width: 1500px) {
		#newface .nf-cont article .title {font-size: 16px;}
	}

#newface .nf-cont article .info {
	font-size: 16px;
	margin: 10px auto 10px;
	background: #f6ff00;
	color: #fff;
	padding: 4px 0;
	width: 90%;
	text-align: center;
}

#newface .nf-cont article .time {
    font-size: 22px;
	font-weight: bold;
    color: #f6ff00;
    border-bottom: 1px solid;
    padding-bottom: 5px;
}

	@media screen and (max-width: 1500px) {
		#newface .nf-cont article .time {font-size: 16px;}
	}

#newface .nf-cont article .time span {
    font-size: 12px;
    color: #000;
    background: #f6ff00;
    padding: 3px 6px;
    margin-right: 6px;
	vertical-align: middle;
}

#newface .nf-cont article .name {
    font-size: 1.6rem;
    margin: 10px 0;
    color: #fff;
}

	@media screen and (max-width: 1500px) {
		#newface .nf-cont article .name {font-size: 18px;}
	}

#newface .nf-cont article .age {font-size: 1.2rem;}

#newface .nf-cont article .size {
    font-size: 1rem;
    display: block;
    letter-spacing: 0.05em;
    color: #fff;
}

	@media screen and (max-width: 1500px) {
		#newface .nf-cont article .size {font-size: 13px;}
	}

#newface .nf-cont .comment {
	font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
	font-size: 1.1rem;
	color: #fff;
	line-height: 2.16em;
	height: 17vw;
	overflow-y: auto;
	text-align: justify;
	padding-right: 10px;
}

	@media screen and (max-width: 1600px) {
		#newface .nf-cont .comment {
			height: 16vw;
			padding-right: 0;
		}
	}

	@media screen and (max-width: 1400px) {
		#newface .nf-cont .comment {height: 15vw;}
	}

	@media screen and (max-width: 1300px) {
		#newface .nf-cont .comment {height: 13vw;}
	}

#newface .nf-cont article .profile {
	width: 100%;
	padding: 15px 0 0;
}

#newface .nf-cont article .profile div {text-align: center;}

#newface .nf-cont article .profile .name {
	font-size: 24px;
	margin-bottom: 5px;
}

#newface .nf-cont article .profile .size {
	font-size: 14px;
	margin-bottom: 10px;
}

#newface .nf-cont article .profile .time {
    background: url(../images/time_bg.png) no-repeat center top;
    font-size: 16px;
    padding: 1% 0;
    width: 99%;
    min-height: 34px;
    background-size: contain;
    margin: 0 auto 0px;
    box-sizing: border-box;
    border: none;
    font-weight: normal;
    color: #fff;
	line-height: 1.5;
}


	@media screen and (max-width: 1300px) {
		#newface .nf-cont article .profile .time {
			line-height: 1.2;
		}
	}

#newface .nf-cont article .profile .situation {
    text-align: center;
    padding: 4px 0;
    font-size: 20px;
    line-height: 30px;
    bottom: 0;
    width: 100%;
	color: #fff;
}

#newface .nf-cont article .profile .situation span {color: #e1a3ed;}

#newface .nf-cont article .profile .situation2 {
    font-size: 16px;
	color: #fff;
}

#newface .nf-cont article .profile .situation2 span {color: #e1a3ed;}

#newface .nf-cont article .profile .situation.next {
	padding: 5px 0;
	font-size: 22px;
}

#newface .nf-cont article .profile .situation.next div {
	font-size: 15px;
	line-height: 20px;
}

/* reserve.html */

#reserve .form-box {
    padding: 50px;
    margin: 50px auto;
    max-width: 1200px;
    width: 100%;
    box-sizing: border-box;
}

#reserve .form-inner {padding-bottom: 50px;}

#reserve .form-inner h4 {
    font-size: 24px;
    text-align: center;
    padding: 80px 0 0;
}

#reserve .form-main {padding: 40px 0 0;}

#reserve .linkimg {text-align: center;}

#reserve .linkimg img {}

/* /reserve.html */

/* form-all */

.formnote {
    text-align: center;
    padding: 50px 0 0;
    font-size: 16px;
    line-height: 32px;
}

.formnote span {color: #ff4c90;}

.bg-set {
    border-radius: 0 16px 16px 0;
    box-sizing: border-box
}

.cont_form {
    width: 100%;
    margin: 0px auto;
    max-width: 1680px;
}

.cont_form .two {width: 50%;}

.entry-form {
    width: 800px;
    margin: 55px auto;
}

.entry-form.cofirm dl:last-of-type dt {height: auto;}

.entry-form dl {
    padding: 10px 0;
    box-sizing: border-box;
    margin: 15px 0;
}

.entry-form dl 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;	
}

.entry-form dl dt img {
    width: 25px;
    margin-right: 15px
}

	@media screen and (max-width: 1700px){
		.entry-form dl dt img {margin-right: 0.8824vw}
	}

.entry-form dl dt span {
    font-weight: normal;
    padding: 10px 14px;
    font-size: 13px;
    margin-left: 15px;
    color: #fff;
    background: #ff4c90;
    border-radius: 40px;
}

.entry-form dl dt:before {content: none}	
	
.entry-form dl dd {width: 100%}

.entry-form.confirm dl dd {padding: 20px 0;}

.entry-form label {display: block}

.entry-form label > span {
	width: 100px;
	font-weight: bold;
	float: left;
	padding-top: 8px;
	padding-right: 5px
}
	
.entry-form span.required {color: red}

.entry-form input.input-field {width: 100%;}
	
.entry-form input.input-field, .entry-form .textarea-field, .entry-form .select-field {
    box-sizing: border-box;
    padding: 12px;
    outline: none;
    line-height: 1.6;
    appearance: none;
    font-size: 18px;
	border: 1px solid #ccc;
}

.entry-form .select-field {
	width: 35%;	
	height: 45px;
	font-size: 17px
}
	
.entry-form .input-field:focus, 
.entry-form .textarea-field:focus,  
.entry-form .select-field:focus {
	border: 5px solid #774491
}

.entry-form .textarea-field {
	height:200px;
	width: 100%
}

/* form-all-radio */	
.f-btn .list_item {
    margin: 0px;
    padding: 24px
}

.f-btn label {
    font-family: Arial, sans-serif;
    line-height: 135%;
    position: relative;
    margin: 0.5rem;
    cursor: pointer;
    font-size: 20px
}

.f-btn .option-input {
    position: relative;
    margin: 7px 20px 0px 0px;
    cursor: pointer
}

.f-btn .option-input::before,
.f-btn .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
}

.f-btn .option-input:after {
	z-index: 0;
	top: 0;
	border: none
}

.f-btn .option-input:checked:before {
	transform: rotateY(180deg);
	background: #774491
}
/* /form-all-radio */	

.entry-form .f-submit {
    width: 100%;
    max-width: 340px;
    margin: 20px auto;
}

.entry-form .f-submit 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}

.entry-form dd.select 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
}

.entry-form dd.select 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: 1700px){
		.entry-form .select2 {width: 7.8vw;}
	}

	@media screen and (max-width: 1400px){
		.entry-form .select2 {width: 6.8vw;}
	}

.entry-form label {font-size: 20px}

.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 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;
}

.entry-form .f-back button {margin: 0}

.entry-form .f-back button:hover {opacity: .8}

.entry-form .f-back 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;
}

#reserve .f-top {
    margin: 50px auto;
    text-align: center;
}

#reserve .f-top a {margin: 0}

#reserve .f-top a:hover {opacity: .8}

#reserve .f-top a {
    background: #707070;
    font-family: 'Gilda Display', serif;
    padding: 19px 30px;
    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;
}

/* /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;}

.thanks_txt p {text-align: center;}

.thanks_txt .tel {
    font-size: 16px;
    margin-top: 50px;
}

/* /confirm thanks */

/* waiting.html */

#waitingplace h3 {
    color: #fff;
    font-size: 54px;
    text-align: center;
    line-height: 38px;
    margin: 0px auto 54px;
    padding-top: 28px;
}

#waitingplace p.h3sub {
	font-size: 1.6em;
	text-align: center;
	margin: 50px auto;
}

#waitingplace p#pink-box {
    color: #fff;
    margin: 0px auto 20px;
    text-align: center;
    line-height: 1.5;
}

#waitingplace .box {
	width: 100%;
	max-width: 2000px;
	margin: 10px auto;
	border-bottom: 1px solid #fff;
	padding-bottom:50px ;
}

ul#area-btn {
	width: 100%;
	max-width: 880px;
	margin: 10px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

ul#area-btn li {
	float: left;
	width: 300px;
	margin: 20px 70px;
}

ul#area-btn li p {text-align: center;}

ul#area-btn li .circle {
    display: block;
    width: 198px;
    height: 198px;
    border-radius: 50%;
    margin: 8px auto;
    background: #3b539b;
}

ul#area-btn li .circle a {color: #fff;}

ul#area-btn li .mb10 {font-size: 18px;}

ul#area-btn li p {font-size: 1em;}

ul#area-btn li .circle p {
	line-height: 32px;
	padding: 35px 0;
}

ul#area-btn li .circle p span {font-size: 0.8em;}

#flow-step {
	width: 880px;
	margin: 10px auto 80px;
}

#flow-step dl {margin: 0 auto 40px;}

#flow-step dl dt {
    font-size: 1.4em;
    text-align: center;
    position: relative;
    width: 140px;
    margin: 0 auto;
}

#flow-step dl dt::before,
#flow-step dl dt::after {
    content: "";
    background: #fff;
    height: 100%;
    width: 4px;
    position: absolute;
}

#flow-step dl dt::before {left: 0;}

#flow-step dl dt::after {right: 0;}

#flow-step dl dd {padding-top: 20px;}

#flow-step dl dd p {
	text-align: center;
	line-height: 1.5;
}

.area-container {margin: 0 auto 40px;}

.area-container .mbox {
    width: 100%;
    background: #1d0a16;
    display: flex;
    box-sizing: border-box;
    margin-bottom: 30px;
}

.area-container .mbox .inner {width: 100%;}

.area-box {
    position: relative;
    margin: 12px auto 40px;
}

.area-box .info {
    width: 1000px;
    margin: 12px auto 40px;
    justify-content: space-evenly;
}

.area-box .subbox {}

.area-box .subbox h4 {
    position: relative;
    font-size: 2.2em;
    text-align: center;
    letter-spacing: 14px;
    margin: 30px auto;
    color: #ff4b8f;
    font-weight: bold;
}

.area-box .subbox h4::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 42%;
	background: #ff4b8f;
	height: 1px;
}

.area-box .subbox h4::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 42%;
	background: #ff4b8f;
	height: 1px;
}

.area-box .map {}

.map_txtwrap {}

.map_txtwrap .txtbox {height: 176px;}

.map_txtwrap p {
	color: #fff;
	line-height: 1.5;
}

.map_txtwrap p.map_tit {
	font-size: 1.4em;
	margin-bottom: 12px;
	color: #ff4b8f;
	font-weight: bold;
}

.map_txtwrap .map_photo {}

/* /waiting.html */

/* howto.html */

#howto {margin: 50px auto;}

#howto .box {margin: 50px auto;}

#howto ul {margin: 60px auto;}

#howto ul li {position: relative;}
#howto ul li:first-of-type {margin-right: 30px;}

#howto .step {
    position: relative;
    box-sizing: border-box;
    padding: 20px;
    width: 90px;
    height: 90px;
    background: #3b539b;
    border-radius: 72%;
}

#howto .border {
	position: absolute;
	left: 50%;
	top: 90px;
	width: 5px;
	height: 100%;
	background: #3b539b;
}

#howto .step.border.tate1 {
	content: "";
	position: absolute;
	left: 50%;
	top: 90px;
	width: 5px;
	height: 100%;
	background: #3b539b;
}

#howto .step p {
	text-align: center;
	z-index: 2;
	letter-spacing: 0;
	color: #fff;
}

#howto .step p:first-of-type {
    width: 100%;
    font-size: 18px;
    margin-bottom: 0px;
    letter-spacing: 1px;
}

#howto .step p:last-of-type {
	font-size: 32px;
	padding-right: 7px;
	font-style: italic;
}

#howto .txt {width: 645px;}

#howto .txt p {
	font-size: 16px;
	line-height: 1.3;
	font-weight: 500;
	margin-top: 5px;
}

#howto .txt p.title {
	color: #3b539b;
	font-size: 22px;
	font-weight: bold;
	width: 100%;
}

#howto .txt p span {
	color: #3b539b;
	font-size: 18px;
}

#howto .img {padding: 0 15px;}

#howto .img 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 {
	padding: 0 0 70px;
	color: #fff;
}

#profile .tit {
    background: url(../images/prof_1.jpg) center top no-repeat;
    padding: 12px 20px;
    font-size: 38px;
    box-sizing: border-box;
    text-align: left;
    font-family: "Great Vibes", cursive;
    height: 60px;
}

#profile .tit.p1 {background: url(../images/prof_3.jpg) center top no-repeat;}

#profile .tit.p2 {background: url(../images/prof_4.jpg) center top no-repeat;}

#profile .tit span {
    font-size: 18px;
    margin-left: 20px;
	font-family:'Lora', serif, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

#profile .tit.full {
    padding: 10px 20px;
    box-sizing: border-box;
    text-align: center;
    font-family: "Great Vibes", cursive;
    background: url(../images/prof_2.jpg) center top no-repeat;
}

#profile .tit span.r {
	position: absolute;
	right: 0;
	font-size: 18px;
	bottom: 10px;
}

#profile .slick-prev:before {
	background: url(../images/naxt_left.png) no-repeat;
	width: 60px;
	height: 60px;
	content: '';
	display: block;
	z-index: 500;
}

#profile .slick-next:before {
	background: url(../images/naxt_right.png) no-repeat;
	width: 60px;
	height: 60px;
	content: '';
	display: block;
}

/* box00 */

.profile_box00 {
    display: flex;
    width: 98%;
    margin: 0 auto 0;
    position: relative;
    max-width: 1560px;
}

/* slider */

.profile_box00 .box01 {
    background-size: 100% 100%;
    width: calc(85% / 2 - 0%);
    margin: 0 1%; 
    position: relative;
}

.profile_box00 .box01 .container {position: relative;}

.profile_box00 .box02 .message .txt {
    border: 1px solid #fff;
    margin-top: 15px;
    box-sizing: border-box;
    border-radius: 24px;
    padding: 20px 15px;
    height: 40vw;
    max-height: 800px;
    overflow: auto;
}

.profile_slider01 .btn_prev, .profile_slider01 .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;
}

.profile_slider01 .btn_prev {left: 5px;}
.profile_slider01 .btn_next {right: 5px;}

.profile_slider01 .btn_prev img {width: 30px;}
.profile_slider01 .btn_next img {width: 30px;}

.profile_slider01 .slick-img img {
	width: 100%;
	max-width: 450px;
}

.profile_slider01 img {margin: 0 auto;}

.profile_slider01 .slick-dots li.slick-active button:before {
	opacity: 1;
	color: #ff4b8f;
}

.profile_box00 .box {position: relative;}

.profile_box00 .onebox {position: relative; cursor: pointer;}

.profile_box00 .onebox .icon01 {
	position: absolute;
	top: 0;
	left: 0;
	width: 40%;
	max-width: 150px;
}

.profile_box00 .onebox .icon02 {
    position: absolute;
    top: 10px;
    right: 50px;
    width: 30%;
    max-width: 100px;
}

	@media screen and (max-width: 1600px) {
		.profile_box00 .onebox .icon02 {right: 60px;}
	}

	@media screen and (max-width: 1300px) {
		.profile_box00 .onebox .icon02 {right: 50px;}
	}

.profile_box00 .onebox .icon02 img {
	display: block;
	margin-top: 5px;
}

.profile_box00 .onebox .icon03 {
	position: absolute;
	top: 0;
	right: 65px;
	width: 33%;
	max-width: 122px;
}

	@media screen and (max-width: 1600px) {
		.profile_box00 .onebox .icon03 {right: 50px;}
	}

	@media screen and (max-width: 1300px) {
		.profile_box00 .onebox .icon03 {right: 40px;}
	}

.profile_box00 .slick-prev {left: 33%;}

.profile_box00 .slick-next {right: calc(100% / 3 - -30px);}

/* /slider */

.profile_box00 .box02 {width: calc(114% / 2 - 0%);}

.profile_box00 .box02 .box {}
.profile_box00 .box02 .box .txt {
	padding: 40px 10px;
	line-height: 1.5;
	font-family: var(--fontgothic);
}

.profile_box00 .price .box {}
.profile_box00 .price .box .txt {
    font-size: 40px;
    font-family: inherit;
    text-align: center;
}

.profile_box00 .prof-links {
    z-index: 1000;
    width: 100%;
    min-height: 30px;
    margin: 10px auto 0;
	max-width: 600px;
}

.profile_box00 .prof-links .link01 {
    display: block;
    background: #d60076;
    color: #fff;
    padding: 10px;
    box-sizing: border-box;
    width: 38%;
    text-align: center;
    font-size: 20px;
    position: relative;
}

	@media screen and (max-width: 1380px) {
		.profile_box00 .prof-links .link01 {font-size: 18px;}
	}

	@media screen and (max-width: 1260px) {
		.profile_box00 .prof-links .link01 {font-size: 16px;}
	}

.profile_box00 .prof-links .link01::after {
    content: "";
    position: absolute;
    background: #d60076;
    top: 0;
    right: -50px;
    height: calc(tan(60deg)* 52px / 2);
    width: 51px;
    clip-path: polygon(0% 0, 100% 100%, 0 100%);
    z-index: 100;
}

.profile_box00 .prof-links .link01:hover,
.profile_box00 .prof-links .link01:hover::after {
    opacity: 1;
    background: #fff;
	color: #282828
}

.profile_box00 .prof-links .link02 {
	display: block;
	background: #00ff54;
	color: #000;
	padding: 10px;
	box-sizing: border-box;
	width: 62%;
	text-align: center;
	font-size: 20px;
	position: relative;
	padding-left: 8%;
}

	@media screen and (max-width: 1380px) {
		.profile_box00 .prof-links .link02 {font-size: 18px;}
	}

	@media screen and (max-width: 1260px) {
		.profile_box00 .prof-links .link02 {font-size: 16px;}
	}

.profile_box00 .prof-links .link02:hover {
    opacity: 1;
    background: #282828;
	color: #fff
}

.profile_box00 .infobox {
    padding: 0 0 30px;
    color: #fff;
    justify-content: space-between;
    width: 100%;
    max-width: 630px;
}

.profile_box00 .infobox .info {}

.profile_box00 .infobox .info-icon {}

.profile_box00 .infobox .info-icon .icon1 {
	text-align: right;
}

.profile_box00 .infobox .info-icon .icon1 img {
    width: 100%;
    max-width: 300px;
}

	@media screen and (max-width: 1300px) {
		.profile_box00 .infobox .info-icon .icon1 img {
			width: 100%;
			max-width: 240px;
		}
	}

.profile_box00 .infobox .info-icon .icon2 {
	text-align: right;
	margin: 10px 0;
}

.profile_box00 .infobox .info-icon .icon2 img {
    width: 100%;
    max-width: 300px;
}

	@media screen and (max-width: 1300px) {
		.profile_box00 .infobox .info-icon .icon2 img {
			width: 100%;
			max-width: 240px;
		}
	}

.profile_box00 .infobox .name {
    font-size: 40px;
    text-align: left;
    margin: 10px 0;
}

	@media screen and (max-width: 1600px) {
		.profile_box00 .infobox .name {font-size: 24px;}
	}

	@media screen and (max-width: 1300px) {
		.profile_box00 .infobox .name {font-size: 20px;}
	}

.profile_box00 .infobox .name span {
    font-size: 24px;
    margin-left: 10px;
}

	@media screen and (max-width: 1600px) {
		.profile_box00 .infobox .name span {font-size: 20px;}
	}

	@media screen and (max-width: 1300px) {
		.profile_box00 .infobox .name span {font-size: 16px;}
	}

.profile_box00 .infobox .size {
	font-size: 24px;
	text-align: left;
}

	@media screen and (max-width: 1600px) {
		.profile_box00 .infobox .size {font-size: 20px;}
	}

	@media screen and (max-width: 1300px) {
		.profile_box00 .infobox .size {font-size: 16px;}
	}

/* /box00 */

/* box2 */

.profile_box02 {
	display: flex;
	width: 98%;
	margin: 0 auto 20px;
	max-width: 1600px
}

.profile_box02 .tit {
	padding-bottom: 10px;
	text-align: left;
}

.profile_box02 .box02 {
	width: calc(100% / 2 - 2%);
	margin: 2% 1% 0 1%;
}

.profile_box02 .box02 .qa {
    width: 100%;
    max-width: 718px;
}

.profile_box02 .box02 .qa .boxs {
    margin-top: 20px;
    height: 60vw;
    overflow: auto;
	min-height: 880px;
}

.profile_box02 .box02 .qa .boxs .onebox {
    padding: 10px;
    line-height: 1.5;
    margin-bottom: 6px;
    border-bottom: 1px solid #fff;
}

.profile_box02 .box02 .qa .boxs .onebox span {
	font-size: 16px;
	display: block;
}

.profile_box02 .box02 .qa .boxs .onebox .q {
	width: 100%;
	display: flex;
}

.profile_box02 .box02 .qa .boxs .onebox .q span {color: #3d5496;}

.profile_box02 .box02 .qa .boxs .onebox .a {
	width: 100%;
	display: flex;
}

.profile_box02 .box02 .qa .boxs .onebox .a span {color: #ff4b8f;}

.profile_box02 .box01 {
    background-size: 100% 100%;
    width: 100%;
    padding: 2% 0;
    margin: 0 1%;
    max-width: 851px;
}

.profile_box02 .box01 .box {
    position: relative;
}
.profile_box02 .box01 .box .navbtn {
    position: absolute;
    top: 6px;
    right: -8px;
    max-width: 340px;
}

.profile_box02 .navbtn .btns .btn {
    width: 200px;
    border: 3px solid #fff;
    text-align: center;
    padding: 4px 0;
    display: block;
    font-size: 22px;
    color: #fff;
    margin: 0 20px;
    box-sizing: border-box;
    background: none;
    border-radius: 0;
    max-width: 100%;
    vertical-align: unset;
    line-height: normal;
    font-family: 'Lora', serif, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

.profile_box02 .navbtn .btns .anime_button::before {
    border-radius: 0;
}

.profile_box02 .box01 .box .txt {
	padding: 40px 10px;
	line-height: 1.5;
	font-family: var(--fontgothic);
}

.profile_box02 .box01 .box .frame {margin: 20px auto;}

.profile_box02 .box01 .box .frame iframe {width: 100%;}

.movbox  {}

.movbox .boxs {
	width: 100%;
	max-width: 1200px;
	margin: 30px auto 120px;
	margin: 2% auto 6%;
}

/* /box2 */

/* box3 */

.profile_box03 {}

.profile_box03 .subtit {
    border-bottom: 1px solid #fff;
    margin: 20px auto;
    padding-bottom: 6px;
    width: 98%;
}

.profile_box03 .subtit.full {width: 96%;}

.profile_box03 .box-a {
    max-width: 1700px;
    margin: auto;
}

.profile_box03 .boxs {
	width: 97%;
	max-width: 1800px;
	margin: 0 auto;
}

.profile_box03 .option .boxs {
	display: flex;
	flex-wrap: wrap;
}

.profile_box03 .option .boxs .box {
    width: calc(100% / 4 - 10px);
    border: 1px solid #fff;
    margin: 5px;
    line-height: 1.8;
    background-color: #282828;
    border-radius: 50px;
    justify-content: space-between;
    padding: 0 2%;
    box-sizing: border-box;
}

.profile_box03 .option .boxs .box .t1 {
	text-align: center;
	font-size: 16px;
}

	@media screen and (max-width: 1300px) {
		.profile_box03 .option .boxs .box .t1 {font-size: 13px;}
	}

.profile_box03 .option .boxs .box .t2 {
	text-align: center;
	font-size: 16px;
	font-style: italic;
	color: #fff;
}

	@media screen and (max-width: 1300px) {
		.profile_box03 .option .boxs .box .t2 {font-size: 13px;}
	}

.profile_box03 .option .boxs .box.on {
	background: linear-gradient(to right,  rgba(136,15,89,1) 0%,rgba(205,2,113,1) 50%,rgba(136,15,89,1) 100%);
}

.profile_box03 .option .boxs .box.on .t1 {color: #fff;}

.profile_box03 .option .boxs .box.on .t2 {color: #fff;}

.profile_box03 .box-b {
    max-width: 1700px;
    margin: auto;
}

.profile_box03 .box-b .inbox {width: calc(98% / 2 - 10px);}

.profile_box03 .box-b .boxs {
	width: 100%;
	margin: 0 auto;
	padding-bottom: 50px;
}

.profile_box03 .box-b .boxs .box {width: calc(100% / 2 - 10px);}

/* /box3 */

/* schedulebox */

.schedulebox {padding-top: 20px;}

.schedulebox .tit .t {
	font-size: 18px;
	text-align: center;
	padding-top: 20px;
}

.schedulebox .boxs {
    width: 98%;
    margin: 0 auto;
    padding-top: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.schedulebox .boxs .box {
    width: calc(100% / 8 - 1%);
    margin: 5px;
    line-height: 1.6;
}

.schedulebox .boxs .box .inner {
    border: 1px solid #fff;
	box-sizing: border-box;
}

.schedulebox .boxs .box.on {background-color: #f3ce7a;}

.schedulebox .boxs .box .t1 {
    font-size: 22px;
    text-align: center;
    padding: 10px 0 10px;
    width: 90%;
    margin: auto;
    border-bottom: 1px solid #fff;
}

	@media screen and (max-width: 1300px) {
		.schedulebox .boxs .box .t1 {font-size: 18px;}
	}

.schedulebox .boxs .box .t2 {
    font-size: 16px;
	height: 100px;
}

.schedulebox .boxs .box .t2 span{font-size: 11px;}

.schedulebox .boxs .box .t2 div {
	text-align: center;
	padding: 10px 0 10px;
	font-size: 18px;
}

.schedulebox .boxs .box .t3 {
    font-size: 20px;
    text-align: center;
    padding: 3px;
    width: 100%;
    margin: 10px auto 10px;
	background: linear-gradient(to right,  rgba(136,15,89,1) 0%,rgba(205,2,113,1) 50%,rgba(136,15,89,1) 100%);
    display: block;
    color: #fff;
    position: relative;
    box-sizing: border-box;
}

.schedulebox .boxs .box .off {
    background: #282828 !important;
    color: #aaaaaa;
}

.schedulebox .boxs .box .off:hover {
	opacity: 1;
	cursor: default;
}

.schedulebox .boxs .box .rbox {
    width: 100%;
    border: 1px solid #fff;
    text-align: center;
    font-size: 20px;
    padding: 10px 5px;
    box-sizing: border-box;
    font-weight: bold;
}

/* /schedulebox */

/*profile_slider*/

.profile_slider01 .container {
	margin: 30px auto 0;
	width: 100%;
}

.profile_slider01 .slick-slide img {
	height: auto;
	opacity: .3;
	transition: opacity .5s, transform .5s;
	width: 100%;
	max-width: 600px;
}

.profile_slider01 .slick-center img {
	opacity: 1;
	transform: scale(1);
}

.profile_box-last .boxs {
    width:100%;
	max-width: 1800px;
	margin: auto;
}

.profile_box-last .boxs .box {width: calc(100% / 2 - 0%);}

.profile_box-last .boxs .box .txt {
	padding: 40px 10px;
	line-height: 1.5;
}

/* /profile.html */

/* X アイコン　*/
.girlsboxs .icon-x {z-index: 500;}

.girlsboxs .icon-x a {
    width: 50px;
    height: 50px;
    background: #000;
    border-radius: 50%;
    display: block;
    padding: 10px;
    box-sizing: border-box;
}

.girlsboxs .icon-x a img {
  width: 100%;
  height: auto;
}

/*** bread ***/
.breadcrumb {
    padding: 10px 20px;
    box-sizing: border-box;
    font-size: 13px;
    margin: 0 auto;
	background: #000;
}

.breadcrumb li {display: inline-block;}
.breadcrumb li a { color: #fff;display: inherit;}

/*** /bread ***/

/*** #top-topics ***/

#top-topics {
    background: #000;
	padding-top: 50px;
}

#top-topics .title-box {
    background: linear-gradient(to right, rgba(64, 85, 152, 1) 0%, rgba(150, 112, 189, 1) 35%, rgba(150, 112, 189, 1) 65%, rgba(64, 85, 152, 1) 100%);
    box-sizing: border-box;
    padding: 12px;
    border-radius: 24px 24px 0px 0px;
}

#top-topics .title-box .title {
    color: #fff;
    text-align: center;
    font-size: 28px;
}

#top-topics .cont-box {
    background: #fff;
    padding: 20px;
    box-sizing: border-box;
    border-radius: 0px 0px 24px 24px;
}

#top-topics .top-diary {
    margin-top: 10px;
    margin-bottom: 40px;
    color: #282828;
    text-align: center;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 50px;
}

#top-topics .top-diary iframe {
    color: #282828;
    text-align: center;
    width: 100%;
}

#top-topics .top-wait {
    margin-top: 10px;
    margin-bottom: 40px;
    color: #282828;
    text-align: center;
    width: calc(99% / 2);
}

#top-topics .top-wait iframe {
    color: #282828;
    text-align: center;
    width: 100%;
}

#top-topics .top-diary .ms-box,#top-topics .top-wait .ms-box {
	position: relative;
	margin: 10px 0px;
}

#top-topics .btn_prev, #top-topics .btn_next {
    position: absolute;
    top: 0;
    width: 70px;
    height: 100%;
    padding: 1px 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
	z-index: 30;
}

#top-topics .btn_prev {left: 0;}
#top-topics .btn_next {right: 0;}

#top-topics .btn_prev img {width: 40px;}
#top-topics .btn_next img {width: 40px;}

/*** /#top-topics ***/

#top_schedule .bg {
    background: url(../images/top_sch_bg1.jpg) center top no-repeat;
    width: 100%;
    background-attachment: fixed;
    padding: 20px 0 50px;
}

#top_schedule .navbox {
	background: url(../images/sch_bg.jpg)no-repeat top ;
    padding: 20px 10px 9px;
    box-sizing: border-box;
}

#top_schedule .navbox ul {
    justify-content: space-evenly;
    width: 100%;
    max-width: 1000px;
    margin: auto;
}

.hide {display: none;}	

#top_schedule .navbox li {
	display: block;
	border: 2px solid #fff;
	color: #fff;
	padding: 14px 0px;
	border-radius: 40px;
	box-sizing: border-box;
	width: 400px;
	text-align: center;
	margin: 10px 0;
	font-size: 24px;
	cursor: pointer;
}	

#top_schedule .navbox li:hover {
    background: rgba(255,255,255,.8);
	opacity: 1;
	transition: all 1s;
}

#top_schedule .navbox li.select {
    background: rgba(255, 255, 255, .9);
    opacity: 1;
    transition: all 1s;
	color: #000;
}

#top_schedule .navbox li a {
    display: block;
    border: 2px solid #fff;
    color: #fff;
    padding: 14px 0px;
    border-radius: 40px;
    box-sizing: border-box;
    width: 400px;
    text-align: center;
    margin: 10px 0;
    font-size: 24px;
}

#top_schedule .navbox li a:hover {
    background: rgba(255,255,255,.8);
	opacity: 1
}

.sl-event {
    background: url(../images/event_bg.jpg) center top no-repeat;
    width: 100%;
    margin: 0;
    padding: 1px;
}

.top_slide {width: 100%;}

.top_sum {
    width: 60vw;
    max-width: 1400px;
    margin: 30px auto;
    padding: 10px 0;
}

/* #header_bar0 */

header #header_bar0.main_head {
    background: none;
    width: 100%;
    padding: 0;
    box-sizing: border-box;
    border-bottom: 0;
    top: 0;
}

header #header_bar0.main_head .boxs {
    display: flex;
    width: 100%;
    justify-content: center;
    background: rgba(0, 0, 0, 0.8);
    padding: 6px;
    box-sizing: border-box;
    box-shadow: 0px 0px 0px #000;
}

header #header_bar0.main_head .boxs .logo {
    width: auto;
    margin-left: 0;
}

header #header_bar0 .logo img {max-width: 130px;}

header #header_bar0.DownMove {
	position: fixed;
	width: 100%;
	animation: DownAnime 0.2s forwards;
	top: 0
}

header #header_bar0.UpMove {
	position: fixed;
	width: 100%;
	animation: UpAnime 0.2s forwards;
	display: none;
}

header #header_bar0 .openbtn {top: 8px;}

/* /#header_bar0 */

#g-nav-list .lbox {
    width: 35%;
    border-right: 3px solid #fff;
}

	@media screen and (max-width: 1300px) {
		#g-nav-list .lbox {height: 110%;}
	}

#g-nav-list .lbox img {
  width: 100%;
  height: auto;
}

#g-nav-list .rbox {
  width: 63%;
  padding: 2.5% 0 2% 2.5%;
}

.modaal-close {border: none!important;}

.info-bg {
    background: url(../images/info_bg1.jpg) center top no-repeat;
    width: 100%;
    padding-bottom: 80px;
	background-size: cover;
}

/** #top_nf **/

#top_nf {
    width: 100%;
    padding-bottom: 80px;
}

#top_nf .girlsboxs {
    display:block;
    width: auto;
    margin: 0;
}

#top_nf .girlsboxs .onebox {width: auto; margin: 0;}

#top_nf .bg {
	height: 77vh;
    box-sizing: border-box;
	position: relative;
}

#top_nf .bg::before,#top_nf .bg::after {
	content:"";
	position: absolute;
	top: 0;
    width: 40%;
    height: 100%;
	background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .6) 90%);
	z-index: 10;
}

	@media screen and (max-width: 1200px){
		#top_nf .bg::before,#top_nf .bg::after {width: 220px;}
	}

#top_nf .bg::before {
	left: 0;
	background: linear-gradient(to left, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .6) 90%);
}

#top_nf .bg::after {
    right: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, .6) 90%);
}

#top_nf .btn_prev img, #top_nf .btn_next img {cursor: pointer;}

#top_nf .btn_prev, #top_nf .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;
}

#top_nf .btn_prev {left: 30%;}

#top_nf .btn_next {	right: 30%;}

#top_nf .slick-dots {margin-top: 20px;}

#top_nf .girlsboxs .onebox .days {
	font-size: 18px;
	color: #fff;
	background: linear-gradient(to right,  rgba(63,85,151,1) 0%,rgba(157,114,192,1) 50%,rgba(63,85,151,1) 100%);
}

#top_nf .girlsboxs .onebox .profile {background:rgba(0,0,0,.8);}

/** /#top_nf **/

/** #top_ranking **/

#top_ranking {
    background: url(../images/top_rank_bg.jpg) center top no-repeat;
    width: 100%;
    background-attachment: fixed;
}

#top_ranking .girlsboxs {
    display:block;
    width: auto;
    margin: 0;
}

#top_ranking .girlsboxs .onebox {
    margin: 0 3px;
	width: 19.5vw;
	border: none;
}

#top_ranking .girlsboxs .onebox .profile {color:#000;padding: 15px 0 5px;}

#top_ranking .girlsboxs .onebox .rank {margin: 10px auto;}

#top_ranking .girlsboxs .onebox .rank img {width: 75%;margin: auto;}

#top_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%);}

#top_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%);}

#top_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%);}

#top_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%);}

#top_ranking .btn_prev img, #top_ranking .btn_next img {cursor: pointer;}

#top_ranking .btn_prev, #top_ranking .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;
}

#top_ranking .btn_prev {left: 10px;}

#top_ranking .btn_next {	right: 10px;}

#top_ranking .slick-dots {margin-top: 20px;}

/** /#top_ranking **/

.more {
	position: relative;
	width: 100%;
	max-width: 400px;
	margin: 0 auto;
}

.more span {
    position: absolute;
    top: 8px;
    right: 15px;
}

.more img {width: 40px;}

.more .more_btn00 {
    display: block;
    color: #fff;
    padding: 14px 0px;
    border-radius: 40px;
    box-sizing: border-box;
    width: 100%;
    min-width: 300px;
    text-align: center;
    margin: 10px 0;
    font-size: 24px;
    background: linear-gradient(to right, rgba(181, 2, 230, 1) 0%, rgba(0, 97, 218, 1) 100%);
}

.more .more_btn00:hover {
    background: rgba(0,0,0,.4);
	opacity: 1;
}

#top-newsbox .more {
	max-width: 300px;
	margin: 0;
}

#top-newsbox .more span {
    position: absolute;
    top: 18px;
    right: 15px;
}

#top-newsbox .more .more_btn00 {max-width: 300px;}


/* under cover */

.under {
    height: 30vh;
    /*height: 59vh;*/
    /*margin-top: 153px;*/
}

/* /under cover */

/* obi-ttl */
	
.u_tit {
    font-size: 80px;
    letter-spacing: 3px;
    line-height: 1.4;
    text-align: center;
    color: #fff;
}

.obi-ttl {width: 100%}

.obi-ttl h2 {
    font-size: 30px;
    font-weight: 500;
    text-align: center;
    letter-spacing: 0.15em;
    position: relative;
    z-index: 1;
	padding: 30px 0 0px;
}
		
.obi-ttl h2::before {
	content: '';
	background: rgba(0,0,0,.2);
	height: 190px;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -2;
}

.obi-ttl h2::after {
	content: '';
	height: 190px;
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	z-index: -1;
}

.obi-ttl h2::after {background: rgba(0,0,0,.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);
}

.obi-ttl h2 span {
    font-size: 16px;
    color: #fff;
    display: block;
    text-align: center;
}

@keyframes BgColor {
	0% {
		transform-origin: left;
		transform: scaleX(0);
	}
	100% {
		transform-origin: left;
		transform: scaleX(1);
	}
}

/* /obi-ttl */

.evbox {}
.evbox figure {}

.systxt {
    text-align: center;
    font-size: 16px;
    margin: 50px auto 50px;
}

/* event.html */

#event {}
#event .bgc {
	background: url(../images/info_bg1.jpg) no-repeat top center;
	background-attachment: fixed;
	
}

#event .onebox {
    max-width: 1600px;
    margin: auto;
}

#event .onebox .fbox {
    justify-content: space-evenly;
    width: 98%;
    margin: auto;
	padding: 20px 0;
}

#event .onebox .bg {
	background: rgba(0, 0, 0, .6);
	width: 100%;
	height: 100%;
	border-radius: 20px;
	box-sizing: border-box;
	border: 1px solid #fff;
}

#event .onebox .img {width: 40%;}

#event .onebox .img img {
    width: 100%;
    max-width: 640px;
}

#event .onebox .prof {
    width: 58%;
    padding: 20px;
    box-sizing: border-box;
    margin-left: 1%;
}

#event .onebox .prof .profbox {}
#event .onebox .prof .day {
	font-size: 14px;
    color: #fff;
    padding: 0 0 20px 15px;
    padding: 0 0 2% 4%;
    text-align: center;
}

#event .onebox .prof .title {
    font-family: var(--fontgothic);
    font-size: 20px;
    background: #ff4b8f;
    color: #fff;
    text-align: center;
    font-weight: bold;
    border-radius: 20px;
    box-sizing: border-box;
    padding: 6px;
}

	@media screen and (max-width: 1300px) {
		#event .onebox .prof .title {font-size: 16px;}
	}

#event .onebox .prof .txt {
    color: #fff;
    padding: 10px 0 10px 0;
    font-family: var(--fontgothic);
    text-align: center;
    height: 64vh;
    overflow-y: auto;
}

	@media screen and (max-width: 1550px) {
		#event .onebox .prof .txt {
			padding: 2% 0 2% 0;
			height: 33vw;
		}
	}

/* /event.html */

.top_header_cover .tcover_slide {
    width: 100vw;
    z-index: -1;
    position: fixed;
    top: 0;
}


/* cosplay.html */

#cosplay .bg {
    /*background: url(../images/member_bg.jpg) top center no-repeat;
    background-attachment: fixed;*/
    padding: 4% 0;
}

#cosplay h2.title {width: 430px;}

#cosplay .text {
	font-size: 40px;
	text-align: center;
}

#cosplay .box {
	margin-top: 50px;
	display: flex;
	flex-wrap: wrap;
}

#cosplay .box li {
	width: 25%;
	border: #a0a0a0 1px solid;
	overflow: hidden;
	box-sizing: border-box;
}


#cosplay .box li .list {
	cursor: pointer;
}

#cosplay .box li .image img {
	width: 100%;
}

#cosplay .box li .name {
	color: #000;
	font-size: 20px;
	font-weight: bold;
	background: rgb(229 172 255);
	text-align: center;
	line-height: 2;
}

#cosplay .box li .price {
	font-size: 24px;
	text-align: center;
	line-height: 2;
}

#cosplay .box li .modal {
	background: rgba(0, 0, 0, .85);
	width: 100%;
	height: 100vh;
	display: none;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10000;
}

#cosplay .box li .modal .inner {
	width: 600px;
	margin: 0 auto;
}

#cosplay .box li .modal .inner .close {
    font-size: 40px;
    color: #fff;
    margin-left: 350px;
    text-align: right;
    cursor: pointer;
}

#cosplay .box li .modal .inner .modal-img {
	width: 100%;
}

#cosplay .box li .modal .inner .modal-img img {
	width: 100%;
}

#cosplay .box li .modal .inner .mo-name {
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	margin-top: 20px;
	text-align: center;
	margin-bottom: 20px
}

/* /cosplay.html */


.toprank-link {
    position: absolute;
    right: 8%;
    top: 60px;
}

	@media screen and (max-width: 1500px) {
		.toprank-link {
			right: 1%;
			top: 55px;
		}
	}

	@media screen and (max-width: 1300px) {
		.toprank-link {
			top: 40px;
		}
	}

.girlsboxs .onebox .img .icon00 {
    position: absolute;
    bottom: 8px;
    right: 0;
    width: 28%;
    max-width: 100px;
    z-index: 50;
}

#newface .girlsboxs .onebox .img .icon00 {
    width: 24%;
}

.girlsboxs .onebox .img .icon00 img {
	display: block;
	margin-top: 5px;
	width: 100%;
	max-width: 70px;
}


.r-w {color:#fe8ae1;}
.r-m {color:#6cc3ff;}

header .main_head .boxs .nav ul li a.r-w {
    color: #fe8ae1;
    transition: all 1s;
}

header .main_head .boxs .nav ul li a.r-w:hover {
    color: #fff;
    opacity: 1;
}

footer #footer .navbox ul li a.r-w {
    color: #fe8ae1;
}
footer #footer .navbox ul li a.r-m {
    color: #6cc3ff;
}


.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox {
}

.system_box4 .transportationboxs .boxs .onebox .box .t1 .ttbox p {
    width:30%;
    font-style: normal;
}

.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: #ff4b8f;
    font-size: 30px;
}

/***** 翻訳 *****/

#os_links {
    height: fit-content;
    width: 80%;
    box-sizing: border-box;
    margin: 0 auto;
    border: 1px solid #000;
    border-radius: 20px;
    padding: 0 0 1.6%;
    & .os_links-container {
        white-space: nowrap;
    }
}

#os_links .menu-tit {
        display: flex;
        width: 85%;
        margin: 15px auto;
        align-items: center;
        color: #000;

        &::before,
        &::after {
            content: "";
            height: 1px;
            flex-grow: 1;
            background-color: rgba(0, 0, 0, 1);
        }

        &::before {margin-right: 3%;}    
        &::after {margin-left: 3%;}
        &>span { color: rgba(0, 0, 0, 1);}
}


#os_links ul {
    width: 100%;
    & li {width: calc(100% / 4);}
    & li a.btn {width:80%;}
}

/*** os contents ***/

/** SNS **/
#sns-box {
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    margin: 20px auto;
    box-shadow: 0px 0px 10px #000;

    .title {
        width: 100%;
        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: 40px;
            text-align: center;
            letter-spacing:6px;
        }

        }

    .list{
        display: flex;
        gap: 30px;
        padding: 4px 0 7px 0;
        background-color: rgba(0, 0, 0, .6);
        width: 100%;
        justify-content: center;
        border: 1px solid #fff;

        li{
            a{
                display: flex;
                flex-direction: column;
                text-align: center;
                color: #fff;

                em {text-align: center;}

                img {\vertical-align: top;}
            }
        }
    }
}

#profile {
    #sns-box {

        .list{
            border: none;
        }
    }
}

/** /SNS **/

/* number icon */

.girlsboxs .onebox .img .iconos {
    position: absolute;
    top: -20px;
    left: 6px;
    width: 40%;
    max-width: 100px;
    z-index: 50;

    .number {
        box-sizing: border-box;
        background: linear-gradient(to right,  rgba(168,42,228,1) 0%,rgba(58,94,219,1) 100%);
        width: 70px;
        height: 70px;
        display: flex;
        justify-content: center;
        align-items: center;
        
        p {
            font-size: 45px;
            border: 1px solid #fff;
            padding: 4px;
            box-sizing: border-box;
            height: 60px;
            width: 60px;
            text-align: center;
        }
    }
}

/* /number icon */

/** os main cover **/

#index.os {
    position: relative;	

    .osttl {
        font-size: 3vw;
        text-align: center;
        padding: 60px 0;
        box-sizing: border-box;
        letter-spacing: 8px;
    }

    .mes {
        text-align: center;
        color: #fff;
        font-size: 22px;
    }
    
    .index_cont {
        width: 100%;
        position: relative;
    }
    
    .indexcover {
        width: 100%;
        position: relative;
    
        img {
            z-index: -1;
            position: fixed;
            top: 0;
            width: 100%;
            height: auto;
        }
    }

    main {
        background: none;
        padding: 100px 0 0;
        z-index: 1
    }
    
    #os_logo {
        text-align: center;
        padding: 0 0 20px 13%;
        display: flex;

        img {            
            width: 37vw;
            max-width: 800px;
        }
    }

    a.btn.ent img {
        top: 15px;
        right: 15px;
        width: 30px;
    }
    
    .osinfo {
        font-size: 12px;
        line-height: 2;
        text-align: center;
        color: #fff;
        background: rgba(0, 0, 0, .7);
        width: 100%;
        max-width: 1200px;
        padding: 20px;
        box-sizing: border-box;
        margin: 40px auto 0;
        border: 1px solid #fff;
        box-shadow: 0px 0px 10px #000;
    
        div {text-align: center;}

        a {
            text-decoration: underline;
            color: #fff;
        }
        
        .conbox {
        
            .ostel {

                img {width: 60px;}

                p {
                    font-size: 40px;
                    margin-left: 10px;
                }
            }

            .osopen {
                text-align: left;
                line-height: 1.4;
                margin-left: 14px;

                span {
                    background: #000;
                    color: #fff;
                    font-size: 24px;
                    border: 1px solid #fff;
                    box-sizing: border-box;
                    padding: 0 5px;
                }

                p {       
                    font-size: 40px;
                    margin-left: 10px;
                }

            }
            
        }
    }

    .index_freebok iframe {margin: 0.5%;}

    footer #footer {display: none;}
    
    .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;
    }
}

/** /os main cover **/
#index.os #gonow {

    .bg {
        background: url(../images/os_bg.jpg) no-repeat top center;
        background-attachment: fixed;
    }
}


/** os system **/

#index.os #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/os_bg.jpg) no-repeat top center;
        background-attachment: fixed;
    }
    
    .subbox {
        padding: 50px 0 0;
    
        .tit-e {
            position: relative;
            text-align: center;
            font-size: 3vw;
            letter-spacing: 8px;

            @media screen and (max-width: 1400px) {font-size: 34px;}
        }

        .tit-e::before {
            content: "";
            position: absolute;
            top: 50%;
            left: 0;
            width: 27%;
            background: #FFF;
            height: 1px;
        }
        
        .tit-e::after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            width: 27%;
            background: #FFF;
            height: 1px;
        }

        .tit-j {
            font-size: 16px;
            text-align: center;
            margin-top: 10px;
        }
    }
}


/* system_os */

#index.os .system_os {

    .infotxt {

        p {
            font-size: 34px;
            text-align: center;

            span {
                background: #ff4b8f;
                padding: 5px 40px;
                box-sizing: border-box;
            }
        }

        p:last-of-type{margin-top: 20px;}
    }

}   

/* /system_os */


/* sys1 */

#index.os .system_box1 {
	width: 100%;
	margin: 0 auto 0;

    .txt {
        text-align: center;
        font-size: 16px;
        margin: 50px auto 80px;
    }

    .boxs {
        margin: 50px auto;
        box-sizing: border-box;
        padding: 2% 7% 2% 10%;
        width: 100%;
        background: rgba(0,0,0,.6);
    
        .priceboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 980px;
            margin: auto;
        
            .onebox {
                width: calc(100% / 3 - 1px);
            
                .box {
                    padding: 20px 0;
                
                    .t {
                        color: #fff;
                        font-size: 25px;
                    
                        span {font-size: 16px;}
                    
                    }
                    
                    .p {
                        font-size: 58px;
                        font-style: normal;
                        color: #ff4b8f;
                        text-align: left;
                    
                        span {
                            font-size: 24px;
                            vertical-align: middle;
                            padding-left: 2%;
                            font-style: normal;
                        }    
                    
                    }
                }    
            
            }
        
            .onebox2 {
                width:100%;
            
                .box {
                    padding: 20px 0;
            
                    .t {
                        color: #fff;
                        font-size: 25px;
                    
                        span {font-size: 16px;}
                    
                    }  
            
                    .p {
                        font-size: 42px;
                        font-style: normal;
                        color: #ff4b8f;
                        text-align: left;
                        width: 43%;
                        margin-left: 8px;
                    
                        span {
                            font-size: 24px;
                            vertical-align: middle;
                            padding-left: 2%;
                            font-style: normal;
                        }
                    
                    }        
                }
            }
        }
    }
}

/* /sys1 */

/* sys2 */

#index.os .system_box2 {
	width: 100%;
	margin: 0 auto 0;

    .txt {
        text-align: center;
        font-size: 16px;
        margin: 30px auto;
    }
    
    .boxs {
        margin: 50px auto 0;
        max-width: 1600px;
        box-sizing: border-box;
        padding: 2% 7% 2% 7%;

        .opboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1600px;
            margin: auto;
        }
        
        .onebox {
            width: calc(100% / 4 - 1px);
            .box {
                padding: 10px 5px;
                border: 3px solid #fff;
                box-sizing: border-box;
                margin: 2% 2%;

                .t {
                    color: #fff;
                    font-size: 28px;
                    text-align: center;

                    @media screen and (max-width: 1500px) {font-size: 1.6vw;}

                }
                
                .p .n {font-size: 30px;}

                .p .w {font-size: 40px;}

                .p .r {font-size: 24px;}                
                
            }
        }

        .priceboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1600px;
            margin: auto;
            border: none;

            .onebox {
                width: calc(100% / 2 - 1px);

                .box {
                    padding: 0 2%;
                    position: relative;
                    margin: 2% 0;
                    min-height: 150px;
                    border: none;

                    .t {
                        color: #fff;
                        font-size: 25px;
                        width: 100%;
                        padding-left: 10px;
                        text-align: left;

                        span {font-size: 16px;}

                    }                    

                    .p {
                        font-size: 46px;
                        font-style: normal;
                        color: #ff4b8f;
                        text-align: left;
                        width: 100%;
                        padding-left: 10px;
                    
                        span {
                            font-size: 30px;
                            vertical-align: middle;
                            padding-left: 1%;
                            font-style: normal;
                        }    
                    
                       .info {
                            color: #fff;
                            font-size: 16px;
                            width: 100%;
                            padding-left: 10px;
                        }
                        
                    }                  
                }
               
                .box::before {
                    content: "";
                    position: absolute;
                    left: 0;
                    width: 10px;
                    height: 100%;
                    background: #FFF;
                }                

                .onebox:last-of-type .box {min-height:inherit ;}

            }
        }
     }
}

#index.os .system_box2 .ptboxs {
    display: flex;
    flex-wrap: wrap;
	justify-content: center;
    width: 100%;
    max-width: 900px;
    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: 490px;
                }
                
            }
        }
    }
}

/* /sys2 */


/* sys4 */

#index.os #system .system_box4 .subbox .tit-e::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 16%;
	background: #FFF;
	height: 1px;
}

#index.os #system .system_box4 .subbox .tit-e::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 16%;
	background: #FFF;
	height: 1px;
}

#index.os .system_box4 {
	width: 100%;
	margin: 50px auto 0;
}

#index.os .system_box4 .txt {
    text-align: center;
    font-size: 24px;
    margin: 30px auto;
	line-height: 1.5;
}

#index.os .system_box4 .pricebox .p-title {
    width: 94%;
    background: #ff4b8f;
    color: #fff;
    text-align: center;
    max-width: 1600px;
    margin: auto;
    padding: 4px;
    font-size: 24px;
}

#index.os .system_box4 .pricebox .p-area {
    width: 94%;
    max-width: 1200px;
    margin: 20px auto;
    line-height: 1.5;
}

#index.os .system_box4 .transportationboxs {
    width: 90%;
    max-width: 1400px;
    margin: 20px auto 100px;
    border-bottom: 1px solid #fff;
}

#index.os .system_box4 .transportationboxs .boxs {}

#index.os .system_box4 .transportationboxs .boxs .onebox {
    border-bottom: 1px solid #fff;
    padding: 30px 0;
}

#index.os .system_box4 .transportationboxs .boxs .onebox:first-child {border-top: 1px solid #fff;}

#index.os .system_box4 .transportationboxs .boxs .onebox:last-child {border-bottom: none;}

#index.os .system_box4 .transportationboxs .boxs .onebox .box {
    display: flex;
    line-height: 1.5;
    align-items: center;
}

#index.os .system_box4 .transportationboxs .boxs .onebox .box .t1 {
	width: 42%;
	color: #ff4b8f;
	font-size: 42px;
	font-style: normal;
	text-align: center;
}

	@media screen and (max-width: 1500px) {
		#index.os .system_box4 .transportationboxs .boxs .onebox .box .t1 {font-size: 34px;}
	}

#index.os .system_box4 .transportationboxs .boxs .onebox .box .t1 span {
	font-size: 24px;
	vertical-align: middle;
	padding-left: 3%;
}

	@media screen and (max-width: 1500px) {
		#index.os .system_box4 .transportationboxs .boxs .onebox .box .t1 span {font-size: 20px;}
	}

#index.os .system_box4 .transportationboxs .boxs .onebox .box .t2 {
    width: 57%;
    padding-left: 1%;
    color: #fff;
    font-size: 20px;
}

/* /sys4 */

/* sys5 */

#index.os .system_box5 {
	width: 100%;
	margin: 50px auto ;

    .txt {
        text-align: center;
        font-size: 40px;
        margin: 30px auto;
        @media screen and (max-width: 1300px) {
                font-size: 33px;
                padding: 2% 2% 4% 2%;
        }
    }

    .bg {background: rgba(0,0,0,.4)!important;}

    .boxs {
        margin: 50px auto 0;
        max-width: 1600px;
        box-sizing: border-box;
        padding: 2% 7% 2% 7%;

        .priceboxs {
            display: flex;
            flex-wrap: wrap;
            width: 100%;
            max-width: 1600px;
            margin: auto;

            .inbox {width: calc(100% / 2 - 1px);}

            .onebox {
                padding: 0% 2% 0% 2%;
                .box {
                    position: relative;
                    margin: 2%;

                    .t {
                        color: #fff;
                        font-size: 25px;
                        width: 100%;
                        padding-left: 10px;

                        span {font-size: 16px;}

                    }

                    .p {
                        font-size: 44px;
                        font-style: normal;
                        color: #ff4b8f;
                        text-align: left;
                        width: 100%;
                        padding-left: 10px;

                        span {
                            font-size: 24px;
                            vertical-align: middle;
                            padding-left: 3%;
                            font-style: normal;
                        }
                     } 

                     .info {
                        color: #fff;
                        font-size: 16px;
                        width: 100%;
                        padding-left: 10px;
                    }   
                }
            }
        }
    }
}

/* /sys5 */

/* sys7 */

#index.os .system_box7 {
    padding: 50px 0 130px;

    .bg {
        background: rgba(0, 0, 0, .4) !important;
        margin-top: 50px;
        padding: 0 0 60px;
    }

    .matterboxs {
        width: 94%;
        max-width: 1250px;
        margin: auto;
        padding: 60px 0 0;
        font-size: 24px;
        color: #fff;
        line-height: 1.5;
    }
}

/* /sys7 */

/* special */

#index.os .special {
	width: 100%;
	margin: 0 auto 0;

    .pricebox {
        width: 100%;
        max-width: 1400px;
        margin: 0;
        margin: 50px auto;

        .obox {
            padding: 10px 0 10px;
            width: 43%;
            border: 1px solid #fff;
            box-sizing: border-box;
            border-radius: 16px;
            margin: 1%;
        
            p {text-align: center;}
        
            .time {font-size: 22px;}
        
            .ttl {
               font-size: 24px;
                font-style: normal;
                background: #ff4b8f;
                padding: 8px;
                margin-top: 10px;
                max-height: 60px;
                height: 60px;
            }
        
            .pri {
                font-size: 40px;
                font-style: normal;
                color: #ff4b8f;
                margin-top: 10px;

                span {
                    font-size: 28px;
                    padding-left: 10px;
                    vertical-align: middle;
                    font-style: normal;
                }
            } 
        }  
    } 
}

/* /special */

/** /os system ***/

/*** /os ***/

/***** /翻訳 *****/

.movie .onebox .movie_com {
    width: 100%;
    padding: 1%;
    box-sizing: border-box;

    .comttl { 
        font-size: 20px;
        font-weight: bold;
        padding: 0 2%;
    }

    .com {
        margin-top: 1%;
        padding: 2%;
        height: 9vw;
        overflow: auto;
        box-sizing: border-box;
    }
}

.logo_header {
    width: 100%;
    max-width: 2000px;
    margin: auto;

	.boxs {
        margin: 5% auto 0;

        .logo {
                text-align: center;
            a {}

            img {width: 100%;max-width: 277px;}
        }
    }	
}

/***** Enter *****/

.modal {
	position: fixed;
	display: none;
	z-index: 20000;
	top: 0;
	left: 0;
	right: 0;
	text-align: center;
	overflow: auto;
	max-height: 100vh;
	line-height: 1.6;
	font-size: 1.6rem;

	.logo {
		display: inline-block;
		padding-top: 10%;

		img {width: 233px;}
	}

p {text-align: center;}

	.r18 {
		text-align: center;
		margin: 1% auto 2%;

		img {width: 60px;}
	}

	.enter {
		margin-bottom: 30px;

		a {
			display: block;
			background: #9b7143;
			color: #fff;
			max-width: 350px;
			margin: auto;
			padding: 10px;
			box-sizing: border-box;

			p {color: #fff;line-height: 1;}

			.main {
				font-size: 46px;
				letter-spacing: 6px;
				font-weight: 500;
                text-align: center;
			}

			.sub {font-size: 22px;text-align: center}
		}
	}

	.exit {
		margin-bottom: 30px;

		a {
			display: block;
			background: #333;
			color: #fff;
			max-width: 300px;
			margin: auto;
			padding: 10px;
			box-sizing: border-box;

			p {color: #fff;line-height: 1;}

			.main {font-size: 30px;text-align: center}
			
			.sub {font-size: 18px;text-align: center}
		}
	}
}

/***** /Enter *****/













