@charset "utf-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700&display=swap');

@font-face {
	font-family:'CGothic';
	src:url('images/fonts/CGothic.ttf') format('truetype');
}
@font-face {
	font-family:'CSerif';
	src:url('images/fonts/CSerif.ttf') format('truetype');
}
@font-face {
	font-family:'NR';
	src:url('images/fonts/NitalagoRuika-06.ttf') format('truetype')
		,url('images/fonts/NitalagoRuika-06.woff') format('woff');
}

@media screen and (min-width:800px){
	.no-display-pc{
		display:none!important;
	}
}
@media screen and (max-width:799px){
	.no-display-sp{
		display:none!important;
	}
}

/* ==============================================
	fonts
=============================================== */
* {
	--font-body:"NR" ,"Noto Sans JP" ,sans-serif;
	--inbox-bg:rgba(255,255,255,0.6);
}



/* ==============================================
	CSS reset
=============================================== */

* ,*:before ,*:after {
	box-sizing:border-box;
	text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
}
html ,body ,div ,p ,span ,iframe ,a ,img ,
h1 ,h2 ,h3 ,h4 ,h5 ,h6 ,
dl ,dt ,dd ,ol ,ul ,li ,
form ,label ,
table ,thead ,tbody ,tfoot ,tr ,th ,td ,
strong ,em ,blockquote ,q ,pre ,
header ,footer ,nav ,article ,section ,aside {
	margin:0;
	padding:0;
	border:0 none;
	vertical-align:inherit;
	font-size:inherit;
	font-weight:inherit;
	font-family:inherit;
	font-style:inherit;
}
button ,input ,textarea ,select {
	font-size:inherit;
	padding:0.3em;
	font-family:inherit;
	border:1px solid #666;
	border-radius:0.3em;
}

input[type="submit"] ,button {
	padding:0.5em 1.5em;
}

html ,body {
	min-height:100%;
	height:100%;
	font-family:var(--font-body);
	line-height:1;
}
a {
	color:inherit;
	text-decoration:none;
	-webkit-transition:all 0.3s ease;
	transition:all 0.3s ease;
}
a:hover {
	text-decoration:none;
}

img {
	vertical-align:top;
	max-width:100%;
	max-height:100%;
	backface-visibility:hidden;
	-webkit-backface-visibility:hidden;
}
video {
	width:100%;
}

ol ,ul ,li {
	list-style:none;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}


/* ============================================
	flex
=============================================== */
.flex{
	display:flex;
	justify-content:center;
	align-items:center;
}
.flex.left {
	justify-content:flex-start;
}
.flex.right {
	justify-content:flex-end;
}
.flex.between {
	justify-content:space-between;
}
.flex.around {
	justify-content:space-around;
}
.flex.evenly {
	justify-content:space-evenly;
}

.flex.top {
	align-items:flex-start;
}
.flex.bottom {
	align-items:flex-end;
}
.flex.base {
	align-items:baseline;
}
.flex.stretch {
	align-items:stretch;
}

.flex.column {
	flex-direction:column;
}
.flex.rev {
	flex-direction:row-reverse;
}
.flex.column.rev {
	flex-direction:column-reverse;
}

.flex.wrap {
	flex-wrap:wrap;
}

.flex.col2 > * {
	width:calc(100% / 2);
}
.flex.col3 > * {
	width:calc(100% / 3);
}
.flex.col4 > * {
	width:calc(100% / 4);
}

.flex > .half {
	width:50%;
}
.flex > .full {
	width:100%;
}

.height-inherit > * {
	height:100%;
}
.height-inherit-all * {
	height:100%;
}



/* ============================================
	commonTable
=============================================== */
.commonTable {
	margin:0 auto;
	border-collapse:separate;
	border-spacing:1em 1em;
	background:var(--inbox-bg);
}
.commonTable th {
	width:35%;
	color:#e00;
	text-align:right;
}
.commonTable th:after {
	content:"：";
}
.commonTable td {
	width:65%;
}

@media screen and (max-width:799px){
	.commonTable th:after {
		white-space:nowrap;
	}
	.commonTable th:after {
		content:none;
	}
}


/* ============================================
	common
=============================================== */

body{
	position:relative;
	font-size:16px;
	line-height:1.6;
	color:#000;
	background:#fff;
}

@media screen and (min-width:800px){
	#bgLayer{
		min-width: 1400px;
		max-width: 1920px;
		width:100%;
		margin:0 auto;	
	}
}

@media screen and (max-width:799px){
	#bgLayer{
		width:480px;
		min-width:480px;
		max-width:480px;
		margin:0 auto;
		overflow:hidden;
	}
}

.innerFrame {
	width:1400px;
	max-width:100%;
	margin:0 auto;
}

img{
	max-width:100%;
	height:auto;
	display:inline-block;
	border:0;
}

a{
	cursor:pointer;
	text-decoration:none;
}

.tel-link a{
	pointer-events:auto;
}

.all-center {
	width:100%;
	max-width:100%;
	margin:0 auto;
}
.all-center.w1600{
	width:1600px;
}
.all-center.w1400{
	width:1400px;
}
.all-center.w1200{
	width:1200px;
}
.all-center.w1000{
	width:1000px;
}
.all-center.w800{
	width:800px;
}
.all-center.wrapper {
	padding:2em 1em 0;
}

.all-center.nopage {
	padding:12em 0 8em;
	text-align:center;
}

.inbox {
	background:var(--inbox-bg);
	padding:1em;
}
@media screen and (max-width:799px){
	.all-center.wrapper {
		padding:2em 0.5em 0;
	}
	.inbox {
		padding:0.5em;
	}
}


.noDisp ,
.altText {
	display:none !important;
}

.noData {
	width:100%;
	padding:8em 0 10em;
	color:#666;
	text-align:center;
}
.noProf {
	width:100%;
	padding:2em 2em 6em;
	color:#666;
}

.marquee > p {
  visibility:hidden;
  margin:0;
  white-space:nowrap;
}


main {
	padding-top:4em;
	padding-bottom:6em;
	background:url(images/common/1920_2.webp) 50% 0 repeat-y;
	background-size:1920px;
}
main section + section {
	padding-top:6em;
}
@media screen and (max-width:799px){
	main {
		background-size:100%;
	}
}


dl,dt,dd{
	display:block;
	margin:0;
	padding:0;
}


.contents-cover {
	padding:3em;
}

.supplement-cover em {
	padding:0 0.3em;
}

.center {
	text-align:center;
}



