@charset "utf-8";
/* CSS Document */

/**
 * Reset
 * ----------------------------------------------------------------------------
 */

* { margin:0; padding:0; font-size:100%;}
*, *:before, *:after { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
article, aside, details, figcaption, figure, footer, header, nav, section, summary { display: block;}
audio, canvas, video { display: inline-block;}
audio:not([controls]) { display: none; height: 0;}
[hidden] { display: none;}
html { overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; scroll-behavior:smooth;}
body { margin: 0; padding:0; }

img { max-width:100%; margin:0; padding:0; -ms-interpolation-mode: bicubic; border: 0; vertical-align: middle; }

a { color: #fff; text-decoration: underline;
	-webkit-transition: all 0.4s ease; -moz-transition: all 0.4s ease; -o-transition: all 0.4s ease; transition: all 0.4s ease;}
a:visited { color: #fff;}
a:focus { outline: none ; }
a:active, a:hover { text-decoration: underline; }
a:hover img { text-decoration: none; opacity: 0.7; filter: alpha(opacity=70); -ms-filter: "alpha(opacity=70)"; }

address { font-style: italic; margin: 0 0 24px;}
abbr[title] { border-bottom: 1px dotted;}
b, strong { font-weight: bold;}
h1, h2, h3, h4, h5, h6 { margin: 0; padding:0; font-weight:normal;}
p { margin: 0 0 1em;}
ol,
ul { margin: 0; padding: 0;}
ul { list-style-type: none;}
nav ul,
nav ol { list-style: none; list-style-image: none;}
li > ul,
li > ol { margin: 0;}

ul.border { padding:15px 20px 10px 20px; border:1px solid #FFF;}

/* ===================================================================
 Font
=================================================================== */

@font-face { font-family: "Custom Yu Gothic"; src: local("Yu Gothic"); font-weight: 300;}
@font-face { font-family: "Custom Yu Gothic"; src: local("Yu Gothic"); font-weight: 500;}
@font-face { font-family: "Custom Yu Gothic"; src: local("Yu Gothic"); font-weight: bold;}
selector { font-family: YuGothic, "Custom Yu Gothic", "Yu Gothic", sans-serif;}

body { text-align: center; font-size: 93.8%; /* 15px */ padding:0; margin:0 auto; background:#000; color:#fff; letter-spacing:0.1em; line-height:1.8;
 font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; 
}


/* ===================================================================
 Header
=================================================================== */
 
.site-header { width:100%; padding-right: 110px; height:70px; background:#132330; position:fixed; top:0; z-index:99999 !important; }
.site-header .head { clear:both; width:100%; max-width:1440px; height:70px; margin:0 auto; padding:0; }
.site-header .head .logo { float:left; padding-top:10px; padding-left: 10px; }

.site-header:after,
.site-header .head:after { content:" "; display:block; clear:both;}

@media only screen and (max-width: 1200px) {
	.site-header .head .logo { padding-top:12px; }
	.site-header .head .logo img { height:40px; }
}

@media only screen and (max-width: 1000px) {
	.site-header { height:50px;; padding-right: 0; }
	.site-header .head .logo { padding-top:5px; }
}

/* Navi
---------------------------------------------------------------------- */
#nav { float:right; list-style-type:none; height:60px; margin:0; padding:20px 0 0 0; text-align:left; }
#nav ul { }
#nav li { font-size:15px; position:relative; line-height:100%; display:inline-block; text-align:center; color:#fff;   }
#nav li:first-child { margin-left:0;}
#nav li img { display:block; margin:0 auto;}
#nav li a { display:block; margin:0; padding:0 10px; text-decoration:none; color:#fff; }
#nav li a:hover { color: #27ae60; }
#nav li.sns { display: none !important;}

@import url(https://fonts.googleapis.com/css?family=Raleway:400,500);
#nav { text-align: center; text-transform: uppercase; font-weight: 500; letter-spacing: 1px;}
#nav * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}
#nav li { list-style: outside none none; margin: 0.4em 0.5em; padding: 0;}
#nav a { padding: 0 0.7em; color: rgba(255, 255, 255, 0.5); position: relative; text-decoration: none; display: inline-block;}
#nav a:before {
  position: absolute; content: '';
  -webkit-transition: all 0.35s ease; transition: all 0.35s ease; opacity: 0;
  top: 0; right: 15%; bottom: 0; left: 15%;
  border-left: 3px solid #27ae60; border-right: 3px solid #27ae60;
}
#nav a:hover,
#nav .current a { color: #fff;}
#nav a:hover:before,
#nav .current a:before { opacity: 1; left: 0; right: 0;}

@media only screen and (max-width:1600px) {
    #nav li a { padding:0 3px; }
}

@media only screen and (max-width:1260px) {
    #nav li { font-size:14px; margin: 0.4em 0; }
}

@media only screen and (max-width:980px) {
	#nav,
    .mean-container .mean-nav ul li.sns { display:none !important;}
}

@media only screen and (max-width:420px) {
    .mean-container .mean-nav ul li a { padding: 0.65em 5% !important;}
    .mean-container .mean-nav ul li.sns { display:inline-block !important; width: 33% !important;}
    .mean-container .mean-nav ul li.sns a { text-align: center !important;}
    .mean-container .mean-nav ul li a i.fa-2x { font-size: 1.75em !important; margin-left: 10px;}
}


.head-btn{ float:right; margin: 0 0 0 10px;}
.head-btn ul li{ float: left;}
.head-btn ul li.head-twitter,
.head-btn ul li.head-insta,
.head-btn ul li.head-line { padding-top: 5px; width: 30px; margin-right: 10px; line-height:70px; color:#fff;}
.head-btn ul li.head-twitter a:hover,
.head-btn ul li.head-line a:hover { color: #FFC000;}
.head-btn ul li.head-insta a:hover { color: #27ae60; }

.head-btn ul li.head-entry { height:70px; background:#FFC000; color:#000;}
.head-btn ul li.head-entry a { height: 70px; font-weight:500; font-size:16px; text-align: center; text-decoration: none; display: inline-block; outline: none;}
.head-btn ul li.head-entry a::before,
.head-btn ul li.head-entry a::after { position: absolute; z-index: -1; display: block; content: '';}
.head-btn ul li.head-entry a,
.head-btn ul li.head-entry a::before,
.head-btn ul li.head-entry a::after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all .3s; transition: all .3s;}

.head-btn ul li.head-entry a { position: relative; z-index: 2; background: #FFC000 url(../parts/ico_mail.png) no-repeat 12px 50%; color: #333; overflow: hidden;}
.head-btn ul li.head-entry a:hover { color: #fff;}
.head-btn ul li.head-entry a::after { top: -100%; width: 100%; height: 100%;}
.head-btn ul li.head-entry a:hover::after { top: 0; background: #218652 url(../parts/ico_mail_w.png) no-repeat 12px 50%;}

.head-btn ul li.head-visit { height:70px; background:#FFC000; color:#000;}
.head-btn ul li.head-visit a { height: 70px; font-weight:500; font-size:16px; text-align: center; text-decoration: none; display: inline-block; outline: none;}
.head-btn ul li.head-visit a::before,
.head-btn ul li.head-visit a::after { position: absolute; z-index: -1; display: block; content: '';}

.head-btn ul li.head-visit a,
.head-btn ul li.head-visit a::before,
.head-btn ul li.head-visit a::after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all .3s; transition: all .3s;}
.head-btn ul li.head-visit a { position: relative; z-index: 2; background: #FFF url(../parts/ico_flag.png) no-repeat 12px 50%; background-size: 18px 20px; color: #333; overflow: hidden;}
.head-btn ul li.head-visit a:hover { color: #fff;}
.head-btn ul li.head-visit a::after { top: -100%; width: 100%; height: 100%;}
.head-btn ul li.head-visit a:hover::after { top: 0; background: #218652 url(../parts/ico_flag_w.png) no-repeat 12px 50%; background-size: 18px 20px;}

@media only screen and (min-width:1301px) {
    .head-btn ul li.head-entry a { width: 200px; padding: 25px 0 0 0; line-height: 1.2; }
    .head-btn ul li.head-visit a { width: 140px; padding-top: 25px; line-height: 1.2; }
}

@media only screen and (max-width:1300px) {
	.head-btn{ float:right; width:205px;}
    .head-btn ul li.head-visit,
    .head-btn ul li.head-insta,
    .head-btn ul li.head-line { margin-right: 10px; }
	.head-btn ul li.head-entry { width:80px; height:70px; margin-left:0; line-height:82px; background:#FFC000; color:#000; }
	.head-btn ul li.head-entry a { width: 80px; height: 70px; font-weight: 800; font-size:12px; letter-spacing:0; text-align: center; text-decoration: none; line-height: 100px; padding-right:0; display: inline-block; outline: none; background: #FFC000 url(../parts/ico_mail.png) no-repeat 30px 32%; }
	.head-btn ul li.head-entry a:hover::after { top: 0; background: #218652 url(../parts/ico_mail_w.png) no-repeat 30px 32%;}
    .head-btn ul li.head-entry a span { display: none;}

    .head-btn ul li.head-visit { width:60px; height:70px; margin:0; line-height:82px; background:#FFC000; color:#000; }
	.head-btn ul li.head-visit a { width: 60px; height: 70px; font-weight: 800; font-size:12px; letter-spacing:0; text-align: center; text-decoration: none; line-height: 100px; padding-right:0;
	  display: inline-block; outline: none; background: #FFF url(../parts/ico_flag.png) no-repeat 20px 32%; background-size: 35%; }
	.head-btn ul li.head-visit a:hover::after { top: 0; background: #218652 url(../parts/ico_flag_w.png) no-repeat 20px 32%; background-size: 35%; }
}

@media only screen and (max-width:1000px) {
	.head-btn{ float:right; width:235px; margin-right:55px;}
    .head-btn ul li.head-twitter,
    .head-btn ul li.head-insta,
    .head-btn ul li.head-line { padding-top: 5px; width: 30px; margin-right: 15px; line-height:50px; color:#fff;}
	.head-btn ul li.head-visit { width:52px; height:50px; margin-left:0; line-height:60px; background:#FFC000; color:#000; }
    .head-btn ul li.head-entry { width:52px; height:50px; margin-left:40px; line-height:60px; background:#FFC000; color:#000; }
	.head-btn ul li.head-visit a { width: 52px; height: 50px; font-weight: 800; font-size:11px; letter-spacing:0; text-align: center; text-decoration: none; line-height: 75px; padding-right:0;
	  display: inline-block; outline: none; background: #FFF url(../parts/ico_flag.png) no-repeat 15px 25%; background-size: 40%; }
    .head-btn ul li.head-entry a { width: 60px; height: 50px; font-weight: 800; font-size:11px; letter-spacing:0; text-align: center; text-decoration: none; line-height: 75px; padding-right:0;
	  display: inline-block; outline: none; background: #FFC000 url(../parts/ico_mail.png) no-repeat 20px 27%; }
	.head-btn ul li.head-entry a:hover::after { top: 0; background: #218652 url(../parts/ico_mail_w.png) no-repeat 20px 27%;}
}

@media only screen and (max-width:420px) {
	.head-btn{ float:right; width:104px; margin-right:55px;}
        .head-btn ul li.head-twitter,
    .head-btn ul li.head-insta,
    .head-btn ul li.head-line { display: none;}
}

#lang { overflow: hidden; width: 100px; margin: 0 auto; text-align: center; z-index: 99999;}
#lang .select-box select { width: 100%; padding: 9px 38px 7px 8px; color: #666; cursor: pointer; text-indent: 0.01px; text-overflow: ellipsis; border: none; outline: none;
 background: transparent; background-image: none; box-shadow: none; -webkit-appearance: none; appearance: none;}
#lang .select-box select::-ms-expand { display: none;}
#lang .select-box { position: relative; border: 1px solid #917C73; border-radius: 2px; background: #fff;}
#lang .select-box::before { position: absolute; top: 1em; right: 0.9em; width: 0; height: 0; padding: 0; content: '';
 border-left: 6px solid transparent; border-right: 6px solid transparent; border-top: 6px solid #666; pointer-events: none;}
.lang-pc { position: absolute; right: 5px; top: 10px;}
#nav li.lang-sp { display: none !important;}

@media screen and (max-width: 1000px) {
    .lang-sp { display: block;}
    .lang-pc { display: none;}
    #lang { overflow: hidden; width: 100%; margin: 0 auto; text-align: center; z-index: 99999;}
    #lang .select-box { background-color: rgba(255,255,255,0.9); border-radius: 0;}
    #lang .select-box select { width: 100%; padding-left: 20px;}
}




/* TOPメインビジュアル
---------------------------------------------------------------------- */
#mv-top { clear:both; width:100%; height:900px; margin:0 auto; padding:150px 0 0 0; text-align:center; background:url(../parts/head_mv.jpg) no-repeat center top; position: relative;  }
#mv-top h2 { width: 100%; padding:0; margin:0 auto 80px auto; }
#mv-top h2 img { display: block; margin: 0 auto;}

#mv-top ul { margin: 0 auto 80px auto; text-align: center;}
#mv-top ul li { display: inline-block; width: 340px; margin: 0 5px 10px 0; padding:8px 10px 8px 10px; border: 2px solid #FFF; font-size: 26px; line-height: 140%; background-color: rgba(255,255,255,0.2); }
#mv-top ul li span { font-size: 32px; color: #F8BE00; font-weight: bold;}
#mv-top ul li span:nth-child(2) { font-size: 20px; color: #FFF; font-weight: normal;} 


#mv-top p { font-size:23px; margin-bottom:1em;}
#mv-top p strong { color: #FFBF00; font-size:37px; font-weight:bold; }
#mv-top .mv-txt { margin:0 auto; width:94%; max-width:1440px; padding-right:720px; }

#mv-top:after,
#mv-top .mv-txt:after { content:" "; display:block; clear:both;}

#mv-top .mv-btn { margin:50px auto 20px auto;}
#mv-top .mv-btn a { width:94%; max-width: 400px; height: 60px; font-size:17px; font-weight:bold; line-height: 60px; text-align: center; text-decoration: none;
 display: inline-block; outline: none; position: relative; z-index: 2; background: #FFF; border: 2px solid #FFF; border-radius: 5px; color: #00B050;}
#mv-top .mv-btn a,
#mv-top .mv-btn a::before,
#mv-top .mv-btn a::after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all .2s; transition: all .2s;}
#mv-top .mv-btn a:hover { background: #218652 url(../parts/ico_mail_w.png) no-repeat 100px 50%; border-color: #218652; color: #fff;}
#mv-top .mv-btn a::before,
#mv-top .mv-btn a::after { position: absolute; z-index: -1; display: block; content: '';
  top: 0; width: 50%; height: 100%; background: #FFF;}
#mv-top .mv-btn a::before { right: 0;}
#mv-top .mv-btn a::after { left: 0; background: #FFF url(../parts/ico_mail_g.png) no-repeat 100px 50%;}
#mv-top .mv-btn a:hover::before,
#mv-top .mv-btn a:hover::after { width: 0; background-color: #FFF;}


@media only screen and (max-width:1400px) {
	#mv-top .mv-txt { margin:0 auto; width:94%; padding-right:40%; }
}

@media only screen and (max-width:1000px) {
    #mv-top { padding:15% 0 0 0;}

    #mv-top h2 { padding:0 5%; }
	#mv-top { height: auto; padding:10% 0 20px 0; background:url(../parts/head_mv.jpg) no-repeat 50% top;  background-size: contain;}
#mv-top .mv-btn { margin: 20px auto;}

}

@media only screen and (max-width:768px) {
	#mv-top { height: auto; padding:12% 0 20px 0; background:url(../parts/head_mvSP.jpg) no-repeat 50% top;  background-size: contain;}

    #mv-top .mv-txt { margin:0 auto; width:94%; padding-right:0; }
    #mv-top h2 { margin-bottom: 30px;}
    #mv-top h2 img { width: 80%;}

	#mv-top p { font-size:18px;}
    #mv-top p em { font-size:25px; }
    #mv-top p strong { font-size:27px; }
    #mv-top .mv-btn a:hover { background: #218652 url(../parts/ico_mail_w.png) no-repeat 70px 50%; }
    #mv-top .mv-btn a::after { background: #FFF url(../parts/ico_mail_g.png) no-repeat 70px 50%;}
    
    #mv-top ul { max-width: 240px; margin: 0 auto 20px auto;}
    #mv-top ul li { max-width: 240px; padding-top:15px; font-size: 18px;} 
    #mv-top ul li span { font-size: 20px;} 
    #mv-top ul li span:nth-child(2) { font-size: 16px;}
}

@media only screen and (max-width:480px) {
    #mv-top { padding:20% 0 0 0;}

}

#mv-top .member { margin-top: -50px; font-size:24px; font-weight: bold;}
#mv-top .member span { font-size: 38px; color: #F8BE00; }

@media only screen and (max-width:1000px) {
#mv-top .member { margin-top: -20px; }
}

@media only screen and (max-width:768px) {
#mv-top .member { margin-top: 0;}

}


/* スクロールボタン ---- */
#mv-top .scroll { clear:both; margin-top: 70px; }
#mv-top .scroll a { color:#fff; text-decoration:none;}
#mv-top .scroll a span {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 14px;
	height: 14px;
	margin-left: -7px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	-webkit-animation: sdb 1.5s infinite;
	animation: sdb 1.5s infinite;
	box-sizing: border-box;
	top: 95%;
}
@-webkit-keyframes sdb {
  0% { -webkit-transform: rotate(-45deg) translate(0, 0); opacity: 0; }
  50% { opacity: 1; }
  100% { -webkit-transform: rotate(-45deg) translate(-16px, 16px); opacity: 0; }
}
@keyframes sdb {
  0% { transform: rotate(-45deg) translate(0, 0); opacity: 0; }
  50% { opacity: 1; }
  100% { transform: rotate(-45deg) translate(-16px, 16px); opacity: 0; }
}

@media only screen and (max-width:960px) {
	#mv-top .scroll { display:none; }
}


#main { clear:both; top:70px;  }

article { clear:both; padding:80px 0 80px 0;}
article:after { content:" "; display:block; clear:both;}

section { clear:both; width:94%; max-width:1440px; margin:0 auto;}
section:after { content:" "; display:block; clear:both;}

section .boxR { float:right; width:50%; text-align:left;}
section .boxL { float:left; width:50%; padding:0;}

@media only screen and (max-width:768px) {
	section .boxR { float:none; width:100%; margin-left:auto; margin-right:auto; text-align:left;}
	section .boxL { float:none; width:100%; margin-left:auto; margin-right:auto; padding:0;}
}


section .txt { width:387px; margin:0; text-align:left;}
section .boxL .txt { float:right; margin-right:8%; }
section .boxR .txt { margin-left:8%; }

section .photo { width:50%; max-width:720px; margin:0 auto;}

@media only screen and (max-width:1440px) {
	section .txt { width:90%; margin:0 auto;}
}



h3 { width:100%; margin-bottom:50px; text-align:center; color:#fff; font-size:15px; line-height:1.2;}
h3 span {  color:#3E4852; font-size:32px; letter-spacing:0.2em;}

.bg-gr { background:#08121A;}


/* ABOUT ------- */

#about .catch { font-size:50px; line-height:1; margin-bottom:0.2em;}
#about .catch small { font-size:39px;}
#about h4 { color:#FFC000; font-size:45px; line-height:1.2; margin-bottom:0.2em;}
#about .room { clear:both; margin-top:50px; margin-bottom:0; }
#about .room li { float:left; width:33.33333%;}
#about iframe { max-width:100%;}
#about .fb { width:400px; margin:0 auto; text-align:center;}

@media only screen and (max-width:1440px) {
	#about .fb { width:90%; margin:0 auto;}
}


@media only screen and (max-width:768px) {
	#about .catch { font-size:40px; }
	#about .catch small { font-size:29px;}
	#about h4 { font-size:35px; }
	#about .room { width:94%; margin-left:auto; margin-right:auto; }
	#about .room li { float:none; width:100%;}
}


/* GALLERY ------- */

#gallery { background:#08121A;}
article#gallery { padding-bottom: 0;}

/* SERVICE ------- */

#service h4 { color:#FFC000; font-size:47px; line-height:1;}
#service .catch { font-size:40px; }

@media only screen and (max-width:768px) {
	#service h4 { font-size:37px;}
	#service .catch { font-size:30px; }
}


/* PRICE ------- */

#price { background:#08121A;}
#price h4 { color:#FFC000; font-size:50px; line-height:1;}
#price p { margin-bottom:5px;}
#price .catch { font-size:20px; }
#price .catch strong { font-size:42px; font-weight:normal; }
#price .catch strong.fontS { margin-bottom:10px; font-size:38px; font-weight:normal; line-height:120%; }


@media only screen and (max-width:768px) {
	#price h4 { font-size:40px; }
	#price .catch strong { font-size:32px; }
}

/* ACCESS ------- */

#access { }
#access h4 { color:#FFC000; font-size:45px; line-height:1.2; margin-bottom:0.2em;}
#access .catch { font-size:23px; line-height:1.5; margin-bottom:0.75em; }
#access .catch strong { color:#FFC000; font-weight:normal; }
#access iframe { max-width:100%;}

#access br.pc { display:block;}

@media only screen and (max-width:768px) {
	#access h4 { font-size:35px; }
}

@media only screen and (max-width: 639px){
#access p span { display:block; margin-bottom:0 !important; margin-left:47px;}
#access br.pc { display:none;}
}

/* GUIDE ------- */

#guide { background:#08121A;}
#guide section.txt { width:94%; max-width:720px; margin:0 auto; text-align:left;}
#guide .btn { margin-bottom:20px;}
#guide .btn a { color:#000;}
#guide .btn a:hover  { color:#fff;}

.cp_btn { width:94%; max-width: 400px; height: 60px; font-size:17px; font-weight:500; line-height: 60px; text-align: center; text-decoration: none;
 display: inline-block; outline: none; position: relative; z-index: 2; background: #FFC000 ;  border: 2px solid #FFC000; color: #000;}
.cp_btn,
.cp_btn::before,
.cp_btn::after { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; -webkit-transition: all .2s; transition: all .2s;}

.cp_btn:hover { background: #218652 url(../parts/ico_mail_w.png) no-repeat 100px 50%; border-color: #218652; color: #fff;}
.cp_btn::before,
.cp_btn::after { position: absolute; z-index: -1; display: block; content: ''; top: 0; width: 50%; height: 100%; background: #FFC000;}
.cp_btn::before { right: 0;}
.cp_btn::after { left: 0; background: #FFC000 url(../parts/ico_mail.png) no-repeat 100px 50%;}
.cp_btn:hover::before,
.cp_btn:hover::after { width: 0; background-color: #FFC000;}


/* AGREEMENT ------- */

#agreement { background:#08121A; text-align:center;}
#agreement section.txt { width:94%; max-width:720px; margin:0 auto; text-align:left;}
#agreement section h4 { font-size:17px; text-align:left;}
#agreement section p { font-size:15px; text-align:left;}
#agreement section ul { margin-bottom:1em; }
#agreement section li { margin-left:1em; text-indent:-1em; font-size:15px;}
#agreement section li:before { content: "・";}


/* COMPANY ------- */

#company { background:#181818;}
#company dl,
#company dt,
#company dd { box-sizing: border-box;}
#company dl { width:94%; max-width:720px; border-bottom: 1px solid #3E4953; margin:0 auto; }
#company dt,
#company dd { padding: 10px 10px 0 20px; border-top: 1px solid #3E4953; text-align:left; font-size:16px;}
#company dt { width: 20%; float: left;}
#company dd { margin-left: 20%; padding-bottom: 10px; }
#company dd:after { content: ''; display: block; clear: both;}


/* FAQ ------- */

#faq { text-align:left;}
#faq .box { width:94%; max-width:720px; margin:0 auto; padding-bottom: 20px;}
    /* チェックボックスは非表示にする（内部的な Off/On の機能だけ利用する） */
    #faq input { display: none;}

    /* 開いた状態のサブメニュー */
    #faq input:checked + p { line-height: 1.5; padding: 10px 0 20px 0; }

    /* 閉じた状態のサブメニュー */
    #faq p { overflow: hidden; line-height: 0; padding: 0; transition: 0.2s;

        /* 下記は開閉によらず共通の設定 */
        list-style: none; margin: 0;  border-bottom:1px solid #FFF; }

    /* 親項目の装飾 */
    #faq label { display:block; padding:10px 20px 10px 0; padding-left: 20px; text-indent: -20px; background: url(../parts/faq_arrow_out.png) no-repeat right 10px top 10px;
    -webkit-transition: all 0.3s linear;
    -moz-transition: all 0.3s linear;
    -o-transition: all 0.3s linear;
    transition: all  0.3s linear; }
    #faq label:hover { background: url(../parts/faq_arrow_on.png) no-repeat right 10px top 50%; cursor:pointer; color:#FFC000;}{ background: url(../parts/faq_arrow_on.png) no-repeat right 10px top 50%; cursor:pointer; color:#FFC000;}


/* GALLERY ------- */
#gallery { overflow: hidden; }
#gallery ul { width: 100%; max-width:1440px; margin: 0 auto 50px auto;}
#gallery ul li { display: inline-block; width: 220px; margin: 0 10px 20px 10px; }

@media only screen and (max-width: 768px){
#gallery ul li { width: 110px; margin: 0 5px 10px 5px; }
}

/* ===================================================================
 フォーム
=================================================================== */
#admission {}
#admission #title { width:100%; min-height:70px; margin:90px 0 0 0 ;}
#admission h2 { width:100%; margin-bottom:15px; text-align:center; color:#FFC000; font-size:32px; font-weight:bold; line-height:1.2;}

#admission h3 { font-weight:bold; font-size:18px; margin-bottom:20px; color:#FFBA22; }
#admission .page-complete h3 { font-size:26px; margin-top:50px; }

#admission .formWrap { width:100%; max-width:680px; margin:0 auto 30px auto; text-align:center;}
#admission .formWrap p { margin: 0 auto 1em auto; padding: 0;}
#admission .formWrap em { font-style: normal; font-weight: bold; color: #D80000;}

#admission .formWrap  p.txtL { text-align:left !important;}
#admission .formWrap  p.txtR { text-align:right !important;}
#admission .formWrap  p.note { color:#FFC000 !important;}
#admission .formWrap  p.note { color:#FFF;}

#admission .formWrap ol { list-style-type:none; text-align:left;}
#admission .formWrap ol li { margin-bottom:5px; color:#FFC000; font-weight:bold; }
#admission .formWrap ul { margin:20px 0 30px 0; text-align:left;}
#admission .formWrap ul li { margin-bottom:5px; padding-left:1em; text-indent:-1em;}

@media only screen and (max-width: 639px){
#admission .formWrap { padding:10px;}
}

.privacy_policy{ margin: 30px auto 50px auto; width: 100%; font-size:90%; color:#333; }
.privacy_policy h3{ margin:0 auto 10px auto; font-size:18px; color:#FFF; }
.privacy_policy p { text-align:left !important; }
.acceptance { margin-top: 5px; padding: 10px; height: 200px; background-color: #F9F9F9; border: 1px solid #E5E5E5; overflow-y: scroll;}
.acceptance ol { margin: 0; padding: 0; font-weight: normal; list-style:none;}
.acceptance li { font-weight: normal;}
.acceptance h4 { margin-top: 18px; margin-bottom: 4px; font-weight:bold;}

@media only screen and (max-width: 639px){
	.privacy_policy{ width: 100%; }
}

#admission .btn { margin-bottom: 100px;}

#admission .insta_entry { width:100%; max-width:1200px; margin:50px auto;}
#admission .insta_entry h3{ color:#FFBA22;}
#admission .insta_entry ul { width:100%; padding:0 30px 0 0; text-align:center;}
#admission .insta_entry ul li { display:inline-block; min-width:180px; margin:0 20px 20px 0; padding:0; font-size:14px;vertical-align: bottom;background:url(../parts/admission_insta_arrow.png) no-repeat right bottom 97px;}
#admission .insta_entry ul li p { letter-spacing:0;}
#admission .insta_entry ul li:first-child { width:280px;}
#admission .insta_entry ul li:nth-child(2) { width:338px; padding-right:80px;}
#admission .insta_entry ul li:nth-child(3) { width:245px; padding-right:50px;}
#admission .insta_entry ul li:last-child { width:190px; padding:0; background:none;}

#admission .insta_entry ul li img { display:block; margin:15px auto 0 auto;}
#admission .insta_entry ul li:nth-child(2) img { margin-top:5px;}

@media only screen and (max-width: 1199px){
#admission .insta_entry ul { padding:0;}
#admission .insta_entry ul li { display:block; min-width: inherit; margin-right:0 !important; padding:0; background:url(../parts/admission_insta_arrowSP.png) no-repeat center bottom;}
#admission .insta_entry ul li br { display:none;}
#admission .insta_entry ul li:first-child,
#admission .insta_entry ul li:nth-child(2),
#admission .insta_entry ul li:nth-child(3) { width:100%; padding:20px 10px 60px 10px;}
#admission .insta_entry ul li:last-child { width:100%; padding:20px 10px 60px 10px; background:none;}

}




#foot { width:100%; margin:20px auto; text-aling:center; font-size:12px;}



/* ページ先頭へ------------------------------------------------ */
#pagetop { position:fixed; bottom:6px; right:6px; z-index:9999;}
#pagetop a { border:1px solid #fff; background-color:rgba(255,255,255,0.1); width:40px; height:40px; text-align:center; display:block; font-size:24px; line-height:39px; color:#fff; text-decoration:none; }
#pagetop a:hover { text-decoration:none; color:#27ae60; border:1px solid #27ae60;}

@media screen and (max-width:640px){
	#pagetop { display:none;}
	#pagetop a { display:none;}
}