/*////////// ▼Reset [html5]▼ //////////*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

ins {
	text-decoration: none;
}

del {
	text-decoration: line-through;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

button {
	border: none;
	background: none;
	margin: 0;
	padding: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

fieldset, img {
	border: 0;
}

address, caption, cite, code, dfn, em, var {
	font-weight: normal;
	font-style: normal;
}

caption, th {
	text-align: left;
}

abbr, acronym {
	border: 0;
}

.clear {
	clear: both;
}

/*////////// ▲Reset [html5]▲ //////////*/

body {
	color: #000;
	font: "Osaka", "Verdana", "Lucida Grande", "Hiragino Kaku Gothic Pro", "游ゴシック", "YuGothic", "メイリオ", sans-serif;
	margin: 0px auto;
	height: auto;
	width: 100%;
	min-width: 320px;
	overflow-x: hidden;
}

html, body {
	height: 100%;
}

* html body {
	overflow: hidden;
}

::selection {
	background: rgba(80, 80, 80, 0.5);
	color: rgb(255, 0, 100);
}

::-moz-selection {
	background: rgba(80, 80, 80, 0.5);
	color: rgb(255, 0, 100);
}

/*////////// ▼リンク▼ //////////*/
a img {
	border: none;
	text-decoration: none;
}

a:link {
	color: #313131;
	text-decoration: none;
}

a:visited {
	color: #313131;
	text-decoration: none;
}

a:focus {
	outline: none;
	color: #000;
	text-decoration: none;
}

.main-nav a:link, .RoundedBtn a:link, .accordion a:link, #mainNewfaceSection a:link {
	text-decoration: none;
}

/*////////// ▲リンク▲ //////////*/


/*////////// ▼汎用▼ //////////*/

.clearfix::after {
	content: "";
	clear: both;
	display: block;
}

.font-serif {
	font-family: 'Rochester', cursive;
}

.font-english {
	font-family: 'Playfair Display', serif;
}

.font-script {
	font-family: 'Great Vibes', cursive;
	letter-spacing: -0.5px;
}

.font-figure {
	font-family: "Crimson Text", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", "YuMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.font-gothic {
	font-family: "Hiragino Kaku Gothic Pro", "游ゴシック", "YuGothic", "メイリオ", sans-serif;
}

.font-mincho {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", "YuMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

p {
	font-family: "Hiragino Kaku Gothic Pro", "游ゴシック", "YuGothic", "メイリオ", sans-serif;
	font-size: 0.9em;
	text-align: left;
	letter-spacing: 1.5px;
	line-height: 26px;
	color: #313131;
}

.center {
	text-align: center;
}

.right {
	float: right;
}

.left {
	float: left;
}

.pink {
	color: #867108;
}

.red {
	color: #cd0000;
}

.blue {
	color: #00b4c8;
}

.grey {
	color: #666;
}

.m-center {
	margin: 0 auto;
}

.mb10 {
	margin-bottom: 10px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb30 {
	margin-bottom: 30px;
}

.mb50 {
	margin-bottom: 50px;
}

.mb100 {
	margin-bottom: 100px;
}

.more {
	display: block;
	width: 90%;
	max-width: 280px;
	height: 48px;
	text-align: center;
	margin: 0 auto;
	position: relative;
	z-index: 100;
}

.more .more-inner {
	font-family: 'Playfair Display', serif;
	font-size: 1.2em;
	letter-spacing: 2px;
	color: #fff;
	text-align: center;
	line-height: 48px;
	width: 100%;
	height: 100%;
	background: #fe9bd5;
	background: -moz-linear-gradient(left, #fe9bd5 0%, #ff5096 50%, #fe9bd5 100%);
	background: -webkit-linear-gradient(left, #fe9bd5 0%, #ff5096 50%, #fe9bd5 100%);
	background: linear-gradient(to right, #fe9bd5 0%, #ff5096 50%, #fe9bd5 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe9bd5', endColorstr='#fe9bd5', GradientType=1);
	background-size: 200%;
	background-position: -50% 0;
	position: relative;
	cursor: pointer;
}

.more span {
	font-size: 1.2em;
	letter-spacing: 2px;
	color: #fff;
	text-align: center;
	position: relative;
	z-index: 1;
}

.more-bg, .more-bg2 {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 0;
	opacity: 1;
}

.more:hover .more-bg, .more:hover .more-bg2 {
	opacity: 0.5;
	-moz-transition: 0.8s;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

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

.more-btn-inner {
	width: 46px;
	height: 46px;
	background-color: #ff71b8;
	background-image: -webkit-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: -moz-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: -o-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: linear-gradient(to right, #ff71b8, #ff4a8a, #ff71b8);
	background-size: 200%;
	background-position: -50% 0;
	border-radius: 35px;
	position: absolute;
	left: 0;
	z-index: 100;
}

.more-btn span {
	font-size: 1.2em;
	color: #313131;
	line-height: 46px;
	letter-spacing: 1.4px;
	position: relative;
	left: 0px;
	z-index: 110;
}

.more-btn:hover span {
	color: #fff;
	left: 18px;
	-moz-transition: 1.4s;
	-webkit-transition: 1.4s;
	-o-transition: 1.4s;
	-ms-transition: 1.4s;
	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;
}

.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;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	-o-transform-origin: right top;
	transform-origin: right top;
}

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

.more-btn:hover .into {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	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;
}

span.small-letter {
	font-size: 0.7em;
}


/*////////// ▲ 汎用 ▲ //////////*/

/*////////// ▼ enter / エンターモーダル ▼ //////////

.modal {
	position: fixed;
	display: none;
	z-index: 9999;
	top: 25%;
	left: 0;
	right: 0;
	width: 90%;
	max-width: 594px;
	margin: 0px auto;
	text-align:center;
}
.modal h1{
	width: 100%;
	margin-bottom: 20px;
}
.modal h1 img{
	width: 100%;
}
.modal p {
	text-align: center;
	margin-bottom: 20px;
}
.modal ul{
	width: 100%;
	position: relative;
	z-index: 10000;	
}
.modal ul li{
	width: 140px;
	height: 140px;
	line-height: 140px;
	border-radius: 50%;
	background-color: rgba(80,80,80,.4);
	float: right;
}
.modal ul li:first-child{
	background-color: rgba(220,0,0,.7);
	float: left;
}
.modal ul li:hover{
	opacity: 0.5;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}
.modal ul li a {
	display: block;
	cursor: pointer;
	color: #fff;
	font-size: 18px;
	letter-spacing: 2px;
}
@media screen and (min-width: 640px){
	.modal h1{
		margin-bottom: 50px;
	}
	.modal ul{
		width: 594px;
		position: absolute;
		top: 270px;
	}
}

////////// ▲ enter / エンターモーダル ▲ //////////*/


/*////////// ▼ top / トップページ ▼ //////////*/

/************* /header / ヘッダー ************/
header {
	height: auto;
	width: 100%;
	border-top: 2px solid #e10000;
	position: relative;
}

header #topMainIMG {
	width: 100%;
	max-width: 640px;
	margin: 0 auto;
}

header #topMainIMG img {
	width: 100%;
}

header #h1-container {
	display: block;
	width: 52%;
	max-width: 182px;
	margin: 12px auto 0px;
	padding-left: 10px;
	z-index: 900;
}

header #h1-container img {
	width: 100%;
}

header .btn-box {
	padding: 13px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 30px 15px;
}

header .btn-box div a img {
	width: 160px;
}

@media screen and (max-width: 640px) {
	header .btn-box div a img {
		width: 100px;
	}
}

/*header .btn-box .mailmag a img {
	width: 108px;
}*/

.shop-banner {
	width: 100%;
	max-width: 950px;
	margin: 20px auto 0;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;

	div {
        width: calc(50% - 10px);
        max-width: 100%;

		img {
			width: 100%;
		}

		p {
			font-family: "Playfair Display", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
            font-size: 18px;
            font-weight: bold;
            text-align: center;
            line-height: 1.5;

			@media (width <= 620px) {
                font-size: 2.903vw;
            }
        }
    }
}

header .invoice {
	width: 100%;
	max-width: 640px;
	margin: 0 auto 10px;
	;
}

header .invoice img {
	width: 100%;
}

header ul#header-navi {
	width: 100%;
	position: fixed;
	top: 0;
	z-index: 1000;
}

header ul#header-navi li {
	width: 70px;
	height: 70px;
	position: absolute;
}

header ul#header-navi li#menu {
	right: 0;
	top: 3px;
	overflow: hidden;
}

header ul#header-navi li#tel {
	text-align: center;
	right: 0;
	top: 0;
	padding-top: 16px;
}

header ul#header-navi li a {
	display: block;
}

header ul#header-navi li#tel svg {
	width: 38px;
	fill: #000;
}

body.open, body:after {
	overflow: hidden;
}

.b-nav, body:after {
	position: absolute;
}

.b-brand, .b-link {
	text-decoration: none;
}

@-webkit-keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}

	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@keyframes slideInLeft {
	0% {
		-webkit-transform: translate3d(-100%, 0, 0);
		transform: translate3d(-100%, 0, 0);
		visibility: visible;
	}

	100% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

@-webkit-keyframes slideOutLeft {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}

	100% {
		-webkit-transform: translate3d(200%, 0, 0);
		transform: translate3d(200%x, 0, 0);
		visibility: hidden;
	}
}

@keyframes slideOutLeft {
	0% {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0)
	}

	100% {
		-webkit-transform: translate3d(-200%, 0, 0);
		transform: translate3d(200%, 0, 0);
		visibility: hidden;
	}
}

* {
	box-sizing: border-box;
}

body:after {
	background-color: rgba(245, 245, 245, 0.95);
	content: '';
	height: 100%;
	left: 0;
	opacity: 0;
	padding: 0;
	top: 0;
	visibility: hidden;
	-webkit-transition: all .4s ease;
	transition: all .4s ease;
	width: 100%;
	position: fixed;
	z-index: 890;
}

body.open:after {
	opacity: 1;
	visibility: visible;
}

.b-nav {
	z-index: 910;
}

.b-nav:not(.open) {
	visibility: hidden;
}

.b-nav li {
	color: #fff;
	list-style-type: none;
	text-align: left;
	-webkit-transform: translateX(-250px);
	-ms-transform: translateX(-250px);
	transform: translateX(-250px)
}

.b-nav li:not(.open) {
	animation-duration: .4s;
	animation-fill-mode: both;
	-webkit-animation-name: slideOutLeft;
	animation-name: slideOutLeft;
}

.b-nav li:not(.open), .b-nav.open li {
	-webkit-animation-duration: .4s;
	-webkit-animation-fill-mode: both;
}

.b-nav.open {
	visibility: visible;
}

.b-nav.open li {
	animation-duration: .4s;
	animation-fill-mode: both;
	-webkit-animation-name: slideInLeft;
	animation-name: slideInLeft;
}

.b-link {
	background: 0 0;
	border-left: rgba(255, 255, 255, 0)solid 2px;
	color: #fff;
	transition: all .4s ease;
	width: auto;
}

.b-link, .b-menu {
	-webkit-transition: all .4s ease;
}

.b-link--active, .b-link:hover {}

.b-menu {
	cursor: pointer;
	display: inline-block;
	width: 60px;
	height: 50px;
	padding-left: 20px;
	padding-top: 25px;
	position: relative;
	transition: all .4s ease;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	z-index: 12;
}

.b-bun--bottom, .b-bun--mid, .b-bun--top {
	height: 3px;
	width: 33px;
}

.b-bun {
	background: #ff4a8a;
	transition: all .4s ease;
}

.b-brand, .b-bun {
	position: relative;
	-webkit-transition: all .4s ease;
}

.b-bun--top {
	top: 0;
}

.b-bun--mid {
	top: 6px;
}