@media screen and (max-width:799px){
	.contents-outer {
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.contents-cover {
		padding:1em 0 0;
	}
}


/* ==============================================
	contents block
=============================================== */
.block-header {
	padding:0.5em;
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
}
.block-header.bg {
	background:var(--inbox-bg);
}
.block-body {
	padding-top:2em;
}
.block-body .strong {
	font-size:160%;
	font-weight:bold;
	color:#f00;
}
.block-body .strong + p {
	padding-top:2em;
}

.block-body .notice{
	padding-top:0.5em;
}
.block-body .text-small{
	font-size:90%;
	color:#666;
}

.melmagaLink {
	color:#33f;
}
a.melmagaLink:hover {
	color:#f33;
}

.melmaga.flex > *{
	padding:0 0.5em;
}
.melmaga input[name='form[mail]']{
	width:30em;
}
.melmaga input[type="submit"]{
	padding:0.4em 1em 0.5em;
}

.block-form {
	padding-bottom:3em;
}
.block-form .text-small{
	padding-top:0.3em;
	font-size:90%;
	color:#999;
}


@media screen and (max-width:799px){
	.block-header > * {
		padding:0 1em;
	}
	.block-header > * > span.h-main {
		font-size:180%;
	}
	.block-header:not(.sub):before ,
	.block-header:not(.sub):after {
		background-size:auto 50%;
	}

	#special-banner + #special-banner {
		padding-top:3em;
	}

	.concept .caption {
		font-size:90%;
	}
	.concept .text {
		font-size:80%;
	}
}




/* ==============================================
	slider common PROFILE  FlOOR  
=============================================== */
#homeSliderBloc {
	padding-bottom:4em;
	text-align:center;
}
#homeSliderBloc #homeSliderLoader {
	width:100%;
	height:100%;
	padding-top:150px;
}
#homeSliderBloc #homeSlider {
	opacity:0;
}
#homeSliderBloc #homeSlider li {
	padding:5px;
}
#homeSliderBloc #homeSlider li img {
	margin:auto;
}
#homeSliderBloc #homeSlider li a {
	display:inline-block;
	background:#fff;
	line-height:1;
}
#homeSliderBloc #homeSlider li a img {
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}
#homeSliderBloc #homeSlider li a:hover img {
	opacity:0.8;
}

#homeSliderBloc #bx-pager {
	padding-top:2em;
}
#homeSliderBloc #bx-pager a img {
	border:1px solid #fff;
	outline:3px solid transparent;
}
#homeSliderBloc #bx-pager a.active img {
	outline-color:#f00;
}

/* ==============================================
	clearfix common PROFILE FlOOR  
=============================================== */
.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	line-height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	display:block; /* for IE8 */
	zoom:1; 
}

/* ============================================
	common contents
=============================================== */
.caption-cover {
	padding:0.5em;
	background:var(--inbox-bg);
    border-bottom:2px solid #e00;
}
.caption{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-direction:column;
	text-align:center;
	color:#f00;
}
.caption .ja{
	font-size:240%;
	line-height:1.2;
}
.caption .en{
	font-size:120%;
}

@media screen and (max-width:799px){
	.caption .ja {
		font-size:200%;
	}
}


/* ============================================
	guide button
=============================================== */
.guide-cover {
	margin:auto;
	width:500px;
	max-width:100%;
	padding:3em 0;
}
.guide a{
	display:block;
	color:#fff;
	background-color:#796042;
	display:flex;
	justify-content:center;
	align-items:center;
	padding:1.5em;
}
.guide a:hover{
	background-color:#875;
}
.guide-text-cover {
	text-align:center;
	line-height:1.2;
}
.guide-text{
	font-size:120%;
	display:block;
}
.guide-text2{
}
@media screen and (max-width:799px){
	.guide-cover{
		padding:3em 1em;
	}
	.guide a{
		padding:1em;
	}
}


/* ==================================
common　nav
================================== */
#header-nav {
	position:sticky;
	top:0;
	left:0;
	right:0;
	z-index:10000;
	color:#fff;
	background:linear-gradient(180deg, #444, #000);
}

nav .nav-ul-cover{
	max-width:1600px;
	margin:0 auto;
	padding-top:0em;
}

nav .nav-ul{
	display:flex;
	justify-content:space-evenly;
	align-items:center;
	text-align:center;
	font-size:110%;
	line-height:1.4;
}

nav .nav-li {
	width:calc(100% / 11);
	padding:0 0.5px;
}
nav .nav-li a {
	display:block;
	padding:0.6em 0;
}
nav .nav-li a > span{
	display:block;
	font-size:110%;
}
nav .nav-li a > span.en{
	font-size:80%;
}

nav .nav-li.active a ,
nav .nav-li a:hover {
	color:#f33;
	background:linear-gradient(180deg, #fff, #ddd);
}



/* ==================================
common header
================================== */
header {
	color:#fff;
	background:linear-gradient(180deg, #444, #000);
	border-bottom: 3px solid #f0c;
}

header .header-in{
	max-width:1600px;
	margin:0 auto;
	padding:0.3em 0.5em;
}

header .h1{
	padding:0.2em 1em 0.3em;
	font-size:90%;
	background:linear-gradient(180deg, #444, #000);
	text-align:center;
}

header .logo-tel-cover{
	height:100px;
	display:flex;
	justify-content:space-between;
	align-items:center;
	text-align:right;
}

header .logo-cover a {
	display:block;
}
header .logo-cover a img {
	height:100px;
}

header .open-tel-cover {
	line-height:1.4;
	text-align:right;
}
header .tel{
	line-height:1.2;
	font-size:180%;
	font-weight:bold;
}



@media screen and (max-width:799px){
	header .header-in{
		border-bottom:1px solid #999;
	}
	header .logo-cover a {
		padding:0.3em;
	}
	header .logo-cover a img {
		height:4em;
	}
	header .logo-tel-cover {
		height:auto;
		justify-content:center;
		flex-direction:column;
	}
	header .open-tel-cover {
		width:100%;
		padding:0.5em 0;
		text-align:center;
	}
}




/* ==================================
common　footer
================================== */
.footer-in{
	text-align:center;
}

.footer-in-in{
	color:#fff;
	background:linear-gradient(180deg ,#444 ,#000);
}

footer .nav-ul-cover {
	max-width:1600px;
	margin:0 auto;
	padding-top:2em;
}

footer .nav-ul{
	display:flex;
	justify-content:space-evenly;
	align-items:center;
	text-align:center;
	line-height:1.3;
}

footer .nav-li {
	flex-grow:1;
}
footer .nav-li a {
	position:relative;
	display:block;
	color:#fff;
	padding:0.3em 0.5em;
}
footer .nav-li a span{
	display:block;
}
footer .nav-li a .jp{
}
footer .nav-li a .en{
	font-size:80%;
}

footer .nav-li a:after {
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	display:block;
	width:100%;
	height:2px;
	background:#eee;
	transform:scaleX(0%);
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}
footer .nav-li a:hover:after {
	transform:scaleX(100%);
}

footer .footer-c{
	padding:3em 0;
	line-height:1.8;
}
#footer-image-cover {
	width:480px;
	margin:0 auto;
}

footer .name{
	font-size:180%;
}

footer .tel {
	padding-top:0.5em;
}
footer .tel a{
	font-size:150%;
}
footer .tel .text{
	display:block;
}


footer .footer-block{
	border-top:solid 1px #8e8e8e;
	padding-top:3em;
	background-color:#000;
}


#copyright {
	padding:1.5em 0;
	line-height:1.3;
	text-align:center;
	font-size:90%;
}


@media screen and (max-width:799px){
	#footer-image-cover{
		width:80%;
	}
}


/* ======================================================================================
top
========================================================================================= */
/* ==================================
header contents 
================================== */


/* ==================================
 top contents1
================================== */
#contents1 {
	padding:2em 0;
}
#contents1:nth-child(1){
	padding:3em 0 1em;
}

