@charset "UTF-8";
/** Common CSS Code**/

sup {
	font-size: 60%;
}

.attentionBox {
	border: #999999 solid;
	border-width: 1px;
	padding: 10px 10px;
	margin: 20px auto;
	text-align: center;
}

.spprice {
	font-size: 120%;
	color: #cc0000;
	font-weight: bold;
}

.readBox {
	margin: 20px auto 0 auto;
}

.zoom a {
	display: inline-block;
}

.zoom a .full {
	position: absolute;
	background-color: #000000;
	color: #ffffff;
	border-radius: 20px;
	right: 10px;
	bottom: 20px;
	padding: 10px 20px;
	display: inline-block;
	line-height: 1em;
	transition: 0.2s;
}

.zoom a:hover .full,
.lifeBox .zoom a:hover .full {
	background-color: #cc0000;
	text-decoration: none;
	transition: 0.2s;
}

.zoom a .full img {
	height: 1em!important;
	width: auto!important;
	margin: 0 0 0 10px!important;
	top: -2px!important;
	display: inline-block!important;
}

.width100 {
	width: 100%;
}

.dl_icon {
	height: 1.5em;
	margin: 0 10px;
	top: -3px;
}

.dl_icon02 {
	height: 1.5em;
	margin: 0 0 0 10px;
}

.image100 {
	width: 100%;
}

.image100.appi {
	border: #999999 solid;
	border-width: 1px;
	margin: 20px auto 0 auto;
}

.font90 {
	font-size: 90%;
}

h2.sub3 .font90 {
	font-size: 90%;
	line-height: 1.5em;
	margin: 10px auto;
	display: inline-block;
}

.pdf_icon {
	width: 30px!important;
	height: auto!important;
	margin: 0 0 0 10px!important;
}

ul.notes {
	list-style: none;
	padding: 0;
	font-size: 90%;
	margin: 10px 0 30px 1.5em;
	line-height: 1.5em;
}

ul.notes.mid {
	margin: 10px 0 10px 1.5em;
}

ul.notes.end {
	margin: 10px 0 0 1.5em;
}

#guidelines ul.notes {
	font-size: 100%;
}

ul.notes0 {
	margin: 0 0 30px 1.5em;
}

ul.notes li {
	padding: 0;
	margin: 0;
}

ul.notes li span {
	position: absolute;
	left: -1.5em;
}

ul.notes li span.red {
	position: relative;
	left: auto;
}

.point {
	margin: 20px 0 0 0;
    padding: 20px 50px;
    border: #999999 dashed;
    background-color: #f9f9f9;
    border-width: 2px;
    border-radius: 10px;
	text-align: center;
}

.point h3 {
	text-align: center;
	font-size: 100%;
	font-weight: normal;
}

.point.hallfBox .inhalf {
	text-align: left;
	margin: 0;
	padding: 20px 0;
}

.point.hallfBox .inhalf .icon {
	float: right;
	width: 100px;
	height: auto;
	margin: 0 0 0 20px;
}

.point.hallfBox .inhalf .appi {
	width: 200px;
	height: auto;
	margin: 10px 0;
	border: #000000 solid;
	border-width: 1px;
}

a.sub_link {
	font-size: 80%;
}

.point.hallfBox .inhalf .license_point {
	margin: 0 0 30px 0;
}

.point.hallfBox .inhalf .license_point.end {
	margin: 0;
}

.point02 {
	font-size: 90%;
	line-height: 1.5em;
}

.point03 {
	text-align: left;
	margin: 50px 0 0 0;
}

ul.notes.notes100 {
	margin: 0 0 0 1.5em;
	font-size: 100%;
}

ul.notes.notes90 {
	font-size: 90%;
	margin: 0 0 0 1.5em;
}

ul.notes.notes90 .cancel {
	display: none;
}

.half_day_note ul.notes.notes90 .tandem {
	display: none;
}

.guidelines_contents ul.notes.notes90 .cancel {
	display: block;
}

.point02 ul.notes {
	font-size: 90%;
}

.point .txt {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	width: calc(100% - 340px);
}

.point02 .txt {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
	width: calc(100% - 220px);
}

