@charset "UTF-8";
/*###############################################
リセット
###############################################*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: bottom;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
input[type="submit"] {
	cursor:pointer;
}
/*###############################################
common
###############################################*/
a {color: #000;text-decoration:underline;}
a:hover{color:#463b8d;}
.clear {clear:both;}
.fl{float:left;}
.fr{float:right;}
img.fl{margin-right:15px;margin-bottom:15px;}
img.fr{margin-left:15px;margin-bottom:15px;}
.mgt5 {margin-top:5px;}
.mgt10{margin-top:10px;}
.mgt15{margin-top:15px;}
.mgt20{margin-top:20px;}
.mgt30{margin-top:30px;}
.mgt40{margin-top:40px;}
.mgt50{margin-top:50px;}
.mgt60{margin-top:60px;}
.mgb10{margin-bottom:10px;}
.mgb20{margin-bottom:20px;}
.mgb30{margin-bottom:30px;}
p,li,td,th,h1,h2,h3,h4,h5,h6 {line-height:1.4;}
p strong {font-weight:bold;}
label{cursor:pointer;}
td,th {text-align:left;vertical-align:top;}
.tx_r{text-align:right;}
.tx_center{text-align:center;}
/*###############################################
structure
###############################################*/
body {
	color:#4d4d4d;
	font-size:12px;
	line-height:1.0;
	text-align:left;
	font-family:"Meiryo","Hiragino Kaku Gothic Pro","MS PGothic",verdana,Osaka,Sans-Serif;   
}
#container {
	width:100%;
	background-image:url(../img/bg_red.png);
	background-repeat:no-repeat;
	background-position:center 600px;
	background-size: contain;
}
#pagehead {
	width:100%;
	height:76px;
	margin:0 auto;
	text-align:left;
	background-color:#FFF;
	position:fixed;
	top:0;
	z-index:200;
}
#main {
	width:100%;
}
#main_inr {
	padding-top:76px;
}
#mainmenu {
	width:42%;
	position:absolute;
	left:160px;
	top:10px;
}
/*###############################################
header
###############################################*/
#logo {
	width:87px;
	margin:0;
	position:absolute;
	left:40px;
	top:15px;
	cursor:pointer;
}
#logo img {
	width:100%;
	height:auto;
	max-width:87px;
}
#pagehead h1 {
	font-size:11px;
	position:absolute;
	top:28px;
	left:55%;
}
#pagehead .tel {
	position:absolute;
	top:22px;
	right:80px;
	font-size:18px;
	font-weight:bold;
}
#pagehead .icons {
	width:30px;
	height:30px;
	overflow:hidden;
	position:absolute;
	top:18px;
	right:40px;
}
#pagehead .ic_mail,
#pagehead .ic_phone,
#pagehead .ic_menu {
	display:none;
}

#pagehead .icons img {
	width:100%;
	height:auto;
}
/*###############################################
mainmenu
###############################################*/
/*mainmenu*/
#mainmenu ul {
	width:100%;
	display:flex;
	overflow:hidden;
}
#mainmenu li {
/*	display:inline-block;*/
}
#mainmenu li a {
	display:block;
	padding:20px 16%;
}
#mainmenu li a:hover {
	border-bottom:1px solid #1a1a1a;
	background-color:#FCFCFC;
}
#mainmenu li img {
	width:100%;
	height:auto;
	vertical-align:top;
}
/*###############################################
footer
###############################################*/
#pagefoot {
	width:100%;
	background-color:#1a1a1a;
}
#pagefoot .inr {
	padding:40px 0;
	width:100%;
	max-width:980px;
	margin:0 auto;
}
#copy {
	font-size:10px;
	padding:10px 0 10px;
	text-align:center;
	color:#FFF;
}
#pagetop {
	display: none;
	position: fixed;
	bottom: 60px;
	right: 40px;
	z-index: 100;
}
#pagetop a {
	display: block;
	width:48px;
	height:48px;
	box-shadow:0 0 8px #CCC;
	background-color:#FFF;
	border:2px solid #1a1a1a;
	text-indent:-100px;
	text-align:left;
	font-size:10px;
	overflow:hidden;
	opacity:0.8;
	position:relative;
}
#pagetop a::after {
	display:inline-block;
	content:'';
	width:10px;
	height:10px;
	border-top:3px solid #1a1a1a;
	border-left:3px solid #1a1a1a;
	position:absolute;
	left:50%;
	top:50%;
	margin-top:-4px;
	margin-left:-6px;
	transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
}
#pagetop a:hover {
	opacity:1.0;
}