.b-bun--bottom {
	top: 12px;
}

.b-container {
	position: absolute;
	height: 70px;
}

.b-container:hover:not(.open) .bun-bottom, .b-container:hover:not(.open) .bun-mid, .b-container:hover:not(.open) .bun-top {
	background-color: rgba(245, 245, 245, 0.8);
}

.b-container.open .b-bun--top {
	background: #ff4a8a;
	top: 9px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.b-container.open .b-bun--mid {
	opacity: 0;
}

.b-container.open .b-bun--bottom {
	background: #ff4a8a;
	top: 3px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.b-container.open .b-brand {
	color: #fff;
}

/************* Navigation ************/
header nav {
	display: table;
	width: 100%;
	position: fixed;
	top: 60px;
	z-index: 1000;
}

nav#side-navi {
	display: table;
	width: 30px;
	height: 100%;
	z-index: 1000;
	position: fixed;
}

nav #trigger-base {
	background: rgba(0, 0, 0, 1);
	width: 200px;
	height: 100%;
	position: absolute;
	left: -170px;
}

nav #trigger {
	background: rgba(0, 0, 0, 1);
	width: 60px;
	height: 60px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 170px;
}

nav #trigger #humberger {
	width: 40px;
	position: absolute;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 20px;
	left: 10px;
}

nav #trigger #humberger span {
	background: #fff;
	width: 30px;
	height: 2px;
	position: absolute;
}

nav #trigger #humberger span:nth-child(1) {
	top: 0;
}

nav #trigger #humberger span:nth-child(2) {
	top: 7px;
}

nav #trigger #humberger span:nth-child(3) {
	top: 14px;
}

nav #gnavi-wrapper {
	width: 230px;
	margin: 0 auto;
}

nav #gnavi-wrapper ul#gnavi {
	width: 320px;
	margin: 0 auto;
}

nav ul#gnavi li {
	font-size: 1em;
	font-style: italic;
	letter-spacing: 1.4px;
	color: #ff4a8a;
	cursor: pointer;
	line-height: 28px;
	margin: 0 12px;
	text-decoration: none;
	text-transform: uppercase;
	-moz-transition: 0.5s;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}

nav ul#gnavi li span.en {
	display: inline-block;
}

nav ul#gnavi li span.en::after {
	backface-visibility: hidden;
	color: rgba(60, 60, 40, 1);
	border: 1px solid rgba(0, 0, 0, 0);
	bottom: 12px;
	content: " ";
	display: block;
	position: relative;
	transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-webkit-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	width: 0;
}

nav ul#gnavi li:hover span.en::after {
	backface-visibility: hidden;
	border-color: rgba(255, 255, 255, 0.8);
	-webkit-transition: width 350ms ease-in-out;
	-moz-transition: width 350ms ease-in-out;
	-o-transition: width 350ms ease-in-out;
	-ms-transition: width 350ms ease-in-out;
	transition: width 350ms ease-in-out;
	width: 100%;
}

nav ul#gnavi li a {
	color: #ff4a8a;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}

nav ul#gnavi li a:hover {
	color: #b0b0b0;
}

nav ul#gnavi li .gnavi-ja {
	display: inline-block;
	font-family: "游ゴシック", "YuGothic", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
	font-size: 0.65em;
	letter-spacing: 1px;
	line-height: 28px;
	margin: 0 12px;
}

nav ul#gnavi li ul.child {
	display: none;
	position: absolute;
	margin-left: -5px;
	background: rgba(255, 75, 143, 0.7);
	padding: 10px;
}

nav ul#gnavi li ul.child li {
	display: block;
	width: 140px;
	font-size: 0.7em;
	text-align: center;
	border-bottom: solid 1px #fff;
	padding: 10px 28px 8px;
	color: #fff;
}

nav ul#gnavi li ul.child li a {
	color: #fff;
}

nav ul#gnavi li ul.child li::after {
	backface-visibility: hidden;
	color: rgba(60, 60, 40, 1);
	border: 2px solid rgba(0, 0, 0, 0);
	bottom: -9px;
	content: " ";
	display: block;
	margin: 0 auto;
	position: relative;
	-webkit-transition: all 200ms ease-in-out;
	-moz-transition: all 200ms ease-in-out;
	-o-transition: all 200ms ease-in-out;
	-ms-transition: all 200ms ease-in-out;
	transition: all 200ms ease-in-out;
	width: 0;
}

nav ul#gnavi li ul.child li:hover::after {
	backface-visibility: hidden;
	border: 2px solid rgba(255, 255, 255, 1);
	-webkit-transition: width 350ms ease-in-out;
	-moz-transition: width 350ms ease-in-out;
	-o-transition: width 350ms ease-in-out;
	-ms-transition: width 350ms ease-in-out;
	transition: width 350ms ease-in-out;
	width: 100%;
}

/************* /Navigation ************/
/************* /header / ヘッダー ************/

/************* iconMenu / アイコンメニュー ************/
.iconMenu {
	width: 100%;
	max-width: 1800px;
}

#headerMenu {
	background: #fe9bd5;
	background: -moz-linear-gradient(top, #fe9bd5 0%, #ff4a8a 100%);
	background: -webkit-linear-gradient(top, #fe9bd5 0%, #ff4a8a 100%);
	background: linear-gradient(to bottom, #fe9bd5 0%, #ff4a8a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe9bd5', endColorstr='#ff4a8a', GradientType=0);
}

#stickyHeader {
	background: #fe9bd5;
	background: -moz-linear-gradient(top, #fe9bd5 0%, #ff4a8a 100%);
	background: -webkit-linear-gradient(top, #fe9bd5 0%, #ff4a8a 100%);
	background: linear-gradient(to bottom, #fe9bd5 0%, #ff4a8a 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe9bd5', endColorstr='#ff4a8a', GradientType=0);
	bottom: 0;
	display: none;
	position: fixed;
	z-index: 1000;
}

.iconMenu ul {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.iconMenu ul li {
	font-size: 0.8em;
	text-align: center;
	line-height: 18px;
	width: 20%;
	border-right: 1px solid #fff;
	float: left;
	margin: 6px 0 3px;
}

@media screen and (max-width: 979px) {
	.iconMenu ul li:nth-child(5) {
		border-right: none;
	}
}

@media screen and (min-width: 980px) {
	.iconMenu ul li:nth-child(1) {
		border-left: 1px solid #cecece;
	}
}

.iconMenu ul li a {
	color: #fff;
	display: block;
}

.iconMenu ul li svg {
	height: 20px;
	margin: 3px auto 0px;
}

.st0 {
	fill: #fff;
}

.iconMenu ul li span {
	text-align: center;
	font-size: 0.9em;
	letter-spacing: 2px;
}

/************* /iconMenu / アイコンメニュー ************/

main {
	width: 100%;
	max-width: 980px;
	height: auto;
	position: relative;
	margin: 0 auto;
	overflow: hidden;
	z-index: 1;
}

.contents {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

.contents-title {
	text-align: center;
	width: 100%;
	margin: 0 0 14px;
}

.contents-title h2 {
	font-family: 'Playfair Display', serif;
	color: #867108;
	font-size: 2.6em;
	letter-spacing: 1px;
	line-height: 42px;
	padding-top: 34px;
	position: relative;
}

.contents-title h2 span.pink {
	color: #867108;
}

.contents-title h2::after {
	content: "";
	width: 44px;
	height: 2px;
	background-color: #867108;
	position: absolute;
	bottom: 43px;
	left: 0;
	right: 0;
	margin: auto;
}

#now .contents-title h2::after {
	bottom: 38px;
}

.contents-title h2 span.small-letter {
	font-size: 0.4em;
	color: #867108;
}

#top-gonow {
	width: 100%;
	max-width: 640px;
	margin: 80px auto 30px;
}

#top-gonow img {
	width: 100%;
}

.top-gonow .contents-title h2 .pink,
#now .contents-title h2 .pink {
	color: #e30011;
}

#sc-schedule {
	margin-top: 40px;
}

.contents-title p.summary {
	font-size: 0.5em;
	line-height: 16px;
	text-align: center;
}

.contents-title span.summary {
	font-size: 0.5em;
	text-align: center;
	letter-spacing: 1.5px;
	line-height: 10px;
	display: block;
}

ul.shop-list {
	width: 94%;
	max-width: 1200px;
	height: auto;
	margin: 0px auto 25px;
}

ul.shop-list li {
	font-size: 0.8rem;
	width: -webkit-calc(96% / 2);
	width: calc(96% / 2);
	max-width: 440px;
	height: auto;
	float: left;
	margin: 0px 1% 6px;
	cursor: pointer;
}

ul.shop-list li.more .more-inner {
	height: 48px;
	line-height: 1.4;
	display: flex;
	align-items: center;
	justify-content: center;
}

@keyframes zoom-in {
	0% {
		transform: scale(.1);
	}

	100% {
		transform: none;
	}
}

@keyframes rotate-right {
	0% {
		transform: translate(-100%) rotate(-100deg);
	}

	100% {
		transform: none;
	}
}

.is-animated {
	animation: .6s zoom-in;
}

/************* castlist / 女の子ボックス ************/
#cast .search {
	font-family: "游ゴシック", "YuGothic", "メイリオ", sans-serif;
	background: #333;
	width: 54%;
	margin: 0 auto 20px;
	padding: 20px 0;
}

@media screen and (min-width: 641px) and (max-width: 800px) {
	#cast .search {
		width: 80%;
	}
}

@media screen and (max-width: 640px) {
	#cast .search {
		width: 100%;
	}
}

#cast .search .title {
	font-size: 20px;
	color: #fff;
	margin-bottom: 20px;
	text-align: center;
	letter-spacing: 0.1em;
}

#cast .search .box {
	font-size: 14px;
	color: #fff;
	width: 80%;
	margin: 0 auto;
	letter-spacing: 0.1em;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

#cast .search .box div:nth-child(2n+1) {
	width: 15%;
	text-align: right;
}

#cast .search .box div:nth-child(2n) {
	width: calc(85% - 10px);
	margin-left: 10px;
}

#cast .search .box div:nth-child(n+3) {
	margin-top: 10px;
}

#cast .search input[type="text"] {
	font-size: 16px;
	width: 100%;
	height: 40px;
	padding: 0 0 0 10px;
	border: none;
	border-radius: 0;
	outline: none;
	background: #fff;
	letter-spacing: 0.1em;
}

#cast .search select {
	font-size: 16px;
	width: 100%;
	height: 40px;
	padding: 0 0 0 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	outline: none;
	background: url(../images/arrow.png) right 15px center #fff no-repeat;
	letter-spacing: 0.1em;
}

#cast .search .btn {
	width: 80%;
	margin: 10px auto 0;
}

#cast .search input[type="submit"] {
	font-size: 20px;
	width: 100%;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	padding: 10px 0;
	border: none;
	outline: none;
	background: linear-gradient(to right, #ff5096 0%, #fe9bd5 50%, #ff5096 100%);
	letter-spacing: 0.1em;
}

ul.cast-list {
	width: 100%;
	max-width: 1600px;
	height: auto;
	min-height: 140px;
	margin: 0 auto 10px;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
}

ul.cast-list li {
	width: calc(100% / 3);
	height: auto;
	margin: 0 0 10px;
	padding: 0;
	position: relative;
	overflow: hidden;
	border: #ff4a8a 1px solid;
	box-sizing: border-box;
}

@media screen and (max-width: 680px) {
	ul.cast-list li {
		width: 50%;
	}
}

ul.cast-list li img.thum {
	width: 100%;
	height: 100%;
	vertical-align: top;
}

ul.cast-list li figure {
	position: relative;
}

ul.cast-list li figure .rank {
	height: 34px;
}

