@charset "UTF-8";

@font-face {
	font-family: 'Boring';
	src: url(./Boring-Medium.ttf) format('truetype');
}
* {
	box-sizing: border-box;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}

button ,
form input[type="text"],
form select ,
form textarea {
	font-family: sans-serif;
}

body {
	margin: 0px;
	padding: 0px;
	text-align: center;
	color: #666;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
}
#recruitpage {
	color: #666;
}
a:link ,
a:visited {
	text-decoration: none;
	color: #0091a8;
}
a:hover ,
a:active {
	text-decoration: none;
	color: #3ce4ff;
}

#inframe {
	background: transparent;
	text-align: center;
}

img {
	border: none;
	max-width: 100%;
	height: auto;
}
img.full-banner {
	vertical-align: bottom;
}
.clear {
	margin: 0;
	padding: 0;
	height: 0;
	clear: both;
}
#contents-wrap {
	position: relative;
	margin: 0;
}
#page-top {
	position: fixed;
	margin: 0;
	padding: 0;
	z-index: 400;
}
#page-top a {
	opacity: 0;
	display: block;
	width: 60px;
	height: 60px;
	text-align: center;
	text-decoration: none;
	background: #0ec7ca;
	border: solid 2px #fff;
	border-radius: 8px;
	-webkit-transition: .4s;
	 transition: .4s;
}
.down #page-top a {
	opacity: 1;
}
#page-top a:hover {
	opacity: 0.4;
	-webkit-transition: .4s;
	 transition: .4s;
}
#page-top a::after {
	content: "";
	position: absolute;
	right: 20px;
	top: 24px;
	width: 20px;
	height: 20px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


/* PC TAB */
@media only screen and (min-width: 681px) {
body {
	font-size: 13px;
	line-height: 1.6em;
	font-family: sans-serif;
}
body#recruitpage {
	font-size: 14px;
	line-height: 1.6em;
}
.pcbr::before {
	content: "\A" ;
	white-space: pre ;
}
.box p.pc-center {
	text-align: center;
}
.rec-box {
	text-align: center;
}
div.sp {
	display: none;
}
.nopc {
	display: none;
}
#bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	margin: 0 auto;
	z-index: -1;
	background: url(../images/bg.jpg) left center no-repeat;
	background-size: cover;
}
#bgsp {
	display: none;
}
#page-top {
	right: 16px;
	bottom: 16px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
body {
	font-size: 20px;
	line-height: 1.5em;
	font-family: sans-serif;
}
body#recruitpage {
	font-size: 24px;
	line-height: 1.5em;
}
.spbr::before {
	content: "\A" ;
	white-space: pre ;
}
div.pct {
	display: none;
}
.nosp {
	display: none;
}
#bg {
	display: none;
}
#bgsp {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	margin: 0 auto;
	z-index: -1;
	background: url(../images/bgsp.jpg) left center no-repeat;
	background-size: cover;
}
#page-top {
	right: 16px;
	bottom: 62px;
}
}
/* //SP */


.file ,
button ,
a.button ,
input[type="submit"] {
	z-index: 4;
	overflow: hidden;
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	margin: 1em auto;
	padding: 1.2em 4.0em 1.3em;
	text-align: center;
	font-size: 1.0em;
	line-height: 1em;
	letter-spacing: 0;
	cursor: pointer;
	color: #fff;
	background: #0c72ba;
	border: solid 2px #fff;
	border-radius: 5px;
	transition: .4s;
}


.file:hover ,
button:hover ,
a.button:hover ,
input[type="submit"]:hover {
	color: #fff;
}
input[type="submit"] {
	margin: 0 auto;
}
.button_wrap {
	z-index: 3;
	position: relative;
	display: inline-block;
	width: auto;
	height: auto;
	margin: 1em auto;
	overflow: hidden;
	border: solid 1px #f9929c;
	border-radius: 4px;
	transition: .4s;
}
.file:hover ,
button:hover ,
a.button:hover ,
.button_wrap:hover {
	color: #111;
	background: #67c0ff;
	transition: .4s;
}
button.mixitup-control-active {
	color: #111;
	background: #67c0ff;
}
button.mixitup-control-active .red {
	color: #111;
}



/* Contents
 * --------------------------------------- */
h1,h2,h3,h4,h5,div,a,p,form {
	box-sizing: border-box;
	vertical-align: bottom;
}
.txt-l {
	font-size: 1.2em;
	line-height: 1.2em;
}
div.txt-l {
	width: 100%;
	max-width: 854px;
	margin: 0 auto 20px;
	padding: 16px 4px 16px;
	font-size: 1.14em;
	line-height: 1.8em;
	background: #fff;
	border-radius: 0.5em;
}
.txt-ll {
	font-size: 1.4em;
	line-height: 1.2em;
}
div.txt-ll {
	margin-bottom: 0.4em;
	line-height: 1.6em;
}
.txt-lll {
	font-size: 1.8em;
	line-height: 1.2em;
}
div.txt-lll {
	line-height: 1.6em;
}
.txt-s {
	font-size: 0.8em;
	line-height: 1em;
}
.white {
	color: #111;
}
.red {
	color: #0091a8;
}
.no {
	font-family: sans-serif;
}


/* header
 * --------------------------------------- */
#header {
	position: relative;
	height: auto;
}
#header-top {
	z-index: 64;
	position: fixed;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	margin: 0 auto 0;
	padding: 0 ;
	text-align: center;
	background: rgba(255,255,255,0.4);
	transition: .4s;
}
body#toppage #header-top {
	background: rgba(255,255,255,0.0);
}
body#toppage.down #header-top ,
.down #header-top {
	background: rgba(255,255,255,0.9);
	transition: .4s;
}
#header-inner {
	position: relative;
	margin: 0 auto 0;
	padding: 0;
	display: block;
	text-align: center;
	width: 1080px;
	height: 80px;
}
#logo {
	display: block;
	overflow: hidden;
}
#header-bottom {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	z-index: 60;
}
#header-tel ,
#footer-tel {
	display: inline-block;
	margin: 16px 24px 0 auto;
	padding: 0;
	letter-spacing: 0.02em;
	color: #444;
	vertical-align: top;
	font-size: 24px;
	line-height: 1em;
	font-family: sans-serif;
}
#header-tel a:link ,
#header-tel a:visited ,
#footer-tel a:link ,
#footer-tel a:visited {
	color: #444;
}
#header-tel span ,
#footer-tel span {
	display: inline-block;
	float: left;
	padding: 0;
	color: #444;
	margin: 1px 6px 0 0;
	font-size: 22px;
	line-height: 1em;
}
#footer-mail {
	margin: 0 auto;
	padding: 12px 0 0;
	font-size: 1.3em;
	line-height: 1.1em;
	font-family: sans-serif;
}
#footer-mail a {
	color: #444;
}
#header-open ,
#footer-open {
	display: inline-block;
	margin: 16px auto 0;
	padding: 0;
	letter-spacing: 0.02em;
	color: #444;
	vertical-align: top;
	font-size: 24px;
	line-height: 1em;
	font-family: sans-serif;
}
#header-desk ,
#footer-desk {
	display: inline-block;
	float: left;
}
#header-open span ,
#footer-open span {
	display: inline-block;
	float: left;
	color: #444;
	margin: 3px 4px 0 0;
	font-size: 20px;
	line-height: 1em;
}
#header-desk ,
#footer-desk {
	margin: 0px 24px 0 0;
	font-size: 24px;
	line-height: 1em;
}
#header-open span.jp ,
#footer-open span.jp {
	margin: 4px 4px 0 0;
	font-size: 18px;
}


/* PC TAB */
@media only screen and (min-width: 681px) {
#logo {
	position: absolute;
	top: 14px;
	left: 0px;
	width: 400px;
	margin: 0;
	padding: 0 0 0 20px;
	text-align: left;
}
#logo img {
	margin: 0 auto 0;
	width: auto;
	height: 56px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
#header-inner {
	width: 680px;
	height: 89px;
}
#logo {
	width: 660px;
	margin: 0 auto 0;
	padding: 0;
	text-align: center;
}
#logo img {
	margin: 16px auto 0;
	width: auto;
	height: 62px;
}
#header-tel {
	display: none;
}
#footer-tel {
	margin: 16px 8px 0 auto;
	font-size: 30px;
	line-height: 1em;
}
#header-tel span ,
#footer-tel span {
	margin: 2px 4px 0 0;
	font-size: 28px;
	line-height: 1em;
	vertical-align: bottom;
}
#header-open ,
#footer-open {
	font-size: 30px;
	line-height: 1em;
}
#header-open span ,
#footer-open span {
	margin: 4px 4px 0 0;
	font-size: 25px;
	line-height: 1em;
	vertical-align: bottom;
}
#header-desk ,
#footer-desk {
	margin: 0px 28px 0 0;
	font-size: 30px;
	line-height: 1em;
}
#header-open span.jp ,
#footer-open span.jp {
	margin: 4px 4px 0 0;
	font-size: 23px;
	line-height: 1em;
}
}
/* //SP */

