@charset "UTF-8";

@media screen and (max-width: 999px){

img{
max-width: 100%;
height: auto;
width /***/:auto;
}

.pc{display:none !important;}
.sp{display:block !important;}



/****************************************

	ヘッダー

*****************************************/
header {}
#header {
	width: 100%;
	margin: 0 auto;
	height: 90px;
}

.header__inner {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	position: relative;
}
.header__logo {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	text-align: center;
	width: 80vw;
	padding: 23px 0 0 0;
}
.header__logo img {
	height: 45px;
}



.header__menu {
	width: 38px;
	background: #dced23;
	margin: 0 0 0 auto;
	text-align: center;
	-moz-border-radius: 0 0 0 20px;
	-webkit-border-radius: 0 0 0 20px;
	-ms-border-radius: 0 0 0 20px;
	border-radius: 0 0 0 20px;
	writing-mode: vertical-rl;
}
.header__menu a {
	padding: 10px 13px 15px 13px;
	display: block;
	color: #382422;
	font-size: 12px;
	font-weight: 500;
	line-height: 1.1;
	letter-spacing: 0.1em;
	text-decoration: none;
}
.header__menu:hover {
	opacity: .80;
}



.top-nav {
	padding: 20px 0 12px;
}
.top-nav__list {
	margin: 0 auto;
	padding: 0 10px;
	list-style: none;
	max-width: 100%;
	display: grid;
	grid-template-columns: 1fr 1.4fr 1fr; /* 中央だけ広め */
	column-gap: 0;
	row-gap: 20px;
	justify-items: center;
}
.top-nav__item {
	text-align: center;
}
.top-nav__item a {
	position: relative;
	display: inline-block;
	padding: 0 0 16px 0;
	color: #382422;
	font-weight: 500;
	font-size: 13px;
	text-decoration: none;
	line-height: 1.4;
}
.top-nav__item a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: 2px;
	width: 9px;
	height: 9px;
	transform: translateX(-50%) rotate(45deg);
	border-right: 2px solid #382422;
	border-bottom: 2px solid #382422;
	pointer-events: none;
}
.top-nav__item a:hover {
	opacity: .85;
}



/****************************************

	フッター

*****************************************/
#pagetop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
	z-index: 9999;
}
#pagetop a {
	background-image: url("../../common/pagetop.png");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 100%;
	display: block;
	width: 50px;
	height: 50px;
}



footer{}
#footer {
	background-image: url("../../common/footer_bg01.png");
	background-repeat: repeat-x;
	background-position: center top;
}

.footer__logo {
	text-align: center;
	padding: 55px 15px 15px 15px;
}
.footer__logo img {
	height: 45px;
}

.footer__address {
	text-align: center;
	color: #382422;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
	padding: 0 15px 30px 15px;
}
.footer__tel {
	text-align: center;
	padding: 0 0 45px 0;
}


.footer__copyright {
	background-image: url("../../common/footer_bg02.png");
	background-repeat: repeat-x;
	background-position: center top;
}
.footer__copyright p {
	text-align: center;
	color: #FFFFFF;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.2;
	padding: 13px 0 13px 0;
}