.point .icon {
	width: 100px;
	height: auto;
	vertical-align: middle;
	margin: 0 0 0 20px;
}

.point .images {
	width: 200px;
	vertical-align: middle;
	margin: 0 20px 0 0;
	border-radius: 200px;
}

.point .title {
	background-color: #cc0000;;
	color: #ffffff;
	text-align: center;
	border-radius: 10px;
	padding: 10px 0;
	margin: 0 0 10px 0;
	line-height: 1.3em;
	font-size: 120%;
}

.blueBack {
	background-color: #cc0000;
	color: #ffffff;
	padding: 20px 0;
}

a.contactBtn {
	background-color: #ffffff;
	color: #000000;
	border: #999999 solid;
	border-width: 1px;
	border-radius: 5px;
	display: inline-block;
	padding: 10px 20px 10px 20px!important;
	margin: 0 0 0 5px;
	line-height: 1em;
	transition: 0.2s;
}

.Inclusive a.contactBtn {;
	margin: 10px 0 0 0;
	white-space: nowrap;
}

a.contactBtn.incontents {
	padding: 20px 40px!important;
	margin: 10px 5px;
}

a:hover.contactBtn {
	background-color: #cc0000;
	transition: 0.2s;
	border: #cc0000 solid;
	border-width: 1px;
	color: #ffffff;
	text-decoration: none;
}

a.contactBtn.red {
	background-color: #fe0000;
	color: #ffffff;
	border-width: 0;
}

a:hover.contactBtn.red {
	background-color: #d20505;
}

a.contactBtn.blue {
	background-color: #00aeff;
	color: #ffffff;
	border-width: 0;
}


a:hover.contactBtn.blue {
	background-color: #008cff;
}

a.contactBtn img {
	width: 5px!important;
	height: auto;
	display: inline-block;
	margin: 0 0 0 10px;
	bottom: 2px;
}

#info .greeting .photo {
	width: 30%;
	display: inline-block;
	vertical-align: top;
}

#info .greeting .photo img {
	width: 100%;
}

#info .greeting .txtBox {
	width: calc(70% - 30px);
	margin: 0 0 0 30px;
	display: inline-block;
}

