@charset "UTF-8";

/*料金*/

#system {
	margin: 10px 0 20px;
}
.system_content {
	text-align: center;
	margin: 10px 0 20px 0;
	background: #2a0e09;
	box-shadow: 0 1px 20px rgba(93, 14, 2, 1);
	border: 2px solid #140000;
    padding: 20px;
}
.course_price {
	display: block;
	width: 100%;
	padding: 0 0 10px;
}

.option_table {
	width: 100%;
	border: 1px solid #620f00;
	border-right: none;
	margin: 10px 0;
	display: block;
	background: #f7f7f7;
}
.option_table tr {
	display: table;
	width: 100%;
	padding: 0;
	box-sizing: border-box;
	vertical-align: top;
	text-align: center;
	border-bottom: 1px solid #620f00;
}
.option_table th {
	display: table-cell;
	text-align: center;
	color: #FFF;
	text-align: center;
	vertical-align: middle;
	font-weight: bold;
	padding: 10px 0;
	word-break: break-all;
	line-height: 1.2;
	box-shadow: 0 2px 12px rgba(20, 0, 0, .3);
	background: #982814;
	background: -ms-linear-gradient(90deg, #881905, #982814, #881905);
	background: -moz-linear-gradient(90deg, #881905, #982814, #881905);
	background: linear-gradient(90deg, #881905, #982814, #881905);
	background-size: 100% 100%;
	border: 1px solid #620f00;
	border-bottom: 0px;
	border-top: 0px;
	width: 18%;
	min-width: 18%;
	max-width: 18%;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
}
.option_table th span.price_text_large {
    font-size: 22px;
    font-weight: bold;
    letter-spacing: 0em;
}
.option_table td {
	text-align: left;
	font-weight: bold;
	vertical-align: middle;
	display: table-cell;
	padding: 10px 15px;
	word-break: break-all;
	line-height: 1.2;
	width: 80%;
	min-width: 80%;
	max-width: 80%;
	background: #222;
	border-right: 1px solid #620f00;
}
.system_content .option_table ul li {
    display: inline-block;
    text-align: center;
    margin: 2px 0;
    max-width: 19.5%;
    vertical-align: top;
    padding: 0;
    border: none;
    position: relative;
}
.system_content .option_table td ul li img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto;
}
.system_content .option_table td ul li video {
	display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    object-position: top left;
    z-index: 1;
}
.system_content .option_table ul li span.price_text_middle {
	text-align: left;
	display: block;
	font-size: 20px;
	letter-spacing: 0em;
	font-weight: bold;
	position: absolute;
	left: 5px;
	bottom: 10px;
	color: #fff;
	text-shadow: -1px -1px 1px #333, 1px -1px 1px #333, -1px 1px 1px #333, 1px 1px 1px #333;
}
.system_content .option_table ul li span.option_table_attention{
    display: block;
    font-size: 11px;
    letter-spacing: -0.04em;
    font-weight: normal;
    padding: 2px 0 0 0;
	color: #fff;
	text-shadow: -1px -1px 1px #333, 1px -1px 1px #333, -1px 1px 1px #333, 1px 1px 1px #333;
}
@media screen and (max-width: 768px) {
	.option_table {
		width: 100%;
		font-size: 16px;
		margin: 10px 0 5px;
	}
	.option_table tr {
		width: 100%;
		display: block;
		float: none;
		clear: both;
	}
	.option_table th {
		padding: 0;
		height: 40px;
		line-height: 40px;
		width: 28%;
		min-width: 28%;
		max-width: 28%;
		height: auto;
		letter-spacing: 0em;
		line-height: 1.2;
	}
	.option_table th span.price_text_large {
	    font-size: 15px;
	}
	.option_table td {
		font-weight: bold;
		vertical-align: top;
		padding: 5px;
		width: 72%;
		min-width: 72%;
		max-width: 72%;
		height: auto;
		letter-spacing: 0em;
	}
	.system_content .option_table ul li {
	    max-width: 48%;
	}
	.system_content .option_table td ul li video {
	    width: 101%;
	}
	.system_content .option_table ul li span.price_text_middle {
		font-size: 18px;
		left: 5px;
		bottom: 3px;
	}
	.system_content .option_table ul li span.option_table_attention{
	    font-size: 10px;
	    line-height: 1.2;
	}
}

.system_content ul li {
	text-align: center;
	padding: 10px 20px;
	margin: 5px auto;
	display: inline-block;
	border: 1px solid #620f00;
	font-size: 16px;
	font-weight: bold;
	background: #f7f7f7;
}
.system_content h3 {
	font-size: 24px;
	letter-spacing: 0em;
	font-weight: bold;
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
	font-feature-settings: "palt";
	margin: 10px 0;
	text-align: left;
	background: linear-gradient(90deg, #881905, #982814, #881905);
	padding: 5px 10px;
}
.system_content h3 span {
	font-size: 26px;
	line-height: 1.4;
	display: block;
}
.system_content h3 span.option_title {
	font-size: 22px;
	line-height: 1.4;
	display: inline-block;
	padding: 0 5px;
}
.system_content ul li p {
	display: inline-block;
	margin: 5px;
	font-size: 20px;
	background: #b9ac8c;
	color: #fff;
	border-radius: 40px;
	padding: 6px 20px;
	font-weight: bold;
	margin: 10px 5px;
}

/*予約ボタン*/

#system_reserve {
	position: relative;
	top: -100px;
}
.system_reserve_attention {
	font-size: 13px;
	padding: 0 0 10px 0;
	text-align: center;
	line-height: 1.3;
}
.system_reserve_button {
	padding: 10px 0;
	text-align: center;
}
.system_reserve_line {
	display: inline-block;
	width: 48%;
	max-width: 360px;
	text-align: center;
	background: #5ACF4A;
	color: #fff !important;
	text-shadow: -1px -1px 1px #43b833, 1px -1px 1px #43b833, -1px 1px 1px #43b833, 1px 1px 1px #43b833;
	padding: 16px 0;
	margin: 0 5px;
	font-size: 24px;
	font-weight: bold;
	transition: opacity .3s;
	font-feature-settings: "palt";
	border-radius: 6px;
	box-shadow: 2px 2px 12px rgba(20, 0, 0, .5);
}
.system_reserve_line:hover {
	opacity: .75;
	color: #fff !important;
}
.system_reserve_line:active, .system_reserve_line:visited, .system_reserve_line:foucs, .system_reserve_line:click {
	color: #fff !important;
}
@media screen and (max-width: 768px) {
	.system_content ul li {
		margin: 2px auto;
		display: block;
		font-size: 16px;
		letter-spacing: 0em;
		padding: 5px 10px;
	}
	.system_content h3 {
		font-weight: bold;
		font-size: 20px;
		width: 100%;
		margin: 0 auto 10px;
	}
	.system_content h3 span {
		font-size: 20px;
		line-height: 1.4;
		display: block;
	}
	.system_content h3 span.option_title {
		font-size: 20px;
		line-height: 1.4;
		display: inline-block;
		padding: 0 5px;
	}
	.system_content ul li p {
		display: inline-block;
		margin: 5px;
		font-size: 20px;
		background: #b9ac8c;
		color: #fff;
		border-radius: 40px;
		padding: 6px 20px;
		font-weight: bold;
		font-family: "小塚明朝 Pr6N", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		margin: 5px 0;
	}
	.system_service {
		text-align: center;
		margin: 10px 0 10px;
	}
	.system_service p {
		display: block;
		margin: 5px 0;
		font-size: 18px;
		background: #b9ac8c;
		color: #fff;
		border-radius: 4px;
		padding: 12px 0;
		font-weight: bold;
		font-family: "小塚明朝 Pr6N", "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
		width: 100%;
		letter-spacing: 0em;
	}
	.system_reserve_attention {
		font-size: 12px;
		text-align: left;
		letter-spacing: 0em;
		line-height: 1.2;
	}
	.system_reserve_button {
		padding: 10px 0 10px 0;
	}
	.system_reserve_line {
		width: 100%;
		max-width: 480px;
		margin: 10px auto 0;
		font-size: 20px;
		letter-spacing: 0em;
		display: block;
		padding: 14px 0;
	}
}

.reserve_tel {
    font-size: 32px;
    color: #FFF;
    line-height: 1.4;
    font-weight: bold;
    text-align: center;
    padding-bottom: 10px;
}
.reserve_tel span {
    display: block;
    font-size: 22px;
}
.reserve_tel a {
    display: none;
}
.reserve_txt {
    color: #FFF;
    margin: 10px 0 20px;
}
.reserve_txt h4 {
    font-size: 22px;
    font-weight: bold;
}
.reserve_txt_sub {
    color: #FFF;
    margin: 20px 0 10px;
}
@media screen and (max-width: 768px) {
    .reserve_tel {
        font-size: 24px;
        line-height: 1.4;
        font-weight: bold;
        text-align: center;
        padding-bottom: 30px;
    }

    .reserve_tel a {
		display: block;
        width: 100%;
        max-width: 480px;
        text-align: center;
        background: #bd2b11;
        color: #fff !important;
        text-shadow: -1px -1px 1px #821c09, 1px -1px 1px #821c09, -1px 1px 1px #821c09, 1px 1px 1px #821c09;
		padding: 14px 0;
		margin: 10px auto 0;
		font-size: 20px;
        font-weight: bold;
        transition: opacity .3s;
        font-feature-settings: "palt";
        border-radius: 6px;
        box-shadow: 2px 2px 12px rgba(20, 0, 0, .5);
    }
    .reserve_tel a img {
        display: block;
        width: 100%;
        height: auto;
    }

    .reserve_txt {
        color: #FFF;
        margin: 10px 0 20px;
        text-align: left;
    }
    .reserve_txt h4 {
        font-size: 18px;
        font-weight: bold;
    }
    .reserve_txt_sub {
        color: #FFF;
        margin: 20px 0 10px;
        text-align: left;
    }
}


.system_attention_inner {
	color: #fff;
	text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
}
.system_attention_inner ul {
	margin: 0;
	padding: 0;
}
.system_attention_inner ul li {
	font-size: 18px;
    font-weight: normal;
	display: block;
	border: none;
	padding: 0;
	margin: 0;
	background: none;
}
.system_attention_inner p {
	font-size: 18px;
	margin: 5px 0 0 0;
}
.system_attention_inner h4 {
    font-size: 22px;
    font-weight: bold;
    margin: 10px 0;
}
@media screen and (max-width: 768px) {
	.system_attention_inner {
		padding: 0;
	}
    .system_attention_inner ul li {
        font-size: 16px;
        font-weight: normal;
        display: block;
        border: none;
        padding: 0;
        margin: 0;
        background: none;
        text-align: left;
    }
    .system_attention_inner p {
        font-size: 16px;
        margin: 5px 0 0 0;
        text-align: left;
    }
    .system_attention_inner h4 {
        font-size: 18px;
        font-weight: bold;
        margin: 10px 0;
        text-align: left;
    }
}

.acd-content ul {
	text-align: center;
}
.acd-content li {
	color: #fff;
}
.acd-content .option_table ul {
    text-align: left;
}

.foreigners_table {
	width: 100%;
	font-size: 20px;
	margin: 10px auto;
	color: #fff;
	text-align: center;
}
.foreigners_table tr {
	display: block;
	width: 100%;
	padding: 5px 0;
}
.foreigners_table th {
	text-align: center;
	font-weight: bold;
	display: block;
	font-size: 22px;
	line-height: 1.4;
	padding: 5px 0;
}
.foreigners_table td {
	text-align: center;
	font-weight: bold;
	display: block;
	font-size: 32px;
}
@media screen and (max-width: 768px) {
	.foreigners_table tr {
		padding: 5px 0;
	}
	.foreigners_table th {
		font-size: 16px;
		padding: 0;
        text-align: left;
	}
	.foreigners_table td {
		font-size: 24px;
        text-align: left;
	}
}

.group_discount {
    font-size: 18px;
    color: #FFF;
    font-weight: bold;
    text-align: center;
    margin: 20px 0;
}
.group_discount h4 {
    font-size: 22px;
    color: #FFF;
    font-weight: bold;
    margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
    .group_discount {
        font-size: 18px;
        color: #FFF;
        font-weight: bold;
        text-align: left;
        margin: 20px 0;
    }
    .group_discount h4 {
        font-size: 22px;
        color: #FFF;
        font-weight: bold;
        margin-bottom: 10px;
        text-align: left;
    }
}

.page_header_title h1 {
    text-align: center;
    font-size: 48px;
    font-weight: bold;
    letter-spacing: -0.02em;
    margin: 0 0 10px 0;
    font-feature-settings: "palt";
    text-shadow: -1px -1px 1px #111, 1px -1px 1px #111, -1px 1px 1px #111, 1px 1px 1px #111;
    padding: 120px 0 0;
    color: #fff;
}
.page_header_title h1 span {
    font-size: 22px;
    display: block;
}
@media screen and (max-width: 960px) {
    .page_header_title h1 {
        font-size: 32px;
        padding: 170px 0 0;
    }
    .page_header_title h1 span {
        font-size: 16px;
    }
}

#en .nav_top_outer {
    position: absolute;
    bottom: 40px;
    width: 100%;
    font-weight: bold;
    -webkit-transition: all .3s;
    transition: all .3s;
    box-shadow: 0 3px 24px rgba(20, 0, 0, 1);
    background: #982814;
    background: -ms-linear-gradient(90deg, #230200, #982814, #230200);
    background: -moz-linear-gradient(90deg, #230200, #982814, #230200);
    background: linear-gradient(90deg, #230200, #982814, #230200);
    background-size: 100% 100%;
    border: 1px solid #140000;
    z-index: 100;
}
#en .nav_bottom_outer {
    position: absolute;
    bottom: 0;
    width: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
    box-shadow: 0 6px 24px rgba(20, 0, 0, 1);
    background: #701505;
    background: -ms-linear-gradient(90deg, #230200, #701505, #230200);
    background: -moz-linear-gradient(90deg, #230200, #701505, #230200);
    background: linear-gradient(90deg, #230200, #701505, #230200);
    background-size: 100% 100%;
    z-index: 100;
}
#en ul.nav {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: table;
    padding: 0 40px;
}
#en ul.nav li {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background: none;
    text-decoration: none;
    cursor: pointer;
}
#en ul.nav li a {
    display: inline-block;
    color: #fff;
    font-size: 22px;
    padding: 18px 0;
    background: none;
    letter-spacing: 0em;
    line-height: 1.2;
    text-shadow: 0 1px 3px rgba(0, 0, 0, .6);
    font-feature-settings: "palt";
}
#en ul.nav li a:hover {
    background: none;
}
#en ul.nav li a:active, #en ul.nav li a:visited, #en ul.nav li a:link {
    opacity: 1;
    background: none;
    color: #fff;
}
#en ul.nav li a span {
    display: block;
    font-size: 12px;
    color: #fff;
}
#en ul.nav_bottom {
    width: 100%;
    /*max-width: 640px;*/
    max-width: 720px;
    margin: 0 auto;
    display: table;
    padding: 0 40px;
    height: 40px;
}
#en ul.nav_bottom li {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    background: none;
    text-decoration: none;
    cursor: pointer;
}
#en ul.nav_bottom li a {
    display: inline-block;
    color: #fff;
    font-size: 15px;
    padding: 10px 0;
    background: none;
    font-weight: bold;
    letter-spacing: 0em;
    line-height: 1.2;
}
#en ul.nav_bottom li a:hover {
    background: none;
}
#en ul.nav_bottom li a:active, #en ul.nav_bottom li a:visited, #en ul.nav_bottom li a:link {
    opacity: 1;
    background: none;
    color: #fff;
}
@media screen and (max-width: 1140px) {
    #en ul.nav li a {
        font-size: 18px;
    }
    #en ul.nav li a span {
        font-size: 10px;
    }
    #en ul.nav_bottom li a {
        font-size: 15px;
    }
} 
@media screen and (max-width: 960px) {
    #en .nav_outer {
        display: none;
    }
}

