@charset "UTF-8";

/*　目次 pc.css
-------------------------------------------------------------------*/
/*

●MV（メインビジュアル部分）
→トップページのメインビジュアルのHTML構成。
　スライダーなどを使う場合はその限りではない。

●ナビゲーション
→ヘッダーのナビゲーションボタンをHTML+CSSで構成。
　画像で構成する場合は別で対応する。

*/

/*	影野設定
------------------------------------------------------*/
header > div,
#main > div,
footer > div{
	box-shadow: 3px 0px 3px 0px rgba(66, 25, 25, 0.45);;
}

.copyright > div{
	box-shadow: 3px 0px 3px 0px rgba(66, 25, 25, 0.45);;
}

/* MV（メインビジュアル部分）*
-------------------------------------------------*/
.header-bg {
	/*background-attachment: fixed;
	background-image: url("/images/mv01.jpg");*/
	background-position: left center;
	background-repeat: no-repeat;
	/*background-size: cover;*/
	display: flex;
	justify-content: center;
	align-items: center;
	font-family: 'Noto Sans Japanese', sans-serif;
}

.header-bg section,
.slideBox{
	/*display: flex;
	justify-content: center;
	align-items: center;*/
	margin: auto;
	max-width: 820px;
}

.header-bg div{
	width: 700px;
	/*border: 1px solid #FF0;*/
}

.header-bg p{
	letter-spacing: -1px;
	font-weight: bold;
	/*text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;*/
}


.header-bg h2{
	letter-spacing: -1px;
	width: 100%;
	text-align: center;
	margin-bottom: 0.5em;
	padding: 1.5em 0.5em;
	font-size: 36px;
	line-height: 180%;
	font-weight: 500;
	color: #FFFFFF;
	background: rgba(0, 0, 0, 0.7);
}

.header-bg h2 > span{
	font-size: 2.0em;
	line-height: 150%;
}

.header-bg ul{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}

.header-bg li{
	width: 31%;
	font-weight: 700;
	padding: 1em 0.5em;
	margin: 1%;
	font-size: 110%;
	line-height: 180%;
	text-align: center;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #1f2a34;
	background-position: right center;
	background-repeat: no-repeat;
	border-radius: 5px;
	font-family: 'Noto Sans Japanese', sans-serif;
	color: #FFF;
}

.header-bg li span{
	font-size: 120%;
	color: #ffd800;
}

/* ナビゲーション*
-------------------------------------------------*/
#headernav{
	text-align: center;
	width: 560px;
	margin: 0 10px 0 0;
	padding: 0;
}

nav#headernav ul{
	list-style: none;
	padding: 0;
	margin: 0;
	letter-spacing: 0px;
	font-weight: 700;
	display: flex;
	box-sizing: border-box;
}

nav#headernav li{
	width: 24.5%;
	justify-content: space-around;
	box-sizing: border-box;
	text-align: center;
}

nav#headernav li > a{
	align-items: center;
	
	height: 40px;
	font-size: 95%;
	width: 100%;
	line-height: 40px;
	display: block;
	background: linear-gradient(#FFFFFF, #EEEEEE);
	text-decoration: none;
	color: #000;
	border-radius: 5px 5px 0 0; /* 左上、右上、右下、左下 */
}

nav#headernav li > a.lihover{
	background: linear-gradient(#EEEEEE, #CCCCCC);
	text-decoration: none;
	color: #000;
	border-radius: 5px 5px 0 0; /* 左上、右上、右下、左下 */
}


/* 【縦100vh区分】
-------------------------------------------------*/
.topheight100vh{
	height: calc(100vh);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: a-otf-ryumin-pr6n, serif;
	font-weight: 300;
	font-style: normal;
}

.topheight100vh h2{
	font-weight: normal;
	font-size: 2.4rem;
	line-height: 150%;
	margin-bottom: 1em;
}

.topheight100vh h3 {
	color: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0.5em 0 1em 0;
	/*font-family: 'Noto Serif JP', serif;
	text-align: center;
	color: #1f2a34;*/
}

.topheight100vh h3 > span{
    display: inline-block;
	text-align: center;
	font-weight: normal;
	font-size: 2.0rem;
	line-height: 150%;
	margin: 0.5em 0;
	border-bottom: 7px solid #000;
	padding-bottom: 0.1em;
}

.topheight100vh h4{
	font-weight: normal;
	font-size: 1.5rem;
	line-height: 150%;

}

.topheight100vh p{
	font-size: 1.2rem;
	line-height: 240%;
}

/*  サブヘッダー
-------------------------------------------------*/
#subheader{
	height: 200px;
	background: #CCC;
	display: none;
    flex-wrap: wrap;
}

#subheader > div{
	width: 820px;
	margin: auto;
	align-items: center;
	text-align: center;
}

#subheader h2{
	font-size: 180%;
}

/*  メイン
-------------------------------------------------*/
#main{
	display: flex;
    flex-wrap: wrap;
	/*background: #EDEDED;*/
	/*padding: 2em;*/
}

#main > div{
	width: 820px;
	margin: auto;
	background: #EEEEEE;
	padding: 1em;
}

#main > div > div{
	padding: 1em;
	background: #FFFFFF;
	border-radius: 10px;
}




/* マイクロコピー【トップページ部分】
-------------------------------------------------*/
.microCopy{
	color: #FFF;
	text-align: center;
	padding: 100px 0 ;
	/*background: #1f2a34;*/
	background-image: url("/images/microCopy.jpg");
	background-size: cover;
}

/* 店舗情報【トップページ部分】
-------------------------------------------------*/
.shopInfo{
	color: #FFF;
	text-align: center;
	/*background: #1f2a34;*/
	padding: 100px 0 ;
	background-image: url("/images/shopinfo.jpg");
	background-size: cover;
}

/* MENU【トップページ部分】
-------------------------------------------------*/
.menu{
	color: #FFF;
	text-align: center;
	/*background: #1f2a34;*/
	padding: 100px 0 150px 0;
	background-image: url("/images/menu.jpg");
	background-size: cover;
}

.menuBox{
	width: 100%;
	margin: 0 0 5em 0;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}

.menuBox > div{
	color: #000;
	background: #FFF;
	width: 48%;
	padding: 1%;
}

dl.menuTable{
	color: #000;
	font-size: 1.2rem;
	line-height: 150%;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	margin-bottom: 1em;
}