@media screen and (min-width: 680px) and (max-width: 899px) {
	ul.cast-list li figure .rank {
		height: 3.778vw;
	}
}

@media screen and (min-width: 350px) and (max-width: 679px) {
	ul.cast-list li figure .rank {
		height: 5vw;
	}
}

@media screen and (max-width: 349px) {
	ul.cast-list li figure .rank {
		height: 19px;
	}
}

ul.cast-list li figure .rank img {
	width: 100%;
}

/*ul.cast-list li figure::after,
.thumBox::before{
    content: "";
    background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.9));
    background: -o-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,0.9));
    background: -moz-linear-gradient(bottom, rgba(255,255,255,0.9), rgba(255,255,255,0));
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0)), to(rgba(255,255,255,0.9)));
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='rgba(255,255,255,0)', endColorstr='rgba(255,255,255,0.9)', GradientType=0)";
    width: 100%;
    height: 30%;
	position: absolute;
	bottom: 3px;
	left: 0;
	z-index: 10;
}*/
.top-newcast .thumBox::before {
	bottom: 0px;
}

ul.cast-list li .icon-new {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

#schedule ul.cast-list li .icon-new {
	top: 34px;
}

@media screen and (min-width: 680px) and (max-width: 899px) {
	#schedule ul.cast-list li .icon-new {
		top: 3.778vw;
	}
}

@media screen and (min-width: 350px) and (max-width: 679px) {
	#schedule ul.cast-list li .icon-new {
		top: 5vw;
	}
}

@media screen and (max-width: 349px) {
	#schedule ul.cast-list li .icon-new {
		top: 19px;
	}
}

ul.cast-list li .btn-twitter {
	left: 5px;
	bottom: 0;
}

@media screen and (min-width: 680px) and (max-width: 899px) {
	ul.cast-list li .btn-twitter img {
		width: 9.778vw !important;
	}
}

@media screen and (min-width: 350px) and (max-width: 679px) {
	ul.cast-list li .btn-twitter img {
		width: 12.941vw !important;
	}
}

@media screen and (max-width: 349px) {
	ul.cast-list li .btn-twitter img {
		width: 49px !important;
	}
}

ul.cast-list li figcaption {
	background: url(../images/bg_cast_data.jpg) no-repeat center top/cover;
	width: 100%;
	z-index: 100;
	padding-bottom: 10px;
}

figcaption p.shopTag {
	font-size: 0.75em;
	background: url(../images/icon/shopTag.png) no-repeat;
	text-align: left;
	color: #fff;
	padding-left: 10px;
	margin-bottom: 2px;
}

figcaption p {
	color: #1e1e1e;
	font-size: 0.75em;
	line-height: 18px;
	letter-spacing: 0.5px;
	margin-left: 8px;
}

figcaption p.name-en {
	font-size: 1.4em;
	vertical-align: bottom;
	letter-spacing: 1px;
	margin-bottom: 2px;
}

figcaption p.size {
	font-size: 0.9em;
	margin-top: 5px;
	text-align: center;
}

figcaption .rank {
	height: 40px;
}

@media screen and (min-width: 680px) and (max-width: 899px) {
	figcaption .rank {
		height: 4.444vw;
	}
}

@media screen and (min-width: 350px) and (max-width: 679px) {
	figcaption .rank {
		height: 5.294vw;
	}
}

@media screen and (max-width: 349px) {
	figcaption .rank {
		height: 19px;
	}
}

figcaption .rank img {
	width: 100%;
}

figcaption .name-ja {
	font-size: 18px;
	font-weight: bold;
	padding-top: 10px;
	text-align: center;
}

.thisSchedule {
	position: relative;
	width: 100%;
}

.thisSchedule p.time {
	font-size: 1.2em;
	line-height: 20px;
	color: #fff;
	background-color: rgba(242, 0, 0, 0.6);
	background-image: -webkit-linear-gradient(left, from(rgba(255, 113, 184, 0.7)), to(rgba(255, 74, 138, 0.4)));
	background-image: -moz-linear-gradient(left, rgba(255, 113, 184, 0.7), rgba(255, 74, 138, 0.4));
	background-image: -o-linear-gradient(left, rgba(255, 113, 184, 0.7), rgba(255, 74, 138, 0.4));
	background-image: linear-gradient(to right, rgba(255, 113, 184, 0.7), rgba(255, 74, 138, 0.4));
	background-size: 100%;
	padding: 3px 0 4px 35px;
	margin-left: 0;
	text-align: center;
}

.thisSchedule p.time span {
	display: inline-block;
	position: relative;
}

.thisSchedule p.time span::after {
	content: "";
	background-image: url(../images/icon/time.png);
	background-size: 100%;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0px;
	left: -30px;
}

.thisSchedule p.timer {
	font-size: 0.9em;
	line-height: 20px;
	color: #ff4a8a;
	padding: 5px 8px 5px 0;
	text-align: center;
}

.font-figure {
	font-size: 1.3em;
}

/************* /castlist / 女の子ボックス ************/

/************* news / 新着情報 ************/
.news {
	margin-bottom: 10px;
}

ul.news-list {
	width: 96%;
	max-width: 480px;
	height: auto;
	margin: 0px auto 20px;
}

ul.news-list li.newsBox {
	width: 100%;
	float: left;
	height: auto;
	max-height: 450px;
	position: relative;
}

ul.news-list li.newsBox:first-child {
	margin-right: 1%;
}

ul.news-list li.newsBox ul.blur-box {
	width: 100%;
	height: auto;
	max-height: 450px;
	overflow: hidden;
	position: relative;
}

ul.news-list li.newsBox ul.blur-box li {
	width: 50%;
	overflow: hidden;
}

li.news-right {
	width: 50%;
	float: right;
}

li.news-left {
	width: 50%;
	float: left;
}

ul.news-list li.newsBox ul.blur-box li img {
	width: 106%;
	height: 106%;
	text-align: center;
	margin: -2% 0 0 -3%;
}

/*ul.news-list li.newsBox ul.blur-box li img.pre-focus{
	width: 113.2%;
}*/
ul.news-list li.newsBox img.pre-focus {
	-webkit-filter: blur(1.5px);
	-moz-filter: blur(1.5px);
	-ms-filter: blur(1.5px);
	-o-filter: blur(1.5px);
	filter: blur(1.5px);
}

ul.news-list li.newsBox .news-nameBox {
	color: #fff;
	background: rgba(255, 74, 138, 0.55);
	width: 50%;
	height: 50px;
	position: absolute;
	top: 40%;
	right: 0;
	z-index: 100;
}

ul.news-list li.newsBox .news-nameBox h3 {
	font-size: 1.6em;
	font-style: italic;
	line-height: 50px;
	position: absolute;
}

li.newsLeft .news-nameBox {
	right: 0%;
}

li.newsRight .news-nameBox {
	left: 0%;
}

li.newsLeft .news-nameBox span {
	left: 10%;
}

li.newsRight .news-nameBox span {
	right: 10%;
}

ul.news-list li.newsBox .news-moreBox {
	background: rgba(0, 0, 0, 0.9);
	width: 40%;
	height: 40px;
	position: absolute;
	bottom: 5%;
	z-index: 100;
}

ul.news-list li.newsBox .news-moreBox:hover {
	background: rgba(0, 0, 0, 0.4);
	-moz-transition: 0.8s;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

ul.news-list li.newsBox .news-moreBox span {
	color: #fff;
	font-size: 1.2em;
	font-style: italic;
	line-height: 40px;
	position: absolute;
}

li.newsLeft .news-moreBox {
	right: -2%;
}

li.newsRight .news-moreBox {
	left: -2%;
}

li.newsLeft .news-moreBox span {
	right: 10%;
}

li.newsRight .news-moreBox span {
	left: 10%;
}

ul.news-list li.newsBox .news-textBox {
	width: 46%;
	height: 92%;
	position: absolute;
	top: 3%;
	padding: 5%;
	overflow: hidden;
	z-index: 90;
}

li.newsLeft .news-textBox {
	left: 2%;
}

li.newsRight .news-textBox {
	right: 2%;
}

ul.news-list li.newsBox .news-textBox h3 {
	font-size: 0.9em;
	letter-spacing: 0.5px;
	position: relative;
	margin-bottom: 20px;
	z-index: 110;
}

ul.news-list li.newsBox .news-textBox p {
	font-size: 0.8em;
	letter-spacing: 2px;
	position: relative;
	z-index: 110;
}

ul.news-list li.newsBox .news-textBox p.font-figure {
	font-size: 0.75em;
	letter-spacing: 0px;
	font-style: italic;
}

ul.news-list li.newsBox .news-textBox::before,
ul.news-list li.newsBox .news-textBox::after {
	content: "";
	background: rgba(255, 255, 255, 0.6);
	width: 96%;
	height: 96%;
	position: absolute;
	z-index: 100;
}

ul.news-list li.newsBox .news-textBox::before {
	top: -1%;
	left: 0;
}

ul.news-list li.newsBox .news-textBox::after {
	bottom: 0;
	right: 0;
}

/************* /news / 新着情報 ************/

/************* gonow / 全店今すぐ ************/
.cast-list .shop-icon {
	color: #e30011;
	font-size: 16px;
	font-family: "Crimson Text", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	text-align: center;
	line-height: 32px;
	text-shadow: 1px 1px 2px #fff, -1px -1px 2px #fff;
	background: linear-gradient(rgba(255, 255, 255, .7) 0%, rgba(241, 241, 241, .7) 50%, rgba(225, 225, 225, .7) 51%, rgba(243, 243, 243, .7) 100%);
	border: 1px solid #bebebe;
	width: 100%;
	height: 34px;
}

.top-gonow .cast-list figure a img {
	width: 240px;
	height: 320px;
}

/************* gonow / 全店今すぐ ************/

/************* info / イベントバナースライダー ************/
.top-info {
	width: 100%;
	height: 100%;
	position: relative;
	margin: 20px auto 30px;
}

.info-slider {
	width: 100%;
	position: relative;
}

.info-slider .gallery .gallery-cell {
	width: 100%;
	max-width: 500px;
}

.info-slider .gallery img {
	width: 100%;
}

.info-slider::before {
	content: "";
	background-image: -webkit-linear-gradient(right, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.9)));
	background-image: -moz-linear-gradient(right, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0));
	background-image: -o-linear-gradient(right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	background-image: linear-gradient(right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	width: 25%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0%;
	z-index: 1;
}

.info-slider::after {
	content: "";
	background-image: -webkit-linear-gradient(left, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.9)));
	background-image: -moz-linear-gradient(left, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0));
	background-image: -o-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	background-image: linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	width: 25%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0%;
	z-index: 1;
}

/************* info / イベントバナースライダー ************/

/************* NewCast / 新人情報 ************/
.top-newcast {
	width: 100%;
	margin: 0px auto 30px;
	position: relative;
}

.top-newcast .contents-title span.summary {
	font-size: 0.5em;
	line-height: 16px;
}

.top-newcast .more {}

.top-newcast .cast-container {
	width: 96%;
	position: relative;
	margin: 0px auto 20px;
}

.top-newcast .thum {
	width: 100%;
	max-width: 360px;
	height: auto;
	display: block;
	margin: 0 auto;
	position: relative;
}

.top-newcast .thum img {
	width: 100%;
}

.top-newcast .thum::after {
	content: "";
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	background: -o-linear-gradient(top, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9));
	background: -moz-linear-gradient(bottom, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0));
	background: -webkit-linear-gradient(left top, left bottom, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.9)));
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='rgba(255,255,255,0)', endColorstr='rgba(255,255,255,0.9)', GradientType=0)";
	width: 99%;
	height: 108px;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 0;
}

.top-newcast .thum .btn-twitter {
	left: 10px;
	bottom: 10px;
	z-index: 2;
}

