@charset "utf-8";

body{
	font-size: 100%;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	color: rgba(29,28,40,1.0);	/*#1d1c28*/
	color: #eee;
	background: #fff;
}
.mvBox,
.mainOuter,
.inner {
	max-width: 1024px;
	margin: 0 auto;
}
a {
	color: #eee;
	text-decoration: none;
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.wrapper {
	padding-top: 146px;
	background: url(/img/common/bg02.jpg) no-repeat fixed left top;
	background-size: cover;
}
.pagetop {
	position: fixed;
	bottom: 16px;
	right: -136px;
	z-index: 9990;
}
.pagetop a {
	display: inline-block;
	width: 40px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	color: #ccc;
	background: rgba(0,0,0,.5);
	border: 2px solid #ccc;
	border-radius: 8px;
}
@media screen and (max-width: 640px){
	.wrapper {
		padding-top: 0;
		background: #444;
	}
}
/*																header		*/
header {
	position: fixed;
	top: 0;
	width: 100%;
	margin: 0px;
	padding: 6px 0 0;
	font-size: .8rem;
	background: rgba(0,0,0,.5);
	z-index: 9999;
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
header.deepen {
	background: rgba(0,0,0,.9);
}
header .inner {
	display: flex;
	display: -webkit-flex;
}
header h1 {
	width: 23.8%;
	margin-right: auto;
}
header h1 img {
	width: 100%;
}
header .subBox .upper,
header .subBox .lower {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	padding: 6px 0;
}
header .subBox .upper *,
header .subBox .lower * {
	margin-left: 24px;
	line-height: 1.2rem;
}
header .subBox .lower .reserve a {
	position: relative;
	display: block;
	padding: 8px 12px;
	text-align: center;
	background: #feae1b;
	overflow: hidden;
}
header .subBox .lower .reserve a span {
	position: absolute;
	display: block;
	top: 0;
	left: 100%;
	width: 100%;
	height: 100%;
	margin: 0;
	background: rgba(0,0,0,.5);
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
header .subBox .lower .reserve a span i {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 1.6rem;
	height: 1.6rem;
	line-height: 1.6rem;
	font-size: 1.6rem;
}
header .subBox .lower .reserve a:hover span {
	left: 0;
}
header .tel {
	font-size: 1.2rem;
	font-weight: bold;
	color: #ffd728;
}
@media screen and (max-width: 640px){
	header {
		position: relative;
	}
	header .inner {
		display: block;
		height: auto;
	}
	header h1 {
		width: 100%;
	}
	header .subBox .upper {
		display: block;
		padding: 0;
	}
	header .subBox .upper p {
		margin-left: 0;
		padding-bottom: 6px;
		font-size: .7rem;
		text-align: center;
	}
	header .subBox .upper a,
	header .subBox .lower {
		display: none;
	}
}
/*																nav		*/
#globalnavi {
	background: rgba(0,0,0,.6);
	border: solid rgba(180,95,66,.8);
	border-width: 1px 0;
}
#globalnavi .inner {
	display: flex;
	display: -webkit-flex;
	justify-content: center;
}
#globalnavi ul {
	display: flex;
	display: -webkit-flex;
}
#globalnavi ul li a {
	display: block;
	padding: 12px 16px;
	color: #eee;
}
#globalnavi ul li a:hover {
	color: #feae1b;
	background: rgba(0,0,0,.8);
}
.navSpBtn,
#globalnaviSp ul {
	display: none;
}
@media screen and (max-width: 768px){
	#globalnavi {
		line-height: 1.2rem;
		font-size: .8rem;
	}
	#globalnavi ul li a {
		padding: 12px 8px;
		letter-spacing: -1px;
	}
}
@media screen and (max-width: 640px){
	#globalnavi {	display: none;}
	.navSpBtn {
		display: inline-block;
		position: fixed;
		top: 16px;
		right: 16px;
		width: 40px;
		height: 40px;
		line-height: 40px;
		text-align: center;
		font-size: 20px;
		color: #ccc;
		background: rgba(0,0,0,.5);
		border: 2px solid #ccc;
		border-radius: 8px;
		z-index: 9999;
	}
	#globalnaviSp ul {
		display: -webkit-flex;
		display: flex;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		position: fixed;
		top: 0;
		left: -100%;
		width: 100%;
		background: rgba(0,0,0,.8);
		border: 4px double #feae1b;
		border-right: 1px solid #feae1b;
		border-left: 1px solid #feae1b;
		border-bottom: 4px double #feae1b;
		z-index: 9990;
		-moz-transition: .4s ease-in-out;
		-webkit-transition: .4s ease-in-out;
		-o-transition: .4s ease-in-out;
		-ms-transition: .4s ease-in-out;
		transition: .4s ease-in-out;
	}
	#globalnaviSp li {
		width: 50%;
		padding: 0 16px;
		font-size: .8rem;
		overflow: hidden;
		border-top: 1px solid #feae1b;
	}
	#globalnaviSp li:first-child {
		border-top: 0;
	}
	#globalnaviSp li a {
		display: block;
		padding: 16px 0;
	}
	#globalnaviSp li.reserve {
		text-align: center;
		padding: 18px 0;
	}
	#globalnaviSp li.reserve a {
		width: 62%;
		margin: 0 12px;
		padding: 6px 12px;
		background: #ba2027;
		border-radius: 6px;
	}
	#globalnaviSp li:nth-child(odd) {
		border-right: 1px solid #feae1b;
	}
	#globalnaviSp li.reserve,
	#globalnaviSp li.home {
		width: 100%;
		border-right: 0;
	}

	#globalnaviSp ul.open {
		left: 0;
	}
}
/*																mv		*/
.mvBox {
	display: flex;
	display: -webkit-flex;
	max-height: 640px;
	margin: 0 auto 48px;
	padding: 12px;
	background: rgba(0,0,0,.5);
}
.mvBox aside {
	width: 25%;
	padding-right: 12px;
}
aside li {
	margin-top: 1px;
	background: rgba(0,0,0,.5);
}
aside li:first-child {
	margin-top: 0;
}
.mvBox aside li a {
	display: block;
	padding: 12px 12px 24px;
}
aside li .sub {
	min-height: 2rem;
	margin-top: 4px;
	padding-top: 4px;
	line-height: 1.2rem;
	font-size: .8rem;
	border-top: 1px dotted #ccc;
}
.mvBox .mv {
	width: 100%;
}
.mv img {
	width: 100%;
}
/*																main		*/
.mainOuter {
	line-height: 1.6rem;
}
main {
	width: 100%;
}
main section {
	margin-bottom: 48px;
	padding: 12px;
	background: rgba(0,0,0,.5);
}
main section .headBox {
	padding: 16px;
	background: rgba(0,0,0,.5);
	margin-bottom: 1px;
	text-align: center;
}
main section h1 {
	font-size: 1.6rem;
	letter-spacing: 2px;
	border-bottom: 1px solid #b45f42;
}
main .features ul,
main .recommend ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap :wrap;
}
main .features li,
main .recommend li {
	position: relative;
	width: 25%;
	width: -webkit-calc(25% - 0.75px);
	width: calc(25% - 0.75px);
	min-height: 166px;
	margin: 0 0 1px 1px;
	background: rgba(0,0,0,.5);
	overflow: hidden;
}
main .features li {
	min-height: 332px;
}