#contents1 .caption-wrapper2{
	padding:1.3em 0.5em 1.5em;
	border-top:solid 2px #796042;
	border-bottom:solid 2px #796042;
}

#contents1 .caption-cover2{
	overflow:hidden;
}

#contents1 .caption-cover2 ul {
	white-space:nowrap;
	width:100%;
	height:1em;
	line-height:1;
	font-size:200%;
}

#contents1 .caption-cover2 ul > li{
	display:inline-block;
	height:100%;
	padding-left:200px;
}



/* ==================================
top contents2
================================== */
#companion .flex-cover{
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	flex-wrap:wrap;
}
#companion .flex-cover.flex-center{
	justify-content:center;
}

#companion .flex-c-cover{
	width:calc(100% / 4);
	padding:1em 0.5em;
}
#companion .flex-c-cover.blank{
	filter:brightness(0.6);
}
#companion .flex-c-cover .flex-c{
	position:relative;
	text-align:center;
}
#companion .flex-c-cover .flex-c .aFrame {
	position:relative;
	display:block;
	background:#fff;
	border:2px solid #fff;
	outline:3px solid transparent;
}
#companion .flex-c-cover .flex-c a:hover{
	outline-color:#f00;
}

#companion .castList-catch{
	width:100%;
	aspect-ratio:800 / 120;
	background:#eee;
}
#companion .castList-image{
	position:relative;
	padding-top:2px;
}
#companion .castList-image > .main-image{
	width:100%;
	aspect-ratio:600/800;
	overflow:hidden;
}
#companion .castList-image > .main-image img{
	width:100%;
	height:100%;
	object-fit:cover;
	transition:all 0.4s ease;
	-webkit-transition:all 0.4s ease;
}
#companion a:hover .castList-image > .main-image img{
	transform:scale(1.1);
}

#companion .castList-image > .newface-icon{
	position:absolute;
	top:0;
	right:-2px;
	width:22%;
}

#companion .info-cover{
	position:absolute;
	left:0;
	bottom:0;
	width:100%;
}

#companion .name-cover{
	margin-left:-5px;
	width:calc(100% - 0.5em);
	color:#fff;
	background:rgba(255,0,0,0.8);
	border-radius:0 2em 2em 0;
}
#companion .name{
	font-size:150%;
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:1;
}
#companion .name .age {
	font-size:90%;
}
#companion .size{
	padding-bottom:0.2em;
}

#companion .time-cover{
	padding:0.3em 0;
}
#companion .time{
	font-size:120%;
	color:#fff;
	background:rgba(0,0,0,0.8);
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:1;
}
#companion .time.undecided{
	opacity:0;
}

@media screen and (max-width:799px){
	#companion .flex-c-cover {
		width:calc(100% / 2);
	}
	#companion .info-cover {
	}
	#companion .name-cover{
		width:100%;
		font-size:80%;
	}

	#companion .time {
		font-size:100%;

	}
}



/* ==================================
	ranking
================================== */
body:not(#page-ranking) .rank-icon {
	display:none;
}

#companion .castList-image > .rank-icon{
	position:absolute;
	top:6px;
	left:-2px;
	width:30%;
}

.all-center wrapper.ranking {
	width:auto;
}
#companion .ranking .flex-c-cover {
	width:calc(100% / 5);
}
#companion .noRank .main-image {
	background:#eee;
}
#companion .noRank .main-image img {
	display:none;
}
#companion .noRank .name-cover {
	background:rgba(204,204,204,0.8);
}

@media screen and (max-width:799px){
	#companion .ranking .flex-c-cover {
		width:calc(100% / 2);
	}
}



/* ==================================
schedule
================================== */
.dateSelector {
	padding:1em 0;
}
.date-table {
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
}
.date-table > .date-cell {
	width:calc(100% / 7);
	padding:0.2em;
}
.date-cell .inner-box {
	display:block;
	padding:1em 0;
	color:#ccc;
	background:#666;
	cursor:pointer;
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
}
.date-cell:not(.active) .inner-box:hover {
	color:#000;
	background:#999;
}
.date-cell.active .inner-box {
	color:#fff;
	background:#c00;
	cursor:normal;
	pointer-events:none;
}

.schedule-comment {
	padding:1em 0;
	text-align:center;
} 
.schedule-comment p + p{
	padding-top:0.51em;
}

.schedule-comment .lh2 {
	line-height:2;
}
.schedule-comment .lh2 img {
	height:2em;
}

@media screen and (max-width:799px){
	.date-table > .date-cell {
		padding:0.1em;
	}
	.date-cell .inner-box{
		line-height:1.2;
		padding:0.6em 0;
	}
	.date-cell .inner-box span{
		display:block;
	}
	.schedule-comment {
		line-height:1.3;
	}
}


/* ==================================
top contents3
================================== */
.news-link {
	padding:0.5em 1em;
	text-align:right;
}
.news-link a:hover {
	color:#f00;
}

#contents3 .flex-wrapper-twitter{
	padding:1em 0.5em 0;
}

.news .flex-c-cover{
	width:calc(100% / 4);
	padding:1em 0.5em 0;
}

.news .flex-cover{
	width:100%;
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	flex-wrap:wrap;
}

.news a.flex-c{
	display:block;
	min-height:100%;
	color:#fff;
	border:2px solid #fff;
	outline:3px solid transparent;
}
.news a.flex-c:hover{
	outline-color:#f00;
}