.yusei_magic {
  font-family: "Yusei Magic", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.indexCourses h1 {
	font-size: 200%;
	text-align: center;
	background-color: #cc0000;
	color: #ffffff;
	border-radius: 50px;
}

.indexCoursesBox {
	display: flex;
	flex-wrap: wrap;
	margin: 30px auto;
}

.indexCoursesBox a {
	width: calc(50% - 15px);
	display: inline-block;
	color: #000000;
}

.indexCoursesBox a:hover {
	text-decoration: none;
}

.indexCoursesBox a h2 {
	border: #999999 solid;
	border-width: 1px;
	text-align: center;
	padding: 10px 0;
	margin: 0;
	transition: 0.5s;
}

.indexCoursesBox a:hover h2 {
	background-color: #cc0000;
	transition: 0.5s;
}

.indexCoursesBox a:hover span {
	text-decoration: underline;
}

.indexCoursesBox a:nth-child(odd) {
  margin-right: 15px; /* 奇数番目 */
}

.indexCoursesBox a:nth-child(even) {
  margin-left: 15px;  /* 偶数番目 */
}

.indexCoursesBox a img {
	width: 100%;
	border-radius: 300px;
	transition: 0.5s;
	margin: 10px 0 20px 0;
}

.indexCoursesBox a:hover img {
	width: 100%;
	border-radius: 0;
	transition: 0.5s;
}

.indexCoursesBox a img.click {
	width: 200px;
	position: absolute;
	right: 20px;;
	bottom: 20px;
	border-radius: 0;
	transition: 0.1s;
}

.indexCoursesBox a:hover img.click {
	transform: rotate(-10deg);
	transition: 0.1s;
}

.indexCourses .note {
	margin: 50px 0 0 0;
	padding: 50px;
	border: #999999 dashed;
	background-color: #f9f9f9;
	border-width: 2px;
	border-radius: 10px;
}

.banner_mid {
	display: flex;
	flex-wrap: wrap;
}

.banner_mid a {
	width: calc(100% / 3 - 10px);
	border: #000000 solid;
	border-width: 2px;
	margin-bottom: 5px;
	z-index: 20;
	margin: 0 5px;
}

.banner_mid a:hover {
	transform: rotate(5deg);
}


.banner_mid a img {
	width: 100%;
}

.contactBox {
	padding: 40px;
	margin: 50px auto 0 auto;
	white-space: nowrap;
	border-radius: 20px;
	border: #cc0000 solid;
	border-width: 2px;
}

.contactBox a {
	color: #000000;
}


.contactBox .onlineBtn {
	display: inline-block;
	text-align: center;
	vertical-align: middle;
	font-size: 20px;
	width: 400px;
	right: 20px;
}

.contactBox .onlineBtn .font90 {
	margin: 0 0 0 1em;
}

.contactBox .messageBox {
	font-size: 25px;
	position: relative;
	display: inline-block;
	width: calc(100% - 400px);
	vertical-align: middle;
	margin: 0 0 0 20px;
	line-height: 1.8em;
}

.contactBox .messageBox a.link {
    font-family: "Oswald", sans-serif;
	font-size: 40px;
}

.contactBox .messageBox a:hover.link {
	text-decoration: underline;
}

.contactBox .messageBox span {
	display: inline-block;
	font-size: 30px;
	bottom: 2px;
	margin: 0 5px 0 0;
    font-family: "Oswald", sans-serif;
}

.contactBox .messageBox span.mail {
	margin: 0 5px 0 15px;
}

.contactBox .onlineBtn a.contactBtn {
	font-size: 25px;
	position: relative;
	width: 100%;
	padding: 20px 20px!important;
	margin: 0;
	border: #ff0000 solid;
	border-width: 1px;
}

.contactBox .onlineBtn a:hover.contactBtn {
	background-color: #ffffff;
	color: #ff0000;
	opacity: 1;
}

a.inlinkBtn {
	font-size: 25px;
	width: auto;
	margin: 20px auto 0 auto;
	padding: 10px 40px!important;
	border: #ff0000 solid;
	border-width: 1px;
	background-color: #ff0000;
	color: #ffffff;
	position: relative;
	display: inline-block;
	border-radius: 5px;
	text-decoration: none;
}

a:hover.inlinkBtn {
	background-color: #ffffff;
	color: #ff0000;
	position: relative;
}

a.inlinkBtn.winter {
	margin: 20px 10px;
}

.contents_header {
	width: 100%;
	margin: 0 auto 20px auto;
	border-radius: 20px;
}

.visitor_photo {
	width: 100%;
	margin: 0 auto;
	border-radius: 20px;
}

.contents_top {
	width: 100%;
	margin: 0 auto 50px auto;
	border-radius: 20px;
}

.contents_middle {
	width: 100%;
	margin: 50px auto;
	border-radius: 20px;
}

.contents_end {
	width: 100%;
	margin: 50px auto 0 auto;
	border-radius: 20px;
}

.header_read {
	margin: 20px auto;
}

h2 {
	font-size: 100%;
	text-align: center;
	border: #cc0000 solid;
	border-width: 2px 0;
	margin: 50px auto 20px auto;
	padding: 5px 10px;
	font-weight: normal;
	width: 100%;
}

.step {
	margin: 20px 0 0 0;
	background-color: #ffe4e4;
	border-radius: 20px;
	overflow: hidden;
}

.step img {
	width: 50%;
	vertical-align: middle;
	display: inline-block;
}

.step iframe {
	width: 600px;
	height: calc(600px * 0.5625);
	vertical-align: middle;
	display: inline-block;
}

.step .txtBox {
	width: 50%;
	display: inline-block;
	vertical-align: middle;
	padding: 0 50px;
}

.schedule .next {
	text-align: center;
	margin: 20px auto 0 auto;
}

.hallfBox {
	display: flex;
	flex-wrap: wrap;
}

.hallfBox.center {
	display: block;
	text-align: center;
}

.hallfBox .inhalf {
	width: calc(50% - 15px);
	text-align: center;
	font-size: 90%;
	line-height: 1.5em;
	margin-bottom: 20px;
	display: inline-block;
}

.hallfBox .inhalf.left {
	text-align: left;
}

.hallfBox .inhalf:nth-child(odd) {
  margin-right: 15px; /* 奇数番目 */
}

.hallfBox .inhalf:nth-child(even) {
  margin-left: 15px;  /* 偶数番目 */
}

.hallfBox .inhalf iframe,
.hallfBox .inhalf img {
	width: 100%;
	height: calc(585px * 0.5625);
	margin: 0 0 10px 0;
}

.hallfBox .inhalf iframe.noSpace,
.hallfBox .inhalf img.noSpace {
	margin: 0;
}

.fullBox {
	text-align: center;
	margin: 0 auto 20px auto;
	font-size: 90%;
}

.fullBox iframe {
	width: 585px;
	height: calc(585px * 0.5625);
	margin: 0 auto 10px auto;
}

.header_video {
	width: 100%;
	margin: 0 auto 20px auto;
	border-radius: 20px;
	overflow: hidden;
}

.header_video video {
	width: 100%;
	display: block;
}

.header_video .catch {
	display: block;
	font-size: 130%;
	text-align: center;
	position: absolute;
	background-color: rgba(0,0,0,0.3);
	color: #ffffff;
	width: 100%;
	bottom: 0;
	padding: 20px 0;
}

ul.license_step {
	list-style: none;
	padding: 0;
	text-align: center;
	writing-mode: vertical-lr;
	margin: 0 auto 10px auto;
}

ul.license_step li a {
	display: block;
	border-radius: 10px;
	padding: 20px;
	background-color: #cc0000;
	color: #ffffff;
	margin: 0 10px 10px 10px;
}

ul.license_step li a .rote {
	margin: 10px 11px 0 0;
}

ul.license_step li a:hover {
	text-decoration: none;
	background-color: #ff0000;
}

.license_card {
	width: 30%!important;
	height: auto!important;
	margin: 10px auto 0 auto;
	display: block!important;
}

.licenseBox {
	border: #999999 solid;
	border-width: 0 1px 1px 1px;
	padding: 50px 50px 20px 50px;
	margin: 0 auto 100px auto;
}

.licenseBox.licenseBox50 {
	padding: 50px;
}

.licenseBox.licenseBox20 {
	padding: 20px;
}

.licenseBox.licenseBox0 {
	padding: 50px;
	margin: 0 auto;
}

.licenseBox.licenseBox0 h2 {
	margin: 0 auto 20px auto;
}

.licenseBox.licenseBox0 img {
	margin: 0 auto 20px auto;
}

.licenseBox h2.zero {
	margin: 0 auto 20px auto;
}

.licenseBox .hallfBox {
	margin: 0 auto;
}

.appi_read {
	margin: 30px auto 0 auto;
}

ul.FAQ {
	margin: 0;
	padding: 0 0 0 1.5em;
	list-style: none;
}

ul.FAQ li {
	padding: 0;
	margin: 0 0 10px 0;
	line-height: 1.5em;
}

ul.FAQ li span {
	position: absolute;
	left: -1.3em;
}

.bold {
	font-weight: bold;
}

.appi_logo {
	width: 30%;
	display: block;
	margin: 0 auto 50px auto;
}

#area_guide h2 {
	margin: 50px auto 20px auto;
}