.top-newcast .cast-container .textBox {
	top: 0;
	width: 90%;
	left: 5%;
}

.top-newcast .cast-container .textBox h3 {
	font-size: 2.5em;
	font-style: italic;
	color: #ff4a8a;
	margin: 20px 0;
	line-height: 20px;
}

.top-newcast .cast-container .textBox p {
	font-size: 0.9em;
}

.top-newcast .cast-container .textBox p.comment {
	font-size: 0.8em;
	max-height: 206px;
	overflow: auto;
	margin-bottom: 18px;
}

.cast-container .textBox p.date {
	letter-spacing: 6px;
}

.cast-container .textBox .rank img {
	width: 100%;
	max-width: 380px;
}

.cast-container .textBox p.name::after {
	content: "";
	width: 44px;
	height: 2px;
	background-color: #000;
	position: absolute;
	left: 40px;
	top: 180px;
}

/************* /NewCast / 新人情報 ************/

/************* Ranking / ランキング ************/
.top-ranking {
	width: 100%;
	margin: 0px auto 50px;
	position: relative;
}

.top-ranking .ranking-slider {
	width: 100%;
	margin: 0 auto 20px;
}

.top-ranking .ranking-slider .gallery-cell {
	border: #ff4a8a 1px solid;
	box-sizing: border-box;
}

.top-ranking .flickity-page-dots {
	display: none;
}

.top-ranking .ranking-slider .gallery-cell .btn-twitter {
	left: 10px;
	bottom: 110px;
}

.ranking-box {
	color: #000;
	width: 100%;
	height: 100px;
	padding-top: 15px;
	z-index: 100;
	position: relative;
}

/*.top-ranking .ranking-slider .gallery-cell::after{
	content: "";
	background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,0.9));
	background: -o-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,0.9));
	background: -moz-linear-gradient(bottom, rgba(255,255,255,0.9), rgba(255,255,255,0));
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0)), to(rgba(255,255,255,0.9)));
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='rgba(255,255,255,0)', endColorstr='rgba(255,255,255,0.9)', GradientType=0)";
	width: 100%;
	height: 200px;
	position: absolute;
	bottom: 3px;
	left: 0;
	z-index: 10;
}*/
.ranking-box .ranking-number {
	font-size: 3.4em;
	color: #ff4a8a;
	font-style: italic;
	background: url(../images/ranking-mark.png) no-repeat;
	background-size: 90px;
	padding: 15px 26px;
	width: 90px;
	height: 90px;
	position: absolute;
	left: 10%;
	bottom: 10px;
	z-index: -1;
}

.ranking-box p {
	color: #1e1e1e;
	font-size: 0.9em;
	line-height: 22px;
	letter-spacing: 0.5px;
	margin-left: 140px;
}

.ranking-box p.name-en {
	font-size: 1.8em;
	vertical-align: bottom;
	letter-spacing: 1px;
	margin-bottom: 4px;
}

.ranking-box p.size {
	font-size: 0.8em;
	margin-bottom: 10px;
}

@media screen and (max-width: 680px) {
	.ranking-box .ranking-number {
		top: 0;
	}
}

/************* / Ranking / ランキング ************/

/************* PhotoDiary / 写メ日記 ************/
#photodiary-container {
	width: 100%;
	max-width: 760px;
	margin: 10px auto 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

#photodiary-container iframe {
	margin: 0 auto;
	display: block;
}

#photodiary-container ul {
	margin-bottom: 20px;
	overflow: hidden;
}

#photodiary-container ul li {
	float: left;
	height: 240px;
	width: 240px;
	margin-left: 20px;
	position: relative;
	overflow: hidden;
}

@media screen and (max-width: 770px) {
	#photodiary-container ul {
		margin: 0 10px 10px;
	}

	#photodiary-container ul li {
		width: calc((100% - 40px) / 3);
		height: 29.195vw;
	}

	#photodiary-container ul li img {
		width: 100%;
	}
}

#photodiary-container ul li:nth-child(n+4) {
	margin-top: 12px;
}

#photodiary-container ul li:nth-child(3n+1) {
	margin-left: 0;
}

#photodiary-container ul li .hover {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}

/************* /PhotoDiary / 写メ日記 ************/

/*////////// ▲ top / トップページ ▲ //////////*/

/*////////// ▼ footer / フッター ▼ //////////*/

footer {
	width: 100%;
	clear: both;
	background-color: #efeeed;
	position: relative;
}

address {
	width: 96%;
	clear: left;
	color: #000;
	font-size: 11px;
	text-align: center;
	letter-spacing: 1.4px;
	padding: 10px 0 80px;
	margin: 0 auto 0;
	z-index: 800;
}

/*////////// ▲ footer / フッター ▲ //////////*/

/*////////// ▼ profile / キャストプロフィール ▼ //////////*/

#profile ul.shop-list {
	max-width: 1000px;
	margin: 0 auto 20px;
}

#profile ul.shop-list li {
	width: 31.33%;
}

#profile ul.shop-list li.more .more-inner {
	font-size: 1.2em;
	line-height: 40px;
}

#profile ul.shop-list li.more .more-inner span {
	font-size: 0.9em;
}

#profole-basic {
	text-align: center;
}

#profole-basic p {
	text-align: center;
}

#profole-basic p.name-en {
	font-size: 2.6em;
	color: #000;
	letter-spacing: 2px;
	margin-bottom: 10px;
}

#profole-basic p.name {
	font-size: 1.8em;
	letter-spacing: 2px;
	margin-bottom: 10px;
}

#profole-basic p.name-sub {
	font-size: 1em;
	letter-spacing: 2px;
	margin-bottom: 10px;
}

#profole-basic p.age {
	font-size: 1em;
}

#profile .thum-slider {
	width: 100%;
	max-width: 1800px;
	margin: 0 auto 60px;
	position: relative;
}

#profile .thum-slider .btn-twitter {
	left: 320px;
	bottom: 10px;
	z-index: 2;
}

@media screen and (max-width: 980px) {
	#profile .thum-slider .btn-twitter {
		width: fit-content;
		margin: auto;
		left: 0;
		right: 250px;
	}
}

#profile .thum-slider .gallery-cell {
	overflow: hidden;
}

#profile .thum-slider .gallery-cell .icon-new {
	position: absolute;
	top: -3px;
	left: -3px;
	z-index: 0;
}

#profile .profile-wrapper {
	width: 90%;
	max-width: 800px;
	margin: 0 auto 30px;
}

ul#contentsLink li {
	width: 285px;
	height: 50px;
	margin: 20px auto 0;
	border: 2px solid #e60012;
}

ul#contentsLink li p {
	color: #e60012;
	text-align: center;
	line-height: 50px;
	-moz-transition: 0.5s;
	-webkit-transition: 0.5s;
	-o-transition: 0.5s;
	-ms-transition: 0.5s;
	transition: 0.5s;
}

ul#contentsLink li p:hover {
	color: #fff;
	background-color: #e60012;
}

#profile .profile-wrapper #profile-data {
	position: relative;
	height: auto;
}

#profile .profile-wrapper #profile-data dl {
	font-size: 0.8em;
	letter-spacing: 2px;
	width: 100%;
	margin: 30px auto 20px;
}

#profile .profile-wrapper #profile-data dt {
	color: #e60012;
	text-align: right;
	float: left;
	width: 38%;
	margin-right: 2%;
}

#profile .profile-wrapper #profile-data dd {
	float: left;
	width: 60%;
	margin-bottom: 6px;
}

@media screen and (max-width: 680px) {
	#profile .profile-wrapper #profile-data dl {
		width: 100%;
	}

	#profile .profile-wrapper #profile-data dt {
		text-align: left;
		float: none;
		width: 100%;
	}

	#profile .profile-wrapper #profile-data dd {
		float: none;
		width: 100%;
	}
}

#profile h3 {
	font-family: 'Playfair Display', serif;
	font-size: 1.4em;
	letter-spacing: 4px;
	text-align: center;
	color: #000;
	background-size: 44px 2px;
	position: relative;
	padding-bottom: 8px;
	margin: 0 auto 16px;
}

#profile h3 span.pink {
	color: #ff5096;
}

#profile h3::before {
	content: "";
	width: 8%;
	height: 2px;
	background-color: #000;
	position: absolute;
	bottom: 0;
	left: 46%;
}

#profile .profile-wrapper #profile-option ul {
	letter-spacing: 1.2px;
	width: 100%;
	margin: 20px auto 30px;
}

#profile .profile-wrapper #profile-option ul li {
	font-size: 0.8em;
	letter-spacing: 0;
	line-height: 36px;
	text-align: center;
	color: #A8A8A8;
	background-color: #e6e6e6;
	width: 49%;
	height: 36px;
	margin: 0.5%;
	position: relative;
	float: left;
	opacity: 0.8;
}

@media screen and (min-width: 640px) {
	#profile .profile-wrapper #profile-option ul li {
		width: 32.3%;
	}
}

#profile .profile-wrapper #profile-option ul li.active {
	color: #fff;
	background-color: #ff87b1;
	background-size: 200%;
	background-position: -50% 0;
	opacity: 1;
}

#profile .profile-wrapper #profile-comment p {
	font-size: 0.8em;
	line-height: 170%;
}

#profile-schedule {
	width: 100%;
	margin: 0 auto 30px;
}

#profile-schedule #today-container {
	width: 24%;
	height: 100%;
	border: 1px solid rgba(255, 255, 255, 0.4);
	position: relative;
}

#profile-schedule #today-container::after {
	content: "";
	background: url(../images/schedule_day.png) no-repeat;
	background-position: 1%;
	background-size: 100% 100%;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 2px;
	left: 2px;
	z-index: 2;
}

#profile-schedule #today-container h3 {
	font-size: 1.2em;
	text-align: center;
	letter-spacing: 6px;
	line-height: 44px;
	margin: 8px 0;
	position: relative;
}

#profile-schedule #today-container h3 {
	width: 100%;
}

#profile-schedule #today-container {
	text-align: center;
	width: 100%;
	height: 100%;
	border: 1px solid rgba(255, 255, 255, 0.4);
	position: relative;
	float: left;
}

#profile-schedule #weekly-container {
	width: 100%;
	height: 100%;
	position: relative;
	float: left;
}

#profile-schedule #weekly-container ul {
	width: 100%;
	max-width: 800px;
	position: relative;
	border-top: 1px solid #d4d4d4;
	border-bottom: 1px solid #d4d4d4;
	margin: 0 auto 20px;
}

#profile-schedule #weekly-container ul li {
	font-size: 1.1rem;
	text-align: center;
	width: -webkit-calc(100% / 7);
	width: calc(100% / 7);
	line-height: 16px;
	float: left;
	margin: 0px 0px;
	padding: 16px 0 10px;
}

#profile-schedule #weekly-container ul li span.day {
	font-size: 0.8rem;
	display: block;
	position: relative;
	padding: 6px 0 8px;
	margin-bottom: 7px;
}

#profile-schedule #weekly-container ul li span.day::after {
	content: "";
	width: 90%;
	max-width: 36px;
	height: 1px;
	background-color: #d4d4d4;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
}

#profile-schedule #weekly-container ul li span.time {
	font-size: 1rem;
	line-height: 22px;
	position: relative;
	word-break: break-all;
}

#profile-schedule #weekly-container ul li span.dayoff {
	line-height: 40px;
}

ul li#sat span.day {
	color: #089fff;
}

ul li#sun span.day {
	color: #e90000;
}

#profile #photodiary {
	width: 100%;
	max-width: 480px;
	margin: 0 auto;
}

#profile #photodiary iframe {
	height: 154vw;
	max-height: 660px;
}

/*////////// ▲ profile / キャストプロフィール ▲ //////////*/

/*////////// ▼ cast / キャスト一覧 ▼ //////////*/