.news .flex-image-cover{
	position:relative;
	background:#ccc;
	padding:1px;
}

.news .flex-image-cover > img{
	width:100%;
	aspect-ratio:4 / 3;
	object-fit:cover;
	object-position:top;
}

.news .flex-text {
	padding:0.5em;
	background:#000;
}
.news .news-c12{
	display:flex;
	justify-content:space-between;
	align-items:center;
}

.news .news-c1{
	font-size:90%;
	padding:0.1em 0.3em;
}

.news .bc-red{
	background-color:#9b0002;
}

.news .bc-purple{
	background-color:#4d029b;
}

.news .bc-pink{
	background-color:#d900a7;
}

.news .news-c2{
	color:#0cf;
}

.news .news-c3{
	padding:0.5em 0.5em 0;
	height:calc(1.6em * 3 + 0.5em);
	line-height:1.6;
	overflow:hidden;
	display:-webkit-box;
	-webkit-box-orient:vertical;
	-webkit-line-clamp:3;
}


@media screen and (min-width:800px){
	#contents3 .flex-wrapper{
		display:flex;
		justify-content:center;
	}

	.flex-wrapper-news {
		width:75%;
	}
	.flex-wrapper-twitter {
		width:25%;
	}

	#contents3 .news .flex-c-cover{
		width:calc(100% / 3);
	}

}
@media screen and (max-width:799px){
	.news .flex-c-cover{
		width:calc(100% / 2);
	}
}



/* ==================================
contents4
================================== */
#special-banner .flex-cover{
	display:flex;
	justify-content:center;
	align-items:center;
	flex-wrap:wrap;
}

#special-banner .flex-c-cover{
	padding-top:2em;
	padding-right:1em;
	padding-left:1em;
}
#special-banner .flex-c-cover img{
	width:540px;
}

#special-banner .flex-c-cover a {
	display:block;
	border:1px solid #fff;
}
#special-banner .flex-c-cover a:hover {
	box-shadow:0 0 0.5em #666;
}



/* ==================================
top contents5
================================== */
#contents5 .flex-cover{
	display:flex;
	justify-content:center;
	align-items:center;
}

#contents5 .flex-c-cover{
	line-height:2.2;
	padding:1em 0.5em 0;
}

#contents5 .flex-cover a {
	color:#ff6;
}
#contents5 .flex-cover a:hover {
	text-decoration:underline;
}


#contents5 .text{
	font-size:110%;
}

#contents5 .text-small{
	font-size:90%;
}
#contents5 .text-small.notice{
	padding-top:0.5em;
	text-align:center;
	color:#eee;
}

/* form */
#contents5 .text-wrapper{
	padding:2em 0 4em;
}

#contents5 .text-wrapper .text-cover{
	display:flex;
	justify-content:center;
	align-items:center;
}

/* text */
#contents5 .text-mail-input{
	padding-left:1.5em;
}
#contents5 input[type="text"]{
	width:25em;
}
#contents5 input[type="text"]::placeholder{
	text-align:center;
}

#contents5 .submit{
	padding-left:1em;
}
#contents5 input[type="submit"]{
	padding:0.5em 1em;
	font-size:110%;
}

@media screen and (max-width:799px){
	#contents5 .flex-c-cover{
		font-size:90%;
		line-height:1.6;
	}

	#contents5 .text-wrapper .text-cover{
		flex-direction:column;
	}
	#contents5 .text-wrapper .text-cover > .text-mail-input,
	#contents5 .text-wrapper .text-cover > .submit{
		padding:1em 0 0;
	}
}



/* ======================================================================================
news
========================================================================================= */

/* ====================================
news1
=======================================*/

#news1 .contents-outer {
	padding:2em 2em 0;
}

#news1 .all-center wrapper:nth-child(2),#news1 .all-center wrapper:nth-child(3){
	padding-top:3em;
}

#news1 .contents-cover {
	padding:2em 3em 2em;
}

#news1 .title{
	display:inline-block;
	text-align:center;
	color:#fff;
}

#news1 .green{
	background-color:#047525;
}

#news1 .blue{
	background-color:#0595d1;
}

#news1 .orange{
	background-color:#d04004;
}

#news1 .time{
	padding-left:0.5em;
	color:#06f;
}

#news1 .title-caption{
	font-size:150%;
}

#news1 .contents-in{
	display:flex;
	justify-content:center;
	align-items:flex-start;
	padding:2em;
}

#news1 .image-cover{
	width:40%;
}
#news1 .image-cover img{
	border:1px solid #ccc;
}

#news1 .text-cover {
	width:60%;
	padding-left:1.5em;
}

#news1 .text{
	font-size:120%;
}

#news1 .move-intro{
	text-align:right;
	padding-top:2em;
}

#news1 .move-intro a{
	text-decoration:underline;
	font-size:120%;
	color:#fc0;
}

#news1 .move-intro a:hover{
	color:#f69;
}

@media screen and (max-width:799px){
	#news1 .image-cover{
		width:30%;
	}
	#news1 .text-cover {
		width:70%;
	}

	#news1 .contents-in{
		padding:1.5em 0 0;
	}
	#news1 .title-caption {
		font-size:150%;
	}
}






/* ==============================================
	pager
=============================================== */
.pager {
	padding-top:4em;
}
.pager.flex {
}
.pager ul li {
	padding:0.3em;
}
.pager ul li a.flex {
	padding:0.3em 1em;
	color:#333;
	background:linear-gradient(180deg, #fff, #ddd);
	border:1px solid #ccc;
	border-radius:0.3em;
}
.pager ul li.active a.flex span {
	font-size:130%;
	font-weight:bold;
}

.pager ul li a.flex.list {
	width:auto;
	height:auto;
	padding:0.3em 1.5em;
}

.pager ul li.active a.flex.list span {
	font-size:110%;
	font-weight:normal;
}

.pager ul li:not(.active) a.flex:hover {
	color:#fff;
	background:linear-gradient(180deg, #f33, #900);
}

@media screen and (max-width:799px){
	.pager {
		padding-top:2em;
	}
}



/* ======================================================================================
system
========================================================================================= */

/* ==================================
system common
================================== */



@media screen and (max-width:799px){
}




/* ======================================================================================
PROFILE
========================================================================================= */

/* ====================================================================
PROFILE common
==================================================================== */
.profile-block {
	padding-bottom:2em;
}
.profile-block > * {
	padding:0 1em;
}
.profile-block.flex > * {
	width:50%;
}
.profile-block.flex > * > div + div{
	padding-top:2em;
}

.profile-box {
	padding:1em;
	background:var(--inbox-bg);
	word-break:break-all;
}

.profile-header {
	color:#f00;
	font-size:140%;
	font-weight:bold;
}

@media screen and (max-width:799px){
	#profile .all-center.wrapper {
		padding-top:0;
	}

	.profile-block.flex {
		display:block;
		padding:0;
	}

	.profile-block.flex > * {
		width:100%;
		padding:0 0 3em;
	}

	.profile-box {
		padding:0.5em;
	}
	.profile-box > .text{
		padding:0 1em;
	}

	.profile-block > .profile-noflex {
		padding:0;
	}

}




/* ====================================================================
	PROFILE name & size
==================================================================== */
.profile-block .caption-cover {
	line-height:1;
	padding-bottom:1em;
	text-align:center;
}

.prof-name {
	font-size:200%;
}
.prof-age {
	font-size:170%;
}
.prof-size {
	font-size:130%;
}

@media screen and (max-width:799px){
	.profile-block .caption-cover.flex {
		padding:0 0 0.5em;
		line-height:1.3;
		font-size:120%;
		display:block;
	}
}




/* ====================================================================
	PROFILE photo & data
==================================================================== */
.cast-label {
	display:block;
	padding-bottom:0.3em;
}

/* ==================================
	PROFILE photo
================================== */
#main-photo-frame {
	position:relative;
}