/*###############################################
design
###############################################*/
.st1 {
	font-size:24px;
	font-weight:bold;
	letter-spacing:3.2px;
	padding:40px 40px 20px;
}
#screen {
    height: 0;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 45.15%;
    background: url('../img/main.jpg') 0 0 no-repeat;
    background-size: contain;
}
#leading {
	width:100%;
	max-width:720px;
	margin:0 auto;
	padding:30px 0;
	text-align:center;
}
#leading p {
	font-size:14px;
}
#leading p span {
	display:block;
	margin-bottom:1.2em;
}

/*---------sec_about---------*/
#sec_about .upper{
    height: 0;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 38.21%;
    background: url('../img/bg_about.jpg') 0 0 no-repeat;
    background-size: contain;
    position:relative;
}
#sec_about .upper p {
	width:100%;
	text-align:center;
	font-size:24px;
	font-weight:bold;
	color:#FFF;
	position:absolute;
	top:38.21%;
	text-shadow:0 0 6px #333;
}
#sec_about .upper p span {
	display:block;
}
#sec_about .lower ul{
	display:flex;
	padding:15px;
}
#sec_about .lower li {
	flex-grow: 1;
	display:block;
	width:25%;
	position:relative;
	margin-right:1.3%;
}
#sec_about .lower li:last-child {
	margin-right:0;
}
#sec_about .lower li img {
	width:100%;
	height:auto;
	vertical-align:bottom;
}

#sec_about .lower li span {
	display:block;
	
	position:absolute;
	left:10px;
	bottom:10px;
	font-size:11px;
	color:#FFF;
}
/*---------sec_about---------*/
#sec_trainer .inr {
    height: 0;
    /* 表示画像の高さ ÷ 表示画像の幅 × 100 */
    padding-top: 48.33%;
    background: url('../img/bg_trainer.jpg') 0 0 no-repeat;
    background-size: contain;
    position:relative;
}
/*---------sec_trainer---------*/
#sec_trainer .box_c {
	width:40%;
	position:absolute;
	left:50%;;
	top:10%;
	text-align:left;
}
#sec_trainer .box_c h3,
#sec_trainer .box_c h4,
#sec_trainer .box_c li,
#sec_trainer .box_c p{
	color:#FFF;
	text-shadow: 0 0 6px #333;
}
#sec_trainer .box_c h3 {
	font-size:14px;
	margin-bottom:5px;
}
#sec_trainer .box_c h4 {
	font-size:24px;
	font-weight:bold;
	margin-bottom:5px;
}
#sec_trainer .box_c p {
	margin-top:20px;
}
#sec_trainer .pictures {
	display:flex;
	width:66.1%;
	position:absolute;
	bottom:8%;
	left:3%;
}
#sec_trainer .pictures li{
	width:25%;
	margin-right:1.3%;
}
#sec_trainer .pictures li img{
	width:100%;
	height:auto;
}
/*---------sec_fighter---------*/
#base_fighters {
	display:flex;
	justify-content: space-between;
	padding:0 10%;
	max-width:1100px;
	margin:0 auto;
}
#base_fighters .box{
	width:48%;
	position:relative;
	border:1px solid #d1d1d1;
	box-sizing:border-box;
	background-color:#FFF;
}
#base_fighters .box figure img {
	width:100%;
	height:auto;
}
#base_fighters .box_c {
	height:100px;
	overflow:hidden;
	text-align:left;
	box-sizing:border-box;
	padding:15px 18px;
	position:relative;
}
#base_fighters .box h3 {
	color:#252525;
	font-size:16px;
	font-weight:bold;
}
#base_fighters .box h4 {
	color:#828282;
	font-size:12px;
	margin-bottom:15px;
}
#base_fighters .icons {
	position:absolute;
	right:10px;
	top:10px;
}
#base_fighters .icons li {
	display:inline-block;
	margin-left:5px;
	width:30px;
	height:30px;
}
#base_fighters .icons li img {
	width:100%;
	height:auto;
}
/*---------sec_news---------*/
#sec_news {
	width:100%;
	max-width:600px;
	text-align:center;
	position:absolute;
	left:50%;
	bottom:350px;
	margin-left:-300px;
}
#sec_news .btn a {
	display:inline-block;
	background-color:#FFF;
	border-radius:4px;
	padding:12px 24px;
	margin-top:20px;
	margin-bottom:20px;
	color:#00a4f1;
	font-size:14px;
	text-decoration:none;
}
#sec_news .btn a:hover {
	background-color:#cdefff;
}
#sec_news .url a {
	color:#FFF;
	text-decoration:none;
}
#sec_news .url a:hover {
	text-decoration:underline;
}