li.profile .work {
	position: relative;
	width: 100%;
	margin-top: -3px;
}

li.profile .work p.wk {
	font-family: 'ヒラギノ角ゴ Std W8', 'Hiragino Kaku Gothic Std';
	color: #fff;
	font-size: 1em;
	background-color: rgba(184, 166, 50, 0.5);
	background-image: -webkit-linear-gradient(left, from(rgba(123, 86, 14, 0.6)), to(rgba(184, 166, 50, 0.3)));
	background-image: -moz-linear-gradient(left, rgba(123, 86, 14, 0.6), rgba(184, 166, 50, 0.3));
	background-image: -o-linear-gradient(left, rgba(123, 86, 14, 0.6), rgba(184, 166, 50, 0.3));
	background-image: linear-gradient(to right, rgba(123, 86, 14, 0.6), rgba(184, 166, 50, 0.3));
	background-size: 100%;
	padding: 0 0 0 12px;
	margin-left: 0;
}

li.profile .work p.wk span {
	font-size: 0.8em;
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
	padding: 0 8px;
	margin-right: 8px;
}

/*////////// ▲ cast / キャスト一覧 ▲ //////////*/

/*////////// ▼ schedule / 出勤情報 ▼ //////////*/

#schedule ul.shop-list {
	width: 100%;
	max-width: 600px;
	position: relative;
	border-left: 1px solid #d4d4d4;
	border-top: 1px solid #d4d4d4;
	border-bottom: 1px solid #d4d4d4;
}

#schedule ul.shop-list li {
	font-size: 1.4rem;
	text-align: center;
	width: -webkit-calc(100% / 7);
	width: calc(100% / 7);
	height: 60px;
	line-height: 16px;
	float: left;
	border-right: 1px solid #d4d4d4;
	margin: 0px 0px;
	padding-top: 10px;
}

#schedule ul.shop-list li.active {
	background-color: rgba(220, 220, 220, 0.8);
	background-size: 100%;
}

#schedule ul.shop-list li.more .more-inner {
	line-height: 23px;
	padding-top: 8px;
}

#schedule ul.shop-list li span {
	font-size: 0.9rem;
	display: block;
	line-height: 2;
}

#schedule h3 {
	font-size: 1.5em;
	font-style: italic;
	color: #1e1e1e;
	text-align: center;
	line-height: 32px;
	letter-spacing: 4px;
	margin: 20px auto;
}

#schedule h3 span {
	color: #313131;
	font-size: 0.9em;
}

/*////////// ▲ schedule / 出勤情報 ▲ //////////*/

/*////////// ▼ newface / 新人情報 ▼ //////////*/

.newface-container {
	width: 100%;
	height: auto;
	min-height: 700px;
	position: relative;
	margin-bottom: 50px;
}

.newface-container .cast-container {
	width: 86%;
	margin: 0 auto;
	position: relative;
}

.newface-container .cast-container .thum-wrap {
	width: fit-content;
	margin: 0 auto;
	position: relative;
}

.newface-container .cast-container h3 {
	color: #000;
	background: rgba(240, 240, 240, 0.5);
	font-size: 1.5em;
	font-style: italic;
	line-height: 32px;
	width: 200px;
	border: 3px solid #000;
	padding: 55px 16px 20px;
	position: absolute;
	bottom: 30px;
	left: -20px;
	z-index: 100;
}

.newface-container .cast-container h3 span {
	font-size: 4em;
}

#newface .thumBox {
	width: 100%;
	max-width: 360px;
	position: relative;
	margin: 0 auto 10px;
	z-index: 1;
}

.thumBox:hover {
	opacity: 0.8;
	-moz-transition: 0.8s;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.newface-container .cast-container .thumBox::after {
	content: "";
	width: 100%;
	max-width: 360px;
	height: 99.5%;
	background-color: #c3c4c4;
	background-image: -webkit-linear-gradient(left, #c3c4c4, #fefefe, #c3c4c4);
	background-image: -moz-linear-gradient(left, #c3c4c4, #fefefe, #c3c4c4);
	background-image: -o-linear-gradient(left, #c3c4c4, #fefefe, #c3c4c4);
	background-image: linear-gradient(to right, #c3c4c4, #fefefe, #c3c4c4);
	background-size: 120%;
	position: absolute;
	top: 10px;
	left: 10px;
	z-index: 0;
}

.cast-container .thumBox img {
	width: 100%;
	position: relative;
	z-index: 1;
}

.cast-container .thumBox .icon-new {
	position: absolute;
	top: -2px;
	left: -2px;
	z-index: 2;
}

.newface-container .cast-container .btn-twitter {
	right: 10px;
	bottom: 10px;
	z-index: 2;
}

.cast-container .textBox {
	position: relative;
	z-index: 100;
}

.cast-container .textBox p.date {
	line-height: 18px;
	margin-bottom: 10px;
}

.cast-container .textBox p.date span {
	font-size: 0.8em;
	font-style: italic;
	color: #ff4a8a;
	margin-bottom: 10px;
}

.cast-container .textBox p.name-en {
	font-size: 2.8em;
	line-height: 110%;
	margin-bottom: 2px;
	padding-bottom: 10px;
}

.cast-container .textBox p.name {
	font-size: 1.5em;
	position: relative;
	margin: 20px 0 15px;
}

.cast-container .textBox p.name-sub {
	font-size: 0.9em;
	margin-bottom: 20px;
}

.cast-container .textBox p.name::after {
	left: 0;
	top: 80px;
}

.cast-container .textBox p.size {
	font-size: 0.9em;
	margin-bottom: 40px;
}

.cast-container .textBox .comment {
	margin-bottom: 10px;
}

.cast-container .textBox .comment p {
	font-size: 0.8em;
}

/*////////// ▲ newface / 新人情報 ▲ //////////*/

/*////////// ▼ news / 最新情報 ▼ //////////*/

.news-container {
	width: 100%;
	height: auto;
	min-height: 700px;
	position: relative;
	margin-bottom: 50px;
}

.news-container .cast-container {
	width: 86%;
	margin: 0 auto;
	position: relative;
}

.news-container .cast-container h3 {
	color: #000;
	background: rgba(240, 240, 240, 0.5);
	font-size: 1.5em;
	font-style: italic;
	line-height: 32px;
	width: 200px;
	border: 3px solid #000;
	padding: 55px 16px 20px;
	position: absolute;
	bottom: 30px;
	left: -20px;
	z-index: 100;
}

.news-container .cast-container h3 span {
	font-size: 4em;
}

#news .thumBox {
	width: 100%;
	max-width: 360px;
	position: relative;
	margin: 0 auto 10px;
	z-index: 1;
}

.thumBox:hover {
	opacity: 0.8;
	-moz-transition: 0.8s;
	-webkit-transition: 0.8s;
	-o-transition: 0.8s;
	-ms-transition: 0.8s;
	transition: 0.8s;
}

.news-container .thumBox img {
	width: 100%;
	position: relative;
	z-index: 1;
}

.news-container .thumBox .icon-new {
	position: absolute;
	top: -2px;
	left: -2px;
	z-index: 2;
}

.news-container .textBox {
	position: relative;
	z-index: 100;
}

.news-container .textBox h4 {
	font-size: 1.2em;
	letter-spacing: 1.5px;
}

.news-container .textBox h5 {
	color: #ff4a8a;
	font-size: 2.8em;
	font-style: italic;
}

/*////////// ▲ news / 最新情報 ▲ //////////*/

/*////////// ▼ ranking / ランキング ▼ //////////*/

.ranking-container {
	width: 100%;
	height: auto;
	min-height: 620px;
	position: relative;
	margin-bottom: 120px;
}

.ranking-container .cast-container {
	width: 86%;
	max-width: 680px;
	margin: 0 auto;
	position: relative;
}

.ranking-container .cast-container h3 {
	display: none;
	color: #e60012;
	font-size: 2em;
	font-style: italic;
	text-align: center;
	line-height: 32px;
	width: 220px;
	height: 505px;
	background: url(../images/ranking-title.png) center top no-repeat;
	background-size: 100%;
	position: absolute;
	top: 0px;
	margin: 0 auto;
	padding: 92px 0;
	z-index: 100;
}

.ranking-container .cast-container h3 span {
	font-size: 3.8em;
	padding-right: 12px;
}

.ranking-container .thumBox {
	width: 100%;
	max-width: 360px;
	position: relative;
	margin: 0 auto;
	z-index: 1;
}

.ranking-container .cast-container .textBox {
	width: 100%;
	right: 0;
	z-index: 100;
	margin: 0 auto 20px;
	padding-top: 20px;
}

.ranking-container .cast-container .textBox .comment {
	margin-bottom: 30px;
}

.ranking-container .cast-container .textBox .comment p {
	font-size: 0.8em;
	margin-left: 0;
}

.ranking-container .cast-container .thumBox .icon-new {
	top: 97px;
}

.ranking-container .cast-container .btn-twitter {
	left: 10px;
	bottom: 10px;
}

@media screen and (min-width: 680px) {
	.ranking-container .cast-container h3 {
		display: inherit;
		width: 268px;
		top: 34px;
	}

	#ranking .ranking-box .ranking-number {
		display: none;
	}

	#ranking .thumBox .ranking-box p {
		margin-left: 14px;
	}

	#ranking .thumBox .ranking-box p.name-en {
		font-size: 2.8em;
		vertical-align: bottom;
		letter-spacing: 1px;
		margin-bottom: 18px;
	}

	.ranking-container .thumBox {
		float: right;
		width: 65%;
	}

	.ranking-container .cast-container .textBox {
		clear: both;
	}
}

/*////////// ▲ ranking / ランキング ▲ //////////*/

/*////////// ▼ access / アクセスマップ ▼ //////////*/

#access .bg-none {
	background: none;
}

#access .bg-none span.font-figure {
	font-size: 1.2em;
}

#access h4 {
	font-size: 1.3em;
	text-align: left;
	letter-spacing: 3px;
	width: 90%;
	margin: 20px auto 20px;
}

#access p {
	font-size: 1.1em;
	line-height: 200%;
	letter-spacing: 2px;
	width: 90%;
	margin: 0 auto 30px;
}

#access h3 {
	font-family: 'Playfair Display', serif;
	color: #867108;
	font-size: 2em;
	text-align: center;
	letter-spacing: 1px;
	line-height: 50px;
	padding-top: 50px;
	position: relative;
	margin-bottom: 30px;
}

#access h3 span.pink {
	color: #867108;
}

#access h3 span.small-letter {
	color: #867108;
	font-size: 0.5em;
}

#access h3::after {
	content: "";
	width: 44px;
	height: 2px;
	background-color: #867108;
	position: absolute;
	bottom: 48px;
	left: 0;
	right: 0;
	margin: auto;
}

#access ul#telmail {
	text-align: center;
	margin-bottom: 70px;
}

#access ul#telmail li {
	font-size: 1.2em;
	width: 50%;
	letter-spacing: 1.2px;
}

#access ul#telmail li:first-child {
	padding-right: 20px;
	border-right: 1px solid #313131;
	float: left;
	text-align: right;
}

#access ul#telmail li:last-child {
	padding-left: 20px;
	float: left;
	text-align: left;
}

@media screen and (max-width: 486px) {
	#access ul#telmail li {
		width: 100%;
	}

	#access ul#telmail li:first-child {
		padding: 0;
		margin-bottom: 20px;
		border-right: none;
		float: none;
		text-align: center;
	}

	#access ul#telmail li:last-child {
		padding: 0;
		float: none;
		text-align: center;
	}
}

#access p.attention {
	font-size: 0.8em;
	letter-spacing: 1px;
}

#access p.attention img {
	width: 13px;
	vertical-align: middle;
	margin: 0 6px 4px 0px;
}