#area_guide .hallfBox .inhalf {
	border: #999999 solid;
	border-width: 1px;
}

#area_guide .hallfBox.visitor .inhalf {
	border: #999999 solid;
	border-width: 0;
}

#area_guide .hallfBox .inhalf:nth-child(odd) {
	margin-right: 15px; /* 奇数番目 */
	margin-top: 30px;
}

#area_guide .hallfBox .inhalf:nth-child(even) {
	margin-left: 15px;  /* 偶数番目 */
	margin-top: 30px;
}


#area_guide h3 {
	background-color: #cc0000;
	color: #ffffff;
	font-weight: normal;
	padding: 15px 0;
	text-align: center;
	margin: 0;
	font-size: 100%;
	line-height: 1em;
}

#area_guide .hallfBox .inhalf img {
	width: 250px;
	height: auto;
	display: block;
	margin: 30px auto;
}

#area_guide .hallfBox .inhalf ul {
	margin: 0 0 0 1em;
	padding: 0 30px 30px 30px;
}

#area_guide h3.subtitle {
	margin: 50px auto 0 auto;
}

.quarterBox .inquarter {
	width: calc((100% / 4) - 25px);
	margin: 0 30px 0 0;
	display: inline-block;
	vertical-align: middle;
}

.quarterBox .inquarter.end {
	margin: 30px 0 0 0;
}