.menuTable dt{
	text-align: left;
	width: 60%;
	padding: 0.5em 1em;
	border-bottom: 1px solid #DDDDDD;
	margin-bottom: 0.5em;
}

.menuTable dd{
	width: 40%;
	padding: 0.5em 1em;
	text-align: right;
	border-bottom: 1px solid #DDDDDD;
	margin-bottom: 0.5em;
}

/* トップお知らせ部分
-------------------------------------------------*/
#topInfoArea{
	padding: 100px 0 150px 0;
}

#topInfoArea h2{
	text-align: center;
}

#topInfoArea > div > dl{
	margin: auto ;
	width: 80%;
	display: flex;
    flex-wrap: wrap;
	padding-bottom: 1em;
}

#topInfoArea > div > dl > dt{
	width: 30%;
	text-align: left;
	padding: 1em 1em 1em 1em;
	border-bottom: 1px dotted #CCCCCC;	
}

#topInfoArea > div > dl > dd{
	width: 70%;
	padding: 1em 0 1em 0;
	border-bottom: 1px dotted #CCCCCC;	
}

/* トップブログ部分
-------------------------------------------------*/
#topBlogArea{
	padding: 100px 0 150px 0;
}

#topBlogArea h2{
	text-align: center;
}

#topBlogArea > div > dl{
	margin: auto ;
	width: 80%;
	display: flex;
    flex-wrap: wrap;
	padding-bottom: 1em;
}

#topBlogArea > div > dl > dt{
	width: 30%;
	text-align: left;
	padding: 1em 1em 1em 1em;
	border-bottom: 1px dotted #CCCCCC;	
}

#topBlogArea > div > dl > dd{
	width: 70%;
	padding: 1em 0 1em 0;
	border-bottom: 1px dotted #CCCCCC;	
}


/* トップオンライン部分
-------------------------------------------------*/
#topOnline{
	padding: 100px 0 150px 0;
}

#topOnline h2{
	text-align: center;
}

#topOnline p{
	text-align: center;
}

#topOnline ul{
	width: 100%;
	margin-bottom: 0.5em;
	list-style: none;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content:center;
}

#topOnline li{
	border: 1px solid #DDDDDD;
	width: 30%;
	margin: 1em 1.5% 1.5em 1.5%;
	padding: 1em;
	background: #FFF;
	text-align: center;
}

#topOnline img{
	width: 50%;
}

#topOnline img:hover{
opacity: 0.5;
	transition: all .3s;
}



/* 基本ボックス（半々）
-------------------------------------------------*/

.imgTextBoxL,
.imgTextBoxR{
	width: 100%;
	margin: auto;
	display: flex;
	justify-content: space-start;
}

.imgTextBoxL > figure{
	width: 50%;
}

.imgTextBoxL > section{
	width: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.imgTextBoxR > figure{
	width: 50%;
}

.imgTextBoxR > section{
	width: 60%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.imgTextBoxL > figure > img,
.imgTextBoxR > figure > img{
	width: 100%;
}

.imgTextBoxL > section > div,
.imgTextBoxR > section > div{
	/*max-width: 600px;*/
	width: 70%;
	padding: 0%;
	margin: auto;
}

.imgTextBoxL h2,
.imgTextBoxR h2{
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: -1px;
	color: #1f2a34;
	font-size: 240%;
	line-height: 180%;
	margin-bottom: 1em;
}

.imgTextBoxL p,
.imgTextBoxR p{

}

/* トップメニュー画面（入れ子部分はflexboxで活用する）
-------------------------------------------------*/
#topMenuArea{
	color: #FFFFFF;
	background-image: url(/images/secondpage_bg.jpg);
	background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top center;
	/*background-image: url(/images/top_contetns_bg.jpg);
    background-position: center center;
	background-size: cover;
	background: #209ac4;*/
	padding: 50px 0;
}

#topMenuArea > div{
	width: 820px;
	margin: auto;
}

#topMenuArea > h2 {
		font-family: 'Noto Sans Japanese', sans-serif;
		/*font-family: 'Noto Serif JP', serif;*/
		font-size: 2.4rem;
		line-height: 150%;
		margin: 1em 0 ;
		text-align: center;
}

#topMenuArea > h2 > span{
	font-size: 80%;
}





/* youtube（2こ並び）
-------------------------------------------------*/
#youtube{
	background-image: url(/images/youtube.jpg);
    background-position: center center;
	background-size: cover;
	/*background: #209ac4;*/
	padding: 150px 0;
}

#youtube > div{
	width: 820px;
	margin: auto;
}

#youtube > h2 {
		color: #FFFFFF;
		font-family: 'Noto Sans Japanese', sans-serif;
		/*font-family: 'Noto Serif JP', serif;*/
		font-size: 2.4rem;
		line-height: 150%;
		margin: 1em 0 ;
		text-align: center;
}

#youtube > h2 > span{
	font-size: 80%;
}



/* flexBox
-------------------------------------------------*/
.flexBox4{
	display: flex;
    flex-wrap: wrap;
	justify-content: center;
}

.flexBox4 > a{
	text-decoration: none;
	background: #FFF;
}

.flexBox4 > a:hover{
	background: #EEE;
	transition: 0.5s;
}

.flexBox4 > section,
.flexBox4 > a {
	width: 23%;
	margin: 1%;
	background: #FFF;
}

.flexBox4 > a > section > figure > img:hover{
	opacity: 0.5 ;
	transition: 0.5s;
}

.flexBox4 > section > figure,
.flexBox4 > a > section > figure{
	text-align: center;
}

.flexBox4 > section > figure > img,
.flexBox4 > a > section > figure > img {
	width: 100%;
}

.flexBox4 > section > dl,
.flexBox4 > a > section > dl{
	color: #000;
	padding: 1em;
}

.flexBox4 > section > dl > dt,
.flexBox4 > a > section > dl > dt{
	font-weight: 700;
}

.flexBox4 > section > dl > dd,
.flexBox4 > a > section > dl > dd{
	font-size: 90%;
}

/* flexBox4L
-------------------------------------------------*/
.flexBox4L{
	display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
}

.flexBox4L > a{
	text-decoration: none;
	background: #FFF;
}

.flexBox4L > a:hover{
	background: #EEE;
	transition: 0.5s;
}