main .features li:nth-child(4n+1),
main .recommend li:nth-child(4n+1) {
	margin: 0 0 1px 0;
}
main .features li:nth-child(1) {	background: url(/img/features/01.jpg) no-repeat top center;}
main .features li:nth-child(2) {	background: url(/img/features/02.jpg) no-repeat top center;}
main .features li:nth-child(3) {	background: url(/img/features/03.jpg) no-repeat top center;}
main .features li:nth-child(4) {	background: url(/img/features/04.jpg) no-repeat top center;}
@media screen and (max-width: 640px){
	main section h1 {
		font-size: 1.2rem;
	}
	main .features ul,
	main .recommend ul {
		display: block;
	}
	main .features li,
	main .recommend li {
		width: 100%;
	}
	main .recommend li.toList {
		min-height: 82px;
	}
	main .recommend li.toList br {
		display: none;
	}
	main .features li {
		margin-bottom: 12px !important;
	}
	main .features li:nth-child(1),
	main .features li:nth-child(2),
	main .features li:nth-child(3),
	main .features li:nth-child(4) {
		background-size: cover;
	}
}
main .recommend li .cat {
	position: absolute;
	top: 8px;
	right: 0;
	font-size: .7rem;
	background: rgba(0,0,0,.5);
	padding: 1px 4px 1px 8px;
	border-radius: 5px 0 0 5px;
}
main .recommend li .title,
main .recommend .toList p {
	position: absolute;
	bottom: 8px;
	right: 0;
	width: 100%;
	padding: 6px 24px 6px 6px;
	text-align: right;
	color: rgba(0,0,0,.9);
	background: rgba(255,255,255,.8);
}
main .recommend .toList a {
	background: rgba(180,95,66,.8);
}
main .recommend .toList a:hover {
	background: rgba(180,95,66,1);
}