#main-photo-frame #main-photo img{
	width:100%;
	aspect-ratio:600/800;
	object-fit:cover;
}

#main-photo-frame .rank-icon{
	position:absolute;
	top:5px;
	left:-2px;
	z-index:1000;
}

#main-photo-frame .newface-icon{
	position:absolute;
	top:0;
	right:-2px;
	width:22%;
	z-index:100;
}


#main-photo-frame + #bx-pager {
	width:100%;
	padding:1.5em 0 0;
	flex-wrap:nowrap;
}
#main-photo-frame + #bx-pager a {
	max-width:none;
}
#main-photo-frame + #bx-pager a img{
	width:100%;
	aspect-ratio:600/800;
	object-fit:cover;
}


@media screen and (max-width:799px){
	.profile-middle-block .type-1-l.flex {
		flex-direction:column;
	}
	#main-photo-frame {
		margin:1em 1em 0;
	}
	#main-photo-frame + #bx-pager {
		padding-top:1em;
	}
	#main-photo-frame + #bx-pager a {
		width:calc(100% / 6);
		height:auto;
	}
	#main-photo-frame .bx-wrapper .bx-prev {
		left:-1.5em;
	}
	#main-photo-frame .bx-wrapper .bx-next {
		right:-1.5em;
	}
}


/* ==================================
	PROFILE features
================================== */
.profile-option .feature{
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
	flex-wrap:wrap;
}

.profile-option .feature-c{
	width:calc(100% / 4);
	text-align:center;
	padding:1px;
}


.profile-option .feature-c > div{
	position:relative;
	color:#999;
	background:#ddd;
}

/* 表示 */
.profile-option .feature-c.on > div{
	color:#fff;
	background:linear-gradient(180deg, #f33, #900);
}

/* 非表示 */
#profile1 .bg-black-feature{
	background-color:#171717;
	color:#7f7f7f;
}



/* ==================================
	PROFILE profile
================================== */
.profiles{
	display:flex;
	justify-content:center;
	align-items:flex-start;
	flex-wrap:wrap;
	width:100%;
	border-bottom:1px solid #c00;
}

.profiles-l{
	width:30%;
	padding:0.3em 0;
	color:#f00;
	text-align:right;
	border-top:1px solid #c00;
}
.profiles-r{
	padding:0.3em 0;
	width:70%;
	padding-left:1em;
	border-top:1px solid #c00;
}


@media screen and (max-width:799px){
	.profiles {
		width:auto;
		margin:0.5em 0 0 0.5em;
	}
	.profiles-l{
		width:35%;
	}
	.profiles-r{
		width:65%;
	}
}


/* ====================================================================
	PROFILE  schedule
==================================================================== */
.profile-schedule {
}

.schedule-ul{
	display:flex;
	justify-content:center;
	align-items:stretch;
	text-align:center;
	border:1px solid #ccc;
}

.schedule-li {
	width:calc(100% / 7);
}
.schedule-li > div {
	height:2.4em;
	border:1px solid #ccc;
}
.schedule-li .date {
	background:#eee;
}
.schedule-li.wday-0 .date {
	color:#f00;
	background:#fce7f0;
}
.schedule-li.wday-6 .date {
	color:#00f;
	background:#eff8ff;
}


@media screen and (max-width:799px){
	.schedule-ul {
		font-size:95%;
		letter-spacing:-1px;
	}
	.schedule-li > div {
		line-height:1.2;
		padding:0 0 0.1em;
	}
	.schedule-li > div.date {
		height:4em;
	}
	.schedule-li > div.time {
		height:5em;
	}

	.schedule-li .time .no-display-pc{
		font-size:80%;
	}
}



/* ====================================================================
	PROFILE blog & message
==================================================================== */

/* ==================================
	PROFILE blog
================================== */
.profile-blog {
	width:100%;
	height:480px;
}
.profile-blog > iframe {
	width:100%;
	height:100%;
}

.shop-message p.text {
	line-height:1.8;
}


@media screen and (max-width:799px){
	.profile-blog {
		width:auto;
		margin:0.5em 1em 0;
	}
}

/* ====================================================================
PROFILE SNS
==================================================================== */
.profile-sns-block {
	width:100%;
	display:flex;
	justify-content:center;
}


@media screen and (max-width:799px){
	.profile-sns-block {
		display:block;
	}
}



/* ==================================
PROFILE sns common
================================== */
.profile-sns {
	width:100%;
}
.profile-sns .button {
	display:block;
	width:100%;
	height:4em;
	padding:0 0.5em;
	color:#fff;
	background:#c00;
	border-radius:0em 2em 0em 2em;
}
.profile-sns .button > .flex {
	width:100%;
	height:100%;
	padding:0.5em;
}
.profile-sns .text {
	padding:0 1em;
	font-size:130%;
}

.profile-sns .icons.flex > * {
	padding:0 0.5em;
}
.profile-sns .icon {
	width:3em;
}
.profile-sns .icon.mobie {
	width:4em;
}

.profile-SNSicon .flex.off {
	filter:opacity(0.3);
}

@media screen and (max-width:799px){
	.profile-sns .text {
		padding:0;
	}
	.profile-sns .icons.flex > * {
		padding:0 0.3em;
	}
}


/* ==================================
PROFILE sns
================================== */
.profile-SNSicon .flex {
	border-radius:50%;
}