.flexBox4L > section,
.flexBox4L > a {
	width: 23%;
	margin: 1%;
	background: #FFF;
}

.flexBox4L > a > section > figure > img:hover{
	opacity: 0.5 ;
	transition: 0.5s;
}

.flexBox4L > section > figure,
.flexBox4L > a > section > figure{
	text-align: center;
}

.flexBox4L > section > figure > img,
.flexBox4L > a > section > figure > img {
	width: 100%;
}

.flexBox4L > section > dl,
.flexBox4L > a > section > dl{
	color: #000;
	padding: 1em;
}

.flexBox4L > section > dl > dt,
.flexBox4L > a > section > dl > dt{
	font-weight: 700;
}

.flexBox4L > section > dl > dd,
.flexBox4L > a > section > dl > dd{
	font-size: 90%;
}

/* flexBox3L
-------------------------------------------------*/
.flexBox3L{
	display: flex;
    flex-wrap: wrap;
	justify-content: flex-start;
}

.flexBox3L > a{
	text-decoration: none;
	background: #FFF;
}

.flexBox3L > a:hover{
	background: #EEE;
	transition: 0.5s;
}

.flexBox3L > section,
.flexBox3L > a {
	width: 32%;
	margin: 0.5%;
	background: #FFF;
}

.flexBox3L > a > section > figure > img:hover{
	opacity: 0.5 ;
	transition: 0.5s;
}

.flexBox3L > section > figure,
.flexBox3L > a > section > figure{
	text-align: center;
}

.flexBox3L > section > figure > img,
.flexBox3L > a > section > figure > img {
	width: 100%;
}

.flexBox3L > section > dl,
.flexBox3L > a > section > dl{
	color: #000;
	padding: 1em;
}

.flexBox3L > section > dl > dt,
.flexBox3L > a > section > dl > dt{
	font-weight: 700;
}

.flexBox3L > section > dl > dd,
.flexBox3L > a > section > dl > dd{
	font-size: 90%;
}

/* トップバナーtopbanner
-------------------------------------------------*/
#topbanner{
	padding: 100px 0;
}

#topbanner > div{
	width: 820px;
	margin: auto;
}

#topbanner > h2 {
		font-family: 'Noto Sans Japanese', sans-serif;
		/*font-family: 'Noto Serif JP', serif;*/
		font-size: 2.4rem;
		line-height: 150%;
		margin: 1em 0 ;
		color: #1f2a34;
		text-align: center;
}

/* 4つのこだわり
-------------------------------------------------*/
#topKodawari{
	background: #EFEFEF;
	padding: 50px 0;
}

#topKodawari > h2 {
		font-family: 'Noto Sans Japanese', sans-serif;
		/*font-family: 'Noto Serif JP', serif;*/
		font-size: 3.2rem;
		line-height: 150%;
		margin: 1em 0 ;
		text-align: center;
		color: #1f2a34;
}

#topKodawari > h2 > span{
	color: #000000;
	font-size: 2.4rem;
	margin: 0 0.25em;
}

#topKodawari > div{
	width: 820px;
	margin: auto;
	padding: 1em 0;
}

#topKodawari > div > ul{
	width: 100%;
	margin: 1em 0;
	padding: 0;
	color: #FFFFFF;
	list-style: none;
	display: flex;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#topKodawari > div > ul > li{
	width: 23%;
	margin: 1%;
	text-align: center;
	margin: 0 auto;
	text-align: center;
}

#topKodawari > div > ul > li > div{
	background: #1f2a34;
	position: relative;
	width: 100%;
	padding: 100% 0 0;
	border-radius: 50%;
}

#topKodawari > div > ul > li > div > p,
#topKodawari > div > ul > li > div > dl{
	position: absolute;
	left: 0;
    top: 30%;
    margin: -.5em 0 0;
    width: 100%;
    text-align: center;
    color: #fff;
}

#topKodawari > div > ul > li > div > dl > dt{
	font-weight: 700;
    font-size: 1.5rem;
	margin-bottom: 0.5em;
	letter-spacing: -1px;
}

#topKodawari > div > ul > li > div > dl > dd{
	width: 80%;
	font-size: 0.95rem;
	line-height: 180%;
	margin: auto;
}

/* logomarkArea
-------------------------------------------------*/
#logomarkArea{

    background-position: center center;
	background-size: cover;
	background: #FFFFFF;
	padding: 50px 0 100px 0;
}

#logomarkArea > div{
	width: 820px;
	margin: auto;
}

#logomarkArea > h2 {
	color: #1f2a34;
		font-family: 'Noto Sans Japanese', sans-serif;
		/*font-family: 'Noto Serif JP', serif;*/
		font-size: 2.4rem;
		line-height: 150%;
		margin: 1em 0 ;
		text-align: center;
}

#logomarkArea ul{
	margin: 0 auto;
	padding: 0;
	list-style: none;
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

#logomarkArea li{
	display: block;
	text-align: center;
	padding: 0em;
	margin: 0 0 1em 0;
}

#logomarkArea img{
	max-width: 50%;
}
#logomarkArea a:hover img{
opacity: 0.5 ;
transition: 0.5s;
}

/* スマホ 分岐
-------------------------------------------------*/

/* PCサイズ */

.pc{display: block;}
.pc100{width: 100%;}
.sp{display: none;}
.tabBox{display: block;}
.spBox{display: none;}

.width100sp,
.width100spmax{
	width: auto;
	}

.brno{
	display: none;
	}

.spbrno{
	display:block;
	}

.spon{
	display: none;
	}

.spoff{
		/* spときはdisplay:none */
}





/* 基本ボックス
-------------------------------------------------*/
.pageBox,
#header,
#header2{
	width: 820px;
	margin: auto;
}


/*　ヘッダー部分
-------------------------------------------------*/
header{
	width: 100%;
}

header > div{
	background: #f7c816 url(./images/header_bg.jpg) no-repeat;
	/*background: #fcc900;*/
	height: 280px;
	border-radius: 10px 10px 0 0;
}

#scrollheader{
	z-index: 1;
	width: 100%;
	background: #FFF;
	position: fixed;
    top: 0;
}


#h1{
	display: none;
	color: #000;
	background: #FFF;
	font-size: 10px;
	line-height: 240%;
	font-weight: 500;
}

#h1 > h1,
#h1 > p{
	width: 820px;
	margin: auto;
}