main .recommend .toList p {
	line-height: 1.8rem;
	color: #fff;
	font-size: 1.6rem;
	background: none;
}
main .recommend .toList .fsSmall {
	font-size: 1rem;
}
main .features a .txtBox {
	position: absolute;
	top: 204px;
	left: 0;
	height: 100%;
	padding: 12px;
	background: rgba(0,0,0,.72);
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
main .features a:hover .txtBox {
	top: 0;
}
main .features .point {
	text-align: center;
	color: #feae1b;
	border-bottom: 1px solid #feae1b;
}
main .features .comment {
	font-size: .8rem;
	line-height: 1.2rem;
}
main .features .more {
	font-size: 2.6rem;
	line-height: 3rem;
	text-align: center;
	margin-top: 40px;
}
main .features li a,
main .recommend li a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
main .recommend li a .imgOuter {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}
main .recommend li a .imgOuter img {
	width: 100%;
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
main .recommend li a:hover .imgOuter img {
	width: 105%;
}
.bannerFull {
	margin-top: 12px;
}
.bannerFull img {
	width: 100%;
}
main .twoBox {
	display: flex;
	display: -webkit-flex;
	justify-content: flex-end;
	padding: 0;
	background: none;
}
main .twoBox .leftBox {
	width: 61%;
	width: -webkit-calc(62% - 6px);
	width: calc(62% - 6px);
	margin-right: auto;
	padding: 12px;
	background: rgba(0,0,0,.5);
}
main .twoBox .leftBox li a {
	display: block;
	position: relative;
	margin-bottom: 1px;
	padding: 24px;
	background: #888;
	overflow: hidden;
}
main .twoBox .leftBox.voices li a {
	display: flex;
	display: -webkit-flex;
	padding-top: 3rem;
}
main .twoBox .leftBox.voices li a .thumb {
	width: 22%;
}
main .twoBox .leftBox.voices li a .thumb img {	width: 100%;}
main .twoBox .leftBox.voices li a .txtBox {
	width: 78%;
	padding: 0 0 0 12px;
}
main .twoBox .leftBox a h2 {
	margin-bottom: 6px;
	padding-bottom: 6px;
	font-size: 1.6rem;
	font-weight: normal;
	letter-spacing: 2px;
	border-bottom: 1px solid;
}
main .twoBox .leftBox a p {
	font-size: .8rem;
	line-height: 1.2rem;
}
main .twoBox .leftBox a .achievement {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	padding: 8px 8px 4px;
	vertical-align: top;
	text-align: right;
	background: #ba2027;
}
main .twoBox .leftBox a .achievement .shout {
	font-size: 1.6rem;
}
main .twoBox .leftBox li a .more {
	position: absolute;
	top: 0;
	left: 100%;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.5);
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
main .twoBox .leftBox li a:hover .more {
	left: 0;
}
main .twoBox .leftBox li a .more {
	font-size: 2.6rem;
	line-height: 3rem;
	text-align: center;
	padding-top: 24px;
}
main .twoBox .rightBox {
	width: 37%;
	width: -webkit-calc(38% - 6px);
	width: calc(38% - 6px);
	padding: 12px;
	background: rgba(0,0,0,.5);
}
main .twoBox .rightBox li a {
	display: flex;
	display: -webkit-flex;
	margin-bottom: 1px;
	padding: 23px 12px;
	background: rgba(0,0,0,.5);
}
main .twoBox .rightBox li a p {
	margin-left: auto;
	font-size: .8rem;
}
main .twoBox .rightBox li a:hover {
	color: #feae1b;
	background: rgba(0,0,0,.8);
}
main .twoBox .leftBox.news a .date {
	text-align: right;
	font-size: .8rem;
}
main .twoBox .leftBox.news a h2 {
	padding: 0;
	font-size: 1.2rem;
	border-bottom: 1px dotted;
}
main .twoBox .rightBox.links li a {
	display: block;
	margin-top: 12px;
	padding: 0;
	background: none;
	line-height: 0;
}
main .twoBox .rightBox.links li a img {
	width: 100%;
}
@media screen and (max-width: 640px){
	main .twoBox {
		display: block;
	}
	main .twoBox .rightBox,
	main .twoBox .leftBox {
		width: 100%;
	}

	main .twoBox .leftBox.voices li a {
		padding-top: 48px;
	}
	main .twoBox .leftBox a .achievement {
		text-align: center;
	}
}
/*																facial		*/
.facial p {
	margin-bottom: 12px;
}
.facial .comment {
	padding: 12px;
	text-align: center;
	background: rgba(0,0,0,.5);
}
.application a {
	position: relative;
	display: block;
	width: 62%;
	margin: 12px auto;
	padding: 16px 0;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	color: #fff;
	background: #ba2027;
	border-radius: 6px;
	overflow: hidden;
}
.application a span {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,.5);
	-moz-transition: .2s ease-in-out;
	-webkit-transition: .2s ease-in-out;
	-o-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.application a:hover span {
	top: 0;
}
.application a span i {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 2.6rem;
	height: 2.6rem;
	font-size: 2.6rem;
}
.facialPoint li {
	display: flex;
	display: -webkit-flex;
	margin-bottom: 1px;
	padding: 12px;
	background: rgba(0,0,0,.5);
}
.facialPoint li .thumb {
	width: 12.2%;
}
.facialPoint li .thumb img{		width: 100%;}
.facialPoint li .txtBox {
	width: 87%;
	padding: 0 0 0 12px;
}
.facialPoint li .point {
	display: block;
	font-size: 1.2rem;
	font-weight: bold;
	color: #0088cc;
}
.facialPoint li .title {
	padding: 12px 6px 6px;
	font-size: 1.2rem;
	font-weight: bold;
	background: #0088cc;
}
.facialPoint li p {
	padding: 6px 0 0;
	font-size: .9rem;
	line-height: 1.2rem;
}
.facialMemo ul {
	display: flex;
	display: -webkit-flex;
	flex-wrap: wrap;
}
.facialMemo li {
	margin-bottom: 1px;
	padding: 12px 24px;
	background: rgba(0,0,0,.5);
}
.facialMemo li:nth-child(odd) {
	width: 24%;
	width: -webkit-calc(25% - 1px);
	width: calc(25% - 1px);
	margin-right: 1px;
	text-align: right;
}
.facialMemo li:nth-child(even) {
	width: 75%;
}
@media screen and (max-width: 640px){
	.application a {
		font-size: 1.2rem;
	}
	.facialMemo ul {
		display: block;
	}
	.facialPoint li {
		display: block;
	}
	.facialPoint li .thumb,
	.facialPoint li .txtBox {
		width: 100%;
		padding: 0;
	}
	.facialMemo li:nth-child(odd),
	.facialMemo li:nth-child(even) {
		width: 100%;
	}
	.facialMemo li:nth-child(odd) {
		text-align: left;
		background: rgba(27,154,247,.5);
	}

}
/*																footer		*/
footer {
	width: 100%;
	padding: 12px 0;
	font-size: .9rem;
	background: #000;
	border-top: 1px solid rgba(180,95,66,.8);
}
footer .inner {
	display: flex;
	display: -webkit-flex;
	line-height: 1.6rem;
}
footer .inner .rightBox,
footer .inner .leftBox {
	width: 50%;
	padding: 12px 36px;
}
footer .inner .rightBox {
	margin-left: auto;
	border-left: 1px solid rgba(136,136,136,.5);
}
footer .inner .leftBox .inquiry input[type="text"],
footer .inner .leftBox .inquiry input[type="email"],
footer .inner .leftBox .inquiry input[type="tel"],
footer .inner .leftBox .inquiry textarea {
	width: 100%;
	padding: 4px;
}
footer .inner .leftBox .inquiry textarea {
	height: 8rem;
}
footer .inner .title {
	margin-bottom: 12px;
	padding-bottom: 12px;
	font-size: 1.2rem;
	border-bottom: 1px solid rgba(136,136,136,.5);
}
footer .inner .formBox {
	padding: 0 24px;
}
footer .inner .formBox label,
footer .inner .formBox textarea {
	display: block;
	margin-bottom: 12px;
}
footer .inner .submitDammy {
	display: block;
	width: 38%;
	margin: 0 auto;
	text-align: center;
	background-color: #666;
	border-radius: 6px;
}
footer .inner i {
	margin: 0 6px;
	color: #feae1b;
	font-weight: bold;
}
footer .inner .rightBox .divider {
	margin: 24px 0 0;
	border-bottom: 1px dotted #666;
}
footer .inner .rightBox a {
	display: block;
	margin-left: 0;
}
footer .inner .rightBox a:hover {
	margin-left: 6px;
}
footer .last {
	margin-top: 12px;
	padding: 12px 0;
	text-align: center;
	border-top: 1px solid rgba(180,95,66,.8);
}
@media screen and (max-width: 640px){
	footer .inner {
		display: block;
	}
	footer .inner .rightBox,
	footer .inner .leftBox {
		width: 100%;
	}
	footer .inner .leftBox {
		margin-bottom: 24px;
		padding-bottom: 24px;
		border-bottom: 4px double;
	}
	footer .inner .rightBox a {
		padding: 12px 0;
	}
}
/*																clearfix		*/
.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	min-height: 1px;
}
* html .clearfix {
	height: 1px;
	height: auto;
	overflow: hidden;
}
/*																grid		*/
.grid {
	margin: 0px;
	padding: 0px;
	width: 100%;
	list-style-type: none;
}
.grid1, .grid2, .grid3, .grid4, .grid5, .grid6, .grid7, .grid8, .grid9, .grid10, .grid11 {
	float: left;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}
.grid1 {	width: 8.333333%;}
.grid2 {	width: 16.666666%;}
.grid3 {	width: 24.999999%;}
.grid4 {	width: 33.333333%;}
.grid5 {	width: 41.666666%;}
.grid6 {	width: 49.999999%;}
.grid7 {	width: 58.333333%;}
.grid8 {	width: 66.666666%;}
.grid9 {	width: 74.999999%;}
.grid10 {	width: 83.333333%;}
.grid11 {	width: 91.666666%;}
.first {margin-left: 0;clear: left;}