@media screen and (min-width:800px){
	.profile-SNSicon a.flex.on:hover {
		transform:scale(1.2);
	}
}
@media screen and (max-width:799px){
}








/* ======================================================================================
	ACCESS
========================================================================================= */
/* ==================================
	ACCESS
================================== */
.access-flex {
	padding:0 2em 4em;
}
.access-flex-box {
	padding:1em;
}
.access-flex-box iframe {
	max-width:100%;
	height:228px;
}
.access-flex-box-sub + .access-flex-box-sub {
	padding-top:1em;
}

.cBox {
	display:block;
}
.noEvent {
	pointer-events:none;
}


@media screen and (max-width:799px){
	.access-flex.flex.col2 > *.access-flex-box {
		width:100%;
		font-size:90%;
	}
}




/* ======================================================================================
	movie
========================================================================================= */
/* ==================================
	movie
================================== */
.movie-list {
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	padding:0 2em;
}
.movie-list > .movie-cell {
	width:50%;
	padding:2em;
	text-align:center;
}

.movie-cell .image {
	position:relative;
}
.movie-cell .image a {
	display:block;
}
.movie-cell .image a:hover {
	box-shadow:0 0 0 2px #fff;
}
.movie-cell .title {
	padding:0.5em 0;
	font-size:120%;
}
.movie-cell .prof-link a {
	color:#9cf;
}
.movie-cell .prof-link a:hover {
	color:#f9f;
	text-decoration:underline;
}


@media screen and (max-width:799px){
	.movie-list > .movie-cell{
		width:100%;
		padding:1em;
	}
}


/* ======================================================================================
	contact
========================================================================================= */
/* ==================================
	contact1
================================== */
#contact1 .flex-cover{
	line-height:1.6;
}

#contact1 .text{
	font-size:135%;
}


/* ==============================================
	PC / SP
=============================================== */
@media screen and (min-width:800px){
	.telLink-a{
		pointer-events:none;
	}
}
@media screen and (max-width:799px){
	.sp-LR15 {
		padding-left:15px !important;
		padding-right:15px !important;
	}

	.sp-L15 {
		padding-left:15px !important;
	}
	
	.sp-R15 {
		padding-right:15px !important;
	}
}




/* ========================================================================================
	entrance
=========================================================================================== */
#page-index .header-in ,
#page-index #header-nav ,
#page-index .nav-ul-cover {
	display:none;
}

#page-index main {
	width:100%;
	padding-top:0;
}

#entrance {
	position:relative;
}
#entrance .bg {
	position:relative;
	z-index:1;
	width:100%;
	height:100vh;
	min-height:600px;
}
#entrance .bg img {
	width:100%;
	height:100%;
	object-fit:cover;
}
#entrance .text {
	position:absolute;
	z-index:2;
	bottom:0;
	left:0;
	right:0;
	text-align:center;
	height:45%;
}
#entrance .text img {
	height:100%;
}
#entrance .button {
	position:absolute;
	z-index:3;
	top:0;
	bottom:0;
	left:0;
	right:0;
	max-width:100%;
	max-height:100%;
	margin:0 auto;
}
#entrance .button .flex {
	position:absolute;
	top:45%;
	bottom:0;
	left:0;
	right:0;
	height:11%;
	padding:0 1em;
	justify-content:space-between;
	align-items:stretch;
}
@media screen and (min-width:800px){
	#entrance .button {
		aspect-ratio:1200/1000;
	}
	#entrance .button a:hover {
		filter:hue-rotate(-120deg);
	}
}
@media screen and (max-width:799px){
	#entrance .bg {
	height:90vh;
	}
	#entrance .text {
		height:25%;
		max-height:240px;
	}
	#entrance .button .flex {
		top:68%;
		height:7%;
	}
	#entrance .button .flex > * {
		height:100%;
	}
}



/* ========================================================================================
	SP MENU
======================================================================================== */
#spMenuOpen {
	display:none;
}

@media screen and (max-width:799px){
	#spMenuIcon {
		position:fixed;
		top:10px;
		right:10px;
		z-index:10000;
		margin:0;
		padding:0.2em;
		background:linear-gradient(180deg, #fff, #ddd);
		border-radius:0.5em;
		height:4em;
		width:4em;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	#spMenuIcon > * {
		border-radius:0.3em;
		overflow:hidden
	}
	#spMenuIcon .icon-text {
		display:none;
	}
	#page-index #spMenuIcon {
		display:none;
	}

	label.spMenu-closeIcon {
		position:fixed;
		top:10px;
		right:10px;
		z-index:10020;
		margin:0;
		padding:0.2em;
		border-radius:0.5em;
		height:4em;
		width:4em;
	}
	label.spMenu-closeIcon .icon-inner {
		width:100%;
		height:100%;
		display:flex;
		justify-content:center;
		align-items:center;
		background:linear-gradient(180deg, #fff, #ddd);
		border-radius:0.3em;
		overflow:hidden
	}
	label.spMenu-closeIcon .icon-inner > span.d,
	label.spMenu-closeIcon .icon-inner > span.d:before,
	label.spMenu-closeIcon .icon-inner > span.d:after {
		content:'';
		position:absolute;
		display:block;
		height:3px;
		width:25px;
		margin:0;
		padding:0;
		border-radius:3px;
		background:#000;
	}
	label.spMenu-closeIcon > span.d:before {
		bottom:8px;
	}
	label.spMenu-closeIcon > span.d:after {
		top:8px;
	}


	input#spMenuOpen:not(:checked) ~ #spMenuBox label.spMenu-closeIcon {
		display:none;
	}

	input#spMenuOpen:checked ~ #spMenuBox label.spMenu-closeIcon .d {
		background:transparent;
	}
	input#spMenuOpen:checked ~ #spMenuBox label.spMenu-closeIcon .d::before {
		transform:rotate(45deg);
		bottom:0;
	}
	input#spMenuOpen:checked ~ #spMenuBox label.spMenu-closeIcon .d::after {
		transform:rotate(-45deg);
		top:0;
	}

	body:has(input#spMenuOpen:checked) {
		overflow:hidden;
	}

	#spMenu {
		width:100vw;
		height:100vh;
		position:fixed;
		top:0;
		left:105%;
		z-index:10010;
		color:#000;
		transition:all 0.5s;
		-webkit-transition:all 0.5s;
	}
	input#spMenuOpen:checked  ~ #spMenuBox #spMenu {
		left:0;
	}

	#spMenu a {
		display:block;
	}


	#spMenu .e-in{
		text-align:center;
		background-color:rgba(255,255,255,0.95);
		width:100vw;
		height:100vh;
	}

	.e-in-in {
		padding-bottom:1em;
	}

	#spMenu .menu-title-cover{
		padding:10px;
	}

	#spMenu .menu-title{
		color:#fff;
		background:linear-gradient(180deg, #444, #000);
		border-radius:0.3em;
		width:100%;
		height:4em;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	#spMenu .menu-title span{
		font-weight:bold;
		font-size:160%;
	}
	#spMenu .menu-logo{
		text-align:center;
		padding:1em 0.5em 0;
	}

	#spMenu .menu-c-o-outer{
		padding:2em 1em 0;
		height:100%;
	}

	#spMenu .menu-inquiry{
		padding-top:0.5em;
		padding-bottom:0.5em;
		border-bottom:solid 3px #868686;
		background-color:rgba(255,255,255,0.8);
		height:100%;
	}

	#spMenu .time-tel-flex-cover{
		padding:1em 1em 0;
	}

	#spMenu .time-tel-flex{
		display:flex;
		justify-content:space-evenly;
		align-items:center;
	}

	#spMenu .time-tel-cover{
		line-height:1.1;
	}

	#spMenu .time{
		font-size:120%;
	}

	#spMenu .tel{
		font-size:250%;
		padding:0.2em 0;
		font-weight:bold;
	}

	#spMenu .text ,
	#spMenu .sddr {
		line-height:1.4;
	}

	#spMenu .menu-c-cover{
		display:flex;
		justify-content:center;
		align-items:center;
		flex-wrap:wrap;
		font-size:150%;
	}

	#spMenu .nav-li{
		width:50%;
		padding:1px;
	}
	#spMenu .nav-li a{
		padding:0.5em 0;
		color:#fff;
		background:linear-gradient(180deg, #444, #000);
	}
	#spMenu .nav-li .en{
		display:none;
	}

	#spMenu .m-ca{
		display:block;
	}


	.spMenu-snsIcons-title {
		padding-top:1.5em;
		font-size:120%;
	}
	.spMenu-snsIcons {
		padding-top:0.5em;
		display:flex;
		justify-content:center;
		align-items:center;
	}
	.spMenu-snsIcons > .snsIcon {
		padding:0 0.5em;
	}
	.spMenu-snsIcons > .snsIcon img {
		height:4em;
		filter:brightness(0);
	}