#logo{
	width: 200px;
	margin-left: 20px;
	margin-bottom: 20px;
}

#logo2{
	width: 200px;	
}

#header,
#header2{
	width: 820px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	min-height: 80px;
	padding: 0 0;
}

#header > div,
#header2 > div{
    margin: 0;
    padding: 0;
    text-align: center;
	/*border: 1px solid #F00;*/
}


#header ul,
#header2 ul{
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/*
#header li,
#header2 li{
	margin: 0 0.8em;
}

#header > div > ul > li > a,
#header2 > div > ul > li > a{
	color: #000;
	text-decoration: none;
	font-weight: 700;
	font-size: 90%;
}

#header > div > ul > li > a:hover,
#header2 > div > ul > li > a:hover{
	color: #666666;
	transition: 0.5s;
}
*/



/*　フッター（ナビゲーション）
-------------------------------------------------*/
footer{
	width: 100%;
}

div#footer{
	background: #efe8d4;
}

/* デバイス変更位置  */
footer a{
	line-height: 180%;
}

#footerC{
	padding: 1em 0;
	background: #f5f4f2;
}

#footerC > div{
	width: 1000px;
	margin: auto;
	background: #efe8d4;
}


footer > div#footer {
	width: 820px;
	margin: auto;
	padding: 1em 0;
	/*background: #FFF;*/
	color: #333333;
	display: flex;
	flex-wrap: wrap;
	font-size: 90%;
	line-height: 180%;
}

/* flexBoxを使った方法で利用 */
footer > div > div{
	width: 23%;
	margin: 1%;
	padding: 0.5em;
	/*background: #f5f4f2;*/
	text-align: left;
}

footer > div > div:nth-child(3){
	width: 46%;
	margin: 1%;
	padding: 0.5em;
	/*background: #f5f4f2;*/
	text-align: left;
}

footer > div > div > h2{
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
	border-bottom: 1px solid #d5cdb3;
}

footer ul{
	list-style: none;
	margin: 0 0 1em 0;
	padding: 0;
}

footer li{
	margin: 0 0 0.5em 0;
}

footer address{
	background: #322805;
	color: #FFF;
}


/*　フッター（payment）
-------------------------------------------------*/

#payment{
	padding: 2em 0 0 0 ;
	font-size: 80%;
	line-height: 180%;
	color: #FFFFFF;
	background: #000000;
	margin: 0 0 0 0 0;
}


#payment{
    margin-top: 0em;
}

#payment > div {
	width: 820px;
	margin: auto;
	padding: 1em 0 0 0;
	/*background: #FFF;*/
	display: flex;
	flex-wrap: wrap;
}

#payment > div > div{
	width: 33.3333%;
	padding: 1em;
	/*background: #f5f4f2;*/
	text-align: left;
}

#payment dl{
	margin-bottom: 2em;
}


#payment > div > div > h2,
#payment dt{
	padding-bottom: 0.5em;
	border-bottom: 1px dotted #DDDDDD;
	font-weight: bold;
	margin-bottom: 0.5em;
}

#payment ul{
	list-style: none;
	margin: 0 0 1em 0;
	padding: 0;
}

#payment ul li:before {
	content: '■'; /* ←ここにリストマーカーにしたい文字列を設定 */
	margin-left:-0em; /* 3文字分、左に寄せる */
}


#payment li{
	color: #FFF;
	margin: 0 0 0.5em 0;
}

#payment dd > p,
#payment dd > span,
#payment > div > div > p,
#payment > div > div > p:last-child{
    margin-bottom: 0.5em;
    line-height: 180%;
}


#payment dd,
#payment dd > ul > li{
	color: #FFF;
        line-height: 180%;
}

/*	ボックス（div）属性
-------------------------------------------------*/
.kihonBox{
	width: 820px;
	margin: auto;
}



/*	flexボックス定義（234）
-------------------------------------------------*/