#en.clone-nav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000;
    width: 100%;
    transition: .3s;
    transform: translateY(-100%);
}
#en.is-show {
    transform: translateY(0);
}
#en.clone-nav.nav_outer {
    height: 60px;
    z-index: 1000;
}
#en.clone-nav .nav_top_outer {
    position: absolute;
    bottom: 0;
    width: 100%;
    -webkit-transition: all .3s;
    transition: all .3s;
    will-change: transform;
    height: 60px;
}
#en.clone-nav ul.nav {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    display: table;
    padding: 0 20px;
    transition: all .3s;
}
#en.clone-nav ul.nav li a {
    display: inline-block;
    color: #fff;
    font-size: 20px;
    padding: 14px 0;
    transition: all .3s;
    will-change: transform;
    font-weight: bold;
    letter-spacing: 0em;
}
#en.clone-nav ul.nav li a span {
    display: block;
    font-size: 12px;
    transition: all .3s;
    will-change: transform;
}
#en.clone-nav .nav_bottom_outer {
    opacity: 0;
    display: none;
}
#en.clone-nav {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    transition: .3s;
    transform: translateY(-100%);
}
#en.is-show {
    transform: translateY(0);
}
@media screen and (max-width: 960px) {
    #en.clone-nav {
        display: none;
    }
}