/* footer
 * --------------------------------------- */
#footer {
	overflow: hidden;
	position: relative;
	width: 100%;
	margin: 0;
	padding: 24px 0 100px;
	text-align: center;
	color: #777;
	background: #fff;
}
#footer-inner {
	position: relative;
	display: block;
	margin: 0 auto;
	overflow: hidden;
}
#footer-menu {
	display: block;
	padding: 0;
	list-style-type: none;
	margin: 0 auto 20px;
}
#footer-menu li {
	display: inline-block;
	list-style: none;
	margin: 0;
	padding: 0;
	cursor: pointer;
	position: relative;
	text-align: center;
	color: #0091a8;
}
#footer-menu li a {
	margin: 0 12px;
	text-decoration: none;
	padding: 0.6em 0.2em 0.6em 1.4em;
	font-size: 1.1em;
	line-height: 1.0em;
	background: url(../images/nav.png) left center no-repeat;
	background-size: auto 1.2em;
}
#footer-menu li a:link ,
#footer-menu li a:visited {
	color: #0091a8;
}
#footer-menu li a:hover {
	color: #3ce4ff;
}
#footer-menu li a span.en {
	display: none;
}
#footer-txt {
	max-width: 1024px;
	margin: 0 auto 16px;
	padding: 0 16px;
	text-align: center;
	font-size: 14px;
	line-height: 1.3em;
}
#footer-logo {
	display: table;
	text-align: center;
	width: 648px;
	margin: 0 auto;
	padding: 28px 0 8px;
}
#footer-logo:hover {
	background: none;
}
#footer-logo img {
	display: block;
	margin: 0 auto;
	width: auto;
	height: 80px;
}
#footer-copy {
	width: 100%;
	margin: 0 auto;
	padding: 36px 0 0;
	color: #777;
	font-size: 14px;
	line-height: 1em;
}
#footer-banner {
	margin: 20px auto 4px;
}
#footer-banner a {
	display: inline-block;
	margin: 0 8px 12px;
	font-family: sans-serif;
	font-size: 12px;
}
#footer-banner a img {
	vertical-align: bottom;
}


/* SP */
@media only screen and (max-width: 680px) {
#footer {
	padding: 28px 0 160px;
}
#footer-inner {
	width: 680px;
}
#footer-menu {
	width: 600px;
	margin: 0 auto 28px;
}
#footer-menu li {
	display: block;
	margin: 0 auto 8px;
	padding: 0;
	width: 100%;
	text-align: left;
}
#footer-menu li a {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0.7em 0.2em 0.4em 1.4em;
	font-size: 1.3em;
	line-height: 1.1em;
	background: url(../images/nav.png) left center no-repeat;
	background-size: auto 1.0em;
}
#footer-menu li a span {
	vertical-align: middle;
}
#footer-txt {
	width: 640px;
	text-align: left;
	font-size: 22px;
	line-height: 1.4em;
}
#footer-logo {
	margin: 8px auto 0;
}
#footer-logo img {
	width: auto;
	height: 86px;
}
#footer-copy {
	font-size: 20px;
	line-height: 1em;
}
}



/* #footersp
 * --------------------------------------- */
/* SP */
@media only screen and (max-width: 680px) {
#footersp {
	position: fixed;
	bottom: -1px;
	left: 0;
	display: block;
	width: 100%;
	height: 110px;
	padding: 8px 0 0;
	text-align: left;
	color: #fff;
background-image: -moz-linear-gradient( top, #262319 0%, #423c2a 100%);
background-image: -webkit-linear-gradient( top, #262319 0%, #423c2a 100%);
background-image: -ms-linear-gradient( top, #262319 0%, #423c2a 100%);
	border-top: solid 1px #999;
	line-height: 0em;
	letter-spacing: -.40em; /*隙間対策 */
	font-family: sans-serif;
	z-index: 960;
}
#footersp a {
	display: inline-block;
	width: 113px;
	height: 72px;
	margin: 0 auto 0 0;
	padding: 6px 0 0;
	font-size: 18px;
	line-height: 1.2em;
	letter-spacing: 0em;
	text-align: center;
	color: #fff;
	border-right: solid 1px #999;
	letter-spacing: normal; /*隙間対策 */
}
#footersp a img {
	display: block;
	width: auto;
	height: 36px;
	margin: 0 auto 6px;
}
}
/* //SP */


/* #menu
 * --------------------------------------- */
/* PC TAB */
@media only screen and (min-width: 681px) {
#menubtn {
	display: none;
}
#menu-wrap {
	position: fixed;
	top: 0px;
	right: 0px;
	display: block;
	width: 100%;
	height: 80px;
	margin: 0;
	padding: 18px 0 0 400px;
	text-align: center;
	z-index: 648;
}
#menu {
	display: table;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	list-style-type: none;
	border-collapse: collapse;
	border-spacing: 0;
	letter-spacing: -1em; /*隙間対策 */
}
#menu li {
	display: inline-block;
	margin: 0 auto;
	padding: 0;
	list-style-type: none;
	letter-spacing: normal; /*隙間対策 */
}
#menu li:nth-child(7) {
}
#menu li a {
	position: relative;
	display: block;
	width: auto;
	height: 48px;
	margin: 0;
	padding: 12px 12px 0;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 13px;
	line-height: 1em;
	color: #111;
	background: none;
}
#menu li a:link ,
#menu li a:visited {
	color: #111;
}
#menu li a.menuon {
	color: #111;
}
#menu li a img {
	display: none;
}
menu li a span {
	vertical-align: top;
}
#menu li a span.en {
	display: block;
	height: 18px;
	padding: 2px 0 0;
	font-family: sans-serif;
	font-size: 13px;
	line-height: 1em;
	letter-spacing: 0.2em;
}
#menu li a span.jp {
	color: #fff;
}
#menu li a span.jp {
	position: absolute;
	left: 0px;
	bottom: 0px;
	display: block;
	width: 100%;
	height: 11px;
	padding: 0;
	font-size: 11px;
	line-height: 1em;
	color: #666;
	opacity: 0;
	transition: .3s;
}
#menu li a:hover span.jp {
	opacity: 1.0;
	transition: .3s;
}
}
/* //PC TAB */

@media only screen and (max-width: 1049px) {
#menu-wrap {
	padding: 14px 0 0 400px;
}
#menu li a {
	height: 28px;
	padding: 0px 12px 0;
}
}

/* SP */
@media only screen and (max-width: 680px) {
#menubtn {
	position: fixed;
	bottom: 9px;
	right: 26px;
	width: 80px;
	height: 100px;
	font-size: 18px;
	line-height: 1em;
	letter-spacing: 0em;
	font-family: sans-serif;
	color: #fff;
	z-index: 990;
}
.navBtn {
	position: relative;
	width: 80px;
	height: 58px;
	margin: 0 auto;
	padding: 0;
	cursor: pointer;
}
.navBtn .line {
	position: absolute;
	left: 16px;
	width: 48px;
	height: 4px;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
.navBtn .line.lineT {
	top: 16px;
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
.navBtn .line.lineB {
	top: 30px;
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
.navBtn .line.lineC {
	top: 44px;
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
body.open .navBtn .line.lineT {
	top: 30px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
body.open .navBtn .line.lineC {
	opacity: 0;
	filter: alpha(opacity=0);
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
body.open .navBtn .line.lineB {
	top: 30px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	-webkit-transition: all 0.3s ease-out 0s;
	-moz-transition: all 0.3s ease-out 0s;
	-o-transition: all 0.3s ease-out 0s;
	transition: all 0.3s ease-out 0s;
}
#menu-wrap {
	z-index: 900;
	visibility: visible;
	overflow: hidden;
	position:fixed;
	margin: 0;
	top: 0;
	left: -101%;
	display: block;
	width: 100%;
	height: 100vh;
	padding: 0;
	background: rgba(255,255,255,0.96);
	transition: left 0.6s ease-in 0.2s;
}
body.open #menu-wrap {
	position: fixed;
	left: 0;
	transition: left 0.4s ease-out 0s;
}
#menu {
	position: absolute;
	left: 60px;
	bottom: calc(50% - 280px);
	display: block;
	width: 560px;
	height: auto;
	margin: 0;
	padding: 0;
	list-style-type: none;
	vertical-align: middle;
}
#menu li {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 0;
	border-top: solid 1px #bbb;
}
#menu li a {
	display: block;
	width: 480px;
	height: auto;
	margin: 0 auto;
	padding: 28px 0 28px;
	text-align: left;
	text-decoration: none;
	text-transform: uppercase;
	font-size: 24px;
	letter-spacing: 0.04em;
	line-height: 1.0em;
	font-family: sans-serif;
	color: #444;
}
#menu li a:link ,
#menu li a:visited {
	color: #444;
}
#menu li a:hover ,
#menu li a:active {
	color: #444;
}
#menu li a img {
	display: inline-block;
	height: 44px;
	margin: 0 12px 0 0;
	vertical-align: middle;
}
#menu li a span.en {
	font-size: 26px;
	font-family: sans-serif;
}
#menu li a span.jp {
	height: auto;
	margin-left: 16px;
	font-size: 20px;
}
#menu li a span {
	vertical-align: middle;
}
}
/* //SP */