.halfBox,
.halfBoxsp,
.halfBoxLabel,
.halfBoxFree{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.halfBoxsp10{
	width: 100%;
	margin: 100px 0;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.halfBox > div ,
.halfBoxsp > div,
.halfBoxsp10 > div{
	width: 50%;
	padding: 1em;
}

.halfBoxLabel,
.halfBoxFree{
	align-items: center;
}

.halfBoxsp0{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.halfBoxsp0 > div{
	width: 50%;
	padding: 0.5em;
}


.blandstory{
	margin: 2em auto;
	width: 70%;
	text-align: center;
}

/*	LabelBox
-------------------------------------------------*/
.halfBoxLabel > div{
	width: 50%;
	padding: 1em;
	display: flex;
    flex-wrap: wrap;
	align-items: center;
}

.halfBoxLabel > div > figure{
	width: 30%;
}

.halfBoxLabel > div > figure > img{
	width: 100%;
}

.halfBoxLabel > div > p{
	padding: 1em;
	width: 70%;
}


/*	img20text80
-------------------------------------------------*/
.img20text80{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.img20text80 > div{
	width: 80%;
	padding: 1em;
	display: flex;
    flex-wrap: wrap;
	align-items: center;
}

.img20text80 > figure{
	width: 20%;
}

.img20text80 > div > figure > img{
	width: 100%;
}


/* 画面左（30%） */
.halfBoxL3{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.halfBoxL3 > div:nth-child(1){
	width: 30%;
	padding: 1em;
}

.halfBoxL3 > div:nth-child(2){
	width: 70%;
	padding: 1em;
}


.threeBox{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.threeBox > div {
	width: 33.3333%;
	padding: 1em;
}

.fourBox{
	width: 100%;
	margin: auto;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.fourBox > div {
	width: 25%;
	padding: 0.5em;

}

.fourBox > div > a > figure > img ,
.fourBox > div > figure > img {
	width: 100%;
	padding: 0em;
}


.fourBox > div > table.outline {
	margin: 1em 0;
	width: 100%;
	border: 1px #E3E3E3 solid;
	border-collapse: collapse;
	border-spacing: 0;
}

.fourBox > div > table.outline th {
	display: block;
	width: 100%;
	padding: 1em;
	border: #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	background: #F5F5F5;
	font-weight: 500;
	text-align: center;
}

.fourBox > div > table.outline td {
	display: block;
	width: 100%;
	padding: 1em;
	border: 1px #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	font-weight: 500;
	text-align: left;
}



/*	予約カレンダー部分
-------------------------------------------------*/
.calendarTable a{
	text-decoration: none;
	color: #000;
}

/* カレンダの日付部分 */
span.calendarMM{
	font-size: 100%;
}
span.calendarDD{
	font-size: 150%;
}

/* 日曜日 */
span.sunday{
	color: #FF0000;
}

/* 土曜日 */
span.saturday{
	color: #0032d5;
}




/*	キャスト選択部分
--------------------------------------------------*/
.castBox{
	width: 100%;
	margin: auto;
	margin-bottom: 1em;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.castBox > div {
	text-align: center;
	width: 24%;
	margin: 0.5% 0.5%;
	padding: 0.5em;
	/*border: 1px solid #CCCCCC;*/
}

.castBox > div > a > figure > img ,
.castBox > div > figure > img,
.castBox > div > label > figure > img {
	width: 100%;
	height: 200px;
	object-fit: cover; /* この一行を追加するだけ！ */
	padding: 0em;
	margin-bottom: 0.5em;
	border-radius: 10px; /* ちょっとだけ角丸 */
}

.castBox a{
	color: #000;
	text-decoration: none;
	font-weight: bold;
}

.castBox a:hover{
	color: #F00;
}

.castBox > div > table.outline {
	margin: 1em 0;
	width: 100%;
	border: 1px #E3E3E3 solid;
	border-collapse: collapse;
	border-spacing: 0;
}

.castBox > div > table.outline th {
	display: block;
	width: 100%;
	padding: 1em;
	border: #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	background: #F5F5F5;
	font-weight: 500;
	text-align: center;
}

.castBox > div > table.outline td {
	display: block;
	width: 100%;
	padding: 1em;
	border: 1px #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	font-weight: 500;
	text-align: left;
}

.castBox input[type="radio"],	
.castBox input[type="checkbox"]{	
	display: none;	
}

.castBox dt{
	font-weight: 700;
}

.castBox dt,
.castBox dd{
	color: #5b4a42;
	font-size: 95%;
	line-height: 180%;
}

/*	お客様の声投稿
--------------------------------------------------*/
.voiceSelect{
	width: 100%;
    background: #e9f1fc;
    border: 1px solid #CCCCCC;
    font-size: 120%;
    line-height: 180%;
    padding: 0.5em;
    margin: 0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

/*	キャスト予約時間部分
--------------------------------------------------*/
#castTime{
	width: 100%;
    background: #e9f1fc;
    border: 1px solid #CCCCCC;
    font-size: 120%;
    line-height: 180%;
    padding: 0.5em;
    margin: 0;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}

.castTime{
	width: 100%;
	margin: auto;
	margin-bottom: 1em;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
	display: none;
}

.castTime > div {
	width: 19%;
	margin: 0.5% 0.5%;
	padding: 0.5em;
	border: 1px solid #CCCCCC;
	text-align: center;
	font-weight: 700;
}

.castTime > div > a > figure > img ,
.castTime > div > figure > img {
	width: 100%;
	padding: 0em;
}


.castTime > div > table.outline {
	margin: 1em 0;
	width: 100%;
	border: 1px #E3E3E3 solid;
	border-collapse: collapse;
	border-spacing: 0;
}

.castTime > div > table.outline th {
	display: block;
	width: 100%;
	padding: 1em;
	border: #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	background: #F5F5F5;
	font-weight: 500;
	text-align: center;
}

.castTime > div > table.outline td {
	display: block;
	width: 100%;
	padding: 1em;
	border: 1px #E3E3E3 solid;
	border-width: 0 0 0px 0px;
	font-weight: 500;
	text-align: left;
}

.castTime input[type="radio"],	
.castTime input[type="checkbox"]{	
	display: none;	
}	

/*	スケジュールテーブル
--------------------------------------------------*/


.castscheduleTable img{
	width: 100%;
}

.castscheduleTable{
	margin: 1em 0;
	width: 100%;
	display: block;
	border: 1px #E3E3E3 solid;
	border-left: 0;
	border-bottom: 0;
	border-collapse: collapse;
	border-spacing: 0;
}

table.castscheduleTable td {
	width: calc(100% / 8);
	padding: 0 0 0.5em 0;
	border: 1px #E3E3E3 solid;
	border-width: 0 0 1px 1px;
	font-weight: 500;
	background: #FFF;
}

table.castscheduleTable td:first-child {
	width: calc(100% / 8);
	padding: 0.5em;
}

.scheduledate{
	background: #000000;
	color: #FFF;
	padding: 0.5em;
	margin-bottom: 0.5em;
}

/*	labelcheck
-------------------------------------------------*/
.labelcheck + label{	
	width: 100%;	
	padding: 10px;	
	display: inline-block;	
	cursor: pointer;	
	/*background: #c4d3f5;*/	
}	

.labelcheck:checked + label{	
	background: #f0b3c4;	
}


/*	お客様情報テーブル
--------------------------------------------------*/
#userTable input[type=text]{
	width: 100%;
	background: #e9f1fc;
	border: 1px solid #CCCCCC;
	font-size: 120%;
	line-height: 180%;
	padding: 0.5em;
	margin: 0;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
    border-radius: 3px;
	font-family: Yu Gothic, Meiryo, sans-serif,メイリオ, Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Verdana, Arial, Helvetica, sans-serif;
}

#userTable textarea{
	background: #e9f1fc;
	border: 1px solid #CCCCCC;
	font-size: 120%;
	line-height: 180%;
	width: 100%;
	height: 200px;
	padding: 0.5em;
	margin: 0em ;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-family: Yu Gothic, Meiryo, sans-serif,メイリオ, Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'MS P Gothic', Osaka, Verdana, Arial, Helvetica, sans-serif;
}

/*	table属性
-------------------------------------------------*/
	table.outline,
	table.outline0,
	table.freeoutline,
	table.freeoutlinemini,
	table.priceTable{
		color: #000;
		width: 100%;
		border: 1px #E3E3E3 solid;
		border-collapse: collapse;
		border-spacing: 0;
	}

	table.outline,
	table.freeoutlinemini,
	table.freeoutline{
		margin: 1em 0;
	}

	table.outline0{
		margin: 0em 0;
	}

	thead,tbody{
		margin: 0;
		padding: 0;
	}

	table.outline0 th,
	table.outline th{
		/*width: 25%;*/
		padding: 1em;
		border: #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		background: #F5F5F5;
		font-weight: 500;
		text-align: center;
	}

	table.outline0 td,
	table.outline td {
		padding: 1em;
		border: 1px #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		font-weight: 500;
		text-align: left;
		background: #FFF;
	}

	table.outline0 dt,
	table.outline dt {
		font-weight: 700;
	}

	table.outline0 dd,
	table.outline dd {
		margin-bottom: 1em;
	}

	table.outline0 dd:last-child,
	table.outline dd:last-child,
	ul.list li:last-child{
		margin-bottom: 0em;
	}

	table.freeoutlinemini th,
	table.freeoutline th {
		padding: 1em;
		border: #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		background: #F5F5F5;
		text-align: center;
	}


	table.freeoutline td {
		padding: 1em;
		border: 1px #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		background: #FFF;
	}

	table.freeoutlinemini td{
		padding: 1em;
		border: 1px #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		text-align: left;
		background: #FFF;
	}

	.freeoutlinemini dl{
		display: flex;
	}


	.freeoutline span{
		/*font-size: 80%;*/
	}
	

	table.priceTable{
		width: 100%;
		table-layout: fixed;
	}
	
	table.priceTable th {
		padding: 1em;
		border: #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		background: #F5F5F5;
		font-weight: lighter;
		text-align: center;
		font-weight: 700;
	}

	table.priceTable td {
		padding: 1em;
		border: 1px #E3E3E3 solid;
		border-width: 0 0 1px 1px;
		background: #FFF;
	}

	
	span.price{
		color: #CC0000;
		font-size: 120%;
	}

/* 第二階層
-------------------------------------------------*/
#secondPage{
	width: 100%;
	background: #FFFFFF;
	background-image: url(/images/secondpage_bg.jpg);
	background-size: cover;
    background-attachment: fixed;
    background-repeat: no-repeat;
    background-position: top center;
	/*	background-size: auto ;
	background-size: cover;
	background-repeat: no-repeat;*/
	padding: 50px 0;
}

#secondPage > div,
#secondPage > form > article{
	width: 820px;
	margin: auto;
	background: #FFF;
	padding: 50px;
}


#secondPage h2 {
		/*font-family: 'Noto Sans Japanese', sans-serif;
		font-family: 'Noto Serif JP', serif;*/
		font-family: "Sawarabi Mincho";
		font-size: 3.2rem;
		line-height: 150%;
		margin: 1em 0 ;
		text-align: center;
		color: #FFFFFF;
}

#secondPage h2 > span{
	color: #000000;
	font-size: 2.4rem;
	margin: 0 0.25em;
}

#secondPage h2#pageName {
	/*font-family: 'Noto Sans Japanese', sans-serif;
		font-family: 'Noto Serif JP', serif;*/
	font-family: "Sawarabi Mincho";
	font-size: 3.2rem;
	line-height: 150%;
	margin: 1em 0 0 0;
	text-align: center;
	/*color: #FFFFFF;*/
    font-weight: 500;
    text-shadow: none;
	color: #003704;
	/*COLOR: #2c2721;
	text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;*/
}

p#categoryName {
	/*font-family: 'Noto Serif JP', serif;*/
	font-size: 1.1rem;
	line-height: 150%;
	margin: 1em 0 100px 0;
	text-transform: uppercase;
	text-align: center;
	color: #9f6608;
	font-family: "Sawarabi Mincho";
	/*COLOR: #2c2721;
	text-shadow: 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 10px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff, 0 0 5px #fff;*/
}