/* ======================================================================
	top-bottom
======================================================================= */

	#sp-bottom-nav .return-cover{
		display:none;
		position:fixed;
		right:0;
		bottom:0;
		z-index:10000;
	}

	.return{
		border-top:1px solid #999;
		border-left:1px solid #999;
		background-color:rgba(255,255,255,0.95);
		display:inline-block;	
		text-align:center;
		color:#000;
		width:4em;
		height:4em;
		line-height:1.2;
		display:flex;
		justify-content:center;
		align-items:center;
		flex-direction:column;
	}

	.return-text {
		display:block;
	}

	.return-text2 {
		display:block;
	}
}



/* ======================================================================================================
	form
====================================================================================================== */
#form {
	padding-top:2em;
}

.form-notes {
	width:1000px;
	max-width:100%;
	margin:0 auto;
	font-size:110%;
	line-height:1.8;
	text-align:center;
}
.form-notes.wide {
	width:1200px;
}
.top-padding {
	padding-top:2em;
}

.form-logo {
	max-width:20em;
	margin:0 auto;
	padding:2em 0;
}

.form-wrapper {
	padding:2em 0 6em;
}
#form-table {
	width:800px;
	max-width:100%;
	margin:0 auto;
	font-size:120%;
}


dl#form-table {
	width:100%;
	max-width:800px;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}

dl#form-table dt {
	width:40%;
	padding:0.5em 0 0;
	text-align:right;
}

dl#form-table dd {
	width:calc(100% - 40%);
	padding-left:1em;
	padding-top:0.5em;
}

.status2 dl#form-table dt ,
.status2 dl#form-table dd {
	padding-bottom:0.5em;
}

@media screen and (max-width:799px){
	.form-notes {
		padding:0 1em;
		line-height:1.6;
	}
	.form-header h1 {
		font-size:240%;
	}
	.form-wrapper dl {
		padding:0 0.5em;
		font-size:110%;
	}

	.form-wrapper {
		padding:0 0 3em;
	}

	.form-notes.wide p{
		padding-bottom:1em;
	}

	dl#form-table dt {
		width:100%;
	}
	dl#form-table dd {
		width:100%;
		padding-bottom:0.5em;
		border-bottom:1px dashed #ccc;
	}
}




/* ====================================================================
	form - optional / required
==================================================================== */
.optional,
.required{
	display:flex;
	justify-content:flex-end;
	align-items:center;
}
.optional:after,
.required:after{
	content:attr(data-text);
	display:inline-block;
	margin-left:0.5em;
	padding:0 0.3em;
	background-color:#f00;
	border-radius:0.3em;
	color:#fff;
	font-size:80%;
	line-height:1.6;
}
.optional:after{
	background-color:#ccc;
	opacity:0;
}

@media screen and (max-width:799px){
	.optional,
	.required{
		flex-direction:row-reverse;
	}

	.optional:after{
		content:" ";
	}
	.required:after{
		margin-right:0.3em;
		padding:0.1em 0.3em 0.2em;
	}
}



/* ====================================================================
	form - field
==================================================================== */
input ,textarea{
	width:100%;
	-webkit-appearance:none; 
	appearance:none;
	border-radius:0.3em;
}
input[type='radio'] ,input[type='checkbox']{
	width:1em;
	height:1em;
	-webkit-appearance:auto; 
	appearance:auto;
}

input:not([type="submit"]){
	border:2px solid #999;
	padding:0.3em 0.5em;
}

.textarea-text{
	padding:2.5em 5em !important;
}

textarea{
	resize:none;
	height:8em;
	padding:0.5em;
	border:2px solid #999;
}

span.check {
	display:flex;
	justify-content:flex-start;
	align-items:center;
}
span.check > label {
	padding-left:0.3em;
}


.field-group.flex {
	justify-content:flex-start;
}
.field-group.flex > * {
	margin-left:2em;
}

input[type="checkbox"],
input[type="radio"] {
	position:relative;
	width:20px;
	z-index:2;
}
input[type="checkbox"] + label ,
input[type="radio"] + label {
	position:relative;
	margin-left:-2em;
	padding:0.3em 1.5em 0.3em 2em;
	border-radius:0.3em;
	transition:all 0.1s ease;
	-webkit-transition:all 0.1s ease;
}
input[type="checkbox"] + label > span ,
input[type="radio"] + label > span {
	padding-left:0.3em;
}
input[type="checkbox"]:checked + label ,
input[type="radio"]:checked + label {
	color:#fff;
	background:#09f;
}