/* top
 * --------------------------------------- */
#top {
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto 0;
	padding: 128px 0 0;
	overflow: hidden;
	background: url(../images/top.png) right top no-repeat , url(../images/top.jpg) left center no-repeat;
}
body#recruitpage #top {
	height: auto;
	padding: 0;
}
body#toppage #top {
	padding: 0px 0 0;
}
body#toppage #top video {
	min-width: 100%;
	min-height: 100%;
	object-fit: cover;
}
/* header-menu
 * --------------------------------------- */
body#recruitpage #header-bottom {
	margin: 0 auto;
	padding: 0;
	background: #fff;
	z-index: 48;
}
#header-menu {
	letter-spacing: -.40em; /*隙間対策 */
	margin: 0 auto;
	padding: 0;
	text-align: center;
	list-style-type: none;
	border-collapse: collapse;
	border-spacing: 0;
}
#header-menu li {
	letter-spacing: normal; /*隙間対策 */
	float: left;
	display: block;
	margin: 0;
	padding: 0;
	list-style-type: none;
	border-right: solid 1px rgba(149,213,214,0.6);
}
#header-menu li:last-child {
	border-right: solid 0px #dedede;
}
#header-menu li a {
	position: relative;
	display: block;
	margin: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	font-weight: bold;
	color: #666;
  background-image: -moz-linear-gradient( 90deg, #7defeb 0%, #cefdfb 81%);
  background-image: -webkit-linear-gradient( 90deg, #7defeb 0%, #cefdfb 81%);
  background-image: -ms-linear-gradient( 90deg, #7defeb 0%, #cefdfb 81%);
}
#header-menu li a:link ,
#header-menu li a:visited {
	color: #666;
	opacity: 1;
}
#header-menu li a:hover {
	color: #111;
	opacity: 0.6;
	-webkit-transition: .4s;
	 transition: .4s;
}
#header-menu li a i {
	position: absolute;
	bottom: -0.6em;
	left: calc(50% - 0.5em);
	font-size: 1.4em;
	color: #d5c087;
	z-index: 20;
}
/* PC TAB */
@media only screen and (min-width: 681px) {
#top {
	height: 320px;
}
body#toppage #top {
	height: 740px;
	background: none;
}
#header-menu {
	height: auto;
}
#header-menu li {
	width: 16.666%;
	height: auto;
}
#header-menu li a span.jp {
	display: block;
	padding: 1.1em 0 1.2em;
	font-size: 1.142em;
	line-height: 1em;
}
#header-menu li a span.en {
	font-size: 1.2em;
	line-height: 1em;
	text-transform: uppercase;
	color: #ff79a2;
}
}

/* SP */
@media only screen and (max-width: 680px) {
#top {
	height: 360px;
	padding: 90px 0 0;
	background: url(../images/top.png) right -120px top no-repeat , url(../images/topsp.jpg) left center no-repeat;
	background-size: auto 380px;
}
body#toppage #top {
	padding: 0px 0 0;
	background: none;
}
body#detailpage #top ,
body#castpage #top ,
body#schedulepage #top {
	height: 290px;
	background: url(../images/topsp.jpg) left center no-repeat;
	background-size: auto 380px;
}
#header-menu li {
	width: 33.333%;
	height: auto;
}
#header-menu {
	height: auto;
}
#header-menu li a i {
	font-size: 1.2em;
}
#header-menu li a span.jp {
	display: block;
	padding: 1.1em 0 1.2em;
	font-size: 1.0em;
	line-height: 1em;
}
#header-menu li a span.en {
	font-size: 0.9em;
	line-height: 1em;
	text-transform: uppercase;
	color: #ff79a2;
}
}


#circle {
	position: absolute;
	top: 0px;
	left: calc(50% - 180px);
	width: 360px;
	height: 360px;
	animation: 1s ease 0s 1 normal circle;
	animation-fill-mode: forwards;
}
@keyframes circle { 0%{opacity:0;} 99%{opacity:0;} 100%{opacity:1;} }

#circle div {
	position: absolute;
	width: 80%;
	height: 80%;
	border: solid thin #fff;
	border-radius: 50%;
	animation: wave 4s infinite;
}
#circle div.layer-0 { animation-delay: 0s; }
#circle div.layer-1 { animation-delay: 0.2s; }
#circle div.layer-2 { animation-delay: 0.4s; }
#circle div.layer-3 { animation-delay: 0.6s; }

@keyframes wave {
from {
	top: 50%;
	left: 50%;
	width: 0%;
	height: 0%;
	box-shadow: 0 0 100px inset #fff;
}
to {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
}
}

h2#toplogo {
	position: absolute;
	top: 40px;
	left: 0;
	width: 100%;
	text-align: center;
	font-size: 1.4em;
	line-height: 1.2em;
	letter-spacing: 0.04em;
	background: none;
	-webkit-animation: 2s ease 0s 1 normal topcopy1;
	animation: 2s ease 0s 1 normal topcopy1;
	animation-fill-mode: forwards;
}
@-webkit-keyframes topcopy1 { 0%{opacity:0;} 30%{opacity:0;} 100%{opacity:1;} }
@keyframes topcopy1 { 0%{opacity:0;} 30%{opacity:0;} 100%{opacity:1;} }

h2#toplogo img {
	display: block;
	margin: 0 auto 8px;
}
h2#toplogo .jp {
	color: #ff67af;
}
#webreserveapp {
	display: inline-block;
	margin: 0px auto 40px;
}
#toppic {
	margin: 0 auto;
	overflow: hidden;
}
#toppic ul {
	margin: 0;
	padding: 0;
}
#toppic ul li {
	list-style: none;
}
#toppic .owl-wrapper-outer {
	height: 290px;
}
#tw p {
	margin: 0 auto;
	padding: 1.2em 0 1.2em;
	text-align: left;
}
#topbanner img {
	vertical-align: top;
}

/* PC TAB */
@media only screen and (min-width: 681px) {
body#recruitpage #top img {
	width: 100%;
	height: 100%;
	vertical-align: top;
	object-fit: cover;
}
h2#toplogo {
	margin: 0 auto;
	padding: 288px 0 0;
}
h2#toplogo img {
	height: 88px;
}
h2#toplogo .jp {
	font-weight: bold;
}
#topcover {
	width: 60%;
}
.side {
	float: right;
	margin: 0 0px 0 auto;
	padding: 14px 0 20px;
	width: 240px;
	text-align:center;
}
.side img {
	vertical-align: top;
	max-width: 240px;
	margin: 0 auto 4px;
}
.side a:hover {
	opacity: 0.5;
}
#topbanner {
	float: right;
	width: 380px;
	margin: 0 40px 0 0;
	padding: 0px 0 0;
	text-align: center;
}
#topbanner p {
	margin: 0;
	padding: 0 0 14px;
}
#topbanner a {
	opacity: 1;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}
#topbanner a:hover {
	opacity: 0.5;
}
#topbanner img {
	display: inline-block;
	margin: 0 auto 12px;
	width: 320px;
	height: auto;
	vertical-align: top;
}
#toppic {
	width: 864px;
	height: 256px;
}
.flex-control-nav {
	bottom: -1.7em;
}
body#recruitpage #toppic {
	width: 100%;
	height: auto;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