h3.htag3 {
	/*font-family: 'Noto Sans Japanese', sans-serif;*/
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0.5em 0 2.0em 0;
	/*font-family: 'Noto Serif JP', serif;
	text-align: center;*/
	color: #5b4a42;
}

h3.htag3 > span{
    display: inline-block;
	text-align: center;
	font-size: 2.0rem;
	line-height: 150%;
	margin: 0.5em 0;
	border-bottom: 7px solid #5b4a42;
	padding-bottom: 0.1em;
}

h3.htag3item {
	/*font-family: 'Noto Sans Japanese', sans-serif;*/
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 2em 0 2.0em 0;
	/*font-family: 'Noto Serif JP', serif;
	text-align: center;
	color: #1f2a34;*/
}

h3.htag3item > span{
    display: inline-block;
	text-align: center;
	font-size: 2.0rem;
	line-height: 150%;
	margin: 0.5em 0;
	border-bottom: 7px solid #5b4a42;
	padding-bottom: 0.1em;
}


h3.htag4,
h4.htag4{
	color: #5b4a42;
	font-size: 1.2rem;
	font-weight: 700;
	border-left: 5px solid #5b4a42;
	padding: 0.5em;
	margin-bottom: 1em;
	background-color: #EFEFEF;
	letter-spacing: -1px;
}



.oemArea h4{	
	padding: .5em .75em;	
	background-color: #f6f6f6;	
	border-left: 6px solid #ccc;	
	font-size: 1.8rem;	
	line-height: 180%;	
	margin-top: 2em;	
	margin-bottom: 0.5em;	
	}


/* 勧誘方針のリスト */
.policy{
	margin: 2em 0;
}

.policy dt{
	font-size: 1.2rem;
	line-height: 150%;
	margin: 1em 0 ;
	color: #1f2a34;
}

.policy dd{
	margin-bottom: 2em;
	line-height: 180%;
}

/* 想いDL */
dl.omoi dt{
	font-weight: 700;
	font-size: 160%;
	margin-bottom: 1em;
	line-height: 150%;
}


/*	カラム（column）属性
-------------------------------------------------*/

.columnL{
	float: left;
	width: 75%;
	padding: 0em;
}

.columnR{
	float: right;
	width: 20%;
	padding: 0em;
}

/* ブログ記事部分 */
.columnBox3{
	display: flex;
    flex-wrap: wrap;
    justify-content: space-start;
}

.columnBox3 > a{
	padding: 0.5em;
	text-decoration: none;
	border: 1px solid #DDDDDD;
	width: 31.5%;
	margin: 0 0.5% 1em 0.5em;	
}

.columnBox3 > a:hover{
	color: #F00;
	background: #EEEEEE;
}

.columnBox3 img {
	width: 240px;
	height: 180px;
	margin-bottom: 1em;
}

.columnBox3 dl{
	padding: 0 0.5em ;
	font-size: 90%;
}

