@charset "utf-8";

/* fadeIn Animation
---------------------------------------------------------- */
.list-mv {
	/*overflow: hidden;*/
	position: relative;
}

.list-mv01 {
	opacity: 0;
	-webkit-transition: 0.6s ease-out;
	transition: 0.6s ease-out;
	-webkit-transition-delay: 160ms;
	transition-delay: 160ms;
	-webkit-transform: translate(0, 24px);
	transform: translate(0, 24px);
}

.mv01 {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.list-mv02 {
	opacity: 0;
	-webkit-transition: 0.8s;
	transition: 0.8s;
}

.mv02 {
	opacity: 1;
}

.list-mv03 {
	opacity: 0;
	-webkit-transition: 0.6s ease-out;
	transition: 0.6s ease-out;
	-webkit-transition-delay: 240ms;
	transition-delay: 240ms;
	-webkit-transform: scale3d(1.2, 1.2, 1);
	transform: scale3d(1.2, 1.2, 1);
}

.mv03 {
	opacity: 1;
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

.list-mv04 {
	opacity: 0;
	-webkit-transition: 0.6s ease-out;
	transition: 0.6s ease-out;
	-webkit-transition-delay: 160ms;
	transition-delay: 160ms;
	-webkit-transform: translate(-24px, 0);
	transform: translate(-24px, 0);
}

.mv04 {
	opacity: 1;
	-webkit-transform: translate(0, 0) rotate(0deg);
	transform: translate(0, 0) rotate(0deg);
}

/* Main image
---------------------------------------------------------- */
.main-img-wrap {
	position: relative;
	margin: 0;
	/*height: 57.84vw;*/
	height: 84vh;
	min-height: 840px;
	/* text-align: center; */
}

/*
.main-img-wrap::after {
	z-index: 1;
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 0;
	height: 0;
	border-width: 0 30rem 25rem 0;
	border-style: solid;
	border-color: transparent transparent #29a5dc transparent;
	content: "";
}
*/

@media screen and (max-width: 1190px) {
	.main-img-wrap {
		/* min-height: unset; */
		height: 50vh;
	}
}

img.main-img {
	margin: 0 auto;
	max-width: unset;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/*
.message-area {
	z-index: 3;
	position: absolute;
	bottom: 20px;
	left: 4.39%;
	width: 100%;
	max-width: 640px;
}
*/
/*
.message-title {
    margin: 0 0 0.4em;
    font-size: 64px;
    letter-spacing: 0.04em;
}

.message-title,
.message-jp {
    color: #29a5dc;
    text-align: center;
}

.message-jp {
    letter-spacing: 0.04em;
    font-size: 0.6em;
}

.message-txt {
    padding: 0 0 4em 1.6em;
} */

a.scroll-btn {
	z-index: 5;
	position: absolute;
	right: 14em;
	bottom: 0;
	height: 5em;
	padding-top: 2.2em;
	padding-right: 1em;
	color: #fff;
	text-decoration: none;
}

a.scroll-btn::after {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	width: 1px;
	height: 5.6em;
	content: "";
	background: #fff;
}

a.scroll-btn::after {
	animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
	0% {
		transform: scale(1, 0);
		transform-origin: 0 0;
	}
	50% {
		transform: scale(1, 1);
		transform-origin: 0 0;
	}
	50.1% {
		transform: scale(1, 1);
		transform-origin: 0 100%;
	}
	100% {
		transform: scale(1, 0);
		transform-origin: 0 100%;
	}
}

/* News
---------------------------------------------------------- */
.news-wrap {
	position: relative;
	padding: 2.5em 0 3em 0;
	background-color: #29a5dc;
	background-image: url(../img/bg-pattern-left1.svg), url(../img/bg-pattern-right1.svg);
	background-repeat: no-repeat, no-repeat;
	background-position: top left, bottom 380px right;
	background-size: 386px 386px, 386px 386px;
	overflow-x: clip;
}

.news-wrap .c_bnr{
	max-width: 1211px;
	margin: 0 auto 4em;
}

.news-wrap .c_bnr.flex{
	display: flex;
	justify-content: space-between;
}


.news-wrap .c_bnr.mb0{
	margin-bottom: 0;
}

.news-wrap .c_bnr a{
	display: block;
	transition: 0.3s;
}

.news-wrap .c_bnr a:hover{
	opacity: 0.9;
}

.news-wrap .online_btn{
	max-width: 561px;
	margin: 0 auto 30px;
}

.news-wrap .online_btn a{
	display: block;
	transition: 0.3s;
}

.news-wrap .online_btn a:hover{
	opacity: 0.9;
}

/*
.news-wrap::before {
	display: block;
	z-index: 1;
	position: absolute;
	top: 1em;
	right: -11em;
	width: 880px;
	height: 32px;
	content: "";
	background-image: url(../img/bg-line.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: rotate(-40deg);
}
*/


.news-title {
	margin: 0 0 0.3em;
	color: #000;
	font-size: 56px;
	line-height: 1;
}

.news-subtitle {
	position: relative;
	padding: 0 0 1em;
	color: #000;
	font-size: 24px;
	letter-spacing: 0.05em;
}

.news-subtitle::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 3.2em;
	height: 3px;
	border-radius: 1px;
	content: "";
	background: #000;
	transform: translateX(-50%);
}

a.post-list-link {
	display: inline-block;
	z-index: 1;
	position: absolute;
	top: -3.6em;
	right: 0;
	padding: 0.6em 1.2em;
	border-radius: 1.5em;
	color: #151515;
	font-size: 20px;
	text-decoration: none;
	background: #fff;
}

.news-wrap a.post-list-link{
	display: inline-block;
	z-index: 1;
	position: absolute;
	top: -3.5em;
	right: 11px;
	padding: 0.6em 2.5em;
	border-radius: 1.5em;
	color: #151515;
	font-size: 19px;
	text-decoration: none;
	background: url("../img/news_ico.png")no-repeat #fff;
	background-size: 26px auto;
	background-position: right 16px center;
}

a:hover.post-list-link {
	opacity: 0.6;
}

.news-post-wrap {
	display: flex;
	position: relative;
	justify-content: flex-start;
	margin-top: 1.6em;
}

/*
.news-post-wrap::before {
	display: block;
	z-index: 0;
	position: absolute;
	top: -140px;
	left: 0;
	width: 290px;
	height: 185px;
	content: "";
	background-image: url(../img/kuma.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
}
*/

.news-wrap .c_bnr{
	max-width: 1165px;
	margin: 1em auto 0;
	position: relative;
	z-index: 2;
}

.news-wrap .c_bnr::before {
	display: block;
	position: absolute;
	top: -179px;
	left: -8px;
	width: 356px;
	height: 231px;
	content: "";
	background-image: url(../img/ikku.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: cover;
	z-index: -1;
}

.news-wrap .c_bnr.wide .bnr_flex_wrap{
	width: 100%;
	margin: 60px auto 20px;
}

.news-wrap .c_bnr.wide .bnr_flex_wrap ul.f_bnr_list{
	list-style: none;
	display: flex;
	justify-content: space-between;
}

.news-wrap .c_bnr.wide .bnr_flex_wrap ul.f_bnr_list li{
	width: 48.0686%;/*560*/
}

.news-wrap .c_bnr.wide .bnr_flex_wrap ul.f_bnr_list li img{
	width: 100%;
	height: auto;
	filter: drop-shadow(0px 0px 8px rgba(66,66,66,0.25));
}


.news-post {
	z-index: 2;
	/*width: calc(96% / 4);*/
	width: calc(94% / 4);
	margin-right: 1.5em;
	padding: 0.4em 0.64em;
	background: rgba(255, 255, 255, 0.8);
}

.news-post:last-child {
	margin-right: 0;
}

a.news-post-link {
	display: block;
	color: #151515;
	text-decoration: none;
}

a:hover.news-post-link {
	opacity: 0.6;
}

.news-post-img {
	border: solid 5px #fff;
}

.post-info-box-inner {
	display: flex;
	align-items: center;
	padding: 0.8em 0 0.6em;
}

span.date {
	display: inline-block;
	font-size: 15px;
	margin: 0 0.6em 0 0;
}

a.post-act {
	display: inline-block;
	width: 63.5%;
	padding: 0.4em 0;
	border-radius: 0.3em;
	color: #000;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: #29a5dc;
}

a:hover.post-act {
	opacity: 0.6;
	color: #fff;
}

.post-info-box {
	margin-top: 0;
}

h3.post-title {
	color: #151515;
	font-size: 16px;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

a.news-list-link {
	font-size: 1.25em;
	cursor: pointer;
}

a:hover.news-list-link {
	opacity: 0.6;
}

/* 教習料金のご案内
---------------------------------------------------------- */
#price {
	position: relative;
	padding: 2em 0;
}

#price::before {
	display: block;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	width: 374px;
	height: 306px;
	content: "";
	background-image: url(../img/bg-pattern-right-orange.svg);
	background-repeat: no-repeat;
	background-position: center center;
}

#price::after {
	display: block;
	z-index: -1;
	position: absolute;
	top: 50%;
	left: -16em;
	width: 1760px;
	height: 32px;
	content: "";
	background-image: url(../img/bg-line-orange.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: rotate(-45deg);
}



.h2-title {
	margin: 0 0 0.2em;
	color: #29a5dc;
	font-size: 56px;
}

.h2-subtitle {
	position: relative;
	padding: 0 0 1.2em;
	color: #333;
	font-size: 30px;
}

.h2-subtitle::after {
	display: block;
	position: absolute;
	bottom: 0.72em;
	left: 50%;
	width: 2.4em;
	height: 2px;
	border-radius: 1px;
	content: "";
	background: #29a5dc;
	transform: translateX(-50%);
}

.charge-guidance-wrap {
	/* max-width: 1133px; */
	max-width: 1200px;
	width: 96%;
	margin: 0 auto;
	position: relative;
}

.charge-guidance-wrap .discount_btn{
	width: 359px;
	position: absolute;
	top: -120px;
	left: 0;
}

.charge-guidance-wrap .discount_btn a{
	display: block;
	width: 100%;
	line-height: 86px;
	border-radius: 20px;
	border: 3px solid #29a5dc;
	box-sizing: border-box;
	background: url(../img/arrow-icon-darkorange.svg)no-repeat;
	background-size: 26px auto;
	background-position: right 18px center;
	font-style: normal;
	font-weight: 700;
	font-family: "M PLUS Rounded 1c",fot-tsukuardgothic-std, sans-serif;
	font-size: 1.375em;/*22*/
	letter-spacing: -0.05em;
	color: #4d4d4d;
	text-decoration: none;
	padding-left: 75px;
	position: relative;
	transition: 0.3s;
}

.charge-guidance-wrap .discount_btn a:hover{
	opacity: 0.6;
}

.charge-guidance-wrap .discount_btn a span{
	font-style: normal;
	font-weight: 700;
	font-family: "M PLUS Rounded 1c",fot-tsukuardgothic-std, sans-serif;
	font-size: 1.31em;
	letter-spacing: -0.05em;
	position: relative;
	top: 3px;
}

.charge-guidance-wrap .discount_btn a::before{
	content: '';
	display: inline-block;
	background: url("../img/ico_p.png")no-repeat;
	background-size: contain;
	width: 35px;
	height: 44px;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.toggle_contents2.car {
	order: 1;
}

.toggle_contents2.large {
	order: 2;
}

.toggle_contents2.two-wheel {
	order: 3;
}

.toggle_contents2.two-type {
	order: 4;
}

.toggle_contents2.medium {
	order: 5;
}

.toggle_contents2.special {
	order: 6;
}

.charge-guidance-box {
	display: flex;
	position: relative;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 1em 1.6em;
}

.charge-guidance-box::before {
	display: block;
	z-index: -2;
	position: absolute;
	top: 3em;
	left: 50%;
	width: 100%;
	height: 90%;
	border-radius: 0.5em;
	content: "";
	background-color: #fffaeb;
	transform: translate(-50%, 0%);
}

img.plan-img {
	width: 146px;
	height: auto;
	border-radius: 50%;
}

.toggle_contents2.min img.plan-img {
	width: 126px;
	height: auto;
}

a.plan-link {
	display: block;
	position: relative;
	margin-bottom: 0;
	padding: 0.6em 0.2em;
	color: #333;
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
}

a.plan-link::after {
	position: absolute;
	top: 43%;
	right: 1em;
	content: ">";
	transform: translateY(-50%);
}

a:hover.plan-link {
	opacity: 0.6;
}

.plan-link.red,
.plan-link.green,
.plan-link.lightblu,
.plan-link.lightgreen {
	font-size: 22px;
	margin: 0 0 0.6em;
}

.plan-link.darkorange,
.plan-link.blu {
	font-size: 22px;
}

.plan-link.red::after,
.plan-link.green::after,
.plan-link.darkorange::after,
.plan-link.lightblu::after,
.plan-link.lightgreen::after,
.plan-link.blu::after {
	display: block;
	top: 50%;
	right: 0.6em;
	width: 24px;
	height: 24px;
	content: "";
	background-repeat: no-repeat;
	background-size: cover;
}

.toggle_contents.min .plan-link {
	margin: 0;
}

.plan-link.red {
	color: #e71c24;
}

.plan-link.red::after {
	background-image: url(../img/arrow-icon-red.svg);
}

.plan-link.green {
	color: #006837;
}

.plan-link.green::after {
	background-image: url(../img/arrow-icon-green.svg);
}

.plan-link.lightgreen {
	color: #008c45;
}

.plan-link.lightgreen::after {
	background-image: url(../img/arrow-icon-lightgreen.svg);
}

.plan-link.lightblu {
	color: #29a5dc;
}

.plan-link.lightblu::after {
	background-image: url(../img/arrow-icon-lightblu.svg);
}

.plan-link.darkorange {
	color: #eb5a24;
}

.plan-link.darkorange::after {
	background-image: url(../img/arrow-icon-darkorange.svg);
}

.plan-link.blu {
	color: #0071b6;
}

.plan-link.blu::after {
	background-image: url(../img/arrow-icon-blu.svg);
}

/* Accordion
---------------------------------------------------------- */
.toggle_contents {
	width: 100%;
	max-width: 1000px;
	margin: 2.5em auto;
}

.toggle_title {
	display: flex;
	position: relative;
	align-items: center;
	height: 50px;
	margin: 0;
	padding: 0 3em 0.4em 1em;
	border-bottom: solid 2px #adadad;
	/* color: #4d4d4d; */
	color: #333;
	font-size: 23px;
	line-height: 1.4;
	cursor: pointer;
}

@media only screen and (max-width: 375px) {
	.toggle_title {
		font-size: 20px;
	}
}

/* .toggle_title:hover {
    opacity: 0.5;
} */

/* .toggle_title span {
    display: block;
} */

.toggle_title.pconly {
	cursor: default;
	pointer-events: none;
}

.toggle_contents dd.pc-display {
	display: block;
	margin: 0 auto 2.4em;
	text-align: left;
}

.toggle_btn {
	display: block;
	z-index: 1;
	position: absolute;
	right: 0;
	bottom: 0.4em;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: #666666;
}

.toggle_btn {
	background-image: none;
	background-color: #666666;
}

.toggle_btn.yellow {
	background-color: #29a5dc;
}

.toggle_btn.darkorange {
	background-color: #eb5a24;
}

.toggle_btn.green {
	background-color: #39af4a;
}

.toggle_btn.lightblu {
	background-color: #0071b6;
}

dt.selected .toggle_btn {
	transform: rotateZ(180deg);
}

.toggle_btn:before,
.toggle_btn:after {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	background-color: #fff;
	content: "";
	transform: translate(-50%, -50%);
}

.toggle_btn.white:before,
.toggle_btn.white:after {
	background-color: #fff;
}

.toggle_btn:before {
	width: 2px;
	height: 1.1em;
}

.toggle_btn:after {
	width: 1.1em;
	height: 2px;
}

.toggle_title.selected .toggle_btn:before {
	content: normal;
}

.toggle_contents dd {
	display: none;
}

.toggle_contents p {
	line-height: 2;
}

.toggle_contents > dd > p {
	text-align: justify;
}

.accordion-inner {
	padding: 0 0 0.6em;
	margin: 0 auto;
}

.plan-link-inner {
	padding: 0;
}

.accordion-inner.link {
	max-width: 92%;
	padding: 0 0 1.6em;
}

.accordion-inner.ig {
	max-width: 100%;
}

.accordion-inner.link p {
	font-size: 14px;
}

ul.related-link-list li {
	padding: 1.2em 0;
	border-bottom: solid 1px #bababa;
	line-height: 1.6;
}

.com-name {
	display: block;
	width: 100%;
}

ul.related-link-list.other {
	margin: 1em 3%;
}

ul.related-link-list.other a {
	overflow-wrap: break-word;
}

.accordion-inner-box {
	border: solid 1px #949494;
	padding: 1.2em;
	line-height: 2;
}

.accordion-inner-box-title {
	padding: 0 0 0.5em;
	border-bottom: solid 1px #949494;
	margin-bottom: 0.8em;
}

ul.redcircle-list {
	padding: 0 1.6em;
}

ul.redcircle-list li {
	display: inline-block;
	margin-bottom: 1.6em;
	position: relative;
}

ul.redcircle-list li::before {
	position: absolute;
	top: 0.5em;
	left: -1.5em;
	display: block;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background: #e81c24;
	content: "";
}

ul.redcircle-list.gray {
	padding: 0 2em;
}

ul.redcircle-list.gray li::before {
	top: 0.15em;
	background: #949494;
}

ul.redcircle-list.black {
	padding: 0 2em;
	font-size: 14px;
}

ul.redcircle-list.black li {
	margin-bottom: 0.6em;
}

ul.redcircle-list.black li::before {
	top: 0.15em;
	background: #4d4d4d;
}

ul.asterisk,
ul.dot-list {
	color: #4d4d4d;
	font-size: 12px;
}

ul.asterisk li,
ul.dot-list li {
	position: relative;
	margin: 0 0 0.4em;
	padding: 0 0 0 1em;
	line-height: 1.4;
	letter-spacing: 0.1em;
}

ul.asterisk li::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "※";
}

ul.dot-list li::before {
	position: absolute;
	top: 0.5em;
	left: 0.3em;
	display: block;
	width: 2px;
	height: 2px;
	border-radius: 50%;
	background: #4d4d4d;
	content: "";
}

span.dot-w {
	display: inline-block;
	width: 10em;
}

.toggle_title.red {
	color: #e71c24;
}

.toggle_title.red .toggle_btn {
	background-color: #e71c24;
}

.toggle_title.green {
	color: #006837;
}

.toggle_title.green .toggle_btn {
	background-color: #006837;
}

.toggle_title.lightgreen {
	color: #008c45;
}

.toggle_title.lightgreen .toggle_btn {
	background-color: #008c45;
}

.toggle_title.lightblu {
	color: #29a5dc;
}

.toggle_title.lightblu .toggle_btn {
	background-color: #29a5dc;
}

.toggle_title.darkorange {
	color: #eb5a24;
}

.toggle_title.darkorange .toggle_btn {
	background-color: #eb5a24;
}

.toggle_title.blu {
	color: #0071b6;
}

.toggle_title.blu .toggle_btn {
	background-color: #0071b6;
}

/* PCアコーディオン無し */
.toggle_contents2 {
	display: flex;
	/* align-items: center; */
	width: 39%;
	margin: 0 0 1em;
	padding: 1.6em 0.6em;
	border-radius: 1em;
	background: #fdfdfd;
	box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.24);
}

.toggle_contents2.min {
	width: 19%;
	padding: 0.4em 0.6em;
	flex-wrap: wrap;
}

.toggle_contents2:not(.min) dd {
	width: calc(100% - 150px);
}

.toggle_contents2.min dd {
	width: 100%;
}

.toggle_title2 {
	position: relative;
	display: block;
	margin: 0;
	padding: 0.4em;
	color: #4d4d4d;
	font-size: 17px;
	line-height: 1.4;
	pointer-events: none;
}

.toggle_contents2.min .toggle_title2 {
	margin: 0 auto;
	padding: 0;
}

/* 上浮穴自動車教習所について
---------------------------------------------------------- */
#about {
	padding: 1.6em 0 0;
}