body#recruitpage #top img {
	width: 680px;
	height: auto;
	vertical-align: top;
	object-fit: cover;
}
body#toppage #top {
	height: 820px;
	background: none;
}
h2#toplogo {
	margin: 0 auto;
	padding: 348px 0 0;
}
h2#toplogo img {
	height: 100px;
}
#topcover {
	width: 80%;
}
#webreserveapp {
	margin: 28px auto 20px;
}
#toppic {
	width: 680px;
	height: 456px;
}
#toppic img {
	width: 680px;
	height: auto;
	vertical-align: top;
}
.flex-control-nav {
	bottom: -1.6em;
}
#topbanner {
	width: 680px;
	margin: 0 auto 0;
	padding: 40px 0 20px;
	text-align: center;
}
#topbanner p {
	padding: 1.2em 40px 1.2em;
}
#topbanner img {
	display: inline-block;
	margin: 10px auto 0;
	width: 320px;
	height: 112px;
}
}
/* //SP */




/* Contents
 * --------------------------------------- */

#contents {
	overflow: hidden;
	width: 100%;
	margin: 0 auto 0;
	padding: 20px 0 40px;
}
#toppage #contents {
	padding: 10px 0 40px;
}
.main {
	margin: 0 auto;
	padding: 0;
}

.section#detail .main {
	width: 920px;
}
.section {
	position: relative;
	width: 100%;
	margin: 0px auto 0px;
	padding: 60px 0 60px;
}
.section#recintro {
	padding: 20px 0 60px;
}
.section#about {
	margin: 0 auto;
	padding: 60px 0 60px;
	background-color: #fff7e5;
}
.section#stop {
	background-color: #ffffda;
}
.section#training {
	margin: 0 auto;
	padding: 60px 0 60px;
	background-color: #faf6e9;
}
.sectionin {
	width: 100%;
	margin: 0 auto;
	padding: 0px 0 0px;
	overflow: hidden;
}

/* SP */
@media only screen and (max-width: 680px) {
.section#recintro {
	padding: 40px 0 60px;
}
.sectionin {
	width: 680px;
}
#news .sectionin {
	width: 680px;
}
body.schedulepage .sectionin ,
body.castpage .sectionin {
	padding: 12px 0px 12px;
}
}
/* //SP */


/* Box
 * --------------------------------------- */