.quarterBox .inquarter img {
	width: 100%;
	margin: 0 0 15px 0;
}

.quarterBox .inquarter.maker {
	width: calc((100% / 4) - 30px);
	margin: 30px 30px 0 0;
	vertical-align: top;
	line-height: 1.5em;
}

.quarterBox .inquarter.maker img {
	display: block;
	width: 100%;
	margin: 0 auto 20px auto;
}

.thirdBox .inthird {
	width: calc((100% / 3) - 20px);
	margin: 30px 30px 0 0;
	display: inline-block;
	vertical-align: top;
}

.thirdBox .inthird.end {
	margin: 30px 0 0 0;
}

.visitor .inhalf,
.visitor .inthird{
	line-height: 1.5em;
	text-align: left!important;
}

.visitor .subtitle {
	background-color: #cc0000;
	color: #ffffff;
	text-align: center;
	padding: 10px;
}

.visitor img {
	margin: 0 auto!important;
	width: 100%!important;
}

dl.notes {
    border: #999999 solid;
    border-width: 1px 1px 0 0;
    padding: 0;
    margin: 20px auto 30px auto;
    text-align: left;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

dl.notes.end {
    margin: 20px auto;
}

dl.notes dd,
dl.notes dt {
    padding: 10px 20px;
    border: #999999 solid;
    border-width: 0 0 1px 1px;
	margin: 0;
	display: inline-block;
	line-height: 1.5em;
}

dl.notes dd {
    background-color: #eeeeee;
    text-align: center;
	width: 11em;
}

dl.notes dd.colspan {
	width: 100%;
}

dl.notes dt {
	width: calc(100% - 11em);
}

dl.notes dt iframe {
	width: 400px;
	height: calc(400px * 0.5625);
	display: inline-block;
	margin: 0 0 5px 0;
}

.inclusive_video {
	width: 400px;
	display: inline-block;
	margin: 0 20px 0 0;
	vertical-align: top;
	text-align: center;
}

.inclusive_video img {
	margin: 0 0 5px 0;
}

.txt_arrows01 {
	position: relative;
    top: -2px;
    padding: 0 10px 0 15px;
}

iframe.area_access_map {
	width: 100%;
	height: 500px;
	margin: 20px auto 100px auto;
}

.header_logo {
	height: 300px;
	margin: 0 auto 30px auto;
}

#guidelines .guidelines_contents {
	width: calc(100% - 2em);
	margin: 0 auto;
}

#guidelines .guidelines_contents ul li {
	margin: 0 auto 10px auto;
}

#joyful_voices .hallfBox .inhalf {
	vertical-align: middle;
	background-color: #ffe4e4;
	border-radius: 20px;
}

#joyful_voices .hallfBox .inhalf img {
	height: auto;
	mix-blend-mode: multiply;
	top: 50%;
	transform: translateY(-50%);
}

.contact_br {
	display: none;
}

#kps_link .hallfBox .inhalf,
#kps_link .google_review {
	margin: 25px auto;
	line-height: 1.5em;
	border-width: 0;
}

#kps_link .hallfBox .inhalf.end {
	margin: 0 auto;
}

#kps_link .hallfBox .inhalf img,
#kps_link .google_review img {
	width: 150px;
	height: auto;
	margin: 0 auto 20px auto;
}

.license_price {
	display: flex;
	flex-wrap: wrap;
}

.license_price div {
	text-align: left!important;
}

.license_price div.left {
	width: 50%;
	padding: 0 15px 20px 0;
}