dl.step-container {
	width: 90%;
	max-width: 560px;
	margin: 50px auto 50px;
}

dl.step-container dt {
	font-style: italic;
	line-height: 124px;
	text-align: center;
	width: 23%;
	max-width: 124px;
	background: url(../images/access-stepBG.png) center top no-repeat;
	float: left;
	margin-right: 30px;
}

dl.step-container dt span {
	font-size: 2em;
	padding-left: 4px;
}

dl.step-container dd {
	width: 70%;
	max-width: 606px;
	float: left;
	margin-bottom: 50px;
}

dl.step-container dd h5 {
	font-size: 1em;
	letter-spacing: 4px;
	line-height: 28px;
	color: #eb283c;
	margin-bottom: 8px;
}

#access dl.step-container dd p {
	width: 100%;
}

@media screen and (max-width: 500px) {
	dl.step-container dt {
		width: 124px;
		margin: 0 auto 20px;
		float: none;
	}

	dl.step-container dd {
		width: 100%;
		float: none;
	}
}

/*////////// ▲ access / アクセスマップ ▲ //////////*/

/*////////// ▼ system / 料金システム ▼ //////////*/
#system p.attention {
	font-size: 1.4em;
	margin: 30px 0 30px;
	letter-spacing: 4px;
}

#system p.attention img {
	vertical-align: middle;
	margin: 0 6px 4px 2px;
	width: 13px;
	height: 13px;
}

#system-point {
	background-color: #fe9bd5;
	width: 100%;
	margin: 20px auto 50px;
}

#system-point #point-wrapper {
	width: 100%;
	margin: 0px auto;
	padding: 34px 0;
}

#system-point #point-wrapper #point-containerL {
	width: 90%;
	max-width: 580px;
	margin: 0 auto;
}

#system-point #point-wrapper #point-containerL h3 {
	color: #eb283c;
	width: 100%;
	text-align: left;
	position: relative;
	z-index: 2;
}

#system-point #point-wrapper #point-containerL h3::after {
	content: '';
	background: url(../images/system-point2.png) no-repeat;
	width: 202px;
	height: 130px;
	display: block;
	position: absolute;
	top: -70px;
	right: 0;
	z-index: -1;
}

#system-point #point-wrapper #point-containerL h3 span {
	font-family: 'Playfair Display', serif;
}

#system-point #point-wrapper #point-containerL p span {
	color: #eb283c;
}

#system-point #point-wrapper h3 {
	font-size: 1.8em;
	color: #fff;
	margin-bottom: 18px;
	line-height: 25px;
	position: relative;
}

#system-point #point-wrapper h3 span {
	font-size: 0.5em;
}

#system-point #point-wrapper p {
	font-size: 0.8em;
	color: #fff;
	line-height: 26px;
}

#system-point #point-wrapper #point-containerR {
	background-color: #fff;
	width: 90%;
	max-width: 580px;
	margin: 20px auto;
	padding: 20px 0;
}

#system-point #point-wrapper #point-containerR dl {
	width: 245px;
	height: 70px;
	float: left;
	position: relative;
	margin: 0px 16px;
	padding: 10px 0;
}

@media screen and (max-width: 640px) {
	#system-point #point-wrapper #point-containerR dl {
		float: none;
		margin: 0px auto;
	}
}

#system-point #point-wrapper #point-containerR dl dt {
	width: 140px;
	height: 50px;
	position: absolute;
	left: 0;
	padding-left: 10px;
}

#system-point #point-wrapper #point-containerR dl dd .point {
	font-size: 3.6em;
	text-align: right;
	letter-spacing: -5px;
	color: #fe9bd5;
	width: 110px;
	height: 50px;
	line-height: 40px;
	position: absolute;
	right: 40px;
}

#system-point #point-wrapper #point-containerR dl dd .pt {
	font-size: 1.4em;
	color: #fff;
	text-align: center;
	line-height: 28px;
	width: 32px;
	height: 32px;
	background-color: #fe9bd5;
	border-radius: 50%;
	position: absolute;
	right: 0;
	top: 30px;
}

#system-rate {
	width: 100%;
	margin: 0 auto 30px;
}

#system-rate .rate-container {
	width: 100%;
	max-width: 600px;
	margin: 0 auto 50px;
	position: relative;
}

#system h3 {
	font-family: 'Playfair Display', serif;
	font-size: 2.45em;
	color: #867108;
	width: 320px;
	text-align: center;
	margin: 0 auto 30px;
	position: relative;
}

#system h3 img {
	position: absolute;
	top: -20px;
	right: 20px;
}

#system #gold-rate h3 {
	width: 320px;
}

#system h3 span.white {
	color: #fff;
	padding-right: 4px;
}

#system h3 span.font-mincho {
	font-size: 0.3em;
	color: #867108;
	letter-spacing: 1px;
	padding-left: 8px;
}

#system-rate #regular-rate h3 {
	width: 375px;
}

#system-rate #regular-rate h3::after {
	content: '';
	background: url(../images/heart_01.png) no-repeat;
	width: 87px;
	height: 87px;
	position: absolute;
	top: -25px;
	left: -30px;
	z-index: -1;
	display: block;
}

#system-rate #gold-rate h3::after {
	content: '';
	background: url(../images/heart_02.png) no-repeat;
	width: 87px;
	height: 87px;
	position: absolute;
	top: -25px;
	left: -20px;
	z-index: -1;
	display: block;
}

#system-rate #black-rate h3::after {
	content: '';
	background: url(../images/heart_03.png) no-repeat;
	width: 87px;
	height: 87px;
	position: absolute;
	top: -25px;
	left: -38px;
	z-index: -1;
	display: block;
}

.rate-box {
	border: 1px solid #000;
	width: 90%;
	max-width: 100%;
	margin: 30px auto 30px;
	padding: 20px 0;
	position: relative;
}

.rate-box::after {
	content: "";
	border: 1px solid #c8c8c8;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 4px;
	left: 4px;
	z-index: -1;
}

.rate-box h4 {
	font-family: 'Playfair Display', serif;
	width: 100% !important;
	margin-top: 20px !important;
	text-align: center;
}

.rate-box:first-of-type h4 {
	font-size: 34px;
	color: #e60012;
}

.rate-box:first-of-type h4::after {
	background-color: transparent !important;
	width: 0 !important;
	height: 0 !important;
}

.rate-box:first-of-type h4 span {
	font-size: 14px;
	color: #000;
}

.rate-box:last-of-type h4 {
	font-size: 34px;
	color: #fe9bd5;
	letter-spacing: -0.05em;
}

.rate-box:last-of-type h4::after {
	background-color: transparent !important;
	width: 0 !important;
	height: 0 !important;
}

.rate-box:last-of-type h4 span {
	font-size: 14px;
	color: #000;
}

/*.rate-box p {
	font-size: 14px;
	padding: 0 10px;
	text-align: center;
}*/

.rate-box p {
	font-size: 14px;
	background: #fe9bd5;
	width: 300px;
	margin: 50px auto 0;
	padding: 3px 0;
	text-align: center;
}

@media screen and (min-width: 640px) {
	.rate-box {
		margin: 30px 8px 30px;
	}
}

#system h4 {
	font-size: 1.9em;
	line-height: 24px;
	width: 240px;
	margin: 40px auto 0px;
	position: relative;
}

h4 span.ttl-smaller {
	font-size: 0.35em;
	letter-spacing: 6px;
}

h4 span.ttl-smaller2 {
	font-size: 0.35em;
	line-height: 60px;
}

ul.price-list {
	max-width: 408px;
	margin: 10px auto 0;
}

ul.price-list li {
	font-size: 2.1em;
	font-style: italic;
	text-align: right;
	line-height: 43px;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}

ul.price-list li dl dt {
	font-size: 0.7em;
	width: 25%;
	float: left;
}

ul.price-list li dl dd {
	color: #000;
	width: 73%;
	float: left;
}

ul.price-list.pink li dl dd {
	color: #fe9bd5;
}

ul.price-list li dl dd span {
	font-size: 0.5em;
}

#basicplan {
	width: 100%;
	background: url(../images/bg_system_basic.png) no-repeat;
	margin-bottom: 50px;
	padding: 50px 0 50px;
}

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

	#basicplan #basicplan-title,
	#basicplan #basicplan-content {
		width: 100%;
		float: none;
	}
}

#basicplan #basicplan-title h4 {
	font-size: 2.4em;
	color: #fff;
	text-align: center;
	margin: 50px auto 30px;
	z-index: 10;
}

#basicplan #basicplan-title h4::after {
	content: "";
	width: 140px;
	height: 140px;
	border: 1px solid rgba(255, 0, 0, 0.7);
	position: absolute;
	top: -20px;
	left: 52px;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
	z-index: -1;
}

#basicplan #basicplan-content h4 {
	font-size: 1.2em;
	color: #fff;
	margin: 0px auto 50px;
	text-align: center;
}

#basicplan #basicplan-content h4::after {
	background-color: #fff;
	margin: auto;
	top: 50px;
	left: 0;
	right: 0;
}

#basicplan #basicplan-content p {
	color: #fff;
	width: 80%;
	margin: 0 auto;
}

#option ul.price-list {
	width: 100%;
	max-width: 610px;
	margin: 0 auto;
}

#option ul.price-list li {
	width: 170px;
	margin: 0px 5px 5px;
	float: left;
}

#option ul.price-list li dl dt {
	font-size: 0.38em;
	color: #000;
	width: 170px;
	padding-top: 5px;

	span {
		color: #fff;
		margin-right: 5px;
		display: inline-block;
		position: relative;
		z-index: 1;
	}

	span::before {
		content: '';
		background: #c81e19;
		width: 20px;
		height: 20px;
		border-radius: 50%;
		position: absolute;
		left: -2px;
		top: 10px;
		z-index: -1;
	}

	@media (max-width: 600px) {
		span::before {
			top: 2px;
		}
	}
}

#option ul.price-list li dl dd span {
	font-size: 0.6em;
	display: block;
}

#option p {
	font-size: 14px;
	margin-top: 20px;
	padding: 0 10px;
	text-align: center;
}

#transportation h3 {
	width: 100%;
}

#transportation ul {
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
}

#transportation ul li {
	display: block;
}

#transportation ul li:nth-child(2n+1) {
	font-size: 34px;
	font-style: italic;
	color: #fe9bd5;
	width: 160px;
	padding: 10px 0;
	border-bottom: #000 1px dotted;
}

#transportation ul li:nth-child(2n) {
	font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", "YuMincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-size: 18px;
	width: calc(100% - 160px);
	padding: 10px 0 10px 10px;
	border-bottom: #000 1px dotted;
}

#transportation ul li:last-child {
	display: block;
}

#transportation ul li span {
	font-size: 0.6em;
	display: block;
}

#transportation ul li span:nth-child(2) {
	font-size: 0.6em;
	font-style: normal;
	color: #000;
	display: inline;
}

#transportation ul li:last-child span {
	font-size: 0.8em;
}

@media screen and (max-width: 600px) {
	#option ul.price-list li {
		width: 152px;
	}

	#option ul.price-list li dl dt,
	#option ul.price-list li dl dd {
		width: 100%;
	}

	#option ul.price-list li {
		line-height: 26px;
		margin: 0 auto 10px;
	}

	#transportation ul {
		width: 90%;
	}
}

@media screen and (max-width: 500px) {
	#option ul.price-list {
		width: 340px;
	}
}

#system #otherprice {
	margin-bottom: 50px;
}

#system #otherprice ul {
	width: 100%;
	text-align: center;
	overflow: hidden;
}

#system #otherprice ul li:nth-child(n+2) {
	margin-top: 10px;
}

@media screen and (max-width: 569px) {
	#system #otherprice ul {
		margin-bottom: 30px;
	}

	#system #otherprice ul li:nth-child(n+2) {
		clear: both;
		width: 100%;
		text-align: center;
	}
}