.yellow {
	display: inline-block;
	padding: 0px 6px 3px;
	background: linear-gradient(transparent 60%, #bcf19e 60%);
}
.leftimg {
	float: left;
	margin: 0 15px 15px 0;
}
.rightimg {
	float: right;
	margin: 0 0 0px 15px;
}
.room {
	margin: 0 auto;
	padding: 48px 8px 8px;
	background: #f6ece2;
}
.room img {
	vertical-align: top;
	width: 720px;
	max-width: 100%;
	margin: 0 auto 12px;
	border: solid 12px #fff;
	border-radius: 16px;
}
.stop {
	max-width: 280px;
}
.recicon {
	max-width: 160px;
}
.box {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 20px;
	padding: 18px 10px 40px;
}
.box p {
	margin: 0 0 2em;
	padding: 0;
	text-align: left;
}
.box p:last-of-type {
	margin: 0 0 0px;
}
.point {
	display: block;
	width: 200px;
	height: 100px;
	margin: 0 auto;
	padding: 0 0;
	background: url(../images/point.png) center 20px no-repeat;
}

body.pct .half-box {
	float: left;
	display: inline-block;
	width: 46%;
	margin: 0 2%;
}


/* PC TAB */
@media only screen and (min-width: 681px) {
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
.box {
	margin: 0 auto 40px;
	padding: 20px 0px 0px;
}
.half-box {
	width: 680px;
	margin: 0 auto 40px;
	padding: 0;
}

}
/* //SP */


/* txt
 * --------------------------------------- */
.txt {
	width: 100%;
	margin: 0 auto 24px;
	padding: 0px 0px;
	text-align: left;
}
.txt:last-of-type {
	margin: 0 auto 12px;
}
.txt-box {
	width: 100%;
	margin: 0 auto 28px;
	padding: 0;
}
@media only screen and (max-width: 680px) {
.txt-box {
	padding: 28px 20px 0px;
}
}
.rec-box {
	list-style-type: none;
	width: 100%;
	max-width: 864px;
	margin: 0.2em auto 0.6em;
	padding: 16px 16px 16px;
	font-size: 1.4em;
	line-height: 1.6em;
	color: #111;
background-image: linear-gradient(225deg, #b3b3ee 10%, #88f1d5 50%, #f5eb7f 90%);
	border-radius: 14px;
  text-shadow	: 
	   2px  2px 1px #fff,
	  -2px  2px 1px #fff,
	   2px -2px 1px #fff,
	  -2px -2px 1px #fff,
	   2px  0px 1px #fff,
	   0px  2px 1px #fff,
	  -2px  0px 1px #fff,
	   0px -2px 1px #fff;
}
@media only screen and (max-width: 680px) {
.rec-box {
	width: 680px;
	padding: 16px 16px 12px;
	font-size: 1.3em;
	line-height: 1.5em;
}
}



.txt ol ,
.txt ul {
	margin: 0px;
	padding: 0.8em 0 0.8em 0.1em;
	text-align: left;
}
.txt ul {
	list-style-type: none;
}
.txt ol li {
	margin: 0px 0px;
	padding: 0 0 8px;
	line-height: 1.4em;
}
.txt ul li {
	margin: 0px 0px;
	padding: 0.4em 0 0.4em 1.5em;
	line-height: 1.4em;
	background: url(../images/li.png) left center no-repeat;
	background-size: 1.2em auto;
}
.txt ol li:last-child {
	padding: 0 0 0px;
}
.txt dl {
	margin: 0;
	text-align: left;
}
.txt dt {
	color: #333;
	margin: 0;
	padding: 6px 32px 8px;
	background: #fff6e6;
}
.txt dd {
	margin: 0;
	padding: 6px 32px 10px;
}




/* Heading
 * --------------------------------------- */
h2 {
	position: relative;
	margin: 0 auto 2.0em;
	padding: 0.8em 0 1.2em;
	text-align: center;
	text-transform: uppercase;
	text-indent: 0.2em;
	font-weight: normal;
	font-family: 'Boring',sans-serif;
	font-size: 1.0em;
	line-height: 1.0em;
	color: #111;
}
h2 span.jp {
	display: block;
	margin: 0 auto 0;
	padding: 0 0 0.4em;
	font-family: sans-serif;
	font-weight: bold;
	font-size: 1.8em;
	line-height: 1.0em;
	color: #999;
}
h2 span.en {
	display: block;
	margin: 0 auto 0;
	padding: 0.2em 0 0;
	font-family: sans-serif;
	font-weight: bold;
	font-size: 2.8em;
	line-height: 1.0em;
	letter-spacing: 0.04em;
	color: #0ec7ca;
}
h2:after {
	content:"";
	position: absolute;
	display: block;
	bottom: 0em;
	left: calc(50% - 100px);
	width: 200px;
	height: 2px;
	margin: 0;
	padding: 0;
	background: #a09064;
	z-index: 0;
}

h3 {
	position: relative;
	width: 100%;
	margin: 0 auto 0.8em;
	padding: 0 0 0.6em;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	font-family: sans-serif;
	font-size: 2.4em;
	line-height: 1.0em;
	letter-spacing: 0em;
	color: #8e7d50;
}
h3:after {
	content:"";
	position: absolute;
	display: block;
	bottom: 0em;
	left: calc(50% - 70px);
	width: 140px;
	height: 2px;
	margin: 0;
	padding: 0;
	background: #a09064;
	z-index: 0;
}
h3.h3case {
	overflow: hidden;
	margin: 0 auto 0;
	font-size: 1.9em;
	line-height: 1.0em;
}
h3.h3case:after {
	display: none;
}
.c1box h3.h3case {
	color: #ff7979;
}
.c2box h3.h3case {
	color: #579ceb;
}
.c3box h3.h3case {
	color: #75cb4f;
}
.c4box h3.h3case {
	color: #ffc20a;
}
h3 .case {
	display: block;
	float: left;
	margin: 0 auto 0 0;
	padding: 0.14em 0.6em 0.14em 0;
	font-weight: normal;
	font-size: 1.8em;
	line-height: 1.0em;
	border-right: solid 2px #0ec7ca;
}
.box-step h3 .case {
	font-weight: bold;
	color: #888;
}
.box-step h3 .step {
	float: left;
	display: inline-block;
	padding: 0.14em 0 0.14em 0.6em;
	text-align: left;
	font-weight: normal;
	font-size: 1.8em;
	line-height: 1.0em;
	color: #0ec7ca;
}
h3 .hours {
	display: block;
	padding: 0.2em 0 0;
	color: #888;
}
h4 {
	position: relative;
	max-width: 100%;
	margin: 0 auto 12px;
	padding: 0 40px;
	text-align: center;
	text-indent: 0em;
	text-transform: uppercase;
	font-family: sans-serif;
	font-weight: bold;
	font-size: 2.1em;
	line-height: 1.3em;
	letter-spacing: 0em;
	color: #0ec7ca;
	z-index: 0;
}
h4.pink {
	color: #ff7592;
}
h5 {
	display: table;
	margin: 0 auto 6px;
	padding: 0 12px 0.06em;
	text-align: center;
	font-family: sans-serif;
	font-weight: normal;
	font-size: 1.4em;
	line-height: 1.2em;
	color: #0091a8;
	border-bottom: solid 0.2em #79d9e8;
}
#no1 h5 {
	position: relative;
	padding: 0 4px 0.2em;
	font-size: 1.7em;
	color: #444;
}
.review h5 {
	margin: 0 auto 6px 0;
	padding: 0 4px;
	text-align: left;
	font-size: 1.3em;
	background: linear-gradient(transparent 80%, #d43666 80%);
}


/* SP */
@media only screen and (max-width: 680px) {
h2 {
	padding: 0.8em 0 0.8em;
	font-size: 1.0em;
}
h2 span.en {
	font-size: 2.0em;
	line-height: 1.1em;
	letter-spacing: -0.01em;
}
h2 span.jp {
	font-size: 1.6em;
	line-height: 1.0em;
}
h3 span.en {
	padding: 0 0 1px;
	font-size: 4.0em;
	line-height: 1.1em;
}
h3 span.jp {
	padding: 0px 0 6px;
	letter-spacing: 0.1em;
}
h3.h3case {
	font-size: 1.7em;
	line-height: 1.0em;
}
h3 .case {
	padding: 0.2em 0.4em 0.2em 0.4em;
	font-size: 1.6em;
	line-height: 1.0em;
}
.box-step h3 .case {
	padding: 0.3em 0.2em;
	font-size: 1.4em;
	line-height: 1.0em;
	color: #888;
}
.box-step h3 .step {
	padding: 0.36em 0 0 0.2em;
	font-size: 1.32em;
	line-height: 1.0em;
}
h4 {
	padding: 0;
	font-size: 1.8em;
}
}


/* Cell
 * --------------------------------------- */
.cell {
	width: 100%;
	margin: 0 auto 24px;
	overflow: hidden;
	letter-spacing: -.40em; /*隙間対策 */
}
.rcell {
	max-width: 800px;
	background: #44c8cb;
	border-top: solid 1px #666;
	border-left: solid 1px #666;
	border-right: solid 1px #666;
}
div.pink {
	background: #ff7592;
}
.pcell {
	max-width: 680px;
	padding: 24px;
	background: #44c8cb;
}
.rcell .cset {
	border-bottom: solid 1px #666;
}
.pcell .cset {
	overflow: hidden;
	margin: 0 auto;
	background: #fff;;
}
.pcell .cset:nth-child(2n+1) {
	background: #eee;;
}
.cell .cset div {
	display: inline-block;
	padding: 1em 2% 1em;
	letter-spacing: normal; /*隙間対策 */
}
.rcell .cset div {
	display: inline-block;
	padding: 0.7em 1.2% 0.7em;
	font-size: 1.24em;
	line-height: 1.5em;
	vertical-align: top;
}
.pcell .cset div {
	padding: 0.7em 0.8% 0.7em;
	font-size: 1.4em;
	line-height: 1em;
}
.plcell .cset div {
	padding: 0.7em 1.2% 0.7em;
	font-size: 1.6em;
	line-height: 1em;
}
.cell .cset div .no {
	margin-left: 0.1em;
	margin-right: 0.1em;
	font-size: 1.6em;
	font-weight: bold;
}
.cell .cset .cleft {
	width: 28%;
	padding: 1em 0 1em 2em;
	text-align: left;
}
.cell .cset .cright {
	width: 72%;
	padding: 1em 2em 1em 0;
	text-align: left;
}
.rcell .cset .cleft {
	padding: 1em 1em 1em 1.6em;
	font-weight: bold;
	color: #fff;
}
.rcell .cset .cright {
	padding: 1em 1.6em 1em 1em;
	background: #fff;
}
.pcell .cset .cleft {
	width: 45%;
	padding: 1em 0 1em 1em;
	color: #888;
}
.pcell .cset .cright {
	width: 55%;
	padding: 1em 1em 1em 0;
	text-align: right;
	color: #0ec7ca;
}
.c1box .pcell .cset .cright {
	color: #ff7979;
}
.c2box .pcell .cset .cright {
	color: #579ceb;
}
.c3box .pcell .cset .cright {
	color: #75cb4f;
}
.c4box .pcell .cset .cright {
	color: #ffc20a;
}



/* PC TAB */
@media only screen and (min-width: 681px) {
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
.rcell .cset div {
	font-size: 1.0em;
	line-height: 1.4em;
}
.rcell .cset .cleft {
	padding: 1em 0.2em 1em 0.6em;
}
.rcell .cset .cright {
	padding: 1em 0.2em 1em 0.4em;
}
.pcell .cset .cleft {
	width: 52%;
}
.pcell .cset .cright {
	width: 48%;
}
.plcell .cset .cleft {
	width: 40%;
}
.plcell .cset .cright {
	width: 60%;
}
.pcell .cset div {
	font-size: 1.3em;
	line-height: 1em;
}
.plcell .cset div {
	font-size: 1.4em;
	line-height: 1em;
}
.cell .cset div .no {
	font-size: 1.2em;
}
}
/* //SP */


/* news twiier
 * --------------------------------------- */
.section#detail #tw {
	float: none;
	width: 400px;
	height: 400px;
	margin: 0 auto 8px;
}
#newsbox {
	padding: 0;
	overflow-y: auto;
}
#newsbox a {
	display: block;
	margin: 0 auto 20px;
}
#newsbox a img {
	vertical-align: bottom;
}
.kiji {
	width: 580px;
	margin: 0 auto 8px;
	padding: 0 0 0 46px;
	text-align: left;
	border-bottom: solid 1px #c5beb5;
	background: url(../images/sns.png) left top no-repeat;
	background-size: 40px auto;
}
.kiji .date {
	margin: 0;
	padding: 4px 0 4px;
	font-size: 1em;
	line-height: 1em;
	font-weight: bold;
}
.kiji .com {
	margin: 0;
	padding: 0px 0 12px;
	line-height: 1.3em;
}
.kiji img {
	display: block;
	max-width: calc(100% - 8px);
	height: auto;
	margin: 8px 8px 8px 0;
	clear: both;
}
.kiji img:first-child {
	float: left;
}
.kiji img:nth-of-type(2) {
}


/* PC TAB */
@media only screen and (min-width: 681px) {
.twitter {
	float: left;
	width: 380px;
	height: auto;
	margin: 0 20px 28px;
}
#nw {
	width: 620px;
	margin: 0 auto 0;
	padding: 0;
}
#newsbox {
	width: 600px;
	height: 360px;
	margin: 0 auto 0px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
.twitter {
	width: 600px;
	height: auto;
	margin: 0 auto 40px;
	padding: 0;
}
.section#detail #tw {
	width: 640px;
}
#nw {
	width: 600px;
	margin: 20px auto 0;
	padding: 20px 0 0;
	border-top: solid 1px #ada69c;
}
#newsbox {
	width: 600px;
	height: 380px;
	margin: 0 auto 60px;
}
.kiji {
	background: url(../images/sns.png) left top no-repeat;
	background-size: 40px auto;
}
.kiji {
	padding: 0 0 0 50px;
}
.kiji .date {
	padding: 6px 0 6px;
}
.kiji .com {
	padding: 0px 0 12px;
}
}
/* //SP */



/* cast
 * --------------------------------------- */