.license_price div.right {
	width: 50%;
	padding: 0 0 20px 15px;
}

.license_price div.center {
	width: 100%;
	padding: 0 0 50px 0;
}

.license_price h3 {
    background-color: #cc0000;
    color: #ffffff;
    padding: 10px 0;
    margin: 0 auto;
	text-align: center;
	line-height: 1em;
}

.license_price h4 {
	border: #999999 solid;
	border-width: 0 1px 1px 1px;
	text-align: center;
	margin: 0 auto 10px auto;
	padding: 10px 30px;
}

.license_price div.center span {
	display: inline-block;
    background-color: #990000;
    color: #ffffff;
	padding: 0 20px;
	border-radius: 5px;
	margin: 10px;
}

.license_price div.center span.bold {
	display: inline;
    background-color: transparent;
    color: #000000;
	padding: 0;
	border-radius: 0;
	margin: 0;
}

.license_price div.center span.start {
	margin: 0 10px 0 0;
}

.NextDown {
	display: block;
	width: 107px;
	margin: 0 auto 20px auto;
}

.winter_stepBox {
	display: flex;
	align-items: center;
}

.winter_stepBox .winter_step {
	width: calc(100% / 4);
	background-color: #ffe4e4;
	border-radius: 20px;
	padding: 30px;
	height: 240px;
}

.winter_stepBox img {
	width: 35px;
	height: 57px;
	margin: 10px;
}

ul.link_box {
	list-style: none;
	margin: 20px auto 0 auto;
	border: #999999 dashed;
	border-width: 1px 0 0 0;
}

ul.link_box li {
	padding: 10px 0;
	border: #999999 dashed;
	border-width: 0 0 1px 0;
}

ul.link_box li img {
	margin: 0 20px 0 0;
	width: 160px;
}

ul.link_box li img.width80 {
	width: 80px;
	height: auto;
}

.lifeBox .zoom {
	margin: 20px auto 0 auto;
	display: flex;
	flex-wrap: wrap;
}

.lifeBox .zoom a {
	position: relative;
	width: 20%;
	height: 160px;
	overflow: hidden;
	display: inline-block;
	background-color: #dedede;
	border: #ffffff solid;
	border-width: 0 1px 1px 0;
}

.lifeBox .zoom a img.photo {
	width: 100%;
	top: 50%;
	transform: translateY(-50%);
}

.lifeBox .zoom a:hover img.photo {
	width: 105%;
	top: 50%;
	transform: translateY(-50%) scale(1.1);
}

.lifeBox .zoom a .full {
	position: absolute;
	background-color: #000000;
	color: #ffffff;
	border-radius: 20px;
	right: 10px;
	bottom: 10px;
	padding: 5px 10px;
	display: inline-block;
	line-height: 1em;
	transition: 0.2s;
	font-size: 70%;
}

/* ------------------------------------------------------ */
@media only screen and (max-width : 1920px) {
/* ------------------------------------------------------ */

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 1336px) {
/* ------------------------------------------------------ */

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 1250px) {
/* ------------------------------------------------------ */
.indexCoursesBox a img.click {
	width: 30%;
}

.contactBox {
	text-align: center;
	white-space: normal;
}

.contactBox .messageBox {
	width: auto;
	margin: 0 50px 0 0;
	text-align: left;
}

.contactBox .onlineBtn {
	right: auto;
}

.contact_br {
	display: inline;
}

.contactBox .messageBox span.mail {
	margin: 0 5px 0 0;
}

.fullBox iframe {
	width: 50%;
	height: calc((50vw - 50px) * 0.5625);
	margin: 0 auto 10px auto;
}

.hallfBox .inhalf iframe,
.hallfBox .inhalf img {
	width: 100%;
	height: calc((50vw - 50px) * 0.5625);
	margin: 0 0 10px 0;
}

.lifeBox .zoom a {
	position: relative;
	width: calc((100vw - 50px) /5);
	height: calc(100vw / 5 * 0.5625);
	overflow: hidden;
	display: inline-block;
	background-color: #dedede;
	border: #ffffff solid;
	border-width: 0 1px 1px 0;
}

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 1024px) {
/* ------------------------------------------------------ */


.license_card {
	width: 50%!important;
}
}