#page_top {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 10;
    display: none;
}
#page_top a {
    display: block;
    width: 50px;
    height: 50px;
    box-shadow: 0 2px 12px rgba(20, 0, 0, .6);
    background: #982814;
    background: -ms-linear-gradient(90deg, #881905, #982814, #881905);
    background: -moz-linear-gradient(90deg, #881905, #982814, #881905);
    background: linear-gradient(90deg, #881905, #982814, #881905);
    background-size: auto;
    background-size: 100% 100%;
    border: 1px solid #620f00;
}
#page_top a:hover {
    box-shadow: 0 2px 12px rgba(20, 0, 0, .6);
    background: #982814;
    background: -ms-linear-gradient(90deg, #881905, #982814, #881905);
    background: -moz-linear-gradient(90deg, #881905, #982814, #881905);
    background: linear-gradient(90deg, #881905, #982814, #881905);
    background-size: auto;
    background-size: 100% 100%;
    border: 1px solid #620f00;
}
#page_top .arrow {
    position: relative;
}
#page_top .arrow:before {
    content: "";
    display: block;
    position: absolute;
    top: 20px;
    left: 18px;
    width: 16px;
    height: 16px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(-45deg);
}
@media screen and (max-width: 768px) {
    .footer_description_inner {
        font-size: 10px;
    }
    .footer_description_inner h2, .footer_description_inner h3, .footer_description_inner h4, .footer_description_inner h5, .footer_description_inner h6, .footer_description_inner p {
        font-size: 10px;
    }
    .footer_bottom_title {
        font-size: 12px;
    }
    .footer_bottom_title span {
        display: block;
        font-size: 16px;
    }
    .footer_bottom_info {
        font-size: 12px;
    }
    .copyright {
        font-size: 8px;
        /*padding: 10px 0 60px;*/
        padding: 10px 0 70px;
    }
    #page_top {
        bottom: 55px;
        right: 0;
    }
}