.thumbparkmenu {
	overflow: hidden;
	clear: both;
	text-align: center;
	width: 100%;
}
.thumbparkmenu ul {
	display: table;
	margin: 4px auto 24px;
	padding: 0;
	text-align: center;
}
.thumbparkmenu ul li {
	display: inline-block;
	list-style-type: none;
}
.thumbparkmenu ul li button .red {
	margin-right: 4px;
	color: #c5e7ff;
}
.thumbparkmenu ul li button:hover .red ,
.thumbparkmenu ul li button.active .red ,
.thumbparkmenu ul li button.mixitup-control-active .red {
	color: #c5e7ff;
}
.thumbparkmenu ul li button {
	margin: 0 0.2em;
	padding: 0.8em 2.0em;
	text-decoration: none;
	font-size: 1.1em;
}
#thumbpark ,
.thumbindex {
	width: 100%;
	margin: 0 auto;
	padding: 2px 0 0;
	text-align: center;
	line-height: 0em;
	letter-spacing: -.40em; /*隙間対策 */
}
.pickupbox {
	display: inline-block;
	overflow: hidden;
}
.thumb {
	display: inline-block;
	position: relative;
	padding: 0;
	text-align: center;
	line-height: 1em;
	overflow: hidden;
	letter-spacing: normal; /*隙間対策 */
	background: rgba(255,255,255,0.8);
}
.thumb a.iframe {
	z-index: 8;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	padding: 0;
	color: #888;
}
.thumb figure {
	position: relative;
	margin: 0 auto 0;
	padding: 4px;
	overflow: hidden;
	position: relative;
	text-align: center;
	overflow: hidden;
}
.thumb figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	-webkit-transition:all 0.3s;
	transition:all 0.3s;
}
.thumb figcaption {
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
.thumbname {
	display: block;
	font-size: 1.06em;
	line-height: 1em;
	text-align: center;
	color: #444;
}
.thumb .timemon ,
.thumb .timetue ,
.thumb .timewed ,
.thumb .timethu ,
.thumb .timefri ,
.thumb .timesat ,
.thumb .timesun ,
.thumb .timetod {
	display: block;
	width: 100%;
	height: 28px;
	margin: 0 auto 0;
	padding: 6px 0 0;
	font-size: 1.06em;
	line-height: 1em;
	color: #444;
	border-top: solid 1px #ddd;
}
.thumb .thumbroom {
	display: block;
	width: 100%;
	height: 22px;
	margin: 0 0 1px;
	padding: 2px 0 0;
	font-size: 1.04em;
	color: #fff;
}
.rooma {background-color: #6b77f1;}
.roomb {background-color: #07bf9e;}
.roomc {background-color: #d871fa;}

.thumb .room1 ,
.thumb .room2 ,
.thumb .room3 ,
.thumb .room4 ,
.thumb .room5 ,
.thumb .room6 ,
.thumb .room7 {display: none;}

.tday-mon .room1 {display: block;}
.tday-tue .room2 {display: block;}
.tday-wed .room3 {display: block;}
.tday-thu .room4 {display: block;}
.tday-fri .room5 {display: block;}
.tday-sat .room6 {display: block;}
.tday-sun .room7 {display: block;}


.section#detail .thumbname {
	width: 100%;
	height: auto;
	padding: 0.4em 0 0.4em;
	font-size: 1.5em;
	line-height: 1em;
}
.thumbsize {
	margin: 1px auto 0;
}

.section#detail .thumbsize {
	width: 100%;
	margin: 0 auto 0;
	padding: 2px 0 0;
	font-size: 1.3em;
	line-height: 1em;
}
.thumb .timemon ,
.thumb .timetue ,
.thumb .timewed ,
.thumb .timethu ,
.thumb .timefri ,
.thumb .timesat ,
.thumb .timesun {display: none;}

.tday-mon .timemon {display: block;}
.tday-tue .timetue {display: block;}
.tday-wed .timewed {display: block;}
.tday-thu .timethu {display: block;}
.tday-fri .timefri {display: block;}
.tday-sat .timesat {display: block;}
.tday-sun .timesun {display: block;}

.thumbicon {
	position: absolute;
	left: 0;
	bottom: 30px;
	width: 50px;
	height: 14px;
	margin: 0;
	background-repeat: no-repeat;
	background-position: center top;
}
.icona {background-image: url(../images/icona.gif);}
.iconb {background-image: url(../images/iconb.gif);}
.iconc {background-image: url(../images/iconc.gif);}
.icond {background-image: url(../images/icond.gif);}
.icone {background-image: url(../images/icong.gif);}
.iconf {background-image: url(../images/iconf.gif);}

html > body p.linkarea a {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	text-align: left;
	text-indent: -200%;
}
html > body p.linkarea a:hover {
}

.dispatch ,
.new ,
.tw {
	position: absolute;
	display: block;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 26;
}
.dispatch {background-image: url(../images/dispatch.png);}
.new {background-image: url(../images/new.png);}
.tw {background-image: url(../images/tw.png);}


.section#detail .tw {
	right: 0px;
	bottom: 44px;
	width: 50px;
	height: 50px;
}
.review {
	width: 440px;
	max-height: 680px;
	overflow: auto;
}
.thumbicon {
	position: absolute;
	display: block;
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	z-index: 26;
}
.icona {background-image: url(../images/icona.png);}
.iconb {background-image: url(../images/iconb.png);}
.iconc {background-image: url(../images/iconc.png);}
.icond {background-image: url(../images/icond.png);}
.icone {background-image: url(../images/icong.png);}
.iconf {background-image: url(../images/iconf.png);}



/* PC TAB */
@media only screen and (min-width: 681px) {
.thumb {
	width: 222px;
	height: 322px;
	margin: 0 12px 20px;
	font-size: 14px;
}
.thumbtime {
	height: 371px;
}
.thumb figure {
	width: 222px;
	height: 288px;
}
.thumb a.iframe:hover figure img {
	transform: scale(1.2,1.2);
	-webkit-transform:scale(1.2,1.2);
	-moz-transform:scale(1.2,1.2);
	-ms-transform:scale(1.2,1.2);
	-o-transform:scale(1.2,1.2);
}
.thumb figcaption {
	height: 132px;
}
.thumbname {
	width: 100%;
	height: 32px;
	margin: 0 auto;
	padding: 9px 0 0;
}
.section#detail .thumbname {
	margin: 0.4em auto 0.4em;
}
.thumb .dispatch ,
.thumb .new {
	top: 0px;
	left: 0px;
	width: 88px;
	height: 88px;
}
.thumb .tw {
	top: 242px;
	right: 6px;
	width: 40px;
	height: 40px;
}
#detail .dispatch ,
#detail .new {
	top: 0px;
	left: 0px;
	width: 88px;
	height: 88px;
}
.dcell .thumbroom {
	display: block;
	width: 100%;
	margin-bottom: 0.1em;
	padding: 0.2em 0 0.2em;
	font-size: 0.92em;
	line-height: 1em;
	color: #fff;
	border-radius: 2px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
.thumbparkmenu ul li {
	width: 32%;
	margin: 0 0.6% 20px;
}
.thumbparkmenu ul li button {
	width: 100%;
	padding: 0.6em 1.2em;
	font-size: 1.0em;
}
.thumb {
	width: 320px;
	height: 464px;
	margin: 0 8px 16px;
	font-size: 22px;
}
.thumbtime {
	height: 538px;
}
.thumb figure {
	width: 320px;
	height: 416px;
}
.thumb figcaption {
	height: 182px;
}
.thumbname {
	width: 100%;
	height: 42px;
	margin: 2px auto 0;
	padding: 10px 0 0;
}
.thumb .timemon ,
.thumb .timetue ,
.thumb .timewed ,
.thumb .timethu ,
.thumb .timefri ,
.thumb .timesat ,
.thumb .timesun ,
.thumb .timetod {
	width: 100%;
	height: 38px;
	margin: 6px auto 0;
	padding: 9px 0 0;
	font-size: 0.92em;
}
.section#detail .thumbname {
	margin: 4px auto 12px;
}
.thumb .thumbroom {
	height: 34px;
	padding: 6px 0 0;
}
.thumb .dispatch ,
.thumb .new {
	top: 0px;
	left: 0px;
	width: 120px;
	height: 120px;
}
.thumb .tw {
	top: 350px;
	right: 8px;
	width: 60px;
	height: 60px;
}
#detail .dispatch ,
#detail .new {
	top: 0px;
	left: 0px;
	width: 120px;
	height: 120px;
}
.dcell .thumbroom {
	margin-right: 0.4em;
	padding: 0.02em 0.4em 0.01em;
	font-size: 0.92em;
	line-height: 1em;
	color: #fff;
	border-radius: 4px;
}
}
/* //SP */

/* Detail
 * --------------------------------------- */
#detailphoto .photos .flexslider .slides img {
	width: 100%;
	height: auto;
}
.flex-control-thumbs {
	display: table;
	width: 480px;
	height: 112px;
	margin: 12px auto 0;
	padding: 0;
	text-align: left;
	overflow: hidden;
	letter-spacing: -.40em; /*隙間対策 */
}
.flex-control-thumbs li {
	display: table-cell;
	width: 84px;
	height: 112px;
	margin: 0 4px 0 0;
	padding: 0;
	border-style: none;
	overflow: hidden;
	letter-spacing: normal; /*隙間対策 */
}
.flex-control-thumbs img {
	width: auto;
	height: 112px;
	border-style: none;
}
.flex-control-thumbs img:hover {
	border-style: none;
}
.flex-control-thumbs .flex-active {
	overflow: hidden;
}