@media screen and (max-width:799px){
	input[type="submit"]{
		width:auto;
		padding:0.5em 1em;
	}

	input:focus ,textarea:focus{
		border:solid 2px #000000;
		outline:none;
		background-color:#99e5ff;
	}

	input:focus[type="submit"]{
		opacity:0.8;
		border:none;
		outline:none;
		background-color:#000f4c;
	}
}



/* ====================================================================
	form - button
==================================================================== */
.formButton{
	padding:2em 0;
	text-align:center;
}
input[type="submit"] ,.formButton a{
	width:auto;
	padding:0.5em 3em;
	line-height:1;
	font-size:120%;
	color:#333;
	background:linear-gradient(180deg, #fff, #ddd);
	transition:all 0.3s ease;
	-webkit-transition:all 0.3s ease;
	cursor:pointer;
}
input[type="submit"]:hover ,.formButton a:hover {
	color:#fff;
	background:linear-gradient(180deg, #f33, #900);
}

.formButton a{
	font-size:100%;
	border-radius:0.5em;
}

@media screen and (max-width:799px){
	.button-wrapper{
		padding:2em 7em 0;
	}
}


/* ====================================================================
	form - error
==================================================================== */
.error {
	margin:0.3em 0 0.5em;
	display:inline-block;
	padding:0.2em 2em;
	color:#f00;
	border:1px solid #f00;
	background:#000;
	border-radius:0.2em;
	font-size:90%;
	filter:brightness(1.2);
}



/* ======================================================================================================
	gravure
====================================================================================================== */
.gravure-list {
	padding:2em 0;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.gravure-cell {
	width:calc(100% / 2);
	padding:2em 1em;
}
.gravure-cell .link {
	display:block;
	background:var(--inbox-bg);
	border:2px solid #fff;
	outline:3px solid transparent;
}
.gravure-cell a.link:hover {
	outline-color:#f00;
}
.gravure-cell .link .image {
	text-align:center;
}

.gravure-cell .text.flex {
	padding:0.5em 0.5em 0.3em;
	align-items:flex-end;
}
.gravure-cell .text.flex .time {
	padding-right:0.5em;
}
.gravure-cell .text.flex .head {
	font-size:200%;
}



.guravure-single {
	text-align:center;
}

.guravure-single .main-title.flex {
	padding-top:1em;
	align-items:flex-end;
}

.guravure-single .head {
	color:#f00;
}
.guravure-single .head > * {
	font-size:200%;
}
.guravure-single .time {
	padding-right:1em;
}

.guravure-single .image {
	padding-top:2em;
}

.guravure-single .text {
	padding-top:2em;
	line-height:1.8;
}
.guravure-single .text p {
	font-size:120%;
	word-break:break-all;
}

.guravure-single .sub-contents {
	padding-top:6em;
}

.guravure-single ul.images {
	max-width:1000px;
	margin:0 auto;
}
.guravure-single ul.images li{
	padding-top:2em;
}
.guravure-single ul.castlink.flex {
	justify-content:flex-start;
	flex-wrap:wrap;
}
.guravure-single ul.castlink.flex > li {
	width:calc(100% / 3);
	padding:1em;
}
.guravure-single ul.castlink.flex > li a {
	display:block;
	padding:0.2em 0.2em 0.5em;
}
.guravure-single ul.castlink.flex > li a:hover {
	box-shadow: 0 0 0 2px #fff;
}
.guravure-single ul.castlink.flex > li .name {
	padding-top:1em;
}
.guravure-single ul.castlink.flex > li .name span {
	font-size:150%;
}
.guravure-single ul.castlink.flex > li .link {
	padding-top:1em;
}
.guravure-single ul.castlink.flex > li .link span {
	display:inline-block;
	padding:0.5em 1em;
	color:#fff;
	background:#06f;
	border-radius:0.3em;
}
@media screen and (max-width: 799px){
	.gravure-cell {
		width:100%;
	}
	.gravure-cell .text.flex {
		display:block;
	}
	.gravure-cell .text.flex .time {
		padding-bottom:0.5em;
	}
	.gravure-cell .text.flex .head {
		font-size:160%;
		text-align:center;
	}

	.guravure-single .main-title.flex {
		display:block;
	}
	.guravure-single .time {
		text-align:left;
		padding-bottom:0.5em;
	}
	.guravure-single ul.castlink.flex > li {
		width:calc(100% / 2);
	}
	.guravure-single ul.castlink.flex > li .link span {
		font-size:90%;
	}
}



/* ======================================================================================================
	link
====================================================================================================== */
.linkList.flex > li {
	padding:0.5em;
}

.linkList.flex > li a {
	display:block;
}
.linkList.flex > li a:hover {
	box-shadow:0 0 0.5em #666;
}



/* ======================================================================================================
	recruit image
====================================================================================================== */
.recruit_image {
	padding:1em;
	text-align:center;
}


/* ======================================================================================================
	recruit staff
====================================================================================================== */
#staff .caption{
	color:#00f;
}
#staff .caption-cover {
	 border-bottom-color:#00f;
}
#staff .commonTable th {
	color:#06f;
}



/* ======================================================================================================
	system
====================================================================================================== */
.system .all-center > *:last-child {
	padding-bottom:2em;
}

.system .block-subText ,
.system .block-subImage {
	padding-top:1em;
}
.system .block-header {
	padding-top:2em;
}
.system .block-body {
	padding-top:1em;
}

.price-frame {
	max-width:800px;
	margin:0 auto;
	background:var(--inbox-bg);
}

.price-block {
	max-width:800px;
	margin:0 auto;
	padding-bottom:2em;
}

.price-list {
	padding:0 2em;
}
.price-list > .flex {
	justify-content:space-between;
	flex-wrap:wrap;
	text-align:center;
}
.price-list .name {
	width:50%;
	font-size:180%;
}
.price-list .price {
	width:50%;
	font-size:180%;
}
.price-list .text {
	width:100%;
	font-size:120%;
}

.block-subText {
	max-width:800px;
	margin:0 auto;
}
.block-subText ul {
	display:flex;
	flex-direction:column;
}
.block-subText li {
	list-style:disc;
	margin-left:1.3em;
}


@media screen and (max-width: 799px){
	.system .all-center {
		padding-left:0.8em;
		padding-right:0.8em;
		letter-spacing:-1px;
	}

	.system .block-header {
		font-size:90%;
	}
	.system .block-body {
		font-size:80%;
	}

	.price-block {
		width:100% !important;
	}
	.price-list {
		padding:0;
	}

}