#system #otherprice ul li span {
	color: #e60012;
}

#system #otherprice ul li span i {
	font-size: 0.6em;
}

#system #otherprice ul li span+i {
	font-size: 0.7em;
}

#system #otherprice p {
	font-size: 20px;
	font-style: italic;
	background: #fcfbf6;
	width: 100%;
	max-width: 600px;
	border: #000 1px solid;
	margin: 30px auto;
	padding: 10px 0;
	text-align: center;
}

#system #otherprice span {
	font-size: 28px;
	font-style: normal;
	color: #fe9bd5;
}

#system #otherprice span.small {
	font-size: 14px;
	font-style: italic;
	color: #000;
}

#system #attention {
	width: 94%;
	margin: 0 auto 30px;
}

#system #attention h3 {
	font-size: 1.4em;
}

#system #attention h3 span.font-mincho {
	display: block;
	font-size: 0.6em;
}

#system #attention p {
	font-size: 1em;
	line-height: 26px;
	letter-spacing: 0;
}

#system #attention p span {
	font-size: 1.1em;
}

#system #attention ul {
	margin: 20px 0 20px 10px;
}

#system #attention ul li {
	font-size: 0.75em;
	margin-bottom: 10px;
	padding-left: 16px;
	position: relative;
}

#system #attention ul li::after {
	content: "";
	width: 2px;
	height: 12px;
	background-color: #AFAFAF;
	position: absolute;
	left: 0;
	top: 4px;
}

#system #attention h3#royality {
	font-size: 3.4em;
	margin-bottom: 10px;
}

/*////////// ▲ system / 料金システム ▲ //////////*/

/*////////// ▼ meeting / 待ち合わせ ▼ //////////*/

#meeting h4 {
	font-size: 1.4em;
	line-height: 40px;
	width: 96%;
	margin: 30px auto 10px;
	position: relative;
}

#meeting p.sp-width {
	width: 96%;
	margin: 0 auto 30px;
}

#meeting .map-box {
	width: 100%;
	margin: 0 auto 40px;
}

#meeting .map-box p {
	text-align: center;
	line-height: 40px;
	color: #fff;
	background-color: #313131;
	width: 100%;
}

#movie {
	margin-bottom: 30px;
}

#movie video {
	margin: 0 auto;
	display: block;
}

/*////////// ▲ meeting / 待ち合わせ ▲ //////////*/

/*////////// ▼ hotellist / ホテルリスト ▼ //////////*/

#serch-container {
	width: 100%;
	background-color: #000;
	padding: 10px 0;
	margin-bottom: 20px;
}

#serch-container #searchBox {
	margin: 0 auto;
	position: relative;
}

#serch-container h3 {
	font-size: 1.6em;
	color: #fff;
	text-align: center;
	margin-left: 10px;
}

#serch-container h3 span {
	font-size: 0.6em;
	letter-spacing: 4px;
	padding-left: 8px;
}

#serch-container .select-box {
	width: 140px;
	margin: 6px auto 12px;
}

#serch-container #searchBox #select-container {
	width: 550px;
	position: absolute;
	right: 0;
}

#serch-container #searchBox #select-container dl {
	width: 275px;
	float: left;
}

#serch-container #searchBox #select-container dl dt {
	width: 125px;
	float: left;
}

#serch-container #searchBox #select-container dl dt p {
	font-size: 0.8em;
	line-height: 39px;
	text-align: right;
	margin-right: 10px;
}

#serch-container #searchBox #select-container dl dd {
	width: 150px;
	font-size: 0.8em;
	float: left;
}

#hotellist #list-container {
	width: 90%;
	margin: 0 auto;
}

#hotellist #list-container dl {
	width: 100%;
	max-width: 420px;
	border-bottom: dotted 1px #333;
	margin: 0 auto 10px;
	padding-bottom: 8px;
}

#hotellist #list-container dl dt {
	font-size: 0.7em;
	color: #bababa;
	text-align: center;
	border: 1px solid #bababa;
	width: 80px;
	float: left;
	margin-right: 10px;
}

#hotellist #list-container dl dd {
	font-size: 0.9em;
	width: 75%;
	width: -webkit-calc(100% - 90px);
	width: calc(100% - 90px);
	float: left;
}

#hotellist table {
	padding: 0px;
	border: 1px #666666 solid;
	border-collapse: collapse;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}

#hotellist table th {
	margin: 0px auto;
	border: 1px #e1e1e1 solid;
	padding: 5px;
	background-color: #cd0000;
	font-weight: normal;
	color: #FFFFFF;
}

#hotellist table td {
	border: 1px #e1e1e1 solid;
	padding: 5px;
}

/*////////// ▲ hotellist / ホテルリスト ▲ //////////*/

/*////////// ▼ transport / 交通費 ▼ //////////*/

#trans-container {
	width: 90%;
	margin: 40px auto;
}

#trans-container dl dt {
	font-size: 2em;
	text-align: center;
	margin-bottom: 20px;
}

#trans-container dl dd {
	font-size: 1.1em;
	text-align: center;
	width: 100%;
	margin: 10px 0 20px;
}

/*////////// ▲ transport / 交通費 ▲ //////////*/

/*////////// ▼ concept / コンセプト ▼ //////////*/

#concept {
	margin: 0 auto 50px;
}

.concept-container {
	width: 100%;
	position: relative;
	margin: 0 auto 50px;
}

#concept #container-1 {
	padding-top: 50px;
}

#concept #container-1::before {
	content: "";
	width: 641px;
	height: 620px;
	background: url(../images/concept_BG01-B.png) no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-position: 0px -100px;
	z-index: 0;
}

#concept #container-1::after {
	content: "";
	width: 100%;
	height: 620px;
	background: url(../images/concept_BG01.png);
	background-attachment: fixed;
	position: absolute;
	top: 0;
	z-index: -1;
}

.concept-wrapper1 {
	width: 90%;
	max-width: 580px;
	background-color: rgba(255, 255, 255, .7);
	position: relative;
	margin: 20px auto;
	padding: 10% 5%;
}

.concept-wrapper1 h3 {
	width: 80%;
	position: relative;
	z-index: 1;
}

.concept-wrapper1 h3 img {
	width: 100%;
	max-width: 418px;
}

#concept h4 {
	font-size: 1.2em;
	list-style: 3px;
	line-height: 36px;
	color: #313131;
	letter-spacing: -1px;
	margin: 40px 0 20px;
	position: relative;
	z-index: 10;
}

#concept p {
	font-size: 1em;
	color: #313131;
	line-height: 1.5;
	letter-spacing: -1px;
	position: relative;
	z-index: 10;
}

#concept #container-2 {
	width: 100%;
	background: url(../images/concept_BG02.png) left center repeat-x;
	background-size: 100%;
	padding: 30px 0;
}

.concept-wrapper2 {
	width: 90%;
	max-width: 580px;
	background-color: rgba(240, 238, 234, 0.9);
	padding: 5%;
	margin: 0 auto;
}

.concept-wrapper2 h3 {
	width: 80%;
	position: relative;
	z-index: 1;
}

.concept-wrapper2 h3 img {
	width: 100%;
	max-width: 371.5px;
}

#concept .concept-wrapper4 h4,
#concept .concept-wrapper4 p {
	color: #fff;
}

#concept #container-3 {
	background: url(../images/concept_BG03-2.png) right bottom no-repeat;
	width: 100%;
	position: relative;
}

#concept #container-3::after {
	content: "";
	width: 100%;
	height: 635px;
	background: url(../images/concept_BG03.png) left no-repeat;
	position: absolute;
	top: 120px;
	left: 0;
	opacity: 0.2;
}

.concept-wrapper3 {
	width: 90%;
	max-width: 580px;
	height: 760px;
	padding: 5%;
	position: relative;
	margin: 0 auto;
}

.concept-wrapper3 h3 {
	width: 50%;
	position: relative;
	left: 0px;
	z-index: 1;
}

.concept-wrapper3 h3 img {
	width: 100%;
	max-width: 260px;
}

.concept-wrapper3 .concept-wrapper-inner {
	width: 100%;
	position: relative;
	padding: 0 4% 0 0;
}

#concept #container-4 {
	background: url(../images/concept_BG04.png);
	background-attachment: fixed;
	position: relative;
	height: 731px;
	margin-bottom: 80px;
	padding-top: 90px;
}

#concept #container-4::before {
	content: "";
	width: 318px;
	height: 801px;
	background: url(../images/concept_BG04-B.png) no-repeat top center;
	position: absolute;
	top: -52px;
	left: 0;
	z-index: 2;
}

#concept #container-4::after {
	content: "";
	width: 992px;
	height: 802px;
	background: url(../images/concept_BG04-C.png) no-repeat;
	position: absolute;
	top: -53px;
	right: 0;
	z-index: 1;
}

#concept #container-4 .concept-wrapper4 {
	color: #fff;
	background-color: rgba(230, 0, 18, .8);
	width: 90%;
	max-width: 580px;
	position: relative;
	top: 0px;
	margin: 0px auto;
	padding: 5%;
	z-index: 10;
}

#concept #container-4 .concept-wrapper4 h3 {
	width: 100%;
	max-width: 221.5px;
}

#concept #container-4 .concept-wrapper4 h3 img {
	width: 100%;
}

p#concept-last {
	font-size: 0.9em;
	line-height: 200%;
	width: 90%;
	margin: 0 auto;
}

@media screen and (max-width: 680px) {
	#concept #container-3 {
		background-size: 140%;
	}
}

/*////////// ▲ concept / コンセプト ▲ //////////*/

/*////////// ▼ magazine / メルマガラブマガジン登録 ▼ //////////*/

#magazine {
	margin: 0 auto 100px;
}

#magazine .more span {
	font-size: 0.8em;
	padding-left: 6px
}

#magazine-container {
	width: 100%;
	position: relative;
	margin: 50px auto 0;
}

#magazine-container::before {
	content: "";
	width: 80%;
	max-width: 421.5px;
	height: 502px;
	background: url(../images/mailmagazine_cast.png) no-repeat;
	background-size: 100%;
	position: absolute;
	top: 16px;
	left: 36%;
}

@media screen and (min-width: 680px) {
	#magazine-container::before {
		content: "";
		left: 35%;
	}
}

#magazine-container::after {
	content: "";
	width: 100%;
	height: 430px;
	background: url(../images/mailmagazine_BG.png);
	background-attachment: fixed;
	background-size: contain;
	position: absolute;
	top: 100px;
	z-index: -1;
}

@media screen and (max-width: 520px) {
	#magazine-container::after {
		height: 80vw;
	}
}

#magazine-title {
	width: 100%;
	max-width: 449.5px;
	margin: 30px auto 0;
	padding: 5%;
}

#magazine-container #magazine-title h3 {
	width: 100%;
	position: relative;
	z-index: 0;
}

#magazine-container #magazine-title h3 img {
	width: 100%;
	max-width: 1079px;
}

#magazine-container #magazine-title h4 {
	font-size: 1.6em;
	color: #000;
	letter-spacing: 4px;
	margin: 310px 0 10px;
	position: relative;
	z-index: 10;
}

#magazine-container #magazine-title p {
	font-size: 1em;
	color: #69642a;
	letter-spacing: 4px;
	line-height: 32px;
	width: 100%;
	position: relative;
	z-index: 10;
}

#magazine p {
	font-size: 0.75em;
	line-height: 200%;
	width: 90%;
	max-width: 360px;
}

#magazine .qr {
	width: 118px;
	margin-bottom: 60px;
}

/*////////// ▲ magazine / メルマガラブマガジン登録 ▲ //////////*/

/*////////// ▼ link / リンク ▼ //////////*/