#detailphoto {
	position: relative;
	text-align: center;
	overflow: hidden;
}
#detailphoto .photos {
	width: 480px;
	height: 780px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	overflow: hidden;
}
#detailphoto .photos .flexslider {
	height: 776px;
	margin: 0 auto 0;
}
.review {
	margin: 0 auto;
}
.review p {
	line-height: 1.3em;
	margin: 0 auto 28px;
	padding: 0;
	text-align: left;
}
#profile {
	padding: 0;
	color: #333;
	overflow: hidden;
}
.profilebox {
	position: relative;
	margin: 0 auto 0px;
	padding: 8px 20px 20px;
	text-align: center;
	border-top: solid 2px #79d9e8;
	overflow: hidden;
}
.profilebox:first-child {
	border-bottom: solid 2px #79d9e8;
}
#profile .cell div {
	font-size: 1.06em;
	line-height: 1.2em;
}
#profile p {
	width: 100%;
	max-height: 480px;
	overflow: auto;
	font-size: 1.16em;
	line-height: 1.6em;
	margin: 0 auto;
	padding: 2px 0;
	text-align: left;
}

/* PC TAB */
@media only screen and (min-width: 681px) {
#detailphoto {
	float: left;
	margin: 0px auto 0 0;
	width: 480px;
}
#profile {
	float: right;
	width: calc(100% - 500px);
	margin: 0 auto 0 0;
	padding: 0;
}
#profile p {
	max-width: 480px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
#detailphoto {
	margin: 0 auto 0px;
	width: 680px;
}
#detailphoto .photos {
	width: 680px;
	height: 1040px;
}
#detailphoto .photos .flexslider {
	height: 1040px;
}
#profile {
	width: 100%;
	margin: 0 auto 0;
	padding: 8px 0px 20px;
}
}
/* //SP */



/* access
 * --------------------------------------- */
.map {
	display: block;
	width: 100%;
	max-width: 880px;
	height: 360px;
	margin: 0 auto 0px;
}
.access {
	margin: 0 auto;
	padding: 20px 0 0;
	line-height: 1.2em;
	overflow: hidden;
}
.access div {
	position: relative;
	display: block;
	width: 48%;
	float: left;
	margin: 0 1% 16px;
	padding: 16px 2% 12px;
	text-align: left;
}
.access div:nth-child(2n+1) {
	clear: both;
}
.access div img {
	width: 100%;
	margin: 0 auto 4px;
	display: block;
}
.access .no {
	position: absolute;
	left: 0px;
	top: 0px;
	display: block;
	width: 44px;
	height: 44px;
	margin: -8px 0 0;
	padding: 3px 3px 2px 0;
	text-align: center;
	font-size: 40px;
	line-height: 1em;
	font-style: italic;
	color: #fff;
	background: #43d0ee;
	-webkit-border-radius: 36px; /*角丸*/
	-moz-border-radius: 36px;
	border-radius: 36px;
}







/* Q&A
 * --------------------------------------- */
.box-qa {
	margin: 0 auto 0.6em;
	padding: 28px 0;
	background: #fff0ef;
}
.qabox {
	position: relative;
	max-width: 800px;
	margin: 0 auto 12px;
	padding: 0;
}
.qabox:after {
	content:"";
	position: absolute;
	top: 21px;
	right: 16px;
	width: 28px;
	height: 4px;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
.qabox:before {
	content:"";
	z-index: 2;
	position: absolute;
	top: 9px;
	right: 28px;
	width: 4px;
	height: 28px;
	margin: 0;
	padding: 0;
	background-color: #fff;
}
.qabox.open:before {
	display: none;
}
.qaques {
	cursor: pointer;
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0.5em 0 0.5em 3.0em;
	text-align: left;
	font-family: sans-serif;
	font-size: 1.4em;
	line-height: 1.3em;
	color: #fff;
	background: #ff7592;
	border-radius: 2.0em;
}
.qabox:nth-child(2n+2) .qaques {
	background: #ff9bb0;
}
.qaques:after {
	position: absolute;
	top: 5px;
	left: 5px;
	content:"Q";
	margin: 0;
	display: block;
	width: 35px;
	height: 35px;
	padding-top: 2px;
	text-align: center;
	font-family: sans-serif;
	font-weight: bold;
	font-size: 28px;
	line-height: 1em;
	color: #ff7592;
	background: #fff;
	-webkit-border-radius: 1.6em; /*角丸*/
	-moz-border-radius: 1.6em;
	border-radius: 1.6em;
	box-sizing: border-box;
}
.qabox:nth-child(2n+2) .qaques:after {
	color: #ff9bb0;
}
.qaans {
	position: relative;
	width: 98%;
	margin: 8px auto 0;
	padding: 0.6em 1.0em 0.6em 3.0em;
	text-align: left;
	font-size: 1.2em;
	line-height: 1.4em;
	color: #666;
	background: #fff;
}
.qaans:after {
	position: absolute;
	top: 5px;
	left: 5px;
	content:"A";
	margin: 0;
	display: block;
	width: 35px;
	height: 35px;
	padding-top: 2px;
	padding-left: 2px;
	text-align: center;
	font-family: sans-serif;
	font-weight: bold;
	font-size: 1.6em;
	line-height: 1em;
	color: #ff7592;
	box-sizing: border-box;
}
/* flow
 * --------------------------------------- */
.box-training {
	overflow: hidden;
	max-width: 800px;
	margin: 0 auto 20px;
	padding: 20px;
	color: #777;
	background: #fff;
	border: solid 12px #fff;
	border-radius: 28px;
}
.box-training.c1box {
	background: #eaf8c0;
}
.box-training.c2box {
	background: #c0f8c3;
}
.box-training.c3box {
	background: #c0f8f3;
}
.box-training p {
	text-align: center;
	font-size: 1.6em;
	line-height: 1.4em;
}
.box-step {
	overflow: hidden;
	max-width: 800px;
	margin: 0 auto;
	padding: 20px;
	color: #777;
	background: #fff;
}
.box-step p {
	text-align: center;
	font-size: 1.9em;
	line-height: 1.4em;
}
.arrow {
	position: relative;
	height: 2.4em;
}
.arrow::after {
	content: "";
	position: absolute;
	top: 0.2em;
	left: calc(50% - 2em);
	border: 2rem solid transparent;
	border-top-color: transparent;
	border-top-style: solid;
	border-top-width: 2em;
	border-top: 2em solid #dcd3b6;
}


@media only screen and (max-width: 680px) {
.qabox {
	width: 670px;
}
.qabox:after {
	top: 32px;
	right: 18px;
}
.qabox:before {
	top: 20px;
	right: 30px;
}
.qaques {
	padding: 0.8em 0 0.64em 2.8em;
	font-size: 1.1em;
	line-height: 1.3em;
}
.qaques:after {
	top: 10px;
	left: 10px;
	width: 52px;
	height: 52px;
	padding-top: 6px;
	font-size: 42px;
	box-sizing: border-box;
}
.qaans {
	padding: 0.6em 1.0em 0.6em 2.8em;
	font-size: 1.0em;
	line-height: 1.6em;
}
.qaans:after {
	top: 10px;
	left: 9px;
}
.box-training p {
	text-align: left;
	font-size: 1.2em;
	line-height: 1.4em;
}
.box-step {
	padding: 1.0em 0.4em;
}
.box-step h3 {
	padding: 0em 0em 0.4em 0;
	font-size: 1.4em;
	line-height: 1.3em;
}
.box-step img {
	width: 180px;
	margin: 0 1.2em 0.6em 0;
}
.box-step p {
	padding: 0;
	font-size: 1.2em;
	line-height: 1.3em;
}
}



/* Recruit
 * --------------------------------------- */
#recruitpage #pay .half-box p {
	margin: 0;
	padding: 0em 2.0em 0 0;
	text-align: left;
	font-size: 1.2em;
	line-height: 1.6em;
}
#recruitpage .box ul {
	max-width: 600px;
	margin: 0 auto 0.6em;
	padding: 0;
}
#recruitpage .box ul li {
	margin: 0 0 0 1em;
	padding: 0 0 0.4em;
	text-align: left;
}
#recruitpage .red {
	color: #ff56a2;
}
.recruit-box {
	max-width: 980px;
	margin: 0 auto 0px;
	padding: 0;
}
.recruit-box p {
	margin: 0 auto 0px;
	padding: 0;
	text-align: center;
	font-size: 1.44em;
	line-height: 1.5em;
	color: #666;
}
.pay-box {
	width: 100%;
	height: auto;
	margin: 0 auto 28px;
	padding: 2px 0 28px;
	vertical-align: baseline;
	color: #fff;
	background: #23c0c4;
}
.kyuryou {
	font-size: 3.6em;
	line-height: 1.0em;
}
.mno {
	display: inline-block;
	padding: 0 0 0 0.1em;
	font-weight: bold;
	font-size: 2.0em;
	line-height: 1.0em;
	color: #fff66d;
	transform: translateY(0.04em);
}
.lno {
	display: inline-block;
	padding: 0 0 0 0.1em;
	font-weight: bold;
	font-size: 2.4em;
	line-height: 1.0em;
	color: #fff66d;
	transform: translateY(0.04em);
}
/* SP */
@media only screen and (max-width: 680px) {
.recruit-box p {
	padding: 0 32px;
	text-align: left;
	font-size: 1.12em;
	line-height: 1.5em;
}
.pay-box {
	margin: 0 auto 40px;
	padding: 40px 0 28px;
}
.kyuryou {
	font-size: 2.1em;
	line-height: 1.0em;
}
.mno {
	font-size: 1.4em;
	line-height: 1.0em;
}
.lno {
	font-size: 1.7em;
	line-height: 1.0em;
}
}