#sec_news h2{
	font-size:30px;
	font-weight:bold;
	color:#FFF;
}
#sec_news h2.sec{
	font-size:24px;
	margin-bottom: 20px;
}
/*---------bg_blue---------*/
#bg_blue {
	background-image:url(../img/bg_blue.png);
	background-repeat:no-repeat;
	background-position:center 0;
	min-height:1400px;
	position:relative;
	margin-bottom:300px;
}
/*---------base_facebook---------*/
#base_facebook {
	width:100%;
	box-sizing:border-box;
	padding:0 40px;
	height:600px;
	position:absolute;
	bottom:-240px;
}
#base_facebook .inr {
	max-width:500px;
	width:100%;
	margin:40px auto 0;
	height:600px;
}
/*---------sec_lesson---------*/
#sec_lesson {
	padding:0 40px;
}
#sec_lesson .st1 {
	text-align:center;
}
#sec_lesson .inr{
	width:100%;
	max-width:1100px;
	margin:0 auto;
	padding-bottom:40px;
}
.tb_ls {
	width:100%;

}
.tb_ls thead th {
	padding:10px 0;
}
.tb_ls th,
.tb_ls td {
	text-align:center;
	color:#FFF;
	border:1px solid #FFF;
	vertical-align:middle;
	font-size:16px;
	font-weight:bold;
	letter-spacing:1.4px;
}
.tb_ls tbody th,
.tb_ls tbody td {
	padding:5px 0;
}
.tb_ls tbody th{
	padding:5px 0 30px;
}
.tb_ls th {
	background-color:#519bd8;
}
.tb_ls th.day {
	width:13%;
}
.tb_ls td {
	background-color:#6ab3f0;
}
.tb_ls tbody td.gl {
	background-color:#8DBDC7;
}
.tb_ls tbody td.kl {
	background-color:#E4D13D;
}


/*---------sec_information---------*/
#sec_information {
	padding:40px 40px;
	background-color:#f8f8f8;
}
#sec_information .st1 {
	padding-left:0;
}
#sec_information > .inr {
	width:100%;
	margin:0 auto;
	padding:40px 0;
}
#sec_information h3 {
	font-weight:bold;
	font-size:18px;
}
#inf_p {
	width:100%;
	max-width:1100px;
	margin:0 auto;
}
.tb_price {
	width:100%;

}
.tb_price th,
.tb_price td {
	text-align:center;
	color:#FFF;
	border:1px solid #FFF;
	padding:24px 0;
	font-size:16px;
	font-weight:bold;
	letter-spacing:1.4px;
}
.tb_price th {
	background-color:#519bd8;
}
.tb_price td {
	background-color:#6ab3f0;
}
.tb_price th.co {
	width:27%;
}

#sec_information .lower {
	width:100%;
	max-width:1100px;
	margin:70px auto 0;
}
#sec_information .lower h3 {
	text-align:center;
}
#inf_n {
	width:44%;
	padding-top:32px;

	float:left;
}
#inf_n h3 {
	margin-bottom:36px;
}
#inf_n li {
	font-size:18px;
	border-bottom:1px solid #eee;
	padding-bottom:10px;
	margin-bottom:10px;
}
#inf_n h4 {
	font-size:13px;
	position: relative;
	padding-left: 18px;
	margin-bottom: 10px;
	font-weight: bold;
}