#about .h2-title{
	color: #000000;
}

#about .h2-subtitle{
	color: #333333;
}

.about-us-bg {
	position: relative;
	width: 100%;
	height: 520px;
	background-image: url(../img/about-us-bg.jpg);
	background-size: cover;
	background-position: center center;
}

.about-us-bg::before {
	display: block;
	position: absolute;
	top: -187px;
	left: 50%;
	width: 90%;
	min-width: 1000px;
	max-width: 1150px;
	height: 187px;
	content: "";
	background-image: url(../img/about-kuma.png);
	background-repeat: no-repeat;
	background-position: bottom right 1em;
	transform: translateX(-50%);
}

.about-us-bg::after {
	position: absolute;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: rgba(29, 147, 221, 0.3);
}

.about-us-inner {
	position: relative;
	z-index: 1;
	padding: 2.4em 0;
}


.about-title {
	margin-bottom: 0.5em;
	font-size: 38px;
	letter-spacing: 0.04em;
}

.about-subtitle {
	font-size: 24px;
}

.four-reason-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 800px;
	margin: 2em auto;
}

img.four-reason {
	width: calc(100% / 4);
	height: auto;
	align-self: flex-start;
}

.center-btn {
	text-align: center;
}

a.center-btn-link {
	display: inline-block;
	padding: 0.7em 2.7em;
	border-radius: 1.6em;
	color: #29a5dc;
	font-size: 22px;
	text-decoration: none;
	background: #fff;
	background-image: url(../img/arrow-icon-orange-2.svg);
	background-repeat: no-repeat;
	background-position: center right 0.7em;
	background-size: 1.2em;
}

a:hover.center-btn-link {
	opacity: 0.7;
}

.about-us-bg-orange {
	height: 446px;
	background-color: #29a5dc;
	background-image: url(../img/about-us-bg-photo.jpg), url(../img/bg-pattern-right1.svg);
	background-position: center left, bottom -4.4em right;
	background-repeat: no-repeat, no-repeat;
	background-size: contain, 386px 386px;
}

.about-us-bg-orange-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	height: 100%;
}

.about-link-wrap {
	width: calc(96% / 3);
	border: solid 4px #fff;
	border-radius: 1.1em;
	overflow: hidden;
	background-color: #ffffff;
}

a.about-link {
	text-decoration: none;
}

a.about-link .about-info {
	padding: 0.7em 0.4em 0.96em;
	color: #fff;
	font-size: 26px;
	text-align: center;
	margin: 0;
	background-image: url(../img/arrow-icon-white.svg), url(../img/about-link-bg.svg);
	background-size: 1.4em, 80%;
	background-repeat: no-repeat, no-repeat;
	background-position: center right 0.48em, center right -1em;
}

.about-img-wrap {
	overflow: hidden;
	position: relative;
	border-top: solid 8px #fff;
	border-right: solid 8px #fff;
	border-left: solid 8px #fff;
	border-radius: 0.9em 0.9em 0 0;
}

/* .about-img-wrap::after {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    border-top: solid 8px #fff;
    border-right: solid 8px #fff;
    border-left: solid 8px #fff;
    border-radius: 0.8em 0.8em 0 0;
    content: "";
    transform: translate(-50%, -50%);
} */

.support-note {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
	padding: 0.64em 0.8em;
	color: #4d4d4d;
	font-size: 16px;
	line-height: 1.7;
	background-color: rgba(255, 255, 255, 0.8);
}

a.about-link .about-img {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

a:hover.about-link .about-img {
	-webkit-transform: scale3d(1.1, 1.1, 1.1);
	transform: scale3d(1.1, 1.1, 1.1);
}

a.about-link .about-info-wrap {
	margin: 0;
	background: #29a5dc;
	position: relative;
	z-index: 1;
}

a:hover.about-link .about-info-wrap {
	background: #feb872;
}

.banner-area {
	padding: 3em 0;
}

a.schoolbus-banner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 92%;
	margin: 0 auto;
	padding: 0.5em;
	border: 3px solid #E0E0E0;
	text-decoration: none;
}

.banner-img-wrap {
	width: 542px;
	overflow: hidden;
}

.banner-title-en {
	font-size: 24px;
	margin-bottom: 0.4em;
}

.banner-title {
	font-size: 40px;
	margin-bottom: 0.4em;
}

.banner-title-en.red,
.banner-title.red {
	color: #eb5a24;
}

.schoolbus-info-box {
	width: calc(100% - 542px);
	padding: 1em 2em;
	background-image: url(../img/arrow-icon-darkorange-2.svg);
	background-repeat: no-repeat;
	background-position: center right 3em;
	background-size: 2.8em;
}

p.banner-txt {
	width: 70%;
	color: #151515;
	font-size: 20px;
	line-height: 1.87;
}

a.schoolbus-banner .banner-img,
a.min-banner .banner-min-img {
	-webkit-transform: scale3d(1, 1, 1);
	transform: scale3d(1, 1, 1);
}

a:hover.schoolbus-banner .banner-img,
a:hover.min-banner .banner-min-img {
	-webkit-transform: scale3d(1.1, 1.1, 1.1);
	transform: scale3d(1.1, 1.1, 1.1);
}

a.schoolbus-banner .schoolbus-info-box,
a.min-banner .tow-banner-info-box {
	opacity: 1;
	transition-duration: 0.32s;
	transition-property: all;
}

a:hover.schoolbus-banner .schoolbus-info-box,
a:hover.min-banner .tow-banner-info-box {
	opacity: 0.6;
}

.tow-banner-area {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 92%;
	margin: 1em auto;
}

.min-banner-wrap {
	width: calc(98% / 2);
}

a.min-banner {
	display: flex;
	padding: 0.5em;
	text-decoration: none;
	border: 3px solid #E0E0E0;
}

.banner-img-min-wrap {
	overflow: hidden;
}

.banner-title-en.blu,
.banner-title.blu {
	color: #29a5dc;
}

.banner-title-en.orange,
.banner-title.orange {
	color: #29a5dc;
}

.tow-banner-info-box {
	padding: 1.4em 0.8em;
}

.banner-title.blu,
.banner-title.orange {
	font-size: 30px;
}

a.staff-banner {
	border: solid 3px #29a5dc;
}

a.voice-banner {
	border: solid 3px #29a5dc;
}

.tow-banner-info-box {
	width: calc(100% - 38%);
	background-repeat: no-repeat;
	background-position: bottom 1em right 1em;
	background-size: 2em;
}

.tow-banner-info-box.blu {
	background-image: url(../img/arrow-icon-blu-2.svg);
}

.tow-banner-info-box.orange {
	background-image: url(../img/arrow-icon-orange-2.svg);
}

/* 入所申込み / 資料請求 / お問い合わせ
---------------------------------------------------------- */
.z1 {
	z-index: 1;
	position: relative;
}

.contact-wrap {
	display: block;
}

/*コアページの時は余白を下に余白をもたせる*/
.contact-wrap.coa_contact{
    margin-bottom: 115px;
}

.contact-bg {
	position: relative;
	width: 100%;
	height: 440px;
	margin-top: -6em;
	padding: 6.4em 0 2em;
	background-image: url(../img/contact-bg.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-color: rgba(255, 255, 255, 0.33);
	background-blend-mode: lighten;
}

.contact-bg::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(179, 248, 255, 0.38);
}

.contact-inner {
	position: relative;
	width: 100%;
	max-width: 1100px;
	height: 100%;
	margin: 0 auto;
	padding: 1.8em 2.4em;
	border-radius: 0.8em;
	background-color: #fff;
}