/* ------------------------------------------------------ */
@media only screen and (max-width : 970px) {
/* ------------------------------------------------------ */
.contactBox .messageBox {
	margin: 0;
	text-align: center;
}

.contact_br {
	display: none;
}

.contactBox .messageBox span.mail {
	margin: 0 5px 0 20px;
}

.license_step img {
	width: 20px;
}

ul.license_step li a {
	padding: 10px;
}

ul.license_step li a img {
	width: 9px;
}

.step .txtBox {
    padding: 0 25px;
	line-height: 1.5em;
}

.step .txtBox br {
	display: none;
}

.license_card {
	width: 40%!important;
}
	
}

/* ------------------------------------------------------ */
@media only screen and (max-width : 820px) {
/* ------------------------------------------------------ */
.point .icon {
	display: none;
}

.point .txt {
    display: inline-block;
    vertical-align: middle;
    text-align: left;
    width: calc(100% - 220px);
}

.step .txtBox {
	line-height: 1.5em;
	width: 100%;
	padding: 30px;
}

.step img {
	width: 100%;
}

a.contactBtn.blue {
	margin: 10px auto 0 auto;
	display: block;
	width: 15em;
}

.Inclusive a.contactBtn {;
	width: 16em;
}

.contact_br {
	display: inline;
}

.contactBox .messageBox span.mail {
	margin: 0 5px 0 0;
}

.hallfBox .inhalf {
    width: calc(50% - 7px);
}

.hallfBox .inhalf:nth-child(odd) {
  margin-right: 7px; /* 奇数番目 */
}

.hallfBox .inhalf:nth-child(even) {
  margin-left: 7px;  /* 偶数番目 */
}

.license_card {
	width: 40%!important;
	display: block;
	margin: 10px auto 0 auto;
}

.licenseBox {
	padding: 20px;
}

.licenseBox.licenseBox50 {
	padding: 20px;
}

ul.notes.nospace_notes {
	margin: 10px 0 0 1.5em;
}
	
.hallfBox .inhalf {
	width: calc(50% - 10px);
}

#area_guide .hallfBox .inhalf:nth-child(odd) {
    margin-right: 5px;
	margin-top: 10px;
}

#area_guide .hallfBox .inhalf:nth-child(even) {
    margin-left: 5px;
	margin-top: 10px;
}

#area_guide .hallfBox .inhalf img {
	width: 80%;
}

.quarterBox .inquarter.maker {
    width: calc((100% / 2) - 20px);
    margin: 30px 20px 0 0;
    vertical-align: top;
    line-height: 1.5em;
}

iframe.area_access_map {
	height: 300px;
	margin: 20px auto 50px auto;
}