#link h3 {
	color: #313131;
	font-size: 1.2em;
	letter-spacing: 2px;
	line-height: 36px;
	width: 90%;
	max-width: 480px;
	margin: 20px auto 10px;
}

#link p {
	width: 90%;
	max-width: 480px;
	margin: 0 auto 50px;
}

#link-banner-container {
	width: 90%;
	max-width: 480px;
	margin: 0px auto 180px;
}

#link-banner-container dl,
#link-banner-container ul {
	font-size: 0.9em;
	line-height: 28px;
	letter-spacing: 3px;
}

#link-banner-container dl dt,
#link-banner-container ul li span {
	font-weight: bold;
}

#link-banner-container dl dd {
	margin-bottom: 20px;
}

#linkCollection {
	width: 100%;
	background-color: #000;
	position: relative;
}

#linkCollection::after {
	content: "";
	width: 120%;
	height: 150px;
	background-color: #000;
	top: -100px;
	-webkit-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	-o-transform: rotate(-3deg);
	transform: rotate(-3deg);
	position: absolute;
}

#linkCollection h3 {
	color: #fff;
	font-size: 3em;
	text-align: center;
	letter-spacing: 1px;
	line-height: 50px;
	padding-top: 0px;
	position: relative;
	z-index: 1;
}

#linkCollection h3 span {
	font-size: 0.3em;
}

#linkCollection h3::after {
	content: "";
	width: 44px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	bottom: 48px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 0;
}

#linkCollection ul {
	width: 90%;
	margin: 0 auto 0px;
	padding-bottom: 100px;
}

#linkCollection ul li {
	color: #fff;
	font-size: 0.8em;
	text-align: center;
	float: left;
	margin: 4px;
}

#linkCollection ul li a {
	color: #fff;
}

/*////////// ▲ link / リンク ▲ //////////*/

/*////////// ▼ contact / お問い合わせ ▼ //////////*/

#contact h3 {
	color: #313131;
	font-size: 1.2em;
	letter-spacing: 2px;
	line-height: 32px;
	text-align: center;
	width: 90%;
	margin: 20px auto 10px;
}

#contact p {
	width: 90%;
	max-width: 540px;
	margin: 0px auto 20px;
}


/************* / formstyle / フォームスタイル ************/
#form {
	margin: 20px auto 50px;
	font-size: 0.8em;
}

#contact_form {
	width: 100%;
}

#contact .tbl_form {
	border-collapse: separate;
	border-spacing: 6px 10px;
	width: 90%;
	max-width: 550px;
	margin: 0 auto 50px;
}

.tbl_form>dl {
	margin-bottom: 20px;
}

.tbl_form>dl>dt {
	letter-spacing: 1.5px;
	line-height: 1.6;
	vertical-align: top;
	width: 100%;
	background-color: #e1e1e1;
	border: 1px solid #313131;
	padding: 20px 20px 15px;
	margin-bottom: -1px;
}

.tbl_form>dl>dd {
	letter-spacing: 2px;
	line-height: 1.6;
	width: 100%;
	border: 1px solid #313131;
	padding: 15px 20px 15px;
	margin: 0 5px 5px 0;
}

.essential {
	margin-left: 10px;
	color: #ff4a8a;
}

input, select {
	vertical-align: middle;
	-webkit-border-radius: 0px;
	border-radius: 0px;
	border: 1px solid #313131;
	cursor: pointer;
	margin-top: -2px;
	padding: 8px 10px;
}

#form .tbl_form select {
	font-size: 16px;
	margin-right: 10px;
}

.input_inq1 {
	font-size: 16px;
	width: 100%;
	background-color: #f2f2f2;
	border: 1px solid #313131;
	padding: 6px 10px;
}

.select_inq1 {
	width: 100%;
	background-color: #f2f2f2;
	border: 1px solid #313131;
	padding: 6px 10px;
}

dl.radio-box dd span {
	color: #fff;
	padding-top: 2px;
}

ul, ol, li {
	list-style: outside none none;
}

.radio-box {
	margin-bottom: -6px;
}

ul.radio {
	width: 290px;
}

.fotm_list_inline li {
	margin-right: 14px;
	float: left;
}

label.input_radio {
	padding-left: 15px;
	position: relative;
}

label.input_radio::before,
label.input_checkbox::before,
.btn_confirm, .fotm_list_inline li,
.ftxt3,
.ftxt4 {
	display: inline-block;
	vertical-align: middle;
}

dd#message-box {
	height: 300px;
}

#form .more button {
	width: 100%;
	height: 100%;
	cursor: pointer;
}

.more button span {
	font-size: 0.8em;
	padding-left: 6px
}

.error_style {
	color: red;
}

.form_box1 {
	display: inline;
}

/************* / formstyle / フォームスタイル ************/

/*////////// ▲ contact / お問い合わせ ▲ //////////*/

.bana {
	margin-top: 70px;
	text-align: center;
}

.bana img {
	width: 100%;
	max-width: 640px;
}

/*////////// ▼ グループリンク ▼ //////////*/
#shop-link {
	width: 100%;
	max-width: 600px;
	margin: 100px auto 50px;
}

#shop-link .logo {
	display: flex;
	align-items: center;
	justify-content: center;
}

#shop-link .logo div:last-child {
	margin-left: 10px;
}

#shop-link .logo div:last-child img {
	width: 140px;
}

#shop-link p {
	font-size: 18px;
	color: #ff5096;
	width: 100%;
	margin-top: 30px;
	padding: 10px 0;
	border: #ff5096 1px solid;
	text-align: center;
}

#shop-link p:nth-of-type(n+2) {
	margin-top: 40px;
}

#shop-link ul li {
	border-bottom: #000 1px solid;
}

#shop-link ul li a {
	width: 100%;
	padding: 20px 0;
	display: block;
}

/*////////// ▼ ピックアップ ▼ //////////*/
.pickup .fee {
	font-size: 1.5em;
	color: #fff;
	background-color: #ff71b8;
	background-image: -webkit-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: -moz-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: -o-linear-gradient(left, #ff71b8, #ff4a8a, #ff71b8);
	background-image: linear-gradient(to right, #ff71b8, #ff4a8a, #ff71b8);
	width: 100%;
	max-width: 360px;
	margin: 0 auto;
	padding: 10px 0;
	text-align: center;
}

.pickup .thum {
	width: 100%;
	max-width: 360px;
	height: auto;
	display: block;
	margin: 0 auto;
}

.pickup .cast-container .textBox {
	top: 0;
	width: 90%;
	left: 5%;
}

.pickup .cast-container .textBox h3 {
	font-size: 2.5em;
	font-style: italic;
	color: #ff4a8a;
	margin: 20px 0;
	line-height: 20px;
}

.pickup .cast-container .textBox p {
	font-size: 0.9em;
}

.pickup .cast-container .textBox p.comment {
	font-size: 0.8em;
	max-height: 206px;
	overflow: auto;
	margin-bottom: 18px;
}

/********** 2020.04.23 追記 ************/
iframe#PremiumBuyBtnParts {
	bottom: 60px !important;
}

#twitter1 {
	position: fixed;
	bottom: 103px;
	left: 20px;
	z-index: 9999;
}

#twitter2 {
	position: fixed;
	bottom: 55px;
	left: 20px;
	z-index: 9999;
}

#twitter1 img,
#twitter2 img {
	width: 44px;
}

/****** twitter_list ******/
#twitter-list {
	padding-bottom: 30px;
}

#twitter-list ul {
	width: 100%;
	max-width: 880px;
	margin: 0 auto;
}

#twitter-list ul li {
	position: relative;
}

#twitter-list ul li:nth-child(n+2) {
	margin-top: 20px;
}

#twitter-list ul li .image img {
	width: 100%;
}

#twitter-list ul li .more {
	width: 357px;
	height: 68px;
	position: absolute;
	right: 70px;
	bottom: 70px;
}

#twitter-list ul li .more .more-inner {
	line-height: 68px;
}

@media screen and (max-width: 880px) {
	#twitter-list ul li:nth-child(n+2) {
		margin-top: 2.273vw;
	}

	#twitter-list ul li .more {
		width: 40.568vw;
		height: 7.727vw;
		right: 7.955vw;
		bottom: 7.955vw;
	}

	#twitter-list ul li .more .more-inner {
		font-size: 2.045vw;
		line-height: 7.727vw;
	}
}

/****** twitterアイコン ******/
.btn-twitter {
	position: absolute !important;
}

.btn-twitter img {
	width: 44px !important;
}

/****** web_interview ******/
#web-interview {
	main {
		padding-bottom: 60px;
	}

	p {
		font-family: "Playfair Display", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
		font-size: 18px;
		margin-top: 40px;
		text-align: center;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}

	dl {
		width: 100%;
		margin-top: 20px;
		letter-spacing: 0.1em;

		dt {
			font-size: 16px;
			background: #e1e1e1;
			width: 100%;
			padding: 0 15px;
			border: #a0a0a0 1px solid;
			line-height: 2.143;

			span {
				font-size: 12px;
				color: #ff4a8a;
				margin-left: 10px;
			}
		}

		dt:nth-of-type(n+2) {
			margin-top: 10px;
		}

		dd {
			font-size: 16px;
			width: 100%;
			padding: 20px 15px;
			border: #a0a0a0 1px solid;
			display: flex;
			flex-wrap: wrap;

			label {
				padding: 0;
			}

			input[type="text"],
			input[type="tel"] {
				font-size: 16px;
				background: #f0f0f0;
				width: 100%;
				height: 25px;
				padding-left: 10px;
				border: none;
				border-radius: 0;
				box-shadow: 1px 1px 1px 1px rgba(133, 133, 133, .3) inset;
			}

			input[name="work_period"],
			input[name="bring_in"],
			input[name="availability"],
			input[name="desired_amount"] {
				width: 80px;
			}

			select {
				font-size: 16px;
				background: #f0f0f0;
				height: 25px;
				padding: 0 0 0 10px;
				border: none;
				border-radius: 0;
				box-shadow: 1px 1px 1px 1px rgba(133, 133, 133, .3) inset;
				appearance: auto;
			}

			select[name="era"],
			select[name="working_hours_from"],
			select[name="working_hours_to"] {
				width: 70px;
			}

			select[name="year"],
			select[name="month"],
			select[name="day"] {
				width: 50px;
			}

			textarea {
				font-size: 16px;
				background: #f0f0f0;
				width: calc(100% - 10px);
				height: 200px;
				padding: 10px;
				border: none;
				border-radius: 0;
				box-shadow: 1px 1px 1px 1px rgba(133, 133, 133, .3) inset;
				appearance: auto;
			}

			.divisions-2 {
				padding-right: 30px;
			}

			.divisions-2:last-child {
				padding-right: 0;
			}

			.divisions-3 {
				padding-right: 5px;
			}

			.divisions-3:last-child {
				padding-right: 0;
			}

			.divisions-4 {
				width: 50%;
			}

			span {
				color: #f00;
				width: 100%;
			}
		}

		.checkbox {
			display: block;

			div:nth-child(n+2) {
				margin-top: 5px;
			}
		}
	}

	.button input {
		font-family: "Playfair Display", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
		font-size: 18px;
		color: #fff;
		background: linear-gradient(to right, #fe9bd5 0%, #ff5096 50%, #fe9bd5 100%);
		width: 320px;
		margin: 40px auto 0;
		border: #fe9bd5 1px solid;
		text-align: center;
		line-height: 3.333;
		display: block;
	}

	.back input {
		font-family: "Playfair Display", "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", serif;
		font-size: 18px;
		color: #ff5096;
		background: #fff;
		width: 320px;
		margin: 20px auto 0;
		border: #ff5096 1px solid;
		text-align: center;
		line-height: 3.333;
		display: block;
	}
}
/****** web_interview ******/