.box-merit {
	max-width: 1140px;
	margin: 0 auto 20px;
	padding: 0;
	letter-spacing: -.40em; /*隙間対策 */
}
.box-merit li {
	list-style-type: none;
	display: inline-block;
	width: 190px;
	height: 190px;
	margin: 0 4px 8px;
	padding: 52px 16px 0;
	text-align: center;
	font-weight: bold;
	font-family: sans-serif;
	font-size: 1.8em;
	line-height: 1.2em;
	color: #fff;
	background: #4dd3e2;
	-webkit-border-radius: 150px; /*角丸*/
	-moz-border-radius: 150px;
	border-radius: 150px;
	letter-spacing: normal; /*隙間対策 */
}
.box-ng li {
	padding: 77px 10px 0;
	background: #777;
}
.box-pay li {
	padding: 64px 0px 0;
}
img.rec_campain {
	max-width: 920px;
	width: 100%;
	margin: 48px auto 0px;
}
img.rec_no1 {
	width: 280px;
	margin: 0 auto 16px;
}
img.logoanzen {
	width: 160px;
	margin: 0 auto 16px;
}
img.rec_first {
	width: 920px;
	margin: 0px auto 20px;
}
.recbox {
	display: table;
	margin: 20px auto;
}
.anzen .treat h4 {
	font-size: 2.0em;
	line-height: 1.1em;
}
.treat {
	display: inline-block;
	width: 220px;
	height: 220px;
	margin: 4px 12px 0;
	padding: 40px 0 0;
	text-align: center;
	font-size: 1.6em;
	line-height: 1.6em;
	color: #c89b43;
	overflow: hidden;
	-webkit-border-radius: 0.6em; /*角丸*/
	-moz-border-radius: 0.6em;
	border-radius: 0.6em;
}
.treat-a .treat {
	background-color: #f48ac5;
}
.treat-b .treat {
	background-color: #f37bb0;
}
.treat-c .treat {
	list-style-type: none;
	font-size: 2.2em;
	line-height: 1.0em;
	font-weight: bold;
	color: #ff56a2;
	background-color: #fdf0f4;
	border: 4px solid #ff56a2;
}
.treat-c .treat img {
	width: 80px;
	margin: 20px auto 0;
}

.box-syokuba {
	max-width: 920px;
	margin: 0 auto 16px;
}
.box-syokuba img {
	width: 47%;
	margin: 0 1%;
}
.about {
	overflow: hidden;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	letter-spacing: -.40em; /*隙間対策 */
}
.about-box {
	vertical-align: top;
	display: inline-block;
	width: 48%;
	margin: 0 8px;
	padding: 0;
	border: solid 2px #35ccde;
	letter-spacing: normal; /*隙間対策 */
}
.about-txt {
	position: relative;
	padding: 1.2em 1.6em 1.6em;
	font-size: 1em;
	line-height: 1.8em;
}
.about-txt h3 {
	margin: 0 auto 0;
	padding: 0 0 0.2em;
	font-weight: bold;
	font-family: sans-serif;
	font-size: 2.0em;
	line-height: 1.2em;
	letter-spacing: 0.0em;
	color: #35ccde;
}
.about-txt h3:after {
	display: none;
}
.about-txt p {
	margin: 0;
	padding: 0;
	text-align: left;
}


/* PC TAB */
@media only screen and (min-width: 681px) {
.about-txt p {
	font-size: 1.4em;
	line-height: 1.4em;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
#recruit-buttons {
	padding: 0;
}
#recruit-buttons a.button {
	display: block;
	width: 560px;
	margin: 0 auto 20px;
	font-size: 1.8em;
}
#recruit-buttons a.button:last-child {
	margin: 0 auto 0px;
}
body#recruitpage #pay .half-box p {
	font-size: 1.1em;
	line-height: 1.4em;
}
body#recruitpage img.rec_campain {
	margin: 28px auto 0px;
}
body#recruitpage img.rec_no1 {
	width: 240px;
}
.about-box {
	width: 640px;
	margin: 0 auto 20px;
}
.about-pic {
	height: 280px;
	overflow: hidden;
}
.about-txt {
	padding: 1.7em 1em 1.6em;
	height: auto;
}
.about-txt  h3 {
	font-size: 1.5em;
	line-height: 1.1em;
}
.about-txt p {
	font-size: 1.14em;
	line-height: 1.5em;
}
.box-merit li {
	margin: 0 12px 24px;
	padding: 112px 4px 0;
	width: 300px;
	height: 300px;
	font-size: 1.4em;
	line-height: 1.4em;
}
.box-ng li {
	padding: 128px 10px 0;
	font-size: 1.8em;
	line-height: 1.0em;
}
}
/* //SP */



/*form
 * --------------------------------------- */
#mailframe {
	width: 640px;
	height: 400px;
	margin: 0 auto;
	border: none;
}
form {
	margin: 0;
	padding: 0;
	text-align: center;
}
form input[type="text"],
form select ,
form textarea {
	margin: 4px 0;
	font-size: 100%;
	line-height: 1.2em;
	border: solid 1px #bbb;
}
form input[type="text"],
form textarea {
	width: 86%;
	padding: 6px 4px 6px;
}
form #inputage {
	width: 20%;
}
.files {
	clear: both;
	width: 100%;
	margin: 0 auto 8px 0;
}
.file {
	clear: both;
	float: none;
	display: inline-block;
	overflow: hidden;
	position: relative;
	margin: 8px auto 0 0;
	padding: 0.6em;
	font-size: 18px!important;
	line-height: 1em;
	color: #111;
	background: #eee;
	border: 0px solid #fae5ee;
}
.file input[type="file"] {
	opacity: 0;
	filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
	position: absolute;
	right: 0;
	top: 0;
	margin: 0;
	font-size: 100px;
	cursor: pointer;
}



#recruit-buttons {
	z-index: 84;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 88px;
	padding: 0;
	padding: 13px 0 0;
	font-size: 20px;
	line-height: 1em;
	background: rgba(255,255,255,0.8);
}
#recruit-buttons a.button {
	display: inline-block;
	width: auto;
	height: auto;
	margin: 0 6px;
	padding: 0.6em 0.8em;
	font-size: 1.3em;
	line-height: 1.0em;
	color: #fff;
	background: #4cc7e6;
	border: solid 0px #bbb;
	border-radius: 0.2em;
}
#recruit-buttons a.button:hover {
	background: #6fecfb;
}
#recruit-buttons a.button .jp {
	display: block;
	padding: 0 0 12px;
	font-size: 0.8em;
}
#recruit-buttons a.button.linebutton {
	background: #27ce95;
}
#recruit-buttons a.button.linebutton:hover {
	background: #6af3c4;
}


/* PC TAB */
@media only screen and (min-width: 681px) {
.section #recruit-buttons {
	font-size: 1.4em;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 680px) {
#recruit-buttons {
	height: 140px;
	padding: 20px 60px 0 0;
}
#recruit-buttons a.button {
	margin: 0 16px 0 0;
}
}