#inf_n h4::before {
	content: "";
    height:0;
    width:0;
    display: inline-block;
    border: 8px solid transparent;
    border-top-color: #D9671B;
    position: absolute;
    top:50%;
    left:0;
    margin-top:-4px;
}
#inf_n .msg {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
#inf_n .msg .notice {
	font-size:11px;
	font-weight: lighter;
}
.ic_num {
	width:30px;
	height:30px;
	background-color:#519bd8;
	border-radius:50%;
	color:#fff;
	text-align:center;
	display:inline-block;
	padding:7px 0 0;
	box-sizing:border-box;
	line-height:18px;
	font-size:18px;
	margin-right:10px;
}
#inf_k {
	width:55%;
	float:right;
	height:400px;
	background-color:#fff;
}
#inf_k .inr {
	padding:32px 36px;
}
#inf_k .content {
	font-size:20px;
	height:300px;
	margin-top:20px;
	overflow-x: hidden;
	overflow-y: scroll;
}
#inf_k .content h4 {
	font-weight:bold;
	font-size:14px;
	margin-top:30px;
	margin-bottom:8px;
}
#inf_k .content p {
	font-size:12px;
	line-height:1.8;
}

/*---------sec_access---------*/

#sec_access .inr{
	display:flex;
	padding:0 30px;
}
#sec_access #map {
	width:55%;
	background-color:#f8f8f8;
	padding:30px;
	box-sizing:border-box;
	margin-right:30px;
}
#sec_access #map_canvas_low {
	text-align:center;
}
#sec_access #map_canvas_low a {
	display:inline-block;
	padding:12px 24px;
	background-color:#519bd8;
	color:#FFF;
	margin-top:10px;
	border-radius:4px;
	text-decoration:none;
}
#sec_access #access_detail {
	width:43%;

}
.tb_access {
	width:100%;
	border-top:1px solid #e5e5e5;
	box-sizing:border-box;
}
.tb_access th,
.tb_access td {
	font-size:16px;
	padding:18px 0;
	border-bottom:1px solid #e5e5e5;
}
.tb_access th {
	font-weight:bold;
	padding-right:60px;
}
/*--------contact--------*/
#sec_contact {
    padding: 40px 0;
    margin:40px 0;
    background-color: #f8f8f8;
}
#sec_contact .inr {
    padding: 0 40px;
}
.box_anti {
	display:none;
}
form input[type="text"] {
	font-size:14px;
	color:#423C3C;
	text-indent:2px;
	letter-spacing:1px;
	
	height:25px;
}
form input[type="text"],
form textarea {
	background-color:#FCFCFC;
	border:1px solid #d1d1d1;
	border-radius:2px;
}
form select {
	height:30px;
	background-color:#FCFCFC;
	border:1px solid #d1d1d1;
}
#btn_submit {
    margin: 20px auto 40px;
    width: 300px;
	text-align:center;
}
#btn_submit input {
    cursor: pointer;
    font-size: 16px;
    height: 40px;

}
#btn_submit .btn_back {
	margin-left:10px;
	margin-right:10px;
}
.tb_normal {
	border:4px solid #d1d1d1;
	border-collapse:collapse;
}
.tb_normal th,
.tb_normal td {
	border:1px solid #d1d1d1;
	border-collapse:collapse;
}

.tb_normal th,
.tb_normal td {
	padding:18px 10px 15px 15px;
}
.tb_normal th {
	background-color:#EDEDED;
	font-weight:bold;
	font-size:14px;
	color:#333;
	vertical-align:top;
}
.tb_normal td {
	font-size:14px;
	vertical-align:top;
	background-color:#fff;
}
.intable,
.intable th,
.intable td {
	padding:3px;
	margin:0;
	border:0 none;
}
.tb_mail {
	width:100%;
}
.tb_mail,
.tb_mail th,
.tb_mail td {
	border:1px solid #CCC;
	border-collapse:collapse;
}

.tb_mail th,
.tb_mail td {
	padding:10px;
	background-color:#fff;
}
.tb_mail th {
	width:160px;
	background-color:#EDEDED;
	font-weight:bold;
	font-size:14px;
	color:#333;
	vertical-align:top;
}

.tb_mail td {
	font-size:14px;
	vertical-align:top;
}
#mail_form .msg {
	margin-bottom:10px;
}
#mail_base {
	margin-top:40px;
}
#mail_base .err_msg {
	text-align:center;
}
#mail_form .thanks_msg {
	font-size:14px;
	text-align:center;
}
#mail_form .back_top {
	text-align:center;
}

#mail_form .back_top a {
	display:inline-block;
	padding:12px 24px;
	background-color:#d17cb1;
	color:#FFF;
	margin-top:40px;
	border-radius:4px;
	text-decoration:none;
}