.columnBox3 dt{
	font-weight: 700;
}

.columnBox3 >a dl >dd{
	color: #000;
}

.entryBody{
	margin: 1em 0;
}


/*見出しの定義*/

.subList1 > dl{
	border-right: solid 1px #CCCCCC;
	border-left: solid 1px #CCCCCC;
}
.subList1 > dl > dt{
	background: #FFF;
	border-top: 3px solid #006581;
	border-bottom: 1px solid #CCCCCC;
	color: #006581;
	font-family: 'Noto Sans Japanese', sans-serif;
	letter-spacing: -1px;
	font-weight: 700;
	font-size: 18px;
	line-height: 32px;
	margin: 0;
	padding: 10px;
}

/*リストのゼロ化*/
.subList1 > dl > dd > ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

/*リストのli部分の定義*/
.subList1 > dl > dd > ul >li{
	padding: 0;
}

/*リスト部分の最後のおまじない*/
.subList1 > dl > dd > ul >li:last-child{
	border-bottom: 1px solid #CCCCCC;
}

/*リスト部分のリンク定義*/
.subList1 > dl > dd > ul > li >a{
	border-top: 1px dotted #CCCCCC;
	position: relative;
	display: block;
	margin: 0;
	padding: 15px 10px 15px 30px;
	color: #006581;
	font-weight: 700;
	line-height: 120%;
	background: #FFF;
	text-decoration: none;
}

.subList1 > dl > dd > ul > li >a >span {
	font-size: 80%;
}

/*矢印部分のおまじない*/
.subList1 > dl > dd > ul > li > a:before{
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	left: 10px;
	width: 8px;
	height: 8px;
	margin-top: -5px;
	background: #006581;
}

.subList1 > dl > dd > ul > li >a:after{
	display: block;
	content: "";
	position: absolute;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 50%;
	left: 8px;
	width: 8px;
	height: 8px;
	margin-top: -5px;
	background: #FFF;
}

/*マウスオン時*/
.subList1 > dl > dd > ul > li > a:hover{
animation: gradation 1s;
	color: #FFFFFF;
	background: #1f2a34;
	text-decoration: none;
}

.subList1 > dl > dd > ul > li > a:hover:before{
	background: #FFFFFF;
}

.subList1 > dl > dd > ul > li > a:hover:after{
	background: #1f2a34;
}

.subList1ON{
	background: #e6e6e6;
}


/* メールフォーム
-------------------------------------------------*/

/* 共通項目 */
article#formArea{
	width: 100%;
	margin: 0px auto;
	/*font-family:"Lucida Grande", "メイリオ","Meiryo", "30D230E930AE30CE89D230B420Pro20W3", "30e130a430ea30aa", "FF2DFF3320FF3030B430B730C330AF", "Osaka", verdana, arial, sans-serif;*/
}


i{
	font-family: 'FontAwesome';
	margin-right: 0.2em;
}

#formArea > section#submitBox{
    padding: 0.5em 1em;
	background: #E2E2E2;
}

#formArea > section#formsubmitBox{
	margin-bottom: 1.5em;
	padding: 0.5em 1em;
	background: #FFFFFF;
}


article#formArea input.text10[type=text] {width: 10%;}
article#formArea input.text20[type=text] {width: 20%;}
article#formArea input.text30[type=text] {width: 30%;}
article#formArea input.text40[type=text] {width: 40%;}
article#formArea input.text50[type=text] {width: 50%;}
article#formArea input.text60[type=text] {width: 60%;}
article#formArea input.text70[type=text] {width: 70%;}
article#formArea input.text80[type=text] {width: 80%;}
article#formArea input.text90[type=text] {width: 90%;}
article#formArea input.text100[type=text] {width: 100%;}


/* 複数入力部分 */
.formWq{
	margin: 0;
	padding: 0;
	list-style: none;
}

.labelArea{
	margin-bottom: 1em;
}

.labelArea0{
	margin-bottom: 0em;
}
/* ラベル（ラジオボタン） */
#formArea .labelArea input[type=radio],
#formArea .labelArea input[type=checkbox],
#formArea .labelArea0 input[type=radio],
#formArea .labelArea0 input[type=checkbox]{
	display: none;
}

#formArea .label2 img{
	width: 80%;
}

#formArea input[type="radio"]:checked + label2,
#formArea input[type="checkbox"]:checked + label2 {
	color: #FFF;
	background: #00ae35;/* マウス選択時の背景色を指定する */
	border: 2px solid #00ae35;
	color: #ffffff; 	/* マウス選択時のフォント色を指定する */
	transition: all .3s;
}



#formArea textarea{
	background: #e9f1fc;
	border: 1px solid #CCCCCC;
	font-size: 120%;
	line-height: 180%;
	width: 100%;
	height: 200px;
	padding: 0.5em;
	margin: 1em ;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

textarea#message{
	background: #e9f1fc;
	border: 1px solid #CCCCCC;
	font-size: 120%;
	line-height: 180%;
	width: 100%;
	height: 200px;
	padding: 0.5em;
	margin: 0em ;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}

.tokkaBox{
	display: block;
	text-align: left;
	background: #efbfc6;
	border: 1px solid #e76471;
	padding: 0.75em;
	font-size: 90%;
	line-height: 180%;
	margin: 1em 0;
}

.privacyBox{
	display: block;
	text-align: center;
	background: #efbfc6;
	border: 5px solid #e76471;
	padding: 0.5em;
	font-size: 90%;
	line-height: 180%;
	margin: 1em 0;
}



/*送信ボタンのおまじない*/
form input[type=submit] {
	-webkit-appearance: none;
	border-radius: 0;
	border: 0;
}

/* オンのとき */
button#formsubmit,
input#formsubmit[type="submit"],
button#submit,
input#voiceSubmit[type="submit"]{
	border: 0;
	width: 100%;
	font-size: 120%;
	color: #FFF;
	display: block;
	padding: 0.5em;
	margin: 0.5em 0 2em 0;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	background: #5754e1;
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 50px;
	border-radius: 5px;
	transition: all .3s;
}

/* オンのとき */
input#formsubmit[type="submit"]:hover,
button#submit:hover{
	color: #FFF;
	display: block;
	background: #e76471;
	transition: all .3s;
}


/* オフのとき */
input#formsubmit[type="submit"][disabled]{
	color: #222;
	background: #CCCCCC;
}