.thirdBox .inthird,
.thirdBox .inthird.end {
    width: calc((100% / 3) - 10px);
    margin: 0 10px 0 0;
}

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 780px) {
/* ------------------------------------------------------ */
.inclusive_video {
    width: 100%;
    margin: 10px 0;
}

dl.notes dt iframe {
    width: 100%;
    height: calc((100vw - 11em - 110px) * 0.5625)
}

ul.license_step {
	writing-mode: horizontal-tb;
}

.license_step img {
	transform: rotate(90deg);
}

ul.license_step li a {
	margin: 0 auto 5px auto;
}

ul.license_step li a img {
	width: 9px;
	transform: rotate(0deg);
}
	
ul.license_step li a .rote {
	margin: 0 0 0 10px;
}

.licenseBox {
	margin: 0 auto 50px auto;
}

.license_price div.left {
	width: 100%;
	padding: 0 0 20px 0;
}

.license_price div.right {
	width: 100%;
	padding: 0;
}

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 600px) {
/* ------------------------------------------------------ */

.indexCoursesBox a {
    width: calc(50% - 7px);
    display: inline-block;
    color: #000000;
}

.indexCoursesBox a:nth-child(odd) {
    margin-right: 7px;
}

.indexCoursesBox a:nth-child(even) {
    margin-left: 7px;
}

.indexCourses h1 {
	font-size: 160%;
	text-align: center;
	background-color: #cc0000;
	color: #ffffff;
	border-radius: 50px;
}

.indexCoursesBox {
	margin: 10px auto 30px auto;
}

.indexCoursesBox a img.click {
	width: 40%;
	right: 0;
	bottom: 0;
}
	
.indexCourses .note {
	padding: 30px;
}
	
.contactBox {
	line-height: 1.8em;
}

.fadein .contents_area.midBanner {
	padding: 0;
}

.point {
	padding: 20px 30px;
}

dl.notes dd,
dl.notes dt {
    width: 100%;
	display: block;
}

dl.notes dt iframe {
    width: 100%;
    height: calc((100vw - 110px) * 0.5625)
}

.Inclusive a.contactBtn {;
	width: 18em;
}

.contactBox .messageBox span {
	font-size: 100%;
}

.point.hallfBox .inhalf {
	padding: 10px 0;
}

.point.hallfBox .inhalf {
    width: 100%;
}

.point.hallfBox .inhalf:nth-child(odd) {
  margin-right: 0; /* 奇数番目 */
}

.point.hallfBox .inhalf:nth-child(even) {
  margin-left: 0;  /* 偶数番目 */
}

.point .images {
	width: 200px;
	display: block;
	margin: 0 auto 10px auto;
}

.point .txt {
	width: 100%;
}
	
#joyful_voices .hallfBox .inhalf {
	width: 100%;
	margin: 0 auto 10px auto!important;
}

.contents_top,
.contents_middle {
	margin: 0 auto 10px auto;
}

.contents_end {
	margin: 0 auto;
}


#area_guide .hallfBox .inhalf img {
	width: 50%;
}

.quarterBox .inquarter.maker {
    width: 100%;
    margin: 30px 0 0 0;
}

.hallfBox.staff .inhalf {
	width: 100%;
}

.quarterBox .inquarter.maker img {
	width: 50%;
}

.timetable {
	font-size: 80%;
}

.hallfBox .inhalf {
    width: calc(100% - 7px);
}

.hallfBox .inhalf iframe, .hallfBox .inhalf img {
	width: 100%;
	height: calc((100vw - 50px) * 0.5625);
	margin: 0 0 10px 0;
}


.hallfBox .inhalf:nth-child(odd) {
  margin-right: 0; /* 奇数番目 */
}

.hallfBox .inhalf:nth-child(even) {
  margin-left: 0;  /* 偶数番目 */
}
	

.fullBox iframe {
	width: 100%;
	height: calc((100vw - 50px) * 0.5625);
	margin: 0 auto 10px auto;
}

.header_video .catch {
	display: block;
	font-size: 110%;
	padding: 10px 0;
}

a.inlinkBtn {
	width: 100%;
	font-size: 120%;
	padding: 10px !important;
}

.lifeBox .zoom a {
	position: relative;
	width: calc((100vw - 50px) /3);
	height: calc(100vw / 3 * 0.5);
	overflow: hidden;
	display: inline-block;
	background-color: #dedede;
	border: #ffffff solid;
	border-width: 0 1px 1px 0;
}
}

/* ------------------------------------------------------ */
@media only screen and (max-width : 500px) {
/* ------------------------------------------------------ */
.contactBox {
	padding: 30px;
	width: 100%;
}

.contactBox .messageBox {
	font-size: 18px;
}

.contactBox .messageBox a.link {
	font-size: 26px;
}

.contactBox .onlineBtn {
	font-size: 100%;
	width: 100%;
}

.contactBox .onlineBtn a.contactBtn {
	font-size: 120%;
	padding: 10px!important;
}

.banner_mid a {
	width: 100%;
}
	
.banner_mid a:nth-child(odd),
.banner_mid a:nth-child(even) {
	margin: 0 0 10px 0;
}

.next img {
	width: 70px;
}

.zoom a .full {
	bottom: 10px;
	padding: 5px 10px;
}

.zoom a .full img {
	height: 0.8em!important;
	top: -1px!important;
}

}

/* ------------------------------------------------------ */
@media only screen and (max-width : 320px) {
/* ------------------------------------------------------ */ 

}