.contact-inner::after {
	display: block;
	position: absolute;
	top: -2.7em;
	left: 4em;
	width: 136px;
	height: 121px;
	content: "";
	background-image: url(../img/contact-dog.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.contact-desc {
	margin: 0 0 1.2em;
	font-size: 20px;
}

.conatct-link-wrap {
	display: flex;
	max-width: 980px;
	margin: 0 auto;
}

.conatct-link-box {
	position: relative;
	width: 50%;
	padding: 0;
}

.contact-tel-img {
	padding: 0 1em 0 0;
	border-right: solid 1px #c6c6c6;
}

.doc-appli-wrap {
	display: flex;
	justify-content: space-between;
	padding: 0 0 0 1.6em;
}

a.doc-appli-link {
	display: table;
        vertical-align: middle;
	position: relative;
	width: 220px;
	height: 60%;
	padding: 3.4em 2em 0.8em;
	border-radius: 0.8em;
	color: #fff;
	font-size: 22px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background-color: #333;
	background-repeat: no-repeat;
	background-position: top 0.7em center;
	background-size: 2em;
}

a.doc-appli-link::after {
	position: absolute;
	right: 0.6em;
	bottom: 1.15em;
	content: ">";
}

a.doc-appli-link.orange {
	background-color: #29a5dc;
	background-image: url(../img/ioc-document.svg);
}

a.doc-appli-link.red {
	background-color: #eb5a24;
	background-position: top 1em center;
	background-image: url(../img/check.svg);
}

a:hover.doc-appli-link {
	opacity: 0.6;
}

.top-form-link-wrap {
	display: flex;
	justify-content: space-between;
	width: 96%;
	margin: 1.2em auto 0;
}

a.top-form-link {
	display: block;
	width: calc(94% / 2);
	padding: 0.44em 1.6em;
	border: solid 2px #c6c6c6;
	border-radius: 0.4em;
	font-size: 24px;
	text-align: center;
	text-decoration: none;
	background-size: 1em;
	background-position: center right 0.4em;
	background-repeat: no-repeat;
}



a.top-form-link.lightblu {
	color: #29a5dc;
	background-image: url(../img/btn-arrow-blu.svg);
}

a.top-form-link.darkorange {
	color: #eb5a24;
	background-image: url(../img/btn-arrow-orange.svg);
}

a.top-form-link.green {
	color: #008c45;
	background-image: url("../img/btn-arrow-green.svg");
}


.question,
.mail-ico,
.doc-ico{
	padding: 0.22em 0 0.22em 2em;
	background-size: 1.5em;
	background-position: center left;
	background-repeat: no-repeat;
}

.question {
	background-image: url(../img/question.svg);
}

.mail-ico {
	background-image: url(../img/mail-orange.svg);
}

.doc-ico {
	background-image: url(../img/ioc-document_green.svg);
}


a:hover.top-form-link {
	opacity: 0.6;
}

/* TOPバナー部分
---------------------------------------------------------- */
.top-banner-area {
	padding: 3em 0 5em;
}

.top-banner-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 1200px) {
	.top-banner-inner {
		width: 80%;
	}
}

a.top-banner {
	width: calc(96% / 3);
}

a.top-banner {
	opacity: 1;
}

a:hover.top-banner {
	opacity: 0.6;
}


/*固定ページ
---------------------------------------------------------- */
.eyecatch-img-wrap {
	position: relative;
	width: 100%;
	height: 330px;
    overflow: hidden;
}

.eyecatch-img-wrap.contactform {
	height: 250px;
}

.eyecatch-img-wrap::after {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: rgb(0 0 0 / 10%);
}

img.page-img {
	width: 780px;
}

.page-info-wrap {
	z-index: 1;
	position: absolute;
	top: 0;
	right: 0;
	width: 60%;
	height: 100%;
	padding: 5em 6em;
	color: #000;
	background: #8bd7e8;
	clip-path: polygon(4.8em 0, 100% 0%, 100% 100%, 0% 100%);
}

.page-info-wrap::before {
	display: block;
	z-index: 1;
	position: absolute;
	top: 50%;
	right: -12em;
	width: 880px;
	height: 32px;
	content: "";
	background-image: url(../img/bg-line.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: rotate(-45deg) translateY(-50%);
}

.page-info-wrap-form {
	z-index: 1;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	padding: 2em 6em;
	color: #fff;
	background: #8bd7e8;
	text-align: center;
}

.page-info-wrap-form .page-title-jp {
	padding: 0.3em 0 1em;
}

.page-info-wrap-form::before {
	display: block;
	z-index: 1;
	position: relative;
	top: 50%;
	right: -60em;
	width: 880px;
	height: 32px;
	content: "";
	background-image: url(../img/bg-line.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: rotate(-45deg) translateY(-50%);
}

.page-info-wrap-form::after {
	display: block;
	z-index: 1;
	position: relative;
	top: 50%;
	left: -24em;
	width: 880px;
	height: 32px;
	content: "";
	background-image: url(../img/bg-line.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: rotate(-45deg) translateY(-50%);
}

.page-title-en {
	font-size: 30px;
}

.page-title-jp {
	position: relative;
	padding: 1.2em 0;
	font-size: 40px;
	z-index: 2;
}

.page-title-jp.tit-wrap {
    padding: 0.6em 0 0.75em;
}

.page-title-jp.sub {
	padding: 1.2em 0 0.5em;
}

.page-title-jp::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 480px;
	height: 2px;
	content: "";
	background-color: #fff;
}

.page-info-wrap-form .page-title-jp::after {
	left: 50%;
	transform: translateX(-50%);
}

.page-subtitle-jp {
	font-size: 0.625em;
	display: block;
}

@media screen and (max-width: 900px) {
	.page-info-wrap {
		width: calc(100% - 390px);
	}
}

@media screen and (min-width: 1600px) {
	.page-info-wrap {
		width: calc(100% - 680px);
	}
}

ul.page-anker-link-wrap {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: center;
	font-size: 18px;
	background: #fff;
	box-shadow: 0 0.2em 0.3em rgb(0 0 0 / 10%);
}

.page-anker-link {
	position: relative;
}

.page-anker-link::after {
	display: block;
	position: absolute;
	top: 50%;
	right: 0;
	width: 2px;
	height: 1.1em;
	border-radius: 1px;
	content: "";
	background-color: #333;
	transform: translateY(-50%);
}

.page-anker-link:last-child::after {
	content: none;
}

a.anker-link-btn {
	position: relative;
	padding: 1.3em 2.4em;
	display: block;
	color: #333;
	text-decoration: none;
}

@media only screen and (max-width: 1400px) {
	a.anker-link-btn {
		padding: 1.3em;
	}
}

.page-anker-link-wrap.min a.anker-link-btn {
	padding: 1.3em 1.6em;
}

a:hover.anker-link-btn {
	color: #96979a;
}

a.anker-link-btn::after {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	content: "";
	background-color: #29a5dc;
	transition-property: all;
	transition-duration: 0.4s;
	transform: scaleX(0);
}

a:hover.anker-link-btn::after {
	transform: scaleX(0.25);
}

.page-wrap.first{
	padding: 4em 1em;
}

.page-wrap {
	padding: 4em 1em;
}

.page-wrap2 {
	padding: 4em 0 6em;
}

/*右上・左下セット*/
.bg-pattern-orange {
	background-image: url(../img/bg-pattern-right-orange.svg), url(../img/bg-pattern-left-orange.svg);
	background-position: top right, bottom 0% left;
	background-repeat: no-repeat, no-repeat;
	background-size: 27%;
}

/*ライン*/
.bg-pattern-orange02 {
	background-image: url("../img/bg-pattern-straddle-orange.svg");
	background-position: top center;
	background-repeat: no-repeat;
	background-size: 100%;
}

/*左上のみ*/
.bg-pattern-orange03 {
	background-image: url("../img/bg-pattern-left-orange.svg");
	background-position: top left;
	background-repeat: no-repeat;
	background-size: 27%;
}

/*右上・左上下中央セット*/
.bg-pattern-orange04 {
	background-image: url("../img/bg-pattern-right-orange.svg"), url("../img/bg-pattern-left-orange.svg");
	background-position: top right, bottom 50% left;
	background-repeat: no-repeat, no-repeat;
	background-size: 27%;
}

/*右上のみ*/
.bg-pattern-orange05 {
	background-image: url(../img/bg-pattern-right-orange.svg);
	background-position: top right;
	background-repeat: no-repeat;
	background-size: 27%;
}


.page-subtitle {
	font-size: 40px;
	color: #000;
}

.page-underline-subtitle {
	position: relative;
	padding-bottom: 0.9em;
	/*color: #eb5a24;*/
    color: #000;
	font-size: 32px;
}

.page-underline-subtitle::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 9em;
	height: 3px;
	content: "";
	background-color: #29a5dc;
	transform: translateX(-50%);
}

.con-underline-subtitle {
	position: relative;
	padding-bottom: 0.9em;
	color: #000;
	font-size: 30px;
}

.con-underline-subtitle::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 5em;
	height: 3px;
	content: "";
	background-color: #29a5dc;
	transform: translateX(-50%);
}

h2.con-underline-subtitle.mail,
h2.con-underline-subtitle.check,
h2.con-underline-subtitle.doc {
	padding-top: 2em;
}

h2.con-underline-subtitle.mail::before,
h2.con-underline-subtitle.check::before,
h2.con-underline-subtitle.doc::before {
	display: block;
	position: absolute;
	top: 0.5em;
	left: 50%;
	width: 40px;
	height: 30px;
	content: "";
	background-repeat: no-repeat;
	background-position: center;
	transform: translateX(-50%);
	background-size: contain;
}

h2.con-underline-subtitle.mail::before {
	background-image: url(../img/mail-con.svg);
}

h2.con-underline-subtitle.check::before {
	background-image: url(../img/check-black.svg);
}

h2.con-underline-subtitle.doc::before {
	background-image: url(../img/doc-con.svg);
}

.reicon {
	position: relative;
}

.reicon::before,
.reicon::after {
	display: block;
	position: absolute;
	top: 20%;
	width: 140px;
	height: 130px;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	transform: translateY(-50%);
}

.reicon::before {
	background-image: url(../img/contact-dog.png);
	left: calc((100% - 900px) / 2);
}

.reicon::after {
	/*background-image: url(../img/car-illust2.svg);*/
	right: calc((100% - 900px) / 2);
}

.enclosure {
	position: relative;
	max-width: 966px;
	margin: 0 auto;
	padding: 1.6em 1em;
	border: solid 3px #29a5dc;
	border-radius: 1em;
	background: #fff;
}

.enclosure.illust {
	padding: 6em 1em 1.6em;
	background-image: url(../img/car-illust.svg);
	background-repeat: no-repeat;
	background-position: top 2em center;
	background-size: 36%;
}

.kuma,
.kuma2,
.dog3,
.dog4{
	position: relative;
}

.kuma::after {
	display: block;
	position: absolute;
	top: -124px;
	left: 3em;
	width: 150px;
	height: 121px;
	content: "";
	background-image: url(../img/contact-dog.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.kuma2::after {
	display: block;
	position: absolute;
	top: -124px;
	left: 2em;
	width: 136px;
	height: 121px;
	content: "";
	background-image: url(../img/contact-kuma2.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.dog3::after {
	display: block;
	position: absolute;
	top: -132px;
	left: 3em;
	width: 161px;
	height: 131px;
	content: "";
	background-image: url(../img/aki_c.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.dog4::after {
	display: block;
	position: absolute;
	top: -110px;
	right: 3em;
	width: 133px;
	height: 110px;
	content: "";
	background-image: url(../img/aki_c.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.car2::before {
	display: block;
	position: absolute;
	top: -7.6em;
	right: 1em;
	width: 140px;
	height: 130px;
	content: "";
	background-image: url(../img/car-illust2.svg);
	background-repeat: no-repeat;
	background-size: contain;
}

.enclosure-title {
	position: relative;
	margin: 0 1em 0.8em;
	padding: 0 0 0.8em;
	border-bottom: solid 3px #29a5dc;
	color: #151515;
	font-size: 28px;
}

p.enclosure-txt {
	color: #333;
	font-size: 20px;
	line-height: 1.8;
}

/**/

ul.variouslist-wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	margin: 1.6em auto;
}

ul.variouslist-wrap li{
    text-align: center;
	align-items: center;
	width: 31.6%;
	margin-bottom: 1em;
	padding: 1.25em 0;
	border-radius: 1em;
	color: #333;
	font-size: 20px;
	background: #a8e2f4;
}

ul.variouslist-wrap li a{
    display: block;
	max-width: 188px;
    margin: 0px auto;
	padding: 1.05em 0em;
    border: 1px solid #000;
    -webkit-border-radius: 25px;
    -moz-border-radius: 25px;
    border-radius: 25px;
    color: #333;
	font-size: 15px;
	background: #fff;
    text-decoration: none;
    /**/
    background-image: url(../img/news_ico.png);
    background-position: center right 0.8em;
    background-size: 26px auto;
    background-repeat: no-repeat;
}

ul.variouslist-wrap li p{
	display: block;
    margin: 0.9em 0 0.9em;
    font-size: 25px;
    color: #000;
    font-weight: bold;
}


/**/

.licence-link-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	max-width: 920px;
	margin: 1.6em auto;
}


a.licence-link {
	display: flex;
	align-items: center;
	width: 31.6%;
	margin-bottom: 1em;
	padding: 0.8em 1em 0.8em 0.56em;
	border-radius: 1em;
	color: #333;
	font-size: 20px;
    font-weight: bold;
	text-decoration: none;
	background: #fff;
	background-image: url(../img/arrow-icon-glay.svg);
	background-repeat: no-repeat;
	background-position: center right 0.64em;
	background-size: 1.1em;
	box-shadow: 0 0 0.3em rgba(0, 0, 0, 0.3);
}

a.licence-link.red {
	color: #e71c24;
}

a.licence-link.green {
	color: #006837;
}

a.licence-link.lightblu {
	color: #29a5dc;
}

a.licence-link.lightgreen {
	color: #008c45;
}

a.licence-link.darkorange {
	color: #eb5a24;
}

a.licence-link.blu {
	color: #0071b6;
}

a:hover.licence-link,
a.licence-link.current {
	color: #000;
	background: #29a5dc;
	background-image: url("../img/arrow-icon-glay.svg");
	background-repeat: no-repeat;
	background-position: center right 0.64em;
	background-size: 1.1em;
}

a.licence-link.current {
	color: #fff;
	background-image: url("../img/arrow-icon-white.svg");
}

.plan-large-img {
	width: 207px;
	height: auto;
	border-radius: 50%;
    display: inline-block;
}

.plan-min-img {
	width: 70px;
	height: auto;
	margin-right: 0.64em;
	border-radius: 50%;
}

.h3-title {
	position: relative;
	color: #000000;
	font-size: 28px;
	padding: 0 0 0.6em;
}

.h3-title::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 6.6em;
	height: 3px;
	content: "";
	background-color: #29a5dc;
	transform: translateX(-50%);
}

.horizontal-img-txt-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	margin-bottom: 4em;
}

.horizontal-img-txt-wrap.horizontal-img-txt-top {
	align-items: flex-start;
}

.horizontal-img-txt-wrap.reverse {
	flex-flow: row-reverse;
}

figure.horizontal-img-wrap {
	border-radius: 1.2em;
	overflow: hidden;
}

.horizontal-caption {
	text-align: center;
	margin: 0.4em 0;
	font-size: 20px;
}

.horizontal-txt-box {
	width: 50%;
	padding: 0.4em 2em;
}

.horizontal-txt-box2 {
	width: 50%;
	padding: 0em 2em 0.4em 3em;
}

.reverse .horizontal-txt-box2 {
	padding: 0.4em 4em 0.4em 2em;
}

.horizontal-title {
	font-size: 23px;
	line-height: 1.7;
	color: #333;
}

p.horizontal-txt {
	font-size: 17px;
	line-height: 1.8;
	color: #333;
}

p.horizontal2-txt {
	font-size: 19px;
	line-height: 1.8;
	color: #333;
}
p.horizontal2-txt.aki {
	display: flex;
}

.mini-castle {
	display: flex;
	position: relative;
	justify-content: flex-start;
	align-items: center;
	margin: 0.56em 0 1.6em;
	padding: 0.8em 1.6em 0.8em 3.2em;
	border: solid 2px #dcdcdc;
	border-radius: 0.8em;
	color: #333;
	background-color: #fff;
}

.mini-castle.orange {
	border: solid 2px #F5AA3B;
}

.mini-castle.blu {
	border: solid 2px #29a5dc;
}

.mini-castle.multistage{
	display: block;
}

.mini-castle.multistage ul li{
    list-style-type: none;
    margin: 1.0em auto;
}

.mini-castle.multistage ul li.aki{
	display: flex;
}

.mini-castle.multistage ul li.aki span{
	width: 135px;
}

.mini-castle.multistage ul li::before{
    position: relative;
    top: 2px;
    left: -18px;
    display: inline-block;
    width: 0.9em;
    height: 0.9em;
    content: '';
    border-radius: 100%;
    background: #29a5dc;
}

.mini-castle::after {
	position: absolute;
	content: "";
	display: block;
	width: 0.9em;
	height: 0.9em;
	background: #dcdcdc;
	border-radius: 50%;
	top: 50%;
	left: 1.6em;
	transform: translateY(-50%);
}

.mini-castle.multistage::after{
	display: none;
}

.mini-castle.orange::after {
	background: #F18D1E;
}

.mini-castle.blu::after{
	background: #29a5dc;
}

.mini-castle.aftop::after {
	top: 25%;
}


h3.star-title {
	width: 100%;
	max-width: 1000px;
	margin: 8em auto 1em;
	padding: 0 0 1em;
	border-bottom: solid 3px #29a5dc;
	color: #151515;
	font-size: 23px;
}

.star-title.aki {
    font-size: 32px;
}

h3.bus-title {
	width: 100%;
	max-width: 1000px;
	margin: 8em auto 1em;
	padding: 0 0 1em;
	border-bottom: solid 1px #000;
	color: #151515;
	font-size: 23px;
}

ul.plan-list-ul {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}

.plan-list-li {
	position: relative;
	margin-bottom: 1.2em;
	padding: 0.9em 2.6em;
	border: solid 2px #e0e0e0;
	border-radius: 0.4em;
}

.plan-list-li::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 1em;
	width: 0.9em;
	height: 0.9em;
	border-radius: 50%;
	content: "";
	background-color: #29a5dc;
	transform: translateY(-50%);
}

a.plan-list {
	color: #333;
	font-size: 22px;
}

a:hover.plan-list {
	color: #0071b6;
	text-decoration: underline;
}

/*水色*/
.orange-bg {
	background-color: #8bd7e8;
}

.blue-bg {
	background-color: #29a5dc;
}

.enclosure-glay {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 1em 2.4em 1.6em;
	border: solid 2px #e0e0e0;
	border-radius: 0.4em;
	background-color: #fff;
}

h3.enclosure-glay-title {
	margin-bottom: 0.8em;
	padding-bottom: 0.6em;
	border-bottom: solid 3px #c6c6c6;
	color: #000;
	font-size: 26px;
}

ul.orangecircle-ul {
	font-size: 19px;
	color: #333;
}

ul.orangecircle-ul.plan {
	max-width: 1000px;
	margin: 0 auto 3em;
}

li.orangecircle-li {
	position: relative;
	padding: 0 0 0 1.8em;
	line-height: 1.5;
	margin-bottom: 0.9em;
}

li.orangecircle-li.red {
	margin-bottom: 1.8em;
}

li.orangecircle-li::after {
	display: block;
	position: absolute;
	top: 0.3em;
	left: 0.5em;
	width: 0.9em;
	height: 0.9em;
	border-radius: 50%;
	content: "";
	background-color: #29a5dc;
}

li.orangecircle-li.red::after {
	background-color: #e61c24;
}

.page-large-txt {
	color: #333;
	font-size: 20px;
	line-height: 1.7;
}

.page-large-txt2 {
color: #333;
    font-size: 20px;
    line-height: 1.7;
    list-style: none;
    width: 900px;
    text-align: left;
    margin: 0 auto 1.8em;
}


.price-table {
	font-size: 20px;
	text-align: center;
	color: #333;
}

.table-border {
	border-collapse: collapse;
	border: 2px solid #c5c5c5;
	background-color: #fff;
}

.table-border th,
.table-border td {
	border: 2px solid #c5c5c5;
	
}

.table-border td {
	padding: 0.6em;
	
}

thead.price-head.at {
	color: #fff;
	background-color: #29a4db;
}

thead.price-head.mt {
	color: #fff;
	background-color: #39ae4a;
}

/*※黄色※*/
thead.price-head.ore {
	color: #fff;
	background-color: #29a5dc;
}

thead.price-head.blu {
	color: #fff;
	background-color: #0071b6;
}

thead.price-head.eg {
	color: #fff;
	background-color: #00a397;
}

.price-table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0.6em;
	font-size: 20px;
	text-align: center;
}


.plan-table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0.6em;
	font-size: 20px;
	text-align: center;
}

.plan-table tr th{
	width: 35%;
	font-size: 18px;
	padding: 1em 0;
	background: #29a5dc;
	color: #fff;
}

.plan-table tr td{
	width: 65%;
	font-size: 18px;
}

.season-table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0.6em;
	font-size: 20px;
	text-align: center;
}


.season-table tr td{
	width: calc(100% / 6);
	font-size: 18px;
}

.price-table02 {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 0.6em;
	font-size: 20px;
	text-align: center;
}

.price-table02 tr th{
	width: calc(100% / 4);
	font-size: 18px;
	padding: 1em 0;
	background: #29a5dc;
	color: #fff;
}

.price-table02 tr td{
	font-size: 18px;
}



.front-segmentation {
	width: 23%;
	height: 109px;
	background-image: url(../img/bunkatu.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

h4.price-title {
	padding: 0.8em 2em 0.8em 5.6em;
	color: #151515;
	font-size: 24px;
}

h4.price-title.at {
	border-bottom: solid 2px #29a4db;
	background-image: url(../img/at-icon.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.mt {
	border-bottom: solid 2px #39ae4a;
	background-image: url(../img/mt-icon.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.op {
	border-bottom: solid 2px #29a4db;
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
	position: relative;
}

h4.price-title.op::before {
	content: '';
	display: inline-block;
	background: #29a5dc;
	width: 20px;
	height: 20px;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 80px;
	transform: translateY(-50%);
}


h4.price-title.bike {
	border-bottom: solid 2px #29a4db;
	background-image: url(../img/bike-ico.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.bike-mt {
	border-bottom: solid 2px #39af4a;
	background-image: url(../img/bike-mt-ico.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.bike-at {
	border-bottom: solid 2px #29a5dc;
	background-image: url(../img/bike-at-ico.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.minibike-at {
	border-bottom: solid 2px #00a397;
	background-image: url(../img/minibike-at-ico.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

h4.price-title.no-ico {
	background-image: none;
	padding: 0.8em 2em;
}

ul.asterisk-ul {
	color: #333;
}

.width1000 {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto !important;
}

.width900 {
	width: 100%;
	max-width: 900px;
	margin: 0 auto !important;
}

li.asterisk-li {
	position: relative;
	margin-bottom: 0.6em;
	padding-left: 1.1em;
	line-height: 1.4;
}

li.asterisk-li::before {
	position: absolute;
	content: "※";
	top: 0;
	left: 0;
}

li.asterisk-li.orange::before {
	color: #eb5a24;
}

li.asterisk-li.orange {
	color: #333;
}

.anker-link-block {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

a.anker-block {
	display: flex;
	align-items: center;
	width: 19%;
	min-height: 84px;
	margin: 0 1% 0.8em 0;
	padding: 0.8em 2.4em;
	border-radius: 0.8em;
	color: #333;
	font-size: 18px;
	text-decoration: none;
	background: #fff;
	background-image: url(../img/anker-ico.svg);
	background-repeat: no-repeat;
	background-size: 1.2em;
	background-position: center right 0.8em;
}

a:hover.anker-block {
	color: #96979a;
}

.light-yellow {
	background-color: #fffef3;
}

.reser-link-wrap,
.reser-link-wrap2 {
	position: relative;
	width: 100%;
	max-width: 1000px;
	margin: 9em auto 1em;
	padding: 1em 2em;
	border: solid 3px #e0e0e0;
	background: #fff;
	z-index: 2;
}

.reser-link-wrap2 {
	margin: 1em auto 1.2em;
}

.kuma-reservation-reception {
	position: relative;
	z-index: 0;
}

.kuma-reservation-reception::before {
	display: block;
	position: absolute;
	top: -120px;
	left: 50%;
	width: 90%;
	max-width: 754px;
	height: 158px;
	content: "";
	background-image: url("../img/entrance/citrus-reservation-reception.png");
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: cover;
	transform: translateX(-50%);
}

img.call-info-img {
	max-width: 880px;
	margin: 0 auto 0.4em;
}

p.call-info-txt {
	text-align: center;
}

.call-info {
	padding: 0 0 1em;
	margin-bottom: 1em;
	border-bottom: solid 2px #e0e0e0;
}

.call-info2 {
	padding: 0;
	margin-bottom: 1em;
}

.call-num {
	font-size: 24px;
}

.call-num.aki {
	display: flex;
	font-size: 24px;
}

.call-form-info-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

a.form-link-btn {
	display: block;
	position: relative;
	width: 360px;
	padding: 0.7em 2em;
	border-radius: 0.4em;
	color: #000;
	font-size: 22px;
	text-align: center;
	text-decoration: none;
	background-color: #bfbfbf;
	background-image: url(../img/btn-arrow-black.svg);
	background-repeat: no-repeat;
	background-position: center right 0.4em;
	background-size: 1em;
}

a.form-link-btn.contact {
	background-color: #fff;
    border: 3px solid #ADADAD;
    box-sizing: border-box;
}

a.form-link-btn.request {
	background-color: #39af4a;
    color: #fff;
	background-image: url(../img/btn-arrow-white.svg);
}

a.form-link-btn.entrance {
	background-color: #0071b6;
    color: #fff;
	background-image: url(../img/btn-arrow-white.svg);
}

a.form-link-btn.long {
	width: 440px;
}

a.form-link-btn::before {
	display: block;
	position: absolute;
	top: 50%;
	left: 1em;
	width: 1.4em;
	height: 1.4em;
	content: "";
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	transform: translateY(-50%);
}

a.form-link-btn.contact::before {
	background-image: url(../img/ioc-mail.svg);
}

a.form-link-btn.request::before {
	background-image: url(../img/ioc-document.svg);
}

a.form-link-btn.entrance::before {
	background-image: url(../img/check.svg);
}

a:hover.form-link-btn {
	opacity: 0.6;
}

.form-info-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
	margin-top: 1.6em;
}

.orange-band-bg {
	position: relative;
}

.orange-band-bg::before {
	display: block;
	z-index: -1;
	position: absolute;
	top: 59%;
	left: 50%;
	width: 100%;
	height: 370px;
	content: "";
	background-color: #c7f1ff;
	transform: translate(-50%, -50%);
}

.enclosure-glay-each {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding: 2em 4.8em 1em;
	border: solid 2px #e0e0e0;
	background-color: #fff;
}

.normal-table {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto 2px;
	border: none;
	border-collapse: collapse;
	font-size: 18px;
	line-height: 1.44;
}

.normal-table td,
.normal-table th,
.normal-table tr {
	border: 1px solid #c6c6c6;
	border-spacing: 0;
	border-spacing: 0;
	padding: 0.6em 1.2em;
}

.normal-table tr td:first-child {
	width: 12em;
	color: #000000;
	text-align: left;
	vertical-align: baseline;
	background-color: #c7f1ff;
	white-space: nowrap;
}

.normal-table tr td > p {
	line-height: 1.5;
	margin: 0.6em 0;
}

.normal-table td {
	background-color: #fff;
}

ol.ol-list {
	counter-reset: number 0;
}

ol.ol-list.green {
	counter-reset: number 5;
}

ol.ol-list.lightblu {
	counter-reset: number 9;
}

ol.ol-list .ol-list-li::before {
	display: block;
	position: absolute;
	top: 0.25em;
	left: 0.5em;
	width: 1.6em;
	height: auto;
	padding: 0.28em 0;
	border-radius: 50%;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	content: counter(number);
	counter-increment: number 1;
	background: #ff8c1e;
}

ol.ol-list.green .ol-list-li::before {
	background: #39af4a;
}

ol.ol-list.lightblu .ol-list-li::before {
	background: #29a5dc;
}

ol.ol-list .ol-list-li::after {
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 12px 8.5px 0 8.5px;
	border-color: #ffe6d1 transparent transparent transparent;
	bottom: -1.1em;
	left: 50%;
	transform: translateX(-50%);
}

ol.ol-list .ol-list-li:last-child::after {
	content: none;
}

li.ol-list-li {
	position: relative;
	margin: 1.6em 0;
	padding: 0.88em 0.88em 0.88em 4em;
	border: solid 2px #f5aa3b;
	border-radius: 0.4em;
	color: #333;
	font-size: 20px;
	text-align: center;
	background-color: #fffbee;
}

ol.ol-list.green li.ol-list-li {
	border: solid 2px #86c03f;
	background-color: #fdfff0;
}

ol.ol-list.lightblu li.ol-list-li {
	border: solid 2px #29a5dc;
	background-color: #f3fcff;
}

.ol-list-li-box {
	background: #fff;
	border: solid 2px #29a5dc;
	padding: 0.64em;
	margin: 0.8em 0.8em 0.2em;
	text-align: left;
	color: #333;
	border-radius: 0.4em;
	position: relative;
}

.ol-list-li-box.green {
	border: solid 2px #86c03f;
}

.ol-list-li-box.orange {
	border: solid 2px #F5AA3B;
}

.ol-list-li .ol-list-li-box:first-child {
	margin-bottom: 2em;
}

.ol-list-li .ol-list-li-box:first-child::after {
	position: absolute;
	bottom: -1.1em;
	left: 46.5%;
	color: #29a5dc;
	font-weight: bold;
	font-size: 2em;
	content: "+";
	transform: translateX(-50%);
}

.ol-list-li .ol-list-li-box.green:first-child::after {
	color: #86c03f;
}

.ol-list-li .ol-list-li-box.orange:first-child::after {
	color: #F5AA3B;
}

.txt20,
.txt20-writing {
	font-size: 1.25em;
}

.txt20-writing {
	margin-top: 4em !important;
}

.balloon {
	position: relative;
	margin: 1.6em 0;
	padding: 0.88em;
	border: solid 2px #29a5db;
	border-radius: 0.4em;
	color: #333;
	font-size: 20px;
	text-align: center;
	background-color: #f3fcff;
}

.balloon:after,
.balloon:before {
	bottom: 100%;
	left: 50%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
}
.balloon:after {
	border-color: rgba(255, 255, 255, 0);
	border-bottom-color: #f3fcff;
	border-width: 13px;
	margin-left: -13px;
}
.balloon:before {
	border-color: rgba(51, 51, 51, 0);
	border-bottom-color: #29a5db;
	border-width: 16px;
	margin-left: -16px;
}

p.other-txt {
	margin-bottom: 1.6em;
	color: #333;
	font-size: 20px;
	text-align: center;
}

.other-privilege-wrap {
	position: relative;
	width: 995px;
	min-height: 170px;
	margin: 1.2em auto;
	padding: 1em 1em 1em 180px;
	border: solid 1px #e0e0e0;
	border-radius: 0.8em;
	background: #fff;
}

.privilege-img {
	position: absolute;
	top: 50%;
	left: 0.6em;
	width: 156px;
	height: auto;
	transform: translateY(-50%);
}

.privilege-ico {
	display: inline-block;
	margin-right: 0.4em;
	padding: 0.3em 0.8em 0.4em;
	border-radius: 0.24em;
	color: #fff;
	font-size: 24px;
	background-color: #eb5a24;
}

.privilege-title {
	font-size: 26px;
}

.privilege-title-inner {
	margin: 0 0 0.8em;
}

.privilege-txt {
	font-size: 18px;
	line-height: 1.6;
}

p.accordion-p {
	padding: 1em 0;
	color: #333;
	font-size: 20px;
}

.accordion-inner-wrap {
	width: 100%;
	max-width: 860px;
	margin: 0 auto;
}

table.tpoint-table {
	width: 100%;
	margin: 0 auto 1.6em;
	border: none;
	border-collapse: collapse;
	font-size: 18px;
}

.tpoint-table td,
.tpoint-tableth,
.tpoint-table tr {
	border: 1px solid #29a3da;
	border-spacing: 0;
	padding: 0.6em 1.2em;
}

td.tpoint-title {
	background: #29a3da;
	color: #fff;
}

img.tpoint-img {
	width: 180px;
	margin-right: 1em;
}

.tpoint-wrap {
	display: flex;
	align-items: center;
	line-height: 1.4;
}

h4.accordion-min-title {
	position: relative;
	margin: 0;
	padding: 0.4em 0.4em 0.48em 1.6em;
	border-bottom: solid 2px #adadad;
	color: #333;
	font-size: 21px;
}

h4.accordion-min-title::before {
	display: block;
	position: absolute;
	top: 0.7em;
	left: 0.4em;
	width: 0.8em;
	height: 0.8em;
	border-radius: 50%;
	content: "";
	background-color: #eb5a24;
}

.skip-price-wrap {
	display: flex;
	align-items: center;
	margin: 1em 0;
}

img.skip-price-img {
	width: 518px;
	margin: 0 1em 0 0;
}

.skip-price-txt {
	font-size: 24px;
	line-height: 1.4;
}

img.certified-img {
	position: absolute;
	top: -6em;
	left: 50%;
	width: 90%;
	max-width: 940px;
	transform: translateX(-50%);
}

/* 青から黄色 背景グラデーション */
.blu-yellow-gra {
	 background : rgba(220, 237, 244, 1);
	background: linear-gradient(90deg, rgba(218, 236, 246, 0.5) 0%, rgba(237, 246, 232, 0.5) 50%, rgba(255, 255, 218, 0.5) 100%);
}

.blu-yellow-gra2 {
	 background : #DCEDF4;
	 background : rgba(220, 237, 244, 1);
	
}

.certified-img-wrap {
	position: relative;
	height: 386px;
	margin-top: 8em;
}

.txt-normal-large {
	margin-bottom: 1em;
	font-size: 2em;
	line-height: 1.5;
}

.certified-txt {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	color: #333;
	line-height: 1.5;
}

.warning-note-wrap {
	width: 100%;
	max-width: 1000px;
	margin: 3em auto;
	padding: 1.2em 1em;
	border: solid 2px #c6c6c6;
	border-radius: 0.8em;
	font-size: 18px;
	line-height: 1.6;
}

.warning-note-title {
	font-size: 20px;
	margin-bottom: 0.4em;
	color: #333;
}

.margin-under {
	margin-bottom: 1.2em;
}

.support-bg {
	width: 100%;
	height: 320px;
	margin: 0 0 2em;
	background-image: url(../img/support-bg.jpg);
	background-repeat: repeat-x;
	background-position: center center;
	background-size: cover;
}

.supportlink-title {
	margin: 0 0 1.8em;
	color: #fff;
	font-size: 26px;
}

a.anker-block-s {
	display: block;
	position: relative;
	/*width: 18%;*/
	width: 22.5%;
	margin-bottom: 2.6em;
	padding: 2em 0.6em;
	border-radius: 0.6em;
	color: #333;
	font-size: 18px;
	line-height: 1.6;
	text-align: center;
	text-decoration: none;
	background-color: #fff;
	background-image: url(../img/anker-ico.svg);
	background-repeat: no-repeat;
	background-position: center bottom 0.4em;
	background-size: 1.2em;
}

a:hover.anker-block-s {
	color: #96979a;
}

.anker-link-block {
	counter-reset: number 0;
}

a.anker-block-s::before {
	position: absolute;
	top: -0.1em;
	left: 50%;
	color: #c7f1ff;
	font-size: 30px;
	content: counter(number) " ";
	counter-increment: number 1;
	transform: translateX(-50%);
}

a.anker-block-s::after {
	position: absolute;
	content: "";
	display: block;
	width: 90%;
	height: 2px;
	background-color: #e0e0e0;
	bottom: 1.5em;
	left: 50%;
	transform: translateX(-50%);
}

.support-wrap {
	counter-reset: number 0;
}

.support-con-wrap {
	position: relative;
	height: auto;
	min-height: 340px;
	padding: 2em 3em 2em 42%;
	border-bottom: solid 2px #e0e0e0;
}

img.support-img {
	position: absolute;
	top: 2em;
	left: 3em;
	width: 375px;
	height: 265px;
}

.support-con {
	position: relative;
	min-height: 3.4em;
	padding: 0 0 0.8em 2.6em;
	font-size: 30px;
	line-height: 1.3;
	background-image: url(../img/num-bg.svg);
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 2.2em;
}

.support-wrap .support-con-wrap .support-con::before {
	position: absolute;
	top: 0.35em;
	left: 0.1em;
	width: 1.9em;
	color: #c7f1ff;
	font-size: 32px;
	text-align: center;
	content: counter(number) " ";
	counter-increment: number 1;
}

p.support-txt {
	font-size: 18px;
	line-height: 1.7;
	margin-bottom: 1.6em;
}

.root-map-wrap {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
}

img.root-map-img {
	margin: 0 auto;
}

.warning-note-orange {
	width: 100%;
	max-width: 1000px;
	margin: 2em auto;
	padding: 2em 2.4em 1em;
	border: solid 2px #29a5dc;
	border-radius: 0.8em;
	background-color: #fff;
}

.center-btn {
	margin: 4em 0;
}

a.center-btn-orange {
	display: inline-block;
	padding: 1.2em 6em 1.2em 1.6em;
	border-radius: 0.8em;
	color: #fff;
	font-size: 18px;
	text-decoration: none;
	background-color: #eb5a24;
	background-image: url(../img/arrow-icon-white.svg);
	background-repeat: no-repeat;
	background-position: center right 1.4em;
	background-size: 1.2em;
}

a:hover.center-btn-orange {
	opacity: 0.6;
}

.wide-img-area {
	display: flex;
	flex-wrap: wrap;
	margin: 3em 0 8em;
}

.wide-img-area.kuma::after {
	left: calc((100% - 1100px) / 2);
	top: -120px;
}


figure.wide-img-wrap {
	width: 50%;
}

img.wide-img {
	width: 100%;
}

.four-reason-wrap.pr {
	display: flex;
	position: absolute;
	bottom: 0;
	left: 50%;
	flex-wrap: nowrap;
	margin: 0;
	transform: translate(-50%, 50%);
}

.pr-plan-box {
	counter-reset: number 0;
}

.pr-plan-wrap {
	display: flex;
	position: relative;
	justify-content: space-evenly;
	margin: 0 0 8em;
}

.orange-balloon {
	display: flex;
	top: -1.6em;
	left: 5em;
	justify-content: center;
	position: absolute;
	align-items: center;
	padding-left: 1.4em;
	width: 420px;
	height: 106px;
	color: #fff;
	font-size: 30px;
	text-align: center;
	background-image: url(../img/orange-balloon.svg);
	background-repeat: no-repeat;
	background-size: 100% 100%;
}

.pr-plan-info-box {
	position: relative;
	width: 76%;
	min-height: 416px;
	margin: 5em 0 0;
	padding: 3em 24em 3em 4em;
	border-radius: 0.8em;
}

.pr-plan-info-box .link_btn {
	margin-top: 10px;
	width: 70%;

}


.pr-plan-info-box .link_btn a {
	display: block;
    width: 100%;
    line-height: 50px;
    background: url(../img/news_ico.png)no-repeat #fff right 18px center;
    border-radius: 33.5px;
    border: 1px solid #000;
    box-sizing: border-box;
    font-size: 17px;
    color: #000;
    text-align: center;
    text-decoration: none;
	
}

.pr-plan-info-box::before {
	display: block;
	position: absolute;
	top: 0;
	left: 3em;
	width: 90px;
	height: 90px;
	content: "";
	background-image: url(../img/num-bg.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	transform: translateY(-50%);
}

.pr-plan-box .pr-plan-wrap .pr-plan-info-box::after {
	position: absolute;
	top: 0;
	left: 1.75em;
	color: #0071b6;
	font-size: 45px;
	line-height: 1;
	content: counter(number) " ";
	counter-increment: number 1;
	transform: translateY(-55%);
}

.pr-plan-title {
	color: #0071b6;
	font-size: 30px;
}

p.pr-plan-txt {
	color: #151515;
	font-size: 18px;
	line-height: 1.8;
}

figure.pr-plan-img-wrap {
	position: relative;
	width: 550px;
	margin: 0 0 4em -18em;
}

a.darkor-link {
	display: block;
	width: 385px;
	margin: 1em 0;
	padding: 0.8em;
	border: solid 2px;
	border-radius: 0.8em;
	font-size: 1.312rem;
	text-align: center;
	text-decoration: none;
	background: #fff;
	color: #eb5a24;
}

a:hover.darkor-link {
	opacity: 0.6;
	color: #eb5a24;
}

.big-orange-btn-wrap {
	margin: -2em 0 4em;
}

.big-orange-btn-wrap.nomal {
	margin: 0;
}

a.big-orange-btn {
	display: flex;
	align-items: center;
	width: 825px;
	margin: 0 auto;
	padding: 3em 4em 3em 2em;
	border: solid 2px #c7f1ff;
	color: #000;
	background-color: #fff;
	text-align: left;
	text-decoration: none;
	background-image: url(../img/arrow-icon-darkorange-2.svg);
	background-size: 2em;
	background-repeat: no-repeat;
	background-position: center right 1.6em;
}

.big-orange-btn-en {
	font-size: 23px;
	margin-right: 2em;
}

.big-orange-btn-jp {
	font-size: 30px;
}

a:hover.big-orange-btn {
	opacity: 0.6;
}

.pr-plan-wrap:nth-child(even) {
	flex-flow: row-reverse;
}

.pr-plan-wrap:nth-child(even) .pr-plan-info-box {
	padding: 3em 4em 3em 24em;
}

.pr-plan-wrap:nth-child(even) figure.pr-plan-img-wrap {
	margin: 0 -18em 4em 0;
}

.pr-plan-wrap:nth-child(even) .orange-balloon {
	left: 25em;
}

.pr-plan-wrap:nth-child(even) .pr-plan-info-box::before {
	left: 23em;
}

.pr-plan-box .pr-plan-wrap:nth-child(even) .pr-plan-info-box::after {
	left: 8.9em;
}

.facility-img-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.facility-img-inner {
	margin: 0 0 3em;
}

.facility-caption {
	text-align: center;
	font-size: 19px;
	margin: 0.24em 0;
}

p.add-txt {
	margin: 3em;
}

.page-underline-subtitle.truck {
	color: #333;
}

.page-underline-subtitle.truck::after {
	width: 825px;
}

p.page-large-txt.txt-red {
	margin: 1em 0;
	color: #e71c24;
}


.truck-bg {
	width: 100%;
	height: 320px;
	margin: 0 0 2em;
	background-image: url(../img/truck-bg.jpg);
	background-repeat: repeat-x;
	background-position: center center;
	background-size: cover;
}

.simple-table {
	display: flex;
	width: 90%;
	margin: 1.6em auto;
	font-size: 18px;
	max-width: 440px;
	border: solid 2px #29a5dc;
	border-radius: 0.4em;
	background-color: #fff;
}

.simple-table > div {
	padding: 0.8em 1.2em;
}

.simple-table-th {
	background-color: #29a5dc;
	color: #fff;
}

.handling-car-wrap {
	position: relative;
	min-height: 288px;
	margin: 5.6em 0 0;
	background-color: #29a5dc;
}

.handling-car-inner {
	display: flex;
	position: relative;
	top: -3em;
	justify-content: space-between;
	width: 90%;
	max-width: 930px;
	margin: 0 auto;
}

img.handling-car-img {
	border-radius: 0.6em;
}

.handling-car-caption {
	text-align: center;
	margin: 0.4em;
	font-size: 23px;
	color: #fff;
}

.camp-table {
	width: 100%;
	border-collapse: collapse;
	margin: 1em 0 1.6em;
}

.camp-table thead {
	background-color: #ff8c1e;
	color: #fff;
	text-align: center;
}

.camp-table,
.camp-table td,
.camp-table th {
	border: 2px solid #c5c5c5;
}

.camp-table td {
	padding: 0.8em;
	text-align: center;
}

.camp-table02 {
	width: 100%;
	border-collapse: collapse;
	margin: 1em 0 1.6em;
}

.camp-table02 thead {
	background-color: #ff8c1e;
	color: #fff;
	text-align: center;
}

.camp-table02,
.camp-table02 td,
.camp-table02 th {
	border: 2px solid #c5c5c5;
}

.camp-table02 td {
	width: calc(100% / 4);
	padding: 0.8em;
	text-align: center;
}


.camp-table thead {
    background-color: #29a4db;
}
.camp-table02 thead {
    background-color: #29a4db;
}



td.td-width1 {
	width: 14em;
}

.td-width2 {
	width: 4em;
}

td.td-left {
	text-align: left;
}

p.txt-right {
	text-align: right;
	margin: 0.4em 0 -0.4em;
}

p.txt-margin {
	margin: 1.6em 0;
}

.surrounding-environment {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	width: 94%;
	max-width: 914px;
	margin: 4em auto;
	padding: 1.68em 2em;
	border: solid 2px #f5aa3b;
	border-radius: 0.8em;
	background-color: #fff;
}

.surrounding-img-wrap {
	width: 32%;
}

.surrounding-info-wrap {
	width: 68%;
}

h3.surrounding-title {
	font-size: 24px;
	color: #151515;
	padding: 0 0 0.6em;
	position: relative;
}

h3.surrounding-title::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	content: "";
	background-color: #c7f1ff;
}

p.surrounding-txt {
	margin: 0 0 1em;
	color: #333;
	font-size: 18px;
	line-height: 1.6;
}

p.surrounding-txt-min {
	color: #333;
	margin: 0 0 1em;
	line-height: 1.6;
}

a.surrounding-link {
	display: inline-block;
	margin: 0 1em 0 0;
	padding: 0.7em 3em 0.8em 1.2em;
	border: solid 2px #c6c6c6;
	border-radius: 0.4em;
	color: #333;
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
	background-color: #fff;
	background-image: url(../img/btn-arrow-orange.svg);
	background-repeat: no-repeat;
	background-position: center right 0.5em;
	background-size: 1.2em;
}

a.surrounding-link.long {
	width: 100%;
	max-width: 464px;
	margin: 1.6em auto;
	padding: 0.7em 2.4em 0.8em;
}

a:hover.surrounding-link {
	opacity: 0.6;
}

ul.ul-margin {
	margin: 1.2em 0 0;
}


ul.voice_box{
	display: flex;
}

ul.voice_box li{
	width: 100%;
    margin: 0 auto;
    padding: 2em;
    border: solid 2px #000;
    background-color: #fff;
    border-radius: 20px;
}

ul.voice_box li dl{
	display: flex;
	border-bottom: #29a5dc 2px solid;
	padding-bottom: 20px;
    margin-bottom: 20px;
	line-height : 35px;
	
}

ul.voice_box li dl dt{
	font-size: 20px;
	width: 25%;
	
}

ul.voice_box li dl dd{
	font-size: 18px;
	font-weight: 600;
	width: 75%;

}


ul.voice_box li p{
	line-height : 35px;

}



/* DON!DON!ドライブ
---------------------------------------------------------- */
section.page-wrap.dondon {
	margin-bottom: 6em;
	padding: 4em 0;
}

.pv-bgimg {
	padding: 3em 1em;
	background-image: url(../img/pv-bgimg.png);
	background-repeat: repeat-x;
	background-position: center center;
	background-size: cover;
	min-height: 784px;
}

.pv-title {
	position: relative;
	color: #fff;
	font-size: 32px;
}

.dondon-pv {
	width: 100%;
	max-width: 980px;
	margin: 0 auto;
}

.dot-border {
	width: 100%;
	max-width: 1000px;
	margin: 1.6em auto;
	padding: 4em 4.4em 2em;
	border: dashed 6px #c7f1ff;
	/* border: dotted 6px #c7f1ff; */
	border-radius: 1.2em;
	background-color: #fff;
	box-shadow: 0px 0px 16px -8px rgb(0 0 0 / 60%);
}

p.dot-border-txt {
	font-size: 20px;
	margin: 1em auto;
	line-height: 1.7;
}

.chara-info-wrap {
	display: flex;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 3em;
}

.chara-info-wrap.reverse {
	flex-flow: row-reverse;
}



.chara-bg.pully-bg {
	position: relative;
	width: 696px;
	height: 365px;
	background-image: url(../img/pully_syoukai.jpg);
	background-repeat: no-repeat;
	background-position: center;
}

.chara-bg.yoritomo-bg {
	position: relative;
	width: 696px;
	height: 404px;
	background-image: url(../img/yorimoto_syoukai.png);
	background-repeat: no-repeat;
	background-position: center;
}

.chara-info-inner {
	width: calc(100% - 696px);
	padding: 3em 5em 3em 3em;
}

.chara-info-wrap.reverse .chara-info-inner {
	padding: 3em 3em 3em 5em;
}

h3.chara-name {
	font-size: 32px;
}

p.chara-info {
	font-size: 18px;
	line-height: 1.7;
}

.chara-bg iframe {
	position: absolute !important;
	top: 50%;
	transform: translateY(-50%);
	left: 15%;
}

.chara-info-wrap.reverse .chara-bg iframe {
	right: 15%;
	left: unset;
}

.dot-border.min-p {
	padding: 2em;
}

.dondon-min-inner {
	display: flex;
	justify-content: space-between;
	flex-flow: row-reverse;
	align-items: center;
}

h4.dondon-mintitle {
	font-size: 23px;
	margin: 0;
}

p.ryou-txt {
	padding-right: 1.4em;
	color: #333;
	font-size: 18px;
	line-height: 1.8;
}

.what-dondon {
	width: 596px;
	margin: 0 auto;
}

.dot-border.faq {
	position: relative;
	padding: 3em;
	margin: 5em auto;
}

h3.dondon-balloon {
	background-image: url(../img/dondon-balloon.svg);
	width: 920px;
	height: 105px;
	background-repeat: no-repeat;
	font-size: 26px;
	padding: 0.86em 0 0.86em 3em;
	color: #fff;
	position: absolute;
	top: -1.6em;
	left: 50%;
	transform: translateX(-50%);
}

.don-faq-wrap {
	counter-reset: number 0;
}

.don-faq-wrap .dondon-balloon.don-list::before {
	counter-increment: number 1;
	content: "Q" counter(number) " " ".";
	white-space: nowrap;
	position: absolute;
	top: 38%;
	transform: translateY(-50%);
	left: 0.5em;
}

.dondon-faq-inner {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

.dondon-faq-img-wrap {
	width: 30%;
}

img.faq-img {
	margin: 0 auto;
}

p.faq-txt {
	font-size: 18px;
	line-height: 1.7;
	width: 70%;
}

.chara2 {
	position: relative;
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
	padding: 0;
}

.chara2::before,
.chara2::after {
	position: absolute;
	content: "";
	display: block;
	width: 160px;
	height: 160px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center bottom;
	bottom: -1.6em;
}

.chara2::before {
	left: 0;
}

.chara2::after {
	right: 0;
}

.bg-yellow{
	width: 100vw;
	background: #f0fdff;
	margin: auto
}


.pully::before {
	background-image: url(../img/small-pully.png);
}

.yoritomo::after {
	background-image: url(../img/small-yoritomo.png);
}

.robo::before {
	background-image: url(../img/small-robo.png);
}

.jiji::after {
	background-image: url(../img/small-jiji.png);
}

.tree::before {
	background-image: url(../img/small-tree.png);
}

.pyo::after {
	background-image: url(../img/small-pully-yoritomo.png);
}

.tawashi::before {
	background-image: url(../img/small-pully-tawashi.png);
}

.puro::after {
	background-image: url(../img/small-pully-puro.png);
}

.motedora::before {
	background-image: url(../img/small-pully-motedora.png);
}

.kiriko::after {
	background-image: url(../img/small-pully-kiriko.png);
}

.dondon-bg-01 {
	background-image: url(../img/dondon-bg-01.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

.dondon-bg-02 {
	background-image: url(../img/dondon-bg-02.svg);
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}

/* 投稿ページ
---------------------------------------------------------- */
.post-wrap {
	padding: 3em 0;
	min-height: 400px;
}

h2.post-title {
	font-size: 25px;
	padding: 1em;
	border-bottom: solid 2px #29a5dc;
	color: #333;
}

a.news-cat {
	display: inline-block;
	width: 160px;
	padding: 0.24em;
	border-radius: 0.2em;
	color: #fff;
	text-align: center;
	text-decoration: none;
	background-color: #29a5dc;
}

a:hover.news-cat {
	opacity: 0.6;
}

.news-wrap-box {
	display: flex;
	margin: 4em 0;
	justify-content: flex-start;
	flex-wrap: wrap;
}

figure.post-thumb {
	text-align: center;
	margin: 1.6em 0;
}

img.thumbnail-photo {
	margin: 0 auto;
}

.post-wrap p {
	margin: 1.2em 0 1.6em;
	font-size: 17px;
	line-height: 1.8;
}

.sentence-width {
	width: calc(1000px + 3.2em);
	margin: 0 auto;
	padding: 0 1.6em;
}

.pagination-box {
	display: flex;
	position: relative;
	justify-content: center;
	align-items: baseline;
	max-width: 1000px;
	margin: 7em auto 5em;
	padding: 0;
}

.pagination-box::before {
	display: block;
	position: absolute;
	top: -3em;
	left: 0;
	width: 100%;
	height: 3px;
	border-radius: 2px;
	content: "";
	background-color: #e0e0e0;
}

.prev-btn {
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.next-btn {
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}

.prev-btn > a,
.next-btn > a {
	display: block;
	width: 62px;
	height: 62px;
	border: solid 2px #c7c7c7;
	border-radius: 0.7em;
	background-position: center center;
	background-size: 1em;
	background-repeat: no-repeat;
}

.prev-btn > a {
	background-image: url(../img/pagenation-ico.svg);
}

.next-btn > a {
	background-image: url(../img/pagenation2-ico.svg);
}

.cat-wrap {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: center;
	margin: 3em 0;
}

select.cat-dropdown {
	background-color: #fff;
	border-radius: 0;
	font-size: 15px;
}

.drop-wrap {
	position: relative;
	display: flex;
	padding: 0.3em 1em;
	width: 32%;
	align-items: center;
}

select.cat-dropdown.cat,
select.cat-dropdown.arc {
	border-radius: 1.2em;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNy42OCAxNS4zMSI+PGcgaWQ9IuODrOOCpOODpOODvF8yIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvCAyIj48ZyBpZD0i44Os44Kk44Ok44O8XzciIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDciPjxwYXRoIGQ9Ik0wLDBIMTcuNjhMOC44NCwxNS4zMVoiLz48L2c+PC9nPjwvc3ZnPg==);
}

.drop-txt {
	white-space: nowrap;
	padding: 0 0.5em;
}

.archive-bg .cat-wrap {
	margin-bottom: 0;
}

a.box-info-link {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 1em 2.6em;
	border-radius: 1em;
	color: #fff;
	text-decoration: none;
	letter-spacing: 0.1em;
	white-space: nowrap;
	background-color: #29A5DC;
}

a.box-info-link::after {
	position: absolute;
	top: 44%;
	right: 1em;
	content: ">";
	transform: translateY(-50%);
}

a:hover.box-info-link {
	opacity: 0.6;
}

.news-list-link-wrap {
	display: inline-block;
}

.archive-margin {
	margin-bottom: 5em;
}

/* 各種プラン
---------------------------------------------------------- */
.item-area {
	padding: 3em 0;
}

.plan-large-txt {
	margin: 0 0 1em;
	color: #333;
	font-size: 32px;
	text-align: center;
	line-height: 1.4;
}

.plan-subtxt {
	text-align: center;
	font-size: 25px;
}

.plan-img-wrap img {
	margin: 0 auto 1.8em;
	border-radius: 1.2em;
}

.plan-subtxt {
	line-height: 1.6;
	margin-bottom: 1.6em;
}

.item-wrap-box {
	margin: 4em 0 6em;
}

.item-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.item-photo {
	width: 50%;
	max-width: 555px;
}

.item-photo img {
	border-radius: 1.6em;
}

.item-info-box {
	width: 50%;
	padding: 0.2em 2.4em 1em;
}

.item-ltxt {
	font-size: 24px;
	padding: 0.2em 0 1em;
	line-height: 1.5;
}

.item-txt {
	font-size: 17px;
	line-height: 1.8;
}

a.item-link-set {
	display: block;
	width: 75%;
	margin: 1.4em 0;
	padding: 0.9em 1.6em;
	border: solid 2px #c6c6c6;
	border-radius: 0.4em;
	color: #333;
	text-decoration: none;
	background-image: url("../img/btn-arrow-black.svg");
	background-repeat: no-repeat;
	background-position: center right 0.5em;
	background-size: 1.2em;
	background-color: #fff;
}

a:hover.item-link-set {
	opacity: 0.6;
}


.item-wrap-box:nth-child(even) .item-wrap {
	flex-flow: row-reverse;
	justify-content: flex-end;
}

.kyussai-box {
	position: relative;
	display: flex;
	width: 100%;
	max-width: 914px;
	margin: 3em auto;
	padding: 1.6em 2em;
	border: solid 2px #f4a93b;
	border-radius: 0.8em;
}

.kyusai-txt-wrap {
	padding: 0 0 0 1.8em;
	width: calc(576px + 1.8em);
}

h3.kyusai-title {
	margin: 0 0 1em;
	padding: 0.24em 0.6em;
	color: #fff;
	font-size: 24px;
	background-color: #f08c1e;
}

.kyusai-txt {
	font-size: 18px;
	line-height: 1.5;
}

.hs-point-wrap {
	padding: 0 0 3em;
	counter-reset: number 0;
}

h3.early-appli-title {
	font-size: 24px;
}

.point-box {
	position: relative;
	width: 93%;
	max-width: 1000px;
	margin: 1em auto;
	padding: 1.2em 1.6em 1.2em 8.8em;
	border: solid 4px #f4a93b;
	border-radius: 0.4em;
	font-size: 24px;
	background-color: #fff;
	line-height: 1.4;
}

.point-box:first-child::after {
	display: block;
	position: absolute;
	top: -125px;
	right: 3em;
	width: 136px;
	height: 121px;
	content: "";
	background-image: url(../img/contact-dog.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}

.hs-point-wrap .point-box::before {
	display: inline-block;
	position: absolute;
	top: -0.4em;
	left: -0.4em;
	padding: 0.3em 1.2em;
	border-radius: 1em;
	color: #fff;
	font-size: 34px;
	line-height: 1;
	text-align: center;
	content: "Point " counter(number) " ";
	counter-increment: number 1;
	background-color: #ea5a24;
}

.pt-yellow-line {
	display: inline-block;
	position: relative;
	font-size: 1.25em;
}

.pt-yellow-line::after {
	display: block;
	position: absolute;
	bottom: -5px;
	left: 0;
	width: 100%;
	height: 5px;
	content: "";
	background-color: #f5e721;
}

.two-column {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.two-column-table {
	width: calc(98% / 2);
	border: solid 2px #c5c5c5;
	background-color: #fff;
	margin-bottom: 1em;
}

h3.two-column-title {
	font-size: 30px;
	color: #fff;
	background-color: #333;
	margin: 0;
	padding: 0.4em 0.4em 0.4em 5em;
	text-align: center;
	background-size: 2.8em;
	background-repeat: no-repeat;
	background-position: bottom left 1em;
	border-bottom: solid 2px #c5c5c5;
}

h3.two-column-title.mt {
	background-image: url(../img/mt-icon-white.svg);
}

h3.two-column-title.lightgreen {
	background-color: #39ae4a;
}

h3.two-column-title.at {
	background-image: url(../img/at-icon-white.svg);
}

h3.two-column-title.lightblu {
	background-color: #29a4db;
}

span.two-column-subtitle {
	display: block;
	font-size: 0.6em;
	text-align: center;
}

.two-column-con {
	padding: 0 1.2em;
}

td.yoyaku {
	width: 40%;
}

.txtbus-normal-large {
	margin-bottom: 1em;
	font-size: 2em;
	line-height: 1.5;
}

.course-content {
	counter-reset: number 0;
}

.course-titke {
	position: relative;
	padding: 0.6em 1em 0.6em 3em;
	border-bottom: solid 4px #ff8c1e;
	color: #333;
	font-size: 30px;
	counter-increment: number 1;
}

.course-titke::before {
	content: counter(number) " " ".";
	display: inline-block;
	margin-right: 0.5em;
}

.course-intro-box {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 0 3em;
}

.course-photo {
	width: 300px;
	margin: 0 2em 0 0;
}

.course-photo img {
	border-radius: 1em;
}

.course-intro-info {
	width: calc(100% - (300px + 2em));
}

.course-intro-desc {
	font-size: 17px;
	line-height: 1.6;
}

.course-link-set-wrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 1.6em;
}

a.item-link-set.half {
	margin: 0 0 0.8em;
	width: calc(98% / 2);
}

.flow-list {
	counter-reset: number 0;
	max-width: 990px;
	margin: 1em auto !important;
	font-size: 18px;
}

li.flow-list-li {
	position: relative;
	padding: 0 0 0 3em;
	margin: 0 0 2em;
	line-height: 1.6;
	min-height: 3em;
}

.flow-list .flow-list-li::before {
	display: inline-block;
	position: absolute;
	top: -0.2em;
	left: 0;
	padding: 0.3em 0.5em;
	border-radius: 50%;
	color: #fff;
	font-size: 28px;
	line-height: 1;
	content: counter(number) " ";
	counter-increment: number 1;
	background-color: #ff8c1e;
}

li.flow-list-li::after {
	position: absolute;
	bottom: -0.8em;
	left: 0.75em;
	width: 0;
	height: 0;
	border-width: 11px 8px 0 8px;
	border-style: solid;
	border-color: #ffc392 transparent transparent transparent;
	content: "";
}

li.flow-list-li:last-child:after {
	content: none;
}

span.txtmin {
	display: block;
	font-size: 0.8em;
	margin-top: 0.5em;
}

h4.course-price-title {
	position: relative;
	margin: 1em 0 0.8em;
	padding: 0 0 0.5em;
	font-size: 28px;
}

h4.course-price-title::after {
	display: block;
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 8em;
	height: 2px;
	content: "";
	background-color: #ff8c1e;
	transform: translateX(-50%);
}

.toggle_title.cp {
	padding: 0 3em 0.4em 2.4em;
}

.toggle_title.cp::before {
	display: block;
	position: absolute;
	top: 0.56em;
	left: 1.2em;
	width: 0.88em;
	height: 0.88em;
	border-radius: 50%;
	content: "";
	background-color: #29a4db;
}

/*
.toggle_contents:nth-child(1) .toggle_title.cp::before,
.toggle_contents:nth-child(2) .toggle_title.cp::before {
	background-color: #006837;
}

.toggle_contents:nth-child(3) .toggle_title.cp::before,
.toggle_contents:nth-child(4) .toggle_title.cp::before {
	background-color: #00a296;
}

.toggle_contents:nth-child(5) .toggle_title.cp::before,
.toggle_contents:nth-child(6) .toggle_title.cp::before {
	background-color: #29a4db;
}

.toggle_contents:nth-child(7) .toggle_title.cp::before,
.toggle_contents:nth-child(8) .toggle_title.cp::before {
	background-color: #0071b5;
}
*/

.camp-table.cp tbody tr td:first-child {
	width: 40%;
}

.camp-table.cp tbody tr td:last-child {
	width: 15%;
}

.widthMax-pc {
	/* 画面幅いっぱいにしたい要素にあてるクラス */
	margin: 0 calc(50% - 50vw);
	max-width: none;
}

/* CheckBox
---------------------------------------------------------- */
label.check {
	display: inline-block;
	margin: 0.6em 0;
}

div.checkbox-line {
	display: block;
	margin: 0 0 1.8em;
}

div.checkbox-sp{
    margin: 0 0 3.6em;
}

.checkbox-txt{
    font-size: 21px;
    margin: 0 0 1em;
}

.check-txt {
	line-height: 1.6;
}

.checkbox-input2 {
	opacity: 0;
	position: absolute;
}
.checkbox-parts2 {
	display: inline-block;
	position: relative;
	padding-left: 2.6em;
	font-size: 18px;
	cursor: pointer;
}
.checkbox-parts2::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 36px;
	height: 36px;
	border: 2px solid #000;
	background: #fff;
}

.checkbox-input2:checked + .checkbox-parts2::after {
	display: block;
	position: absolute;
	top: 14px;
	left: 7px;
	width: 10px;
	height: 20px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	content: "";
	transform: rotate(40deg) translateY(-50%);
}


/* Contact Form
---------------------------------------------------------- */
.form-wrap {
	margin-right: auto;
	margin-left: auto;
	padding: 3em 0;
	background-color: #fff;
	max-width: 1000px;
}

.form-wrap.con {
	border-radius: 0 0 1.6em 1.6em;
}

form {
	margin: 1.6em auto;
	max-width: 800px;
	width: 100%;
}

.init label {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

form.init p {
	margin: 0 0 1em;
	font-size: 16px;
}

.form-item-name {
	display: inline-block;
	width: 100%;
	padding: 0.64em 1em;
	border-radius: 0.2em;
	background-color: #ccf5ff;
	position: relative;
}

.form-sample {
	display: inline-block;
	color: #575757;
	font-size: 15px;
	width: 92%;
	margin: 0 auto;
	line-height: 1.5;
}

.form-sample.email {
	display: block;
	width: 100%;
}

.ques-castle {
	width: 92%;
	margin: 0.5em auto;
	display: block;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="telephone"],
input[type="number"],
input[type="search"],
input[type="password"],
select,
textarea {
	border-radius: 0;
	font-size: 16px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="telephone"],
input[type="number"],
input[type="password"],
select,
textarea {
	padding: 0.48em 1em;
	border: solid 1px #d0dbdf;
	background-color: #f7f7f7;
	line-height: 1.5;
}

input[type="text"],
input[type="tel"],
input[type="email"],
textarea {
	width: 100%;
	margin: 0.5em auto;
}

input.zip {
	width: 32%;
}

input[type="tel"] {
	width: 48%;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color: #b8bcbe;
}
input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
	color: #b8bcbe;
}
input::placeholder,
textarea::placeholder {
	color: #b8bcbe;
}

input:focus::-webkit-input-placeholder {
	color: transparent;
}

input:focus:-moz-placeholder {
	color: transparent;
}

input:focus::-moz-placeholder {
	color: transparent;
}

textarea:focus::-webkit-input-placeholder {
	color: transparent;
}

textarea:focus:-moz-placeholder {
	color: transparent;
}

textarea:focus::-moz-placeholder {
	color: transparent;
}

textarea {
	resize: vertical;
	height: 8em;
}

input[type="search"] {
	padding: 6px 40px 8px 8px;
	width: 100%;
	border: none;
	background: #343434;
	color: #fff;
	font-size: 0.85em;
}

button.button-search.animation {
	position: absolute;
	top: 0;
	right: 0;
	margin: 0 0 0 -7px;
	width: 40px;
	height: 100%;
	border: none;
	background: transparent;
	color: #b8b8b8;
	line-height: 100%;
}

input[type="submit"],
input[type="button"] {
	-webkit-box-sizing: content-box;
	box-sizing: border-box;
	border: 0;
	cursor: pointer;
	appearance: none;
}

.submit-wrap {
	text-align: center;
}

input[type="submit"].submit,
input[type="button"].submit,
a.return_top {
	margin: 3em 1.2em;
	max-width: 240px;
	width: 100%;
	border-radius: 0.8em;
	background-color: #0071b6;
	background-image: url(../img/arrow-icon-white.svg);
	background-position: right 0.8em center;
	background-size: 1.2em;
	background-repeat: no-repeat;
	color: #fff;
	text-align: center;
	font-size: 22px;
	padding: 1.24em 0;
	letter-spacing: 0.16em;
}

a.return_top {
	text-decoration: none;
}

input[type="submit"].submit:hover,
input[type="button"].submit:hover,
a.return_top:hover {
	opacity: 0.6;
}

input[type="button"].submit.gray {
	background-color: #fff;
	background-image: url(../img/arrow-icon-glay.svg);
	color: #4d4d4d;
	border: solid 1px #4d4d4d;
	margin-left: 0.4em;
}

.submit_area {
	display: flex;
	justify-content: center;
	flex-flow: row-reverse;
}

.submit_area input[type="submit"].submit,
.submit_area input[type="button"].submit {
	margin: 3em 1em;
}

input:focus,
select:focus,
textarea:focus {
	outline: 0;
	border: solid 1px #76b0ff;
	background-color: #f5f9ff;
	box-shadow: 0 0 0.4em rgba(118, 171, 255, 0.32);
}

.radio-input {
	display: none;
}
.radio-input + label {
	padding-left: 2.6em;
	position: relative;
	margin: 0.6em 3em 0.8em 0;
	display: inline-block;
}
.radio-input + label::before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	width: 24px;
	height: 24px;
	border: 1px solid #999;
	border-radius: 50%;
	transform: translateY(-50%);
}
.radio-input:checked + label {
	color: #eb5a24;
}
.radio-input:checked + label::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 6px;
	width: 12px;
	height: 12px;
	background: #eb5a24;
	border-radius: 50%;
	transform: translateY(-50%);
}

select {
	position: relative;
	width: 100%;
	padding: 0.75em 3em 0.75em 0.6em;
	border-radius: 0.5em;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNy42OCAxNS4zMSI+PGcgaWQ9IuODrOOCpOODpOODvF8yIiBkYXRhLW5hbWU9IuODrOOCpOODpOODvCAyIj48ZyBpZD0i44Os44Kk44Ok44O8XzciIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDciPjxwYXRoIGQ9Ik0wLDBIMTcuNjhMOC44NCwxNS4zMVoiLz48L2c+PC9nPjwvc3ZnPg==);
	background-repeat: no-repeat;
	background-position: right 1em center;
	background-size: 0.9em;
}

select::-ms-expand {
	display: none;
}

select::after {
	position: absolute;
	top: 7px;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 12px;
	height: 12px;
	border-top: 1px solid #353535;
	border-right: 1px solid #353535;
	content: "";
	transform: rotate(-45deg);
}

label.check {
	display: inline-block;
	margin: 0.6em 0;
}

.checkbox-input {
	/*    display: none;*/
	opacity: 0;
	position: absolute;
}
.checkbox-parts {
	padding-left: 2em;
	position: relative;
	margin-right: 1.6em;
	line-height: 1.6;
}
.checkbox-parts::before {
	content: "";
	display: block;
	position: absolute;
	top: 0.8em;
	left: 0;
	width: 24px;
	height: 24px;
	border: 1px solid #999;
	transform: translateY(-50%);
	background: #fff;
}
.checkbox-input:checked + .checkbox-parts {
	color: #eb5a24;
}
.checkbox-input:checked + .checkbox-parts::after {
	content: "";
	display: block;
	position: absolute;
	top: 0.6em;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg) translateY(-50%);
	border-bottom: 3px solid #eb5a24;
	border-right: 3px solid #eb5a24;
}

.privacy-link-wrap {
	margin-top: 2em;
}

a.privacy-link {
	color: #db4d4d;
}

a:hover.privacy-link {
	color: #f88282;
}

.required-item,
.option-item {
	display: inline-block;
	float: right;
	margin: 0 8px 0 auto;
	padding: 0.4em;
	border-radius: 2px;
	color: #fff;
	text-shadow: 1px 1px 1px rgb(0 0 0 / 16%);
	font-size: 0.72em;
	line-height: 1;
}

.required-item2,
.option-item2 {
	display: inline-block;
	/*float: right;*/
	margin: 0 0px 0 20px;
	padding: 0.4em 1.2em;
	border-radius: 2px;
	color: #fff;
	text-shadow: 1px 1px 1px rgb(0 0 0 / 16%);
	/*font-size: 0.72em;*/
	line-height: 1;
	/*position: absolute;
	top: 50%;
	left: 250px;
	transform: translateY(-50%);*/
}

.required-item2.ptop,
.option-item2.ptop {
	position: relative;
	top: 5px;
}


.required-item {
	background: #ec2028;
}

.option-item {
	background: #888888;
}
.required-item2 {
	background: #ec2028;
}

.option-item2 {
	background: #888888;
}

.submit_content dl dd p {
	margin: 0;
}

h2.center-line {
	position: relative;
	padding: 0.8em 0;
}

h2.center-line::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	display: block;
	width: 50%;
	height: 1px;
	background-color: #9d9d9d;
	content: "";
	transform: translateX(-50%);
}

@media screen and (max-width: 1024px) {
	input[type="text"],
	input[type="tel"] {
		width: 44%;
	}
}

@media screen and (max-width: 768px) {
	.form-item-name {
		width: 100%;
		text-align: left;
	}

	input[type="text"],
	input[type="tel"],
	input[type="email"],
	textarea {
		width: 100%;
	}

	.form-sample {
		display: block;
		width: 100%;
	}
}

.from-step {
	display: inline-block;
	width: 193px;
	height: 44px;
	padding: 0.68em;
	border: 1px solid #0071b6;
	color: #0071b6;
	text-align: center;
	background-color: #fff;
}

.from-step.current {
	background-color: #0071b6;
	color: #fff;
}
.text-imp {
	font-size: 20px;
}

p.con-text {
	font-size: 20px;
	margin-bottom: 1.6em;
	line-height: 1.5;
}


p.con-text2 {
    font-size: 20px;
    margin-bottom: 1em;
    line-height: 1.5;
}

.form-step {
	margin: 0 auto;
	width: 100%;
	max-width: 1000px;
	background-color: #fff;
}

.form-step.pad {
	padding-top: 4em;
}

p.con-text.minus {
	margin-bottom: -2em;
}

.yellow-blu-gra.vertical {
	background: #edf6f9;
	/*background: rgb(221, 192, 132);
	background: linear-gradient(180deg, rgba(221, 192, 132, 0.5018382352941176) 0%, rgba(237, 246, 232, 0.5) 50%, rgba(185, 225, 243, 0.5018382352941176) 100%);*/
	padding-bottom: 5em;
}

span.from-privacy {
	display: block;
	padding: 0.98em;
	background-color: #e6e6e6;
	width: 92%;
	margin: 0.8em auto;
}

span.carlicense-checkbox {
	display: flex;
	justify-content: space-between;
	width: 92%;
	margin: 0 auto;
}

.carlicense-checkbox .carlicense-check {
	margin: 0 0 1em;
}

.birthday-top {
	display: flex;
	width: 92%;
	margin: 0 auto 1.6em;
}

.birthday-top > div {
	margin-right: 1.2em;
}

.segmentation {
	width: 12em;
	margin-right: 0.5em;
	border-radius: 0;
}

.form-txt {
	display: block;
	width: 92%;
	margin: 0 auto 1em;
	color: #353535;
}

.form-txt.red {
	color: #e71c24;
}

img.center-ymg {
	margin: 0 auto;
}

.red-txt-bg-yellow {
	width: 100%;
	max-width: 900px;
	margin: 1em auto 1.6em;
	padding: 0.64em;
	border-radius: 0.4em;
	color: #e71c24;
	font-size: 20px;
	text-align: center;
	background-color: #fffa50;
}

/* form
---------------------------------------------------------- */
table.formTable {
	margin: 2em 0;
	width: 100%;
	letter-spacing: 0.05em;
	font-size: 18px;
}

table.formTable th {
	text-align: left;
	width: 14em;
}

table.formTable th,
table.formTable td {
	padding: 1em;
	border-bottom: 1px solid #f9f9f9;
}

div#formWrap p {
	margin: 1.6em 0;
}

.thanks-wrap {
	padding: 0;
	font-size: 20px;
	line-height: 2;
	color: #333;
}

.step-margin {
	margin-bottom: 3em;
}

a.return-home {
	display: block;
	width: 430px;
	padding: 1em;
	border-radius: 0.8em;
	color: #000;
	font-size: 22px;
	text-decoration: none;
	background-color: #29a5dc;
	background-image: url(../img/arrow-icon-white2.svg);
	background-repeat: no-repeat;
	background-position: right 1.6em center;
	background-size: 1.2em;
}

a:hover.return-home {
	opacity: 0.6;
}

/* フォームプライバシーポリシー
---------------------------------------------------------- */
.privacy-policy {
	width: 100%;
	max-width: 1000px;
	display: inline-block;
	text-align: left;
	list-style-type: none;
	line-height: 150%;
	color: #151515;
	font-size: 16px;
}

.privacy-policy-box {
	margin: 1.6em auto;
	width: 100%;
	width: auto;
	background-color: #fff;
	text-align: center;
}

h2.text-privacy {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 0 1em;
	border-bottom: solid 2px;
	color: #333;
	font-size: 20px;
	text-align: center;
}

.privacy-policy-li {
	margin: 1.6em 0;
}

.privacy-policy-li > p {
	font-size: 17px;
	line-height: 1.8;
	font-weight: 400;
}

.access-txt-box {
	width: 100%;
	max-width: 1000px;
	display: inline-block;
	text-align: center;
	line-height: 150%;
	font-size: 8px;
	margin: 1.5em 0em 8.5em 0em;
}

.access-txt {
	font-size: 17px;
	border-bottom: solid 1px #949494;
	color: #151515;
	margin: 1.2em 0;
	padding: 0.6em;
}

p.p-access-txt {
	text-align: left;
	display: inline-block;
	color: #151515;
	font-size: 15px !important;
	width: 100%;
	margin: 0 auto;
	line-height: 1.8;
}

/* アーカイブページ
---------------------------------------------------------- */
.archives-wrap-box {
	padding: 3em 0;
}

.faq-link-inner {
	position: relative;
	padding: 1em 3em 0 3.6em;
	font-size: 18px;
	color: #333;
}

.faq-link-inner::after {
	position: absolute;
	top: 1em;
	left: 1em;
	font-size: 23px;
	content: "A.";
}

.archives-wrap-box.faq {
	counter-reset: number 0;
}

dt.toggle_title.faq {
	padding: 0 3em 0.4em 2.6em;
	border-bottom: solid 2px #29a5dc;
	height: auto;
}

dt.toggle_title.faq::before {
	position: absolute;
	top: 0.1em;
	left: 0.4em;
	content: "Q" counter(number) ".";
	counter-increment: number 1;
}

.voice-wrap {
	width: 100%;
	max-width: 1000px;
	padding: 3em 0;
	margin: 0 auto;
}

img.voice-img {
	text-align: center;
	margin: 0 auto;
}

.voice-date {
	margin-left: 2.6em;
}

h2.voice-title {
	padding: 0.8em 0.4em 0.8em 1.5em;
	border-bottom: solid 3px #29a5dc;
	color: #eb5a24;
	position: relative;
	font-size: 24px;
}

h2.voice-title::before {
	position: absolute;
	top: 0.8em;
	left: 0.4em;
	display: block;
	width: 0.5em;
	height: calc(100% - 1.6em);
	/* height: 2.8em; */
	background-color: #f5aa3b;
	content: "";
	border-radius: 0.5em;
}

figure.voice-img-wrap {
	margin-bottom: 3em;
}

p.local-navigation {
	display: flex;
	position: relative;
	position: relative;
	justify-content: center;
	margin: 1em 0 2em;
	padding: 0;
}

p.local-navigation::before {
	display: block;
	position: absolute;
	top: -0.9em;
	left: 0;
	width: 100%;
	height: 2px;
	content: "";
	background-color: #bababa;
}

.page-numbers {
	display: inline-block;
	margin: 0.1em;
	padding: 0.8em 1em;
	border-radius: 1.5em;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	text-decoration: none;
	background-color: #dadada;
}

a.page-numbers:hover {
	color: #fff;
	opacity: 0.6;
}

.page-numbers.current {
	background-color: #c7f1ff;
}

.prev.page-numbers {
	position: absolute;
	height: 100%;
	left: 0;
}

.next.page-numbers {
	position: absolute;
	height: 100%;
	right: 0;
}

a.prev.page-numbers,
a.next.page-numbers {
	width: 46px;
	padding: 0;
	border: solid 2px #c7c7c7;
	border-radius: 0.6em;
	overflow: hidden;
	text-indent: 100%;
	white-space: nowrap;
	background: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 0.9em;
}

a.prev.page-numbers {
	background-image: url(../img/pagenation-ico.svg);
}

a.next.page-numbers {
	background-image: url(../img/pagenation2-ico.svg);
}

.staff-info-wrap {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
	margin: 3em 0;
}

.staff-info-box {
	width: calc(96% / 4);
	margin: 0 0.5% 1.6em;
}

.staff-img-wrap {
	border: solid 3px #29a5dc;
	overflow: hidden;
	border-radius: 1em;
}

h2.staff-name {
	margin: 0.4em;
	color: #333;
	font-size: 20px;
	text-align: center;
}

.staff-name-en {
	width: 100%;
	margin: 0;
	padding: 0 0.2em 0.4em;
	border-bottom: solid 2px #e0e0e0;
	color: #c7f1ff;
	text-align: center;
}

p.staff-comment {
	padding: 0.6em 0 0;
	/* display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical; */
}

/* タブレイアウト
---------------------------------------------------------- */
.embed-map iframe {
	border: none;
}

.area {
	width: 100%;
	margin: 5em auto;
	flex-wrap: wrap;
	display: flex;
}

.tab_class {
	width: calc(100% / 2);
	height: auto;
	background-color: #fff;
	line-height: 1.5;
	font-size: 19px;
	text-align: left;
	display: block;
	float: left;
	order: -1;
	/*padding: 0.64em 1.4em;*/
    padding:0.6em 1em;
}

input[name="tab_name"] {
	display: none;
}

input:checked + .tab_class {
	background-color: #4c6b77;
	color: aliceblue;
}

.content_class {
	display: none;
	width: 100%;
}

input:checked + .tab_class + .content_class {
	display: block;
}

.content_class .embed-map {
	margin: 0;
}

/* 1200px以下の場合
---------------------------------------------------------- */
@media screen and (max-width: 1200px) {
	.contact-inner {
		max-width: 1024px;
		padding: 1.8em;
	}

	.school-bus-wrap {
		left: 54%;
	}

	.news-post-wrap {
		width: 86%;
	}

	.news-post-wrap::before {
		left: -2em;
	}

	.charge-guidance-box {
		padding: 1em 3.8em;
	}

	.about-us-bg-orange-inner {
		width: 86%;
	}
	span.support-note-txt {
		font-size: 12px;
	}

	.banner-area {
		padding: 3em;
	}

	.footer-btn-wrap {
		margin: 2em auto 1.8em 3em;
	}

	a.pagetop-link {
		right: 3em;
	}

	.footer-sns-link.pc {
		position: relative;
		bottom: -8.6em;
	}
}

/* SP 非表示
---------------------------------------------------------- */

.sp {
	display: none;
}

.pc {
	display: block;
}

/* 
---------------------------------------------------------- */

.tba02{
	padding-top: 0;
}

a.tb_b {
	display: block;
	width: calc(96% / 3);
	line-height: 105px;
	border: 2px solid #333;
	box-sizing: border-box;
	font-size: 21px;
	color: #333;
	text-decoration: none;
	padding-left: 100px;
	background: url("../img/bn_logo01.png")no-repeat left 15px center;
	background-size: 70px auto;
}

a.tb_b:nth-child(2) {
	background: url("../img/bn_logo02.png")no-repeat left 15px center;
	background-size: 70px auto;
}

a.tb_b:nth-child(3) {
	height: 105px;
	line-height: 1.5;
	padding-top: 20px;
	padding-left: 115px;
	background: url("../img/bn_logo03.png")no-repeat left 15px center;
	background-size: 86px auto;
}

@media screen and (max-width: 1200px) {
a.tb_b {
	display: block;
	width: 100%;
	line-height: 105px;
	border: 2px solid #333;
	box-sizing: border-box;
	font-size: 21px;
	color: #333;
	text-decoration: none;
	padding-left: 100px;
	background: url("../img/bn_logo01.png")no-repeat left 15px center;
	background-size: 70px auto;
	margin-bottom: 0.5em;
}
}

.osusume_container{
	overflow: hidden;
}

.osusume_container.osusume_lp{
	margin-top: 50px;
}

.osusume_container .top0{
	margin-top: 0;
}

.osusume_container .warning-note-orange dl dt{
	font-size: 21px;
	letter-spacing: 0.1em;
}

.osusume_container .warning-note-orange dl dt span{
	color: #29a5dc;
	font-size: 18px;
	padding-right: 5px;
}
.osusume_container .warning-note-orange dl dt span.lv2{
	font-weight: 600;
	color: #eb5a24;
	font-size: 21px;
	padding-left: 10px;
}

.osusume_container .warning-note-orange dl dd{
	font-size: 17px;
	line-height: 1.75;
	margin-top: 20px;
}

.osusume_container .tyuuiten{
	margin-top: 15px;
	font-size: 15px;
	line-height: 1.75;
}



/**/

.bg_onetime_popup {
    position: fixed;
    top: 0px;
    left: 0px;
    z-index: 9999;
    width: 100vw;
    height: 100vh;
    background-color: rgba(0, 0, 0, 0.65);
    opacity: 0;
    visibility: hidden;
    transition: 0.5s;
}

.bg_onetime_popup.js_active {
    opacity: 1;
    visibility: visible;
}

.onetime_popup {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
	width: 580px;
    background-color: #fff;
    cursor: pointer;
}

.onetime_popup_title {
    position: relative;
}

.onetime_popup_title img{
	width: 100%;
	height: auto;
}

.onetime_popup_title::after {
    position: absolute;
	top: -20px;
	right: -20px;
    width: 58px;
    height: 58px;
	background: url("../img/pop_colose.png")no-repeat;
	background-size: contain;
    content: "";
}



/*追加ページ*/


.reg400{
	font-weight: 400;
}

.bold600{
	font-weight: 600;
}

.et-block01{
	padding: 64px 0 97px;
	position: relative;
}

.et-block01 .block_inner{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.et-block01 .block_inner .large_txt{
	font-size: 22px;
	line-height: 1.40;
	letter-spacing: 0.05em;
	color: #333333;
	text-align: center;
}

.et-block01 .block_inner .large_txt span{
	color: #e61c24;
	font-weight: 400;
}

.et-block01 .block_inner .img{
	width: 93.8%;
	margin: 33px auto 0;
	position: relative;
}

.et-block01 .block_inner .img::before{
	content: '';
	display: inline-block;
	background: url("../img/et/parts_right.png")no-repeat;
	background-size: contain;
	width: 374px;
	height: 306px;
	position: absolute;
	top: -270px;
	right: -256px;
	z-index: -1;
}

.et-block01 .block_inner .img::after{
	content: '';
	display: inline-block;
	background: url("../img/et/parts_left.png")no-repeat;
	background-size: contain;
	width: 374px;
	height: 306px;
	position: absolute;
	bottom: -70px;
	left: -257px;
	z-index: -1;
}

.et-block01 .block_inner .txt_lv1{
	margin-top: 75px;
	font-size: 20px;
	line-height: 1.48;
	letter-spacing: 0.05em;
	color: #333333;
}

.et-block01 .block_inner .txt_lv2{
	font-size: 18px;
	letter-spacing: 0.05em;
	color: #333333;
	margin-top: 18px;
}

.et-block01 .block_inner .et_table.et01{
	margin-top: 50px;
}

.et-block01 .block_inner .et_table .table_txt{
	font-size: 18px;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333333;
	
}

.et-block01 .block_inner .et_table .table_txt + table{
	margin-top: 9px;
}

.et_table table{
	width: 100%;
	border-top: 2px solid #c5c5c5;
	border-left: 2px solid #c5c5c5;
}

.et_table table tr td{
	border-bottom: 2px solid #c5c5c5;
	border-right: 2px solid #c5c5c5;
	height: 50px;
	text-align: center;
}

.et_table.et01 table tr td{
	width: calc(100% / 3);
	box-sizing: border-box;
}

.et_table table tr td.col01{
	background: #f4e156;
}

.et_table table tr td div{
	font-size: 17px;
	letter-spacing: 0.05em;
	color: #333333;
	padding: 0 20px;
}

.et_table table tr td.col01 div{
	font-size: 20px;
}


/****/

.et-block02{
	background: #fffef3;
	padding: 60px 0 100px;
}

.et-block02 .block_inner{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.et-block02 .block_inner .txt01{
	font-size: 18px;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333333;
}

.et-block02 .block_inner .num_area{
	margin-top: 44px;
	display: flex;
	justify-content: flex-start;
}

.et-block02 .block_inner .num_area + .num_area{
	margin-top: 30px;
}

.et-block02 .block_inner .num_area .num_txt{
	width: 64px;
	margin-right: 20px;
}

.et-block02 .block_inner .num_area .num_txt p{
	display: block;
	width: 100%;
	line-height: 64px;
	background: url(../img/num-bg.svg)no-repeat;
	background-size: cover;
	font-size: 32px;
	color: #333;
}

.et-block02 .block_inner .num_area dl{
	width: calc(100% - 85px);
	margin-top: 15px;
}

.et-block02 .block_inner .num_area dl dt{
	font-size: 32px;
	letter-spacing: 0.05em;
	color: #333333;
}

.et-block02 .block_inner .num_area dl dd{
	font-size: 18px;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333333;
	margin-top: 20px;
}

/****/

.et-block03{
	padding: 70px 0 53px;
}

.et-block03 .block_inner{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.et_table.et02 table tr td{
	width: calc(100% / 10);
	box-sizing: border-box;
}

.et_table.et02 table tr td div{
	padding: 0 10px;
}


.et_table.et02 table tr td.col01 div{
	text-align: center;
}

.et-block03 .block_inner .et_table .table_txt{
	margin-top: 30px;
	font-size: 18px;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333333;
}

/**/

.et-block04{
	padding: 53px 0 60px;
}

.et-block04 .block_inner{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.et-block04 .block_inner .flow_area{
	width: 100%;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #F6E821;
	border-radius: 10px;
	background: #fffcee;
	box-sizing: border-box;
	position: relative;
}

.et-block04 .block_inner .flow_area + .flow_area::before{
	content: '';
	display: inline-block;
	background: url("../img/et/flow_ico.png")no-repeat;
	background-size: contain;
	width: 18px;
	height: 12px;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}

.et-block04 .block_inner .flow_area + .flow_area{
	margin-top: 28px;
}

.et-block04 .block_inner .flow_area .num_txt{
	width: 45px;
	position: absolute;
	top: 50%;
	left: 12px;
	transform: translateY(-50%);
}

.et-block04 .block_inner .flow_area .num_txt p{
	display: block;
	width: 100%;
	line-height: 45px;
	background: #F6E821;
	border-radius: 50%;
	font-size: 28px;
	text-align: center;
}

.et-block04 .block_inner .flow_area .f_txt{
	font-size: 20px;
	color: #333333;
}

.et-block04 .block_inner .asterisk-ul{
	padding-top: 28px;
}

.et-block04 .block_inner .asterisk-ul li{
	margin-bottom: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.66;
}

/**/

.et-block05{
	padding: 60px 0 0;
}

.et-block05 .block_inner{
	width: 100%;
}

.et-block05 .block_inner .shikaku_area{
	background: #E8D528;
	padding: 25px 0;
}

.et-block05 .block_inner .shikaku_area .area_inn{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	background: #fff;
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 25px 50px;
}

.et-block05 .block_inner .shikaku_area .area_inn ul{
	list-style: none;
	margin: 0;
	padding: 0;
}

.et-block05 .block_inner .shikaku_area .area_inn ul li{
	padding-left: 25px;
	box-sizing: border-box;
	font-size: 18px;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333;
	position: relative;
}

.et-block05 .block_inner .shikaku_area .area_inn ul li::before{
	content: '';
	display: inline-block;
	background: #E8D528;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	position: absolute;
	top: 4px;
	left: 0;
}

.et-block05 .block_inner .shikaku_area .area_inn ul li + li{
	margin-top: 7px;
}

/**/

.et-block06{
	padding: 80px 0 85px;
}

.et-block06 .block_inner{
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
}

.et-block06 .block_inner .asterisk-ul{
	padding-top: 25px;
}

.et-block06 .block_inner .asterisk-ul li{
	margin-bottom: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.66;
	letter-spacing: 0.05em;
	color: #333;
}

/**/

.et-block07{
	padding: 75px 0 100px;
	background: #fffef3;
}

.et-block07 .block_inner{
	counter-reset: number 0;
}

.et-block07 .block_inner .toggle_title{
	border-bottom: solid 3px #ADADAD;
}

.et-block07 .block_inner .toggle_title span.fot-tsukuardgothic-std{
	padding: 0 100px 10px 50px;
	position: relative;
	font-size: 23px;
	line-height: 1.47;
	letter-spacing: 0.05em;
	color: #333;
}

.et-block07 .block_inner .toggle_title span.fot-tsukuardgothic-std::before{
	counter-increment: number 1; 
	content: "Q" counter(number) ".";
	position: absolute;
	top: 0;
	left: 0;
}

.et-block07 .block_inner .toggle_contents dd .ans_txt{
	position: relative;
	padding: 17px 60px 35px;
	box-sizing: border-box;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.55;
	letter-spacing: 0.05em;
	color: #333;
}

.et-block07 .block_inner .toggle_contents dd .ans_txt::before{
	content: 'A.';
	display: inline-block;
	font-size: 23px;
	position: absolute;
	top: 12px;
	left: 30px;
}

/**/

.contact-tel {
	display: grid;
	grid-template-columns: 13fr 55fr;
	font-size: clamp(10px, 4vw, 50px);
	font-weight: 900;
	gap: 0 .4em;
	align-items: center;
}
.tel-label {
	font-size: .4em;
	text-align: center;
	font-weight: 900;
}
.tel-link {
	text-align: center;
}
.tel-link a{
	color: #000;
	text-decoration: none;
}
.tel-date-area {
	font-weight: 900;
	font-size: .285em;
	padding-left: 4.5em;
	position: relative;
}
.tel-date-area::before {
	content: "受付時間";
	position: absolute;
	top: 0;
	left: 0;
}
.tel-date-area::after {
	content: "※繁忙期は変動あり";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
}
.tel-date {
	font-size: 1em;
	font-weight: 900;
}


/**/


blockquote.wp-embedded-content {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
}
iframe.wp-embedded-content {
  position: relative !important;
}

/* 20231107 トップページ 免許一覧 */
.name-detail-box {
	display: flex;
	justify-content: center;
}
ul.variouslist-wrap li a.img-href {
	border: unset;
	background: unset;
}
ul.variouslist-wrap li a.arrow {
	width: 36px;
	margin: 0px 0px 0px 6px;
	padding: 0px;
	border: unset;
	-webkit-border-radius: 0px;
	-moz-border-radius: 0px;
	border-radius: 0px;
	color: unset;
	background-color: rgba(0, 0, 0, 0);
	background-position: center;
	background-size: 26px;
	transition: 0.2s;
}
ul.variouslist-wrap li p.license-text {
	font-weight: normal;
	font-size: 14px;
	padding: 0 26px;
	margin: 0;
}   


/* 運行管理者講習 */

h4.price-title.operation_management {
	border-bottom: solid 2px #29a4db;
	background-image: url(../img/ioc-document-orange.svg);
	background-size: auto;
	background-repeat: no-repeat;
	background-position: bottom -4px left 1.4em;
}

.conatct-link-box-ope {
	position: relative;
	width: 50%;
	padding: 0;
}

.doc-appli-wrap02 {
	display: flex;
	justify-content: space-evenly;
	padding: 0 0 0 1.6em;
}

/* 運行管理者講習ここまで */

/* 20240215 お客様の声 */
.top-retouch-voice-h2 {
	color: #000;
}

.top-retouch-voice {
	max-width: 1100px;
	display: flex;
	background-color: #f6e821;
	padding: 20px 20px;
	border-radius: 1em;
	margin: 0.6em auto 0;
	flex-wrap: wrap;
}

.top-retouch-voice-info-box {
	width: 100%;
	margin: 10px auto;
	background-color: #fff;
	padding: 20px;
	border-radius: 1em;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.top-retouch-voice-name {
	width: 100%;
	margin-bottom: 20px;
	word-break: keep-all;
	line-height: 1.6rem;
}

.top-retouch-voice-img {
	width: 20%;
	padding-right: 20px;
}

.top-retouch-voice-img img {
	margin: 0 auto;
	width: auto;
	max-height: 100px;
}

.top-retouch-voice-txt {
	width: 80%;
	line-height: 1.6rem;
}

.top-retouch-voice-txt span {
	color: #C55A11;
}
/* 20240215 お客様の声ここまで */

/* 20240215 よくある質問・修正 */
.top-faq-retouch dt.toggle_title.faq::before {
	content: "Q" counter(num) ".";
}

.top-faq-retouch .toggle_contents {
	counter-increment: num;
}

.top-faq-retouch .top-staff-link a{
	max-width: 230px;
}
/* 20240215 よくある質問・修正ここまで */

/*--20240314 追加 スタッフの入れ替え--*/
.top-staff-link a,
.top-faq-retouch .top-staff-link a{
	max-width: 240px
}
.news-wrap a.post-list-link{
	width: 240px;
}
#choose .link_btn,
.ab_area02 .ab_flex .left .link_btn{
	width: 280px;
}
.mx .top-staff {
	gap: 15px;
}

/*--20241010 追加 電話番号追加--*/
.freee-dial-num {
        padding:0px 0px 5px;
        text-align:center;
}