/*確認画面*/
.button{
	text-align: center;
}
.errorBox{
	text-align: center;
	background: #f1d5d5;
	border: 5px solid #00ae35;
	clear: both;
	margin: 1em;
	padding: 0.5em;
}

.errorBox p{
	color: #00ae35;
	font-size: 90%;
}

.confirm{
	text-align: center;
	background: #bef7c2;
	border: 5px solid #1d8825;
	clear: both;
	margin: 1em;
	padding: 0.5em;
}

.confirm p{
	color: #1d8825;
	font-size: 90%;
}


.hissu{
	background: #FF0000;
	color: #FFFFFF;
	padding: 0.1em 0.2em;
	margin-right: 10px;
	border: 1px solid #F00;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.nini{
	background: #666666;
	color: #FFFFFF;
	padding: 0.1em 0.2em;
	border: 1px solid #666666;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

.fukusuu{
	background: #13448f;
	color: #FFFFFF;
	padding: 0.1em 0.2em;
	margin-right: 10px;
	border: 1px solid #13448f;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
.hissu,
.nini,
.fukusuu{
	font-size: 75%;
	line-height: 100%;
	font-weight: 400;
	font-family: 'Noto Sans Japanese', sans-serif;
	margin-left: 3px;
}

#formArea > section,
#formArea > div > div > section{
	margin-bottom: 20px;
	/*padding: 1em;
	background: #E2E2E2;*/
}


#formArea > section> dl,
#formArea > div > div > section> dl{
	width: 820px;
	padding: 40px 20px 20px 70px;
	margin-bottom: 20px;
	margin-left: -30px;
	display: flex;
	flex-wrap: wrap;
}

#formArea > section > dl > dt,
#formArea > div > div > section> dl > dt{
	color: #1f2a34;
	font-size: 240%;
	line-height: 100%;
	font-weight: 700;
	margin-right: 0.5em;
	font-family: 'Noto Sans Japanese', sans-serif;
}

#formArea > section > dl > dd,
#formArea > div > div > section> dl > dd{
	padding: 0.5em 0 0 0;
	font-size: 100%;
	text-align: right;
	color: #000;
	font-family: 'Noto Sans Japanese', sans-serif;
}


article#formArea table{
	width: 100%;
	margin: 2em 0;
	border: 1px #E3E3E3 solid;
	border-collapse: collapse;
	border-spacing: 0;
}

article#formArea table th {
	padding: 1em;
	border: #E3E3E3 solid;
	border-width: 0 0 1px 1px;
	background: #F5F5F5;
	font-weight: 500;
	line-height: 180%;
	text-align: center;
}

article#formArea table td {
	background: #FFFFFF;
	padding: 1em;
	font-weight: 500;
	border: 1px #E3E3E3 solid;
	border-width: 0 0 1px 1px;
	text-align: left;
}

article#formArea table dt{
	font-size: 90%;	font-size: 80%;
	line-height: 150%;	line-height: 150%;
	margin-bottom: 5px;	margin-bottom: 5px;
	font-weight: 700;	
}	

article#formArea table dd{	
	font-size: 90%;	
	line-height: 150%;	
	margin: 0 0 1em 1em;	
}


article#formArea input[type=text] ,
article#formArea select{
	width: 100%;
	background: #e9f1fc;
	border: 1px solid #CCCCCC;
	font-size: 120%;
	line-height: 180%;
	padding: 0.5em;
	margin: 0;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
}



#formArea .label {
	font-weight: bold;
	display: block;		/* ブロックレベル要素化する */ 
	float: left;		/* 要素の左寄せ・回り込を指定する */ 
	margin: 1%;			/* ボックス外側の余白を指定する */
	width: ;		/* ボックスの横幅を指定する */
	padding-left: 0;	/* ボックス内左側の余白を指定する */
	padding-right: 0;	/* ボックス内御右側の余白を指定する */
	padding: 0.5em;
	color: #1f2a34;		/* フォントの色を指定 */
	text-align: center;	/* テキストのセンタリングを指定する */
	line-height: auto;	/* 行の高さを指定する */
	cursor: pointer;	/* マウスカーソルの形（リンクカーソル）を指定する */
	border: 2px solid #1f2a34;/* ボックスの境界線を実線で指定する */
	border-radius: 5px;	/* 角丸を指定する */
}


#formArea input[type="radio"]:checked + label,
#formArea input[type="checkbox"]:checked + label {
	color: #FFF;
	background: #1f2a34;/* マウス選択時の背景色を指定する */
	border: 2px solid #1f2a34;
	color: #ffffff; 	/* マウス選択時のフォント色を指定する */
	transition: all .3s;
}

#formArea .label2 {
display: flex;
align-items: center;
justify-content: center;
	font-weight: bold;
	display: block;		/* ブロックレベル要素化する */ 
	float: left;		/* 要素の左寄せ・回り込を指定する */ 
	margin: 1%;			/* ボックス外側の余白を指定する */
	width: 48%;		/* ボックスの横幅を指定する */
	padding-left: 0;	/* ボックス内左側の余白を指定する */
	padding-right: 0;	/* ボックス内御右側の余白を指定する */
	padding: 0.5em;
	color: #1f2a34;		/* フォントの色を指定 */
	text-align: center;	/* テキストのセンタリングを指定する */
	line-height: auto;	/* 行の高さを指定する */
	cursor: pointer;	/* マウスカーソルの形（リンクカーソル）を指定する */
	border: 2px solid #1f2a34;/* ボックスの境界線を実線で指定する */
	border-radius: 5px;	/* 角丸を指定する */
}

.formWq li:nth-child(odd){
	float: left;
	width: 49%;
	margin-bottom:0;
}

.formWq li:nth-child(even){
	float: right;
	width: 49%;
	margin-bottom:0;
}


#main iframe{
	margin-bottom: 2em;
}

/* キャスト詳細
-------------------------------------------------*/
#castDetail {

}

#castName {
	color: #5b4a42;
	margin-bottom: 2em;
}

#castName dt{
	font-size: 2.0rem;
    line-height: 150%;
	font-weight: 700;
}

#castName ul{
	margin: 0;
	padding: 0;
	list-style: none;
}

.reserve_button{
	background: #5b59ea;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	margin: 0.25em 0;
}

.reserve_button > a{
	color: #FFFFFF;
	font-size: 80%;
}