/****************************************

	スクロールをしたら要素を動かす系

*****************************************/
/* fadeUp */
.fadeUp{
	animation-name:fadeUpAnime;
	animation-duration:2s;
	animation-fill-mode:forwards;
	opacity:0;
}
@keyframes fadeUpAnime{
	from {
		opacity: 0;
		transform: translateY(100px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ふわっ（上から）*/
.fadeDown{
	animation-name: fadeDownAnime;
	animation-duration:1s;
	animation-fill-mode:forwards;
	opacity:0;
}
@keyframes fadeDownAnime{
	from {
		opacity: 0;
		transform: translateY(-100px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}


/* スクロールをしたら出現する要素にはじめに透過0を指定　*/
.fadeUpTrigger,
.fadeDownAnime{
	opacity: 0;
}



/****************************************

	home

*****************************************/
#top {}



.top-visual {
	position: relative;
}
.slider {
	margin: 0 auto;
	width: 100%;
}
.slick-img img {
	height: auto;
	width: 100%;
}

.top-visual__text {
	position: absolute;
	top: 5vw;
	right: 8vw;
}
.top-visual__text img {
	width: 19vw;
	height: auto;
}



.top-sec01 {
	background-image: url("../../img/sec01_bg01-sp.png");
	background-repeat: no-repeat;
	background-position: center top 200px;
}
.top-sec01__inner {
	padding: 60px 0 0 0;
	background:
	url("../../img/sec01_prt03-sp.png") no-repeat left 1vw top 640px / 61px 104px,
	url("../../img/sec01_prt02-sp.png") no-repeat right 6vw top 15px / 40px 43px,
	url("../../img/sec01_prt01-sp.png") no-repeat left 4vw top 120px / 52px 45px;
}



.top-news {}
.top-news__inner {
	margin: 0 15px 50px 15px;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.top-news__title {
	padding: 10px 0 0 0;
	width: 80px;
}
.top-news__title img {
	height: 35px;
}

.top-news__contents {
	width: calc(100% - 80px);
}
.top-news__contents--box {
	margin: 0 auto;
	padding: 0 10px 0 0;
}

.top-news__contents--box iframe {
	height: 212px;
}

.top-news__contents--box p {
	color: #382422;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.6;
	padding: 10px 0 10px 0;
	border-bottom: 1px solid #9C969D;
}
.top-news__contents--box p span {
	margin: 0 10px 0 0;
}



.top-link {
	margin: 0 15px;
	padding: 0 0 130px 0;
}

.top-link ul {}
.top-link ul li {
	margin: 0 0 20px 0;
}
.top-link ul li:last-child {
	margin: 0;
}

.top-link__txt {
	text-align: center;
	color: #382422;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.2;
	padding: 0 0 8px 0;
}
.top-link__image {
	text-align: center;
	filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.2));
}



.top-education {
	background:
	url("../../img/sec01_prt04-sp.png") no-repeat left 4vw bottom 15vw / 45px 57px,
	url("../../img/education_prt01.png") no-repeat right 3vw bottom 10vw / 90px 136px;
}
.top-education__inner {}

.top-education__title {
	padding: 0 0 40px 0;
}
.top-education__title img {
	height: 45px;
}

.top-education__contents {
	margin: 0 15px;
	border-bottom: 1px solid #dced23;
}
.top-education__txt {
	text-align: center;
	margin: 0 auto 40px auto;
	width: 60vw;
}
.top-education__image {
	text-align: center;
	margin: 0 0 100px 0;
}



.top-sec02 {
	position: relative;
}
.top-sec02::before {
	content: '';
	display: inline-block;
	width: 100vw;
	height: 7.8vw;
	background-image: url("../../img/sec02_bg02.png");
	background-position: left bottom;
	background-size: 150%;
	vertical-align: middle;
	position: absolute;
	bottom: -7vw;
	left: 0;
	z-index: 10;
}
.top-sec02::after {
	content: '';
	display: inline-block;
	width: 45px;
	height: 54px;
	background-image: url("../../img/oneday_prt03.png");
	background-size: 100%;
	vertical-align: middle;
	position: absolute;
	bottom: -10vw;
	left: 4vw;
	z-index: 10;
}

.top-sec02__inner {}



.top-content {}
.top-content__inner {
	margin: 0 15px;
}

.top-content__title {
	text-align: center;
	color: #382422;
	font-size: 22px;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: 0.1em;
	margin: 55px 0 30px 0;
}
.top-content__txt {
	color: #382422;
	font-size: 18px;
	font-weight: 500;
	line-height: 2;
	padding: 0 0 30px 0;
}


.top-content__imagelist {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	padding: 0 0 30px 0;
}
.top-content__imagelist li {
	width: 48%;
}
.top-content__imagelist li:nth-of-type(1) {
	margin: 0 4% 4% 0;
}
.top-content__imagelist li:nth-of-type(2) {
	margin: 0 0 4% 0;
}
.top-content__imagelist li:nth-of-type(3) {
	margin: 0 4% 0 0;
}
.top-content__imagelist li:nth-of-type(4) {
	margin: 0;
}
.top-content__imagelist li img {
	width: 100%;
}



.top-oneday {
	background-image: url("../../img/sec02_bg01-sp.png");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
	position: relative;
}
.top-oneday::after {
	content: '';
	display: inline-block;
	width: 56px;
	height: 62px;
	background-image: url("../../img/content_prt01.png");
	background-size: 100%;
	vertical-align: middle;
	position: absolute;
	top: 10vw;
	left: 13vw;
	z-index: 10;
}
.top-oneday__inner {}
.top-oneday__title {
	text-align: right;
	padding: 120px 0 45px 0;
}
.top-oneday__title img {
	height: 45px;
}



.top-oneday__012age {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	padding: 0 0 90px 0;
	background:
	url("../../img/oneday_prt02.png") no-repeat right 2vw bottom / 60px 66px;
	margin: 0 15px;
}
.top-oneday__012age-contents {
	width: fit-content;
	margin: 0 auto;
	padding: 0 0 30px 0;
}
.top-oneday__012age-image {
	width: fit-content;
	margin: 0 auto;
}

.top-oneday__012age-title {
	color: #382422;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.2;
	background-image: url("../../img/oneday_prt01.png");
	background-repeat: no-repeat;
	background-position: left top 5px;
	padding: 0 0 0 35px;
	margin: 0 0 20px 0;
}
.top-oneday__012age-title span {
	font-size: 18px;
	padding: 0 0 0 10px;
}

.top-oneday__012age-time {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	margin: 0;
}
.top-oneday__012age-time dt {
	width: 95px;
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 2;
}
.top-oneday__012age-time dd {
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 2;
}

.top-oneday__012age-imagelist {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.top-oneday__012age-imagelist li {
	width: 48%;
}
.top-oneday__012age-imagelist li:nth-of-type(1) {
	margin: 0 4% 4% 0;
}
.top-oneday__012age-imagelist li:nth-of-type(2) {
	margin: 0 0 4% 0;
}
.top-oneday__012age-imagelist li:nth-of-type(3) {
	margin: 0 4% 0 0;
}
.top-oneday__012age-imagelist li:nth-of-type(4) {
	margin: 0;
}
.top-oneday__012age-imagelist li img {
	width: 100%;
}



.top-oneday__345age {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	padding: 0 0 50px 0;
	margin: 0 15px;
}
.top-oneday__345age-contents {
	width: fit-content;
	margin: 0 auto;
	padding: 0 0 30px 0;
}
.top-oneday__345age-image {
	width: fit-content;
	margin: 0 auto;
}

.top-oneday__345age-title {
	color: #382422;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.2;
	background-image: url("../../img/oneday_prt01.png");
	background-repeat: no-repeat;
	background-position: left top 5px;
	padding: 0 0 0 35px;
	margin: 0 0 20px 0;
}
.top-oneday__345age-title span {
	font-size: 18px;
	padding: 0 0 0 10px;
}

.top-oneday__345age-time {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
	margin: 0;
}
.top-oneday__345age-time dt {
	width: 95px;
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 2;
}
.top-oneday__345age-time dd {
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 2;
}

.top-oneday__345age-imagelist {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-webkit-align-items: stretch;
	align-items: stretch;
}
.top-oneday__345age-imagelist li {
	width: 48%;
}
.top-oneday__345age-imagelist li:nth-of-type(1) {
	margin: 0 4% 4% 0;
}
.top-oneday__345age-imagelist li:nth-of-type(2) {
	margin: 0 0 4% 0;
}
.top-oneday__345age-imagelist li:nth-of-type(3) {
	margin: 0 4% 0 0;
}
.top-oneday__345age-imagelist li:nth-of-type(4) {
	margin: 0;
}
.top-oneday__345age-imagelist li img {
	width: 100%;
}



.top-event {
	padding: 0 0 30px 0;
	margin: 22vw 0 0 0;
	background:
	url("../../img/event_prt05.png") no-repeat right 8vw top / 90px 128px;
}
.top-event__inner {}
.top-event__title {
	padding: 0 0 65px 0;
}
.top-event__title img {
	height: 45px;
}

.top-event__list {
	margin: 0 15px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.top-event__item {
	flex: 0 0 48%;
	margin: 0 4% 70px 0;
	display: flex;
	flex-direction: column;
	min-height: 100%;
}
.top-event__item:nth-of-type(2n) {
	margin: 0 0 70px 0;
}

.top-event__subtitle {
	height: 63px;
	margin: 0 0 25px 0;
}

.top-event__txt {
	margin: 0 0 25px 0;
}
.top-event__txt li {
	position: relative;
	color: #382422;
	font-size: 16px;
	line-height: 1.4;
	padding: 0 0 0 15px;
	margin: 0 0 12px 0;
}
.top-event__txt li::before {
	content: '・';
	position: absolute;
	left: 0;
	top: 2px;
	color: #382422;
	font-size: 14px;
}

/* 画像を常にカード下辺へ */
.top-event__image {
	border-top: 1px solid #C9C6CA;
	padding: 25px 0 0 0;
	margin-top: auto;
	text-align: center;
}
.top-event__image img {
	width: 100%;
}



.top-guide {}
.top-guide__inner {}
.top-guide__title {
	text-align: right;
	padding: 0 0 45px 0;
}
.top-guide__title img {
	height: 45px;
}

.top-guide__txt {
	text-align: center;
	color: #382422;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.2;
	padding: 0 15px 5px 15px;
}
.top-guide__btn {
	text-align: center;
	padding: 0 15px 50px 15px;
}


.top-search__txt {
	text-align: center;
	color: #382422;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.5;
	padding: 0 15px 5px 15px;
	width: 86vw;
	margin: 0 auto;
}
.top-search__btn {
	text-align: center;
	padding: 0 15px 150px 15px;
}



.top-support {
	background: #faf7ee;
	scroll-margin-top: 20px;      /* 見出しを-20px上げている分のズレ解消 */
}
.top-support::after {
	content: '';
	display: inline-block;
	width: 50px;
	height: 56px;
	background-image: url("../../img/support_prt02.png");
	background-size: 100%;
	vertical-align: middle;
	position: absolute;
	top: -30vw;
	right: 4vw;
	z-index: 10;
}
.top-support__inner {
	margin: 0 auto 80px auto;
	background:
	url("../../img/support_prt01.png") no-repeat center bottom / 250px 49px;
	padding: 0 0 150px 0;
	position: relative;
}

.top-support__title {
	padding: 0 0 30px 0;
}
.top-support__title img {
	margin: -20px 0 0 0;
	height: 45px;
}

.top-support__catch {
	color: #549255;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
    margin: 0 15px;
	padding: 0 0 40px 0;
}

.top-support__list {
    margin: 0 15px;
}

.top-support__item {
	margin: 0 0 50px 0;
}


.top-support__subtitle {
	text-align: center;
	color: #382422;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.5;
	background: #dced23;
	background-size: 22px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	-ms-border-radius: 50px;
	border-radius: 50px;
	padding: 10px;
	margin: 0 0 15px 0;
}

.top-support__txt {
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.667;
}

.top-support__speechbubble {
	position: relative;
	width: 100%;
	display: inline-block;
	margin-top: 20px;
	padding: 20px;
	border-radius: 15px;
	background-color: #FFFFFF;
	text-align: left;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.8;
	color: #382422;
}
.top-support__speechbubble::after {
	content: "";
	position: absolute;
	top: 0;
	left: 20%;
	border-style: solid;
	border-width: 0 10px 20px 10px;
	border-color: transparent transparent #FFFFFF;
	translate: -50% -100%;
}



.top-circle {
	margin: 0 15px 0 15px;
}

.top-circle__contents {}
.top-circle__btn {
	padding: 50px 0 50px 0;
	text-align: center;
}
.top-circle__image {
	text-align: center;
}



.top-access {
	padding: 0 0 65px 0;
	background:
	url("../../img/access_prt01-sp.png") no-repeat right 3vw top 8vw / 90px 108px;
}


.top-access__inner {
	border-top: 1px solid #dced23;
	padding: 60px 0 0 0;
	margin: 0 15px;
}
.top-access__title {
	padding: 0 0 45px 0;
}

.top-access__box {}

.top-access__map {
	margin: 0 0 30px 0;
}
/* 計算方法　長方形動画（600:400）の場合100÷450×400=88.88888888888889% に設定 */
.top-access__map-google {
	text-align: center;
	padding: 0 0 88.88888888888889% 0;
	position: relative;
	width: 100%;
}
.top-access__map-google iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

.top-access__info {}

.top-access__name {
	color: #382422;
	font-size: 20px;
	font-weight: 500;
	line-height: 1.6;
	padding: 0 0 30px 0;
}
.top-access__name span {
	font-size: 18px;
}
.top-access__txt {
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.75;
}
.top-access__txt span {
	color: #382422;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.75;
}

.top-access__txt a {
	color: #382422;
	text-decoration: none;
}
.top-access__txt a:hover {
	color: #382422;
	text-decoration: underline;
}

.top-access__txt span a {
	color: #382422;
	text-decoration: underline;
}
.top-access__txt span a:hover {
	color: #382422;
	text-decoration: none;
}
/*番号のクリック・タッチイベントを無効化*/
.top-access__txt span.link-none {
	pointer-events: none;
}



.top-policy {
	padding: 0 0 80px 0;
}
.top-policy__inner {
	margin: 0 15px;
}
.top-policy__title {
	text-align: center;
	color: #382422;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.2;
	padding: 0 0 18px 0;
}
.top-policy__txt {
	font-size: 14px;
	text-align: center;
}
.top-policy__txt span {
	display: inline-block;
	max-width: 100%;
	position: relative;
	padding-bottom: .5em;
	line-height: 1.6;
}
.top-policy__txt span::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: #382422;
}



/****************************************

	以下レスポンシブ　記述終了用　削除禁止

*****************************************/
}
