@charset "utf-8";





@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}



/* web font */
.wf-robot { font-family: 'Roboto', sans-serif; }
.wf-vollkorn { font-family: 'Vollkorn', sans-serif; }
.wf-opensans { font-family: 'Open Sans', sans-serif; }
.wf-nunito { font-family: 'Nunito', sans-serif; }
.wf-mplusrounded1c { font-family: 'M PLUS Rounded 1c', sans-serif; }
.wf-notosansjp { font-family: 'Noto Sans JP', sans-serif; }
.wf-sawarabimincho { font-family: 'Sawarabi Mincho', sans-serif; }
.wf-kosugi { font-family: 'Kosugi', sans-serif; font-weight: 400; -ms-font-feature-settings: "normal"}
.wf-kosugimaru { font-family: 'Kosugi Maru', sans-serif; font-weight: 400; -ms-font-feature-settings: "normal"}
.wf-notoserifjp { font-family: 'Noto Serif JP', sans-serif; }
.wf-concertone { font-family: 'Concert One', sans-serif; }
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* module1 */
.txt_right {
	text-align: right;
}
.clear {
	clear: both;
}
.bold {
	color:#2ca6a8;
	font-size:1.2em;
	margin:10px;
}
.img_w img,
.img img {
	width: 100%;
	height: auto;
}
.img_h img {
	height: 100%;
	width: auto;
}
.underline-marker {
	background-image: linear-gradient(transparent 70%, #2ca6a8 0%); 
}
.underline-marker2 {
	background-image: linear-gradient(transparent 95%, #eed63e 0%); 
}
.underline-gradient{
	background-image: linear-gradient(to right, #2ca6a8, #2ca6a8); 
	color: #fff;
}
@media screen and (min-width: 768px) { /* pc */
	.banner a:hover img {
		opacity: 0.85;
	}
}
@media screen and (max-width: 767px) { /* sp */
}




/* main, base ----------------------------------- */
main h2 {
	margin: 0 0 1em;
	color: #2ca6a8;
}
main h2.type2 {
	text-align: center;
}
main h2 span.eng {
	display: block;
	padding: 0.5em 0;
	color: #666;
	font-size: 75%;
	font-family: 'Roboto', sans-serif;
}
main h2.type2 span.eng {
	display: block;
	color: #666;
}
main h3 {
	margin: 0 0 0.5em;
}
main h3:nth-child(n+2) {
	margin-top:60px;
}
main h4 {
	margin: 0 0 1em;
}
main h5 {
	margin: 0 0 1em;
}
main h6 {
	margin: 0 0 1em;
}
main > article > .section.bg1 {
	background: #e5f2f9;
}
main > article > .section.bg2 {
	background: #fffbe5;
}
main > article > .section.bg4 {
	background: #eed63e;
}

main > article > .section.bg4-1-50 {
	background: #eed63e url(../img/common/bg/bg01-50.png) center top repeat;
}
main > article > .section.bg5 {
	background: #e9f4fe;
}
main > article > .section.bg5-1-50 {
	background: #e9f4fe url(../img/common/bg/bg01-50.png) center top repeat;
}
main > article > .section.bg6 {
	background: #f5f4ef;
}

main > article > .section.bg7 {
	background-image:url(../img/common/bg07.png); }

@media screen and (min-width: 768px) { /* pc */
	main {
		padding-top: 152px;
	}
	main > article > .section {
		padding-top: 30px;
		padding-bottom: 30px;
	}
	main > article > .section.bg1 {
		padding-top: 40px;
	}
	main > article > .section.bg2 {
		padding-top: 40px;
	}
	main > article > .section ~ .section {
		padding-top: 40px;
	}
	main > article > .section:last-of-type {
		padding-bottom: 60px;
	}
	main > article > .section > .inner {
		width: 1160px;
		margin-left: auto;
		margin-right: auto;
		padding-left: 20px;
		padding-right: 20px;
	}
	main .inner section ~ section {
		margin-top: 40px;
	}
	main h2 {
		font-size: 3.2rem;
		font-weight: normal;
		line-height:130%;
		}
	main h3 {
		font-size: 1.9rem;
		font-weight: normal;
		color: #2ca6a8;
	}
	main h4 {
		font-size: 1.8rem;
		font-weight: normal;
	}
	main p {
		font-size: 1.8rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
	main {
		padding-top: 56px;
	}
	main > article > .section {
		padding-top: 25px;
		padding-bottom: 25px;
	}
	main > article > .section.bg1 {
		padding-top: 30px;
	}
	main > article > .section.bg2 {
		padding-top: 30px;
	}
	main > article > .section:last-of-type {
		padding-bottom: 30px;
	}
	main > article > .section > .inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	main h2 {
		font-size: 2.6rem;
		font-weight: normal;
	}
	main h3 {
		font-size: 2.0rem;
		font-weight: normal;
		color: #2ca6a8;
	}
	main h4 {
		font-size: 1.4rem;
	}
	main h5 {
		font-size: 1.3rem;
	}
	main h6 {
		font-size: 1.2rem;
	}
}



/* main .header --------------------------------- */
@media screen and (min-width: 768px) { /* pc */
	main .header {
		position: relative;
		width: 100%;
		min-width: 1160px;
	}
	/*
	main .header::after {
		content: "";
		position: absolute;
		top: 62px;
		right: calc(50% + 505px);
		display: block;
		width: calc(100% - 485px);
		height: 93px;
		background: #2ca6a8;
		transform: skew(33deg, 0deg);
		z-index: -1;
	}
	*/
	main .header .inner {
		position: relative;
		display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		width: 1160px;
		height: 217px;
		margin: 0 auto 0;
	}
	main .header h1 {
		position: relative;
		width: 1160px;
		margin: 0 auto 0;
		padding: 0 20px 0;
		color: #333;
		font-size: 4.2rem;
		font-weight: normal;
		text-align: center;
		letter-spacing: 0.2em;
	}
	main .header h1::after {
		content: "";
		position: absolute;
		top: 170%;
		left: calc(50% - 283px);
		display: block;
		width: 566px;
		height: 3px;
		background: #2ca6a8;
	}
	main .header p {
		position: relative;
		width: 1160px;
		margin: 0 auto 0;
		padding: 0 20px 0;
		color: #2ca6a8;
		font-size: 2.0rem;
		font-family: 'Nunito', sans-serif;
		text-align: center;
	}
}
@media screen and (max-width: 767px) { /* sp */
	main .header {
		position: relative;
		width: 100%;
	}
	main .header .inner {
		position: relative;
		display: flex;
		justify-content: flex-start;
		align-content: center;
		align-items: center;
		flex-wrap: wrap;
		width: 100%;
		height: 108px;
	}
	main .header h1 {
		position: relative;
		width: 100%;
		margin: 0 auto 0;
		padding: 0 20px 0;
		color: #333;
		font-size: 2.8rem;
		font-weight: normal;
		text-align: center;
		letter-spacing: 0;
	}
	main .header h1::after {
		content: "";
		position: absolute;
		top: 130%;
		left: calc(50% - (283 / 768 * 100vw));
		display: block;
		width: calc(566 / 768 * 100vw);
		height: 2px;
		background: #2ca6a8;
	}
	main .header p {
		position: relative;
		width: 100%;
		margin: 0 auto 0;
		padding: 0 20px 0;
		color: #2ca6a8;
		text-align: center;
		font-size: 1.8rem;
		font-family: 'Nunito', sans-serif;
	}

}


/* breadcrumblist ------------------------------- */
@media screen and (min-width: 768px) { /* pc */
	main .breadcrumblist {
		position: relative;
		top: 0;
		left: 0;
		width: 100%;
		margin: 0 0 60px;
		padding: 0 0.5em;
		z-index: 20;
		line-height: 27px;
	}
	main .breadcrumblist, .breadcrumblist a, .breadcrumblist a:hover {
		color: #000;
	}
	main .breadcrumblist ul li {
		float: left;
		line-height: 27px;
	}
	main .breadcrumblist ul li::before {
		content: ">";
		display: inline-block;
		margin: 0 .5em;
		color: #777;
		line-height: 27px;
		font-family: Arial, -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	main .breadcrumblist ul li:first-child {
		font-family: Arial, -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	main .breadcrumblist ul li:first-child::before {
		content: "";
		margin: 0;
	}
	main .breadcrumblist ul {
		display: block;
		width: 1160px;
		margin: 0 auto 0;
		padding-left: 20px;
		padding-right: 20px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.breadcrumblist {
		position: relative;
		width: 100%;
		margin-bottom: 25px;
		padding: 0 0.5em;
		z-index: 20;
		background: #eee;
	}
	.breadcrumblist,
	.breadcrumblist a,
	.breadcrumblist a:hover {
		color: #222;
	}
	.breadcrumblist ul li {
		float: left;
		padding: 8px 0;
		line-height: 1.3;
	}
	.breadcrumblist ul li::before {
		content: ">";
		display: inline-block;
		margin: 0 .5em;
		color: #ccc;
		line-height: 1.3;
		font-family: Arial, -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	.breadcrumblist ul li:first-child {
		font-family: Arial, -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	.breadcrumblist ul li:first-child::before {
		content: "";
		margin: 0;
	}

	.breadcrumblist ul {
		display: block;
		width: 100%;
		margin: 0 auto 0;
	}
	.breadcrumblist ul li {
		padding: 4px 0;
		font-size: 1.0rem;
	}
}




/* grid ----------------------------------------- */
@media screen and (min-width: 768px) { /* pc */
	.grid10,
	.grid {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 100%;
		margin: 0 auto 40px;
	}
	.inner > .grid10,
	.inner > .grid {
		min-width: 1120px;
	}
	.grid10 figure img,
	.grid10 > div > img,
	.grid10 > section > img,
	.grid figure img,
	.grid > div > img,
	.grid > section > img {
		width: 100%;
		height: auto;
	}
	.grid10 figure figcaption,
	.grid figure figcaption {
		position: relative;
		margin: 3px 0 5px;
		padding: 8px 3px 0;
		padding: 2px 3px 0;
	}
	.grid > .gcol1 { width: calc(100% / 12); }
	.grid > .gcol2 { width: calc(100% / 12 * 2); }
	.grid > .gcol3 { width: calc(100% / 12 * 3); }
	.grid > .gcol4 { width: calc(100% / 12 * 4); }
	.grid > .gcol5 { width: calc(100% / 12 * 5); }
	.grid > .gcol6 { width: calc(100% / 12 * 6); }
	.grid > .gcol7 { width: calc(100% / 12 * 7); }
	.grid > .gcol8 { width: calc(100% / 12 * 8); }
	.grid > .gcol9 { width: calc(100% / 12 * 9); }
	.grid > .gcol10 { width: calc(100% / 12 * 10); }
	.grid > .gcol11 { width: calc(100% / 12 * 11); }
	.grid > .gcol12 { width: 100%; }

	.grid10 > .gcol1-10 { width: calc(100% / 10); }
	.grid10 > .gcol2-10 { width: calc(100% / 10 * 2); }
	.grid10 > .gcol3-10 { width: calc(100% / 10 * 3); }
	.grid10 > .gcol4-10 { width: calc(100% / 10 * 4); }
	.grid10 > .gcol5-10 { width: calc(100% / 10 * 5); }
	.grid10 > .gcol6-10 { width: calc(100% / 10 * 6); }
	.grid10 > .gcol7-10 { width: calc(100% / 10 * 7); }
	.grid10 > .gcol8-10 { width: calc(100% / 10 * 8); }
	.grid10 > .gcol9-10 { width: calc(100% / 10 * 9); }
	.grid10 > .gcol10-10 { width: 100%; }

	.grid10.m10 > div,
	.grid10.m10 > section,
	.grid.m10 > div,
	.grid.m10 > section {
		margin-bottom: 10px;
	}
	.grid.m10 > .gcol1 { width: calc((100% - 110px) / 12); }
	.grid.m10 > .gcol2 { width: calc((100% - 50px) / 12 * 2); }
	.grid.m10 > .gcol3 { width: calc((100% - 30px) / 12 * 3); }
	.grid.m10 > .gcol4 { width: calc((100% - 20px) / 12 * 4); }
	.grid.m10 > .gcol5 { width: calc((100% - 10px) / 12 * 5); }
	.grid.m10 > .gcol6 { width: calc((100% - 10px) / 12 * 6); }
	.grid.m10 > .gcol7 { width: calc((100% - 10px) / 12 * 7); }
	.grid.m10 > .gcol8 { width: calc((100% - 10px) / 12 * 8); }
	.grid.m10 > .gcol9 { width: calc((100% - 10px) / 12 * 9); }
	.grid.m10 > .gcol10 { width: calc((100% - 10px) / 12 * 10); }
	.grid.m10 > .gcol11 { width: calc((100% - 10px) / 12 * 11); }

	.grid10.m10 > .gcol1-10 { width: calc((100% - 90px) / 10); }
	.grid10.m10 > .gcol2-10 { width: calc((100% - 40px) / 10 * 2); }
	.grid10.m10 > .gcol3-10 { width: calc((100% - 30px) / 10 * 3); }
	.grid10.m10 > .gcol4-10 { width: calc((100% - 10px) / 10 * 4); }
	.grid10.m10 > .gcol5-10 { width: calc((100% - 10px) / 10 * 5); }
	.grid10.m10 > .gcol6-10 { width: calc((100% - 10px) / 10 * 6); }
	.grid10.m10 > .gcol7-10 { width: calc((100% - 10px) / 10 * 7); }
	.grid10.m10 > .gcol8-10 { width: calc((100% - 10px) / 10 * 8); }
	.grid10.m10 > .gcol9-10 { width: calc((100% - 10px) / 10 * 9); }

	.grid10.m20 > div,
	.grid10.m20 > section,
	.grid.m20 > div,
	.grid.m20 > section {
		margin-bottom: 20px;
	}
	.grid.m20 > .gcol1 { width: calc((100% - 220px) / 12); }
	.grid.m20 > .gcol2 { width: calc((100% - 100px) / 12 * 2); }
	.grid.m20 > .gcol3 { width: calc((100% - 60px) / 12 * 3); }
	.grid.m20 > .gcol4 { width: calc((100% - 40px) / 12 * 4); }
	.grid.m20 > .gcol5 { width: calc((100% - 20px) / 12 * 5); }
	.grid.m20 > .gcol6 { width: calc((100% - 20px) / 12 * 6); }
	.grid.m20 > .gcol7 { width: calc((100% - 20px) / 12 * 7); }
	.grid.m20 > .gcol8 { width: calc((100% - 20px) / 12 * 8); }
	.grid.m20 > .gcol9 { width: calc((100% - 20px) / 12 * 9); }
	.grid.m20 > .gcol10 { width: calc((100% - 20px) / 12 * 10); }
	.grid.m20 > .gcol11 { width: calc((100% - 20px) / 12 * 11); }

	.grid10.m20 > .gcol1-10 { width: calc((100% - 180px) / 10); }
	.grid10.m20 > .gcol2-10 { width: calc((100% - 80px) / 10 * 2); }
	.grid10.m20 > .gcol3-10 { width: calc((100% - 60px) / 10 * 3); }
	.grid10.m20 > .gcol4-10 { width: calc((100% - 20px) / 10 * 4); }
	.grid10.m20 > .gcol5-10 { width: calc((100% - 20px) / 10 * 5); }
	.grid10.m20 > .gcol6-10 { width: calc((100% - 20px) / 10 * 6); }
	.grid10.m20 > .gcol7-10 { width: calc((100% - 20px) / 10 * 7); }
	.grid10.m20 > .gcol8-10 { width: calc((100% - 20px) / 10 * 8); }
	.grid10.m20 > .gcol9-10 { width: calc((100% - 20px) / 10 * 9); }

	.grid10.m30 > div,
	.grid10.m30 > section,
	.grid.m30 > div,
	.grid.m30 > section {
		margin-bottom: 30px;
	}
	.grid.m30 > .gcol1 { width: calc((100% - 330px) / 12); }
	.grid.m30 > .gcol2 { width: calc((100% - 150px) / 12 * 2); }
	.grid.m30 > .gcol3 { width: calc((100% - 90px) / 12 * 3); }
	.grid.m30 > .gcol4 { width: calc((100% - 60px) / 12 * 4); }
	.grid.m30 > .gcol5 { width: calc((100% - 30px) / 12 * 5); }
	.grid.m30 > .gcol6 { width: calc((100% - 30px) / 12 * 6); }
	.grid.m30 > .gcol7 { width: calc((100% - 30px) / 12 * 7); }
	.grid.m30 > .gcol8 { width: calc((100% - 30px) / 12 * 8); }
	.grid.m30 > .gcol9 { width: calc((100% - 30px) / 12 * 9); }
	.grid.m30 > .gcol10 { width: calc((100% - 30px) / 12 * 10); }
	.grid.m30 > .gcol11 { width: calc((100% - 30px) / 12 * 11); }

	.grid10.m30 > .gcol1-10 { width: calc((100% - 210px) / 10); }
	.grid10.m30 > .gcol2-10 { width: calc((100% - 120px) / 10 * 2); }
	.grid10.m30 > .gcol3-10 { width: calc((100% - 90px) / 10 * 3); }
	.grid10.m30 > .gcol4-10 { width: calc((100% - 60px) / 10 * 4); }
	.grid10.m30 > .gcol5-10 { width: calc((100% - 30px) / 10 * 5); }
	.grid10.m30 > .gcol6-10 { width: calc((100% - 30px) / 10 * 6); }
	.grid10.m30 > .gcol7-10 { width: calc((100% - 30px) / 10 * 7); }
	.grid10.m30 > .gcol8-10 { width: calc((100% - 30px) / 10 * 8); }
	.grid10.m30 > .gcol9-10 { width: calc((100% - 30px) / 10 * 9); }

	.grid10.m40 > div,
	.grid10.m40 > section,
	.grid.m40 > div,
	.grid.m40 > section {
		margin-bottom: 40px;
	}
	.grid.m40 > .gcol1 { width: calc((100% - 440px) / 12); }
	.grid.m40 > .gcol2 { width: calc((100% - 200px) / 12 * 2); }
	.grid.m40 > .gcol3 { width: calc((100% - 120px) / 12 * 3); }
	.grid.m40 > .gcol4 { width: calc((100% - 80px) / 12 * 4); }
	.grid.m40 > .gcol5 { width: calc((100% - 40px) / 12 * 5); }
	.grid.m40 > .gcol6 { width: calc((100% - 40px) / 12 * 6); }
	.grid.m40 > .gcol7 { width: calc((100% - 40px) / 12 * 7); }
	.grid.m40 > .gcol8 { width: calc((100% - 40px) / 12 * 8); }
	.grid.m40 > .gcol9 { width: calc((100% - 40px) / 12 * 9); }
	.grid.m40 > .gcol10 { width: calc((100% - 40px) / 12 * 10); }
	.grid.m40 > .gcol11 { width: calc((100% - 40px) / 12 * 11); }

	.grid10.m40 > .gcol1-10 { width: calc((100% - 360px) / 10); }
	.grid10.m40 > .gcol2-10 { width: calc((100% - 160px) / 10 * 2); }
	.grid10.m40 > .gcol3-10 { width: calc((100% - 120px) / 10 * 3); }
	.grid10.m40 > .gcol4-10 { width: calc((100% - 80px) / 10 * 4); }
	.grid10.m40 > .gcol5-10 { width: calc((100% - 40px) / 10 * 5); }
	.grid10.m40 > .gcol6-10 { width: calc((100% - 40px) / 10 * 6); }
	.grid10.m40 > .gcol7-10 { width: calc((100% - 40px) / 10 * 7); }
	.grid10.m40 > .gcol8-10 { width: calc((100% - 40px) / 10 * 8); }
	.grid10.m40 > .gcol9-10 { width: calc((100% - 40px) / 10 * 9); }
}
@media screen and (max-width: 767px) { /* sp */
	.grid10,
	.grid {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		width: 100%;
	}
	.grid10 figure img,
	.grid10 > div > img,
	.grid10 > section > img,
	.grid figure img,
	.grid > div > img,
	.grid > section > img {
		width: 100%;
		height: auto;
	}
	.grid10 figure figcaption,
	.grid figure figcaption {
		position: relative;
		margin: 3px 0 5px;
		padding: 8px 3px 0;
		padding: 2px 3px 0;
	}
	/*
	.grid10 figure figcaption::before,
	.grid figure figcaption::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 3px;
		background: #ddd;
	}
	.grid10 figure figcaption::after,
	.grid figure figcaption::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 30%;
		height: 3px;
		background: #2ca6a8;
	}
	*/
	.grid > .gspcolhidden {
		display: none;
	}
	.grid10 > div,
	.grid10 > section,
	.grid > div,
	.grid > section {
		width: 100%;
	}

	.grid > .gspcol1 { width: calc(100% / 12); }
	.grid > .gspcol2 { width: calc(100% / 12 * 2); }
	.grid > .gspcol3 { width: calc(100% / 12 * 3); }
	.grid > .gspcol4 { width: calc(100% / 12 * 4); }
	.grid > .gspcol5 { width: calc(100% / 12 * 5); }
	.grid > .gspcol6 { width: calc(100% / 12 * 6); }
	.grid > .gspcol7 { width: calc(100% / 12 * 7); }
	.grid > .gspcol8 { width: calc(100% / 12 * 8); }
	.grid > .gspcol9 { width: calc(100% / 12 * 9); }
	.grid > .gspcol10 { width: calc(100% / 12 * 10); }
	.grid > .gspcol11 { width: calc(100% / 12 * 11); }
	.grid > .gspcol12 { width: 100%; }

	.grid10 > .gspcol1-10 { width: calc(100% / 10); }
	.grid10 > .gspcol2-10 { width: calc(100% / 10 * 2); }
	.grid10 > .gspcol3-10 { width: calc(100% / 10 * 3); }
	.grid10 > .gspcol4-10 { width: calc(100% / 10 * 4); }
	.grid10 > .gspcol5-10 { width: calc(100% / 10 * 5); }
	.grid10 > .gspcol6-10 { width: calc(100% / 10 * 6); }
	.grid10 > .gspcol7-10 { width: calc(100% / 10 * 7); }
	.grid10 > .gspcol8-10 { width: calc(100% / 10 * 8); }
	.grid10 > .gspcol9-10 { width: calc(100% / 10 * 9); }
	.grid10 > .gspcol10-10 { width: 100%; }

	.grid10.m10 > div,
	.grid10.m10 > section,
	.grid.m10 div,
	.grid.m10 section {
		margin-bottom: 10px;
	}
	.grid.m10 > .gspcol1 { width: calc((100% - 110px) / 12); }
	.grid.m10 > .gspcol2 { width: calc((100% - 50px) / 12 * 2); }
	.grid.m10 > .gspcol3 { width: calc((100% - 30px) / 12 * 3); }
	.grid.m10 > .gspcol4 { width: calc((100% - 20px) / 12 * 4); }
	.grid.m10 > .gspcol5 { width: calc((100% - 10px) / 12 * 5); }
	.grid.m10 > .gspcol6 { width: calc((100% - 10px) / 12 * 6); }
	.grid.m10 > .gspcol7 { width: calc((100% - 10px) / 12 * 7); }
	.grid.m10 > .gspcol8 { width: calc((100% - 10px) / 12 * 8); }
	.grid.m10 > .gspcol9 { width: calc((100% - 10px) / 12 * 9); }
	.grid.m10 > .gspcol10 { width: calc((100% - 10px) / 12 * 10); }
	.grid.m10 > .gspcol11 { width: calc((100% - 10px) / 12 * 11); }

	.grid10.m10 > .gspcol1-10 { width: calc((100% - 90px) / 10); }
	.grid10.m10 > .gspcol2-10 { width: calc((100% - 40px) / 10 * 2); }
	.grid10.m10 > .gspcol3-10 { width: calc((100% - 20px) / 10 * 3); }
	.grid10.m10 > .gspcol4-10 { width: calc((100% - 10px) / 10 * 4); }
	.grid10.m10 > .gspcol5-10 { width: calc((100% - 10px) / 10 * 5); }
	.grid10.m10 > .gspcol6-10 { width: calc((100% - 10px) / 10 * 6); }
	.grid10.m10 > .gspcol7-10 { width: calc((100% - 10px) / 10 * 7); }
	.grid10.m10 > .gspcol8-10 { width: calc((100% - 10px) / 10 * 8); }
	.grid10.m10 > .gspcol9-10 { width: calc((100% - 10px) / 10 * 9); }

	.grid10.m20 > div,
	.grid10.m20 > section,
	.grid.m20 div,
	.grid.m20 section {
		margin-bottom: 20px;
	}
	.grid.m20 > .gspcol1 { width: calc((100% - 220px) / 12); }
	.grid.m20 > .gspcol2 { width: calc((100% - 100px) / 12 * 2); }
	.grid.m20 > .gspcol3 { width: calc((100% - 60px) / 12 * 3); }
	.grid.m20 > .gspcol4 { width: calc((100% - 40px) / 12 * 4); }
	.grid.m20 > .gspcol5 { width: calc((100% - 20px) / 12 * 5); }
	.grid.m20 > .gspcol6 { width: calc((100% - 20px) / 12 * 6); }
	.grid.m20 > .gspcol7 { width: calc((100% - 20px) / 12 * 7); }
	.grid.m20 > .gspcol8 { width: calc((100% - 20px) / 12 * 8); }
	.grid.m20 > .gspcol9 { width: calc((100% - 20px) / 12 * 9); }
	.grid.m20 > .gspcol10 { width: calc((100% - 20px) / 12 * 10); }
	.grid.m20 > .gspcol11 { width: calc((100% - 20px) / 12 * 11); }

	.grid10.m20 > .gspcol1-10 { width: calc((100% - 180px) / 10); }
	.grid10.m20 > .gspcol2-10 { width: calc((100% - 80px) / 10 * 2); }
	.grid10.m20 > .gspcol3-10 { width: calc((100% - 40px) / 10 * 3); }
	.grid10.m20 > .gspcol4-10 { width: calc((100% - 20px) / 10 * 4); }
	.grid10.m20 > .gspcol5-10 { width: calc((100% - 20px) / 10 * 5); }
	.grid10.m20 > .gspcol6-10 { width: calc((100% - 20px) / 10 * 6); }
	.grid10.m20 > .gspcol7-10 { width: calc((100% - 20px) / 10 * 7); }
	.grid10.m20 > .gspcol8-10 { width: calc((100% - 20px) / 10 * 8); }
	.grid10.m20 > .gspcol9-10 { width: calc((100% - 20px) / 10 * 9); }

	.grid10.m30 > div,
	.grid10.m30 > section,
	.grid.m30 > div,
	.grid.m30 > section {
		margin-bottom: 20px;
	}
	.grid.m30 > .gspcol1 { width: calc((100% - 330px) / 12); }
	.grid.m30 > .gspcol2 { width: calc((100% - 150px) / 12 * 2); }
	.grid.m30 > .gspcol3 { width: calc((100% - 90px) / 12 * 3); }
	.grid.m30 > .gspcol4 { width: calc((100% - 60px) / 12 * 4); }
	.grid.m30 > .gspcol5 { width: calc((100% - 30px) / 12 * 5); }
	.grid.m30 > .gspcol6 { width: calc((100% - 30px) / 12 * 6); }
	.grid.m30 > .gspcol7 { width: calc((100% - 30px) / 12 * 7); }
	.grid.m30 > .gspcol8 { width: calc((100% - 30px) / 12 * 8); }
	.grid.m30 > .gspcol9 { width: calc((100% - 30px) / 12 * 9); }
	.grid.m30 > .gspcol10 { width: calc((100% - 30px) / 12 * 10); }
	.grid.m30 > .gspcol11 { width: calc((100% - 30px) / 12 * 11); }

	.grid10.m30 > .gspcol1-10 { width: calc((100% - 270px) / 10); }
	.grid10.m30 > .gspcol2-10 { width: calc((100% - 120px) / 10 * 2); }
	.grid10.m30 > .gspcol3-10 { width: calc((100% - 60px) / 10 * 3); }
	.grid10.m30 > .gspcol4-10 { width: calc((100% - 30px) / 10 * 4); }
	.grid10.m30 > .gspcol5-10 { width: calc((100% - 30px) / 10 * 5); }
	.grid10.m30 > .gspcol6-10 { width: calc((100% - 30px) / 10 * 6); }
	.grid10.m30 > .gspcol7-10 { width: calc((100% - 30px) / 10 * 7); }
	.grid10.m30 > .gspcol8-10 { width: calc((100% - 30px) / 10 * 8); }
	.grid10.m30 > .gspcol9-10 { width: calc((100% - 30px) / 10 * 9); }

	.grid10.m40 > div,
	.grid10.m40 > section,
	.grid.m40 > div,
	.grid.m40 > section {
		margin-bottom: 30px;
	}
	.grid.m40 > .gspcol1 { width: calc((100% - 440px) / 12); }
	.grid.m40 > .gspcol2 { width: calc((100% - 200px) / 12 * 2); }
	.grid.m40 > .gspcol3 { width: calc((100% - 120px) / 12 * 3); }
	.grid.m40 > .gspcol4 { width: calc((100% - 80px) / 12 * 4); }
	.grid.m40 > .gspcol5 { width: calc((100% - 40px) / 12 * 5); }
	.grid.m40 > .gspcol6 { width: calc((100% - 40px) / 12 * 6); }
	.grid.m40 > .gspcol7 { width: calc((100% - 40px) / 12 * 7); }
	.grid.m40 > .gspcol8 { width: calc((100% - 40px) / 12 * 8); }
	.grid.m40 > .gspcol9 { width: calc((100% - 40px) / 12 * 9); }
	.grid.m40 > .gspcol10 { width: calc((100% - 40px) / 12 * 10); }
	.grid.m40 > .gspcol11 { width: calc((100% - 40px) / 12 * 11); }

	.grid10.m40 > .gspcol1-10 { width: calc((100% - 360px) / 10); }
	.grid10.m40 > .gspcol2-10 { width: calc((100% - 160px) / 10 * 2); }
	.grid10.m40 > .gspcol3-10 { width: calc((100% - 80px) / 10 * 3); }
	.grid10.m40 > .gspcol4-10 { width: calc((100% - 40px) / 10 * 4); }
	.grid10.m40 > .gspcol5-10 { width: calc((100% - 40px) / 10 * 5); }
	.grid10.m40 > .gspcol6-10 { width: calc((100% - 40px) / 10 * 6); }
	.grid10.m40 > .gspcol7-10 { width: calc((100% - 40px) / 10 * 7); }
	.grid10.m40 > .gspcol8-10 { width: calc((100% - 40px) / 10 * 8); }
	.grid10.m40 > .gspcol9-10 { width: calc((100% - 40px) / 10 * 9); }
}




/* intro_wrap */
@media screen and (min-width: 768px) { /* pc */
	.intro_wrap {
		padding-bottom: 30px;
	}
	.intro_wrap .intro {
		display: flex;
		flex-wrap: wrap;
	}
	.intro_wrap .intro ~ .intro {
		margin-top: 80px;
	}
	.intro_wrap .intro:nth-of-type(2n+1) {
		justify-content: flex-start;
	}
	.intro_wrap .intro:nth-of-type(2n) {
		justify-content: flex-end;
	}
	.intro_wrap .intro .img {
		width: 100%;
		margin-bottom: -207px;
	}
	.intro_wrap .intro:nth-of-type(2n+1) .img {
		text-align: right;
		padding-left: 300px;
	}
	.intro_wrap .intro:nth-of-type(2n) .img {
		text-align: left;
		padding-right: 300px;
	}
	.intro_wrap .intro .text {
		width: 500px;
		min-height: 340px;
		padding: 25px;
		border-top: 10px solid #2ca6a8;
		background: rgba(255, 255, 255, 0.95);
		box-shadow: 2px 2px 6px rgba(64, 64, 64, 0.1);
	}
}
@media screen and (max-width: 767px) { /* sp */
	.intro_wrap .intro ~ .intro {
		margin-top: 50px;
	}
	.intro_wrap .intro h2 {
		font-size: 2.0rem;
		line-height: 1.3;
	}
	.intro_wrap .intro .img {
		width: 100%;
		margin-bottom: calc(60 / 768 * -100vw);
		text-align: center;
	}
	.intro_wrap .intro .text {
		width: calc(100% - 60px);
		min-height: 200px;
		padding: 15px;
		margin: 0 auto;
		border-top: 5px solid #2ca6a8;
		background: rgba(255, 255, 255, 0.95);
		box-shadow: 2px 2px 6px rgba(64, 64, 64, 0.1);
	}
}
.inViewIntroImg-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease;
}
.inViewIntroImg-in {
	opacity: 1;
	transform: translate(0, 0);
}
.inViewIntroText-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease 500ms;
}
.inViewIntroText-in {
	opacity: 1;
	transform: translate(0, 0);
}




/* intro1_wrap */
@media screen and (min-width: 768px) { /* pc */
	.intro1_wrap {
		padding-bottom: 30px;
	}
	.intro1_wrap .intro {
		display: flex;
		flex-wrap: wrap;
		padding-left: 20px;
		padding-right: 20px;
	}
	.intro1_wrap .intro ~ .intro {
		margin-top: 80px;
	}
	.intro1_wrap .intro:nth-of-type(2n) {
		justify-content: flex-start;
	}
	.intro1_wrap .intro:nth-of-type(2n+1) {
		justify-content: flex-end;
	}
	.intro1_wrap .intro h2 {
		margin-bottom: 0.5em;
		padding: 0.25em 0;
		border-bottom: 1px solid #2ca6a8;
		font-size: 3.4rem;
		text-align: center;
		line-height: 1.3;
	}
	.intro1_wrap .intro h2 .eng {
		font-size: 50%;
		line-height: 1.0;
	}
	.intro1_wrap .intro .img {
		width: 100%;
		margin-bottom: -207px;
	}
	.intro1_wrap .intro:nth-of-type(2n) .img {
		text-align: right;
		padding-left: 516px;
	}
	.intro1_wrap .intro:nth-of-type(2n+1) .img {
		text-align: left;
		padding-right: 516px;
	}
	.intro1_wrap .intro .text {
		width: 564px;
		min-height: 340px;
		padding: 25px;
		background-color: rgba(245,244,239,0.8);
		/*box-shadow: 2px 2px 6px rgba(64, 64, 64, 0.1);*/
	}
}
@media screen and (max-width: 767px) { /* sp */
	.intro1_wrap .intro ~ .intro {
		margin-top: 50px;
	}
	.intro1_wrap .intro h2 {
		margin-bottom: 0.5em;
		padding: 0.25em 0;
		border-bottom: 1px solid #2ca6a8;
		font-size: 2.4rem;
		text-align: center;
		line-height: 1.3;
	}
	.intro1_wrap .intro h2 .eng {
		font-size: 50%;
		line-height: 1.0;
	}
	.intro1_wrap .intro .img {
		width: 100%;
		/* margin-bottom: calc(60 / 768 * -100vw); */
		text-align: center;
	}
	.intro1_wrap .intro .text {
		width: calc(100% - 60px);
		width: 100%;
		min-height: 200px;
		padding: 15px;
		margin: 0 auto;
		background: #f5f4ef;
	}
	.intro1_wrap .btnbox {
		margin-top: 20px;
	}
}
.inViewIntro1Img-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease;
}
.inViewIntro1Img-in {
	opacity: 1;
	transform: translate(0, 0);
}
.inViewIntro1Text-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease 500ms;
}
.inViewIntro1Text-in {
	opacity: 1;
	transform: translate(0, 0);
}



/* intro2_wrap */
@media screen and (min-width: 768px) { /* pc */
	.intro2_wrap {
		padding-bottom: 30px;
	}
	.intro2_wrap .intro {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.intro2_wrap .intro ~ .intro {
		margin-top: 80px;
	}
	.intro2_wrap .intro .img {
		width: 340px;
	}
	.intro2_wrap .intro:nth-of-type(2n+1) .img {
		order: 2;
	}
	.intro2_wrap .intro:nth-of-type(2n) .img {
		order: 1;
	}
	.intro2_wrap .intro .text {
		width: 710px;
		padding: 25px;
		border-top: 1px solid #2ca6a8;
		background: rgba(255, 255, 255, 0.95);
	}
	.intro2_wrap .intro:nth-of-type(2n+1) .text {
		order: 1;
	}
	.intro2_wrap .intro:nth-of-type(2n) .text {
		order: 2;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.intro2_wrap .intro ~ .intro {
		margin-top: 50px;
	}
	.intro2_wrap .intro .img {
		width: 100%;
		margin-bottom: calc(10 / 768 * 100vw);
		text-align: center;
	}
	.intro2_wrap .intro .text {
		width: 100%;
		padding: 15px;
		margin: 0 auto;
		border-bottom: 1px solid #2ca6a8;
		background: rgba(255, 255, 255, 0.95);
	}
}
.inViewIntro2Img-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease;
}
.inViewIntro2Img-in {
	opacity: 1;
	transform: translate(0, 0);
}
.inViewIntro2Text-out {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 1000ms ease 250ms;
}
.inViewIntro2Text-in {
	opacity: 1;
	transform: translate(0, 0);
}




/* intro3_wrap */
@media screen and (min-width: 768px) { /* pc */
	.intro3_wrap .intro {
		border-top: 5px solid #2ca6a8;
	}
	.intro3_wrap .intro ~ .intro {
		margin-top: 80px;
	}
	.intro3_wrap header {
		display: flex;
		align-content: center;
		border-bottom: 1px solid #2ca6a8;
		padding: 28px 50px;
	}
	.intro3_wrap h2 {
		margin: 0;
	}
	.intro3_wrap h2 strong {
		font-size: 5.6rem;
		font-weight: normal;
		font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "Sawarabi Mincho", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "メイリオ", Meiryo, serif;
		line-height: 1.0;
	}
	.intro3_wrap h2 .lead {
		display: block;
		font-size: 1.8rem;
		color: #2ca6a8;
		font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	.intro3_wrap .profile {
		margin-left: 100px;
	}
	.prof1a {
		font-size: 2.4rem;
	}
	.intro3_wrap .profile .prof2 {
		display: flex;
		justify-content: flex-start;
		align-content: flex-start;
	}
	.intro3_wrap .info {
		display: flex;
		justify-content: space-between;
		align-content: flex-start;
		padding: 32px 20px;
	}
	.intro3_wrap h3 {
		margin-bottom: 25px;
		padding: 15px 58px;
		background: #fff;
		font-size: 1.8rem;
		font-weight: normal;
		color: #333;
		line-height: 1.3;
	}
	.intro3_wrap h3 .lead {
		display: block;
		margin-bottom: 0.5em;
		color: #2ca6a8;
	}
	.intro3_wrap .info .img {
		order: 2;
		width: 564px;
	}
	.intro3_wrap .info .text {
		order: 1;
		width: calc(100% - 564px - 40px);
	}
	.intro3_wrap .info .text p {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.intro3_wrap .intro {
		border-top: 3px solid #2ca6a8;
	}
	.intro3_wrap .intro ~ .intro {
		margin-top: 50px;
	}
	.intro3_wrap header {
		border-bottom: 1px solid #2ca6a8;
		padding: 20px 20px;
	}
	.intro3_wrap h2 {
		margin: 0 0 20px;
		text-align: center;
	}
	.intro3_wrap h2 strong {
		font-size: 2.6rem;
		font-weight: normal;
		font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "Sawarabi Mincho", "ＭＳ Ｐ明朝", "ＭＳ 明朝", "メイリオ", Meiryo, serif;
		line-height: 1.0;
	}
	.intro3_wrap h2 .lead {
		display: block;
		font-size: 1.2rem;
		color: #2ca6a8;
		font-family: -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	.intro3_wrap .profile .prof1 {
		text-align: center;
	}
	.prof1a {
		font-size: 1.8rem;
	}
	.prof1b {
		font-size: 1.2rem;
	}
	.intro3_wrap .profile .prof2 {
		display: flex;
		justify-content: center;
		align-content: flex-start;
		font-size: 1.2rem;
	}
	.intro3_wrap .profile .prof2 dt {
		min-width: 4em;
	}
	.intro3_wrap .info {
		padding: 15px 15px;
	}
	.intro3_wrap .info .text {
		position: relative;
		width: calc(100% - 40px);
		margin: -20px auto 0;
		z-index: 1;
	}
	.intro3_wrap h3 {
		margin-bottom: 25px;
		padding: 10px 10px;
		background: #dffeff;
		font-size: 1.6rem;
		font-weight: normal;
		color: #333;
		text-align: center;
		line-height: 1.3;
		letter-spacing: -0.1em;
	}
	.intro3_wrap h3 .lead {
		display: block;
		margin-bottom: 0.5em;
		color: #2ca6a8;
		font-size: 85%;
	}
	.intro3_wrap .info .text p {
		font-size: 1.0rem;
	}
}




/* btnbox */
.bntbox,
.btnbox {
	display: flex;
}
.bntbox.center,
.bntbox.center1,
.btnbox.center,
.btnbox.center1 {
	justify-content: center;
}
.bntbox.center2,
.btnbox.center2 {
	justify-content: space-around;
}
.bntbox.right,
.btnbox.right {
	justify-content: flex-end;
}
@media screen and (min-width: 768px) { /* pc */
	.bntbox.pc_center,
	.bntbox.pc_center1,
	.btnbox.pc_center,
	.btnbox.pc_center1 {
		justify-content: center;
	}
	.bntbox.pc_center2,
	.btnbox.pc_center2 {
		justify-content: space-around;
	}
	.bntbox.pc_right,
	.btnbox.pc_right {
		justify-content: flex-end;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.bntbox {
		flex-wrap: wrap;
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.bntbox.sp_center,
	.bntbox.sp_center1,
	.btnbox.sp_center,
	.btnbox.sp_center1 {
		justify-content: center;
	}
	.bntbox.sp_center2,
	.btnbox.sp_center2 {
		justify-content: space-around;
	}
	.bntbox.sp_right,
	.btnbox.sp_right {
		justify-content: flex-end;
	}
	.bntbox p + p {
		margin-top: 20px;
	}
}




/* btn1 */
.btn1 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn1 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #2ca6a8;
	box-shadow: 0 0 0 #666;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #fff;
	text-decoration: none;
}
.btn1.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn1 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 100ms ease;
	}
	.btn1.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn1 a:hover {
		box-shadow: 2px 2px 0 #666;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn1 a {
		width: 300px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.6rem;
		letter-spacing: 0;
		transition: all 100ms ease;
	}
	.btn1.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn1 a:hover {
		box-shadow: 2px 2px 0 #666;
	}
	.btn1 ~ .btn1 {
		margin-top: 25px;
	}
}




/* btn2 */
.btn2 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn2 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #888;
	box-shadow: 0 0 0 #666;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #fff;
	text-decoration: none;
}
.btn2.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn2 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 100ms ease;
	}
	.btn2.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn2 a:hover {
		box-shadow: 2px 2px 0 #666;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn2 a {
		width: 300px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.6rem;
		letter-spacing: 0;
		transition: all 100ms ease;
	}
	.btn2.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn2 a:hover {
		box-shadow: 2px 2px 0 #666;
	}
	.btn2 ~ .btn2 {
		margin-top: 25px;
	}
}




/* btn3 */
.btn3 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn3 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #2ca6a8;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #fff;
	text-decoration: none;
}
.btn3.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn3 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border: 3px solid #2ca6a8;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn3.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn3 a:hover {
		background: rgba(3, 204, 211, 0.1);
		color: #2ca6a8;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn3 a {
		width: 300px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.6rem;
		letter-spacing: 0;
		transition: all 100ms ease;
	}
	.btn3.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn3 ~ .btn3 {
		margin-top: 25px;
	}
}




/* btn4 */
.btn4 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn4 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #eed63e;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #333;
	text-decoration: none;
}
.btn4.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn4 a {
		width: 335px;
		height: 54px;
		border: 3px solid #eed63e;
		margin: 10px;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn4.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn4 a:hover {
		background: rgba(238, 214, 62, 0.1);
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn4 a {
		width: 300px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.6rem;
		letter-spacing: 0;
		transition: all 100ms ease;
	}
	.btn4.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn4 ~ .btn4 {
		margin-top: 25px;
	}
}




/* btn5 */
.btn5 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn5 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #2ca6a8;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #fff;
	text-decoration: none;
}
.btn5.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn5 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border: 3px solid #2ca6a8;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn5.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn5 a:hover {
		background: rgba(7, 95, 167, 0.1);
		color: #2ca6a8;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn5 a {
		width: 300px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.6rem;
		letter-spacing: 0;
		transition: all 100ms ease;
	}
	.btn5.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn5 ~ .btn5 {
		margin-top: 25px;
	}
}




/* btn6 */
.btn6 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn6 a {
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #666;
	color: #fff;
	text-decoration: none;
}
.btn6.arrow a::after {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn6 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border: 3px solid #666;
		border-radius: 27px;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn6.arrow a::after {
		width: 26px;
		height: 26px;
		margin-left: 0.5em;
	}
	.btn6 a:hover {
		background: rgba(102, 102, 102, 0.1);
		color: #666;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn6 a {
		width: 200px;
		max-width: 100%;
		height: 40px;
		border-radius: 27px;
		font-size: 1.3rem;
		transition: all 100ms ease;
	}
	.btn6.arrow a::after {
		width: 15px;
		height: 15px;
		margin-left: 0.5em;
	}
	.btn6 ~ .btn6 {
		margin-top: 25px;
	}
}




/* btn7 */
.btn7 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn7 a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #2ca6a8;
	color: #fff;
	text-decoration: none;
}
.btn7.arrow a::before {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn7 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border: 4px solid #2ca6a8;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn7.arrow a::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 327px;
		height: 46px;
		border: 1px solid #fff;
	}
	.btn7.arrow a::before {
		width: 26px;
		height: 26px;
		margin-right: 0.33em;
	}
	.btn7 a:hover {
		background: #c2eeee;
		color: #000;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn7 a {
		width: 320px;
		max-width: 100%;
		height: 40px;
		border: 3px solid #2ca6a8;
		font-size: 1.3rem;
		transition: all 100ms ease;
	}
	.btn7.arrow a::before {
		width: 15px;
		height: 15px;
		margin-right: 0.33em;
	}
	.btn7.arrow a::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 314px;
		height: 34px;
		border: 1px solid #fff;
	}
}




/* btn8 */
.btn8 {
	max-width: 100%;
	margin-bottom: 0;
}
.btn8 a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	align-content: center;
	background: #666;
	color: #fff;
	text-decoration: none;
}
.btn8.arrow a::before {
	content: "\f35a";
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: 120%;
}
@media screen and (min-width: 768px) { /* pc */
	.btn8 a {
		width: 335px;
		height: 54px;
		margin: 10px;
		border: 4px solid #666;
		font-size: 1.9rem;
		transition: all 300ms ease;
	}
	.btn8.arrow a::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 327px;
		height: 46px;
		border: 1px solid #fff;
	}
	.btn8.arrow a::before {
		width: 26px;
		height: 26px;
		margin-right: 0.33em;
	}
	.btn8 a:hover {
		background: #eee;
		color: #333;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.btn8 a {
		width: 320px;
		max-width: 100%;
		height: 40px;
		border: 3px solid #666;
		font-size: 1.3rem;
		transition: all 100ms ease;
	}
	.btn8.arrow a::before {
		width: 15px;
		height: 15px;
		margin-right: 0.33em;
	}
	.btn8.arrow a::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 314px;
		height: 34px;
		border: 1px solid #fff;
	}
}




/* list01 */
ul.list01 li {
	position: relative;
	padding: 0.25em 0.25em 0.25em 1.6em;
	font-size: 1.8rem;
}
ul.list01 li:last-child {
	margin-bottom:15px;
	}
ul.list01 li::before {
	content: "\f14a";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	color: #2ca6a8;
	margin:2px 10px 0 0;
	font-size: 2.0rem;
	}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
	ul.list01 li {
		font-size: 1.6rem;
	}

	ul.list01 li::before {
	font-size: 1.8rem;
	}
}




/* list02 */
ul.list02 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list02 li::before {
	content: "\f058";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list03 */
ul.list03 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list03 li::before {
	content: "\f111";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list04 */
ul.list04 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list04 li::before {
	content: "\f0a9";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list05 */
ul.list05 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list05 li::before {
	content: "\f0da";
	position: absolute;
	left: .4em;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list06 */
ul.list06 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list06 li::before {
	content: "\f05a";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list07 */
ul.list07 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list07 li::before {
	content: "\f14b";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list08 */
ul.list08 li {
	position: relative;
	padding: 0.25em 0 0.25em 1.2em;
	font-size: 1.7rem;
}
ul.list08 li::before {
	content: "\f059";
	position: absolute;
	left: 0;
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	color: #2ca6a8;
	margin:3px 10px 0 0;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* list09 */
ul.list09 {
	counter-reset:li;
}
ul.list09 li {
	position:relative;
	display: flex;
	align-items: center;
	min-height: 63px;
	margin-bottom: 20px;
	padding:0 0 0 141px; 
	border-radius: 2px;
	font-size: 2.1rem;
}
ul.list09 > li::after {
	counter-increment: li;
	content: '秘訣 ' counter(li);
	position: absolute;	
	left: 0px;
	top: 0px;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 63px;
	width: 111px;
	background: #2ca6a8;
	font-family: 'M PLUS Rounded 1c', -apple-system, BlinkMacSystemFont, 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	color: #fff;
	font-size: 2.1rem;
	line-height: 30px;
	text-align: center;
}
ul.list09 > li::before{
	content:''; 
	display:block; 
	position:absolute; 
	box-shadow: 0 0 2px 2px rgba(255,255,255,0.2) inset;
	top:23px; 
	left:111px; 
	height:0; 
	width:0; 
	border-top: 8px solid transparent;
	border-right: 7px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 13px solid #2ca6a8;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
	ul.list09 li {
		position:relative;
		display: flex;
		align-items: center;
		min-height: 40px;
		margin-bottom: 20px;
		padding:0 0 0 95px; 
		border-radius: 2px;
		font-size: 1.4rem;
	}
	ul.list09 > li::after {
		height: 40px;
		width: 70px;
		font-size: 1.6rem;
		line-height: 30px;
		letter-spacing: 0;
	}
	ul.list09 > li::before{
		top:12px; 
		left:70px; 
		border-top: 8px solid transparent;
		border-right: 7px solid transparent;
		border-bottom: 8px solid transparent;
		border-left: 13px solid #2ca6a8;
	}
}



ul.ul01 {
	margin-top: 0px;
	margin-bottom: 20px;
	padding-left: 0px;
}
.ul01 li {
	margin-bottom: 10px;
	font-size: 22px;
	list-style: none;
}
.ul01 li::before {
	font-family: 'FontAwesome';
	content: '\f05d';
	margin: 0 5px 0 10px;
	color: #2ca6a8;
}
ul.ul02 {
	margin-top: 0px;
	margin-bottom: 20px;
	padding-left: 20px;
}
.ul02 li {
	position: relative;
	margin-bottom: 8px;
	list-style: none;
	font-size: 1.6rem;
	padding-left: 1.0em;
	line-height:150%;
}
.ul02.inline li {
	display: inline-block;
	width: 310px;
}
.ul02 li::before {
	font-family: 'FontAwesome';
	content: '\f1db';
	margin: 0 5px 0 10px;
	color: #2ca6a8;
	position: absolute;
left: -1.0em;
}
ul.ul03 {
	margin-top: 0px;
	margin-bottom: 20px;
	padding-left: 0px;
}
.ul03 li {
	margin-bottom: 5px;
	font-size: 18px;
	list-style: none;
}
.ul03 li::before {
	font-family: 'FontAwesome';
	content: '\f18e';
	margin: 0 5px 0 10px;
	color: #2ca6a8;
}
.ul04 li {
	color: black;
	position: relative;
	background: #f1f8ff;
	line-height: 1.5;
	padding: 0.5em;
	margin-bottom: 4px;
	border-left : solid 35px #5c9ee7;
	list-style-type: none!important;
}
.ul04 li::before {
	font-family: FontAwesome;
	content: "\f040";
	position: absolute;
	display: block;
	padding: 0.5em;
	width: 1.2em;
	color: white;
	font-weight: normal;
	text-align: center;
	left : -35px;
	top: 50%;
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
ul.ul05 {
	margin-top: 0px;
	margin-bottom: 20px;
	padding-left: 0px;
}
.ul05 li {
	margin-left: 1.33em;
	margin-bottom: 5px;
	font-size: 1.6rem;
	list-style: none;
}
.ul05 li::before {
	content: '';
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-left: -1.33em;
	margin-right: 0.33em;
	background: url(../img/common/ico_chk.png) center bottom / contain no-repeat;
}

@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* frame < add */
.frame {
	display: inline-block;
	position: relative;
	overflow: hidden; /* 不要部分を消す */
	padding: 6px; /* 6px だけは写真からはみ出す */
}
.frame::before,
.frame::after {
	content: "";
	position: absolute;
	z-index: 1;
	width: 97px;
	height: 50px;
	background: #fff; /* 背景色 */
	transform: rotate(-30deg);
}
.frame::before { /* 左上 */
	box-shadow: 0 10px 8px -12px rgba(0, 0, 0, 0.8);
	top: -24px;
	bottom: auto;
	right: auto;
	left: -26px;

}
.frame::after { /* 右下 */
	box-shadow: 0 -10px 10px -10px rgba(0, 0, 0, 0.7);
	top: auto;
	bottom: -22px;
	right: -25px;
	left: auto;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* frame_s < add */
.frame_s img {
	border-radius: 50%;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* frame_ds < add */
.frame_ds {
	display: inline-block;
	position: relative;
}
.frame_ds::after {
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
	transform: rotate(3deg); /* 回転させる */
	background: #fff;
	z-index: -1;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* u_faq */
.u_faq dl {
	padding: 20px 0;
	border-bottom: 1px dashed #ddd;
}
.u_faq dl ~ dl {
	margin-top: 10px;
}
.u_faq dt {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 2em;
	margin-bottom: 10px;
	padding: 0.2em 0 0.2em 40px;
	font-size: 1.6rem;
}
.u_faq dt::before {
	content: "Q";
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 30px;
	height: 100%;
	border-right: 2px solid #2ca6a8;
	font-size: 2.4rem;
	font-weight: bolder;
	color: #2ca6a8;
	line-height: 1.0;
}
.u_faq dd {
	position: relative;
	padding: 0.25em 0 0.25em 40px;
	font-size: 1.6rem;
}
.u_faq dd::before {
	content: "A";
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	width: 30px;
	height: 100%;
	border-right: 2px solid #f40;
	font-size: 2.4rem;
	font-weight: bolder;
	color: #f40;
	line-height: 1.0;
}
@media screen and (min-width: 768px) { /* pc */

}
@media screen and (max-width: 767px) { /* sp */
}




/* .calendar < add */
@media screen and (min-width: 768px) { /* pc */
	section .calendar {
		display: flex;
		justify-content: center;
		align-content: center;
		flex-wrap: wrap;
		width: 780px;
		margin-bottom: 10px;
	}
	section .calendar table {
		width: 100%;
		margin-bottom: 0.5em;
		border-collapse: collapse;
		font-size: 1.6rem;
		line-height: 1.75;
	}
	section .calendar thead {
		background: #2ca6a8;
	}
	section .calendar tbody {
		background: #fffbe5;
		color: #000;
	}
	section .calendar th {
		font-weight: normal;
		padding:10px;
		}
	section .calendar td {
		width: 3.5em;
		text-align: center;
		
	}
	section .calendar tbody td {
		color: #2ca6a8;
	}
	section .calendar tbody td.closed {
		color: #000;
	}
	section .calendar figcaption {
		width: 100%;
		padding: 0.6em 0.2em;
		line-height: 1.0;
		font-size: 1.6rem;
	}
	section .calendar figcaption span {
		display: inline-block;
		width: 1em;
		height: 1em;
		border-radius: 0.5em;
		background: #fff;
		color: #2ca6a8;
		font-weight: bold;
		line-height: 1.0;
		margin-right:5px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	section .calendar {
		display: flex;
		justify-content: center;
		align-content: center;
		flex-wrap: wrap;
		width: 100%;
		max-width: 360px;
		margin: 0 auto 10px;
	}
	section .calendar table {
		width: 100%;
		margin-bottom: 0.5em;
		border-collapse: collapse;
		font-size: 1.2rem;
		line-height: 1.75;
	}
	section .calendar thead {
		background: #2ca6a8;
	}
	section .calendar tbody {
		background: #fffbe5;
		color: #000;
	}
	section .calendar th {
		font-weight: normal;
	}
	section .calendar td {
		width: 2.0em;
		text-align: center;
	}
	section .calendar tbody td {
		color: #2ca6a8;
	}
	section .calendar tbody td.closed {
		color: #000;
	}
	section .calendar figcaption {
		width: 100%;
		padding: 0 0.2em;
		line-height: 1.0;
		font-size: 1.2rem;
	}
	section .calendar figcaption span {
		display: inline-block;
		width: 1em;
		height: 1em;
		border-radius: 0.5em;
		background: #fff;
		color: #2ca6a8;
		font-weight: bold;
		line-height: 1.0;
	}
}




/* table_wrap */
@media screen and (min-width: 768px) { /* pc */
	.table_wrap {
		display: flex;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.table_wrap.small {
		margin: 0 0 20px;
		padding: 0 0 3px;
		overflow-x: auto;
		font-size: 1.2rem;
	}
	.table_wrap::-webkit-scrollbar {
		height: 10px;
	}
	.table_wrap::-webkit-scrollbar-thumb {
		background: rgba(38, 15, 129, 0.75);
		border-radius: 5px;
	}
	.table_wrap::-webkit-scrollbar-track-piece {
		background: #efefef;
	}
	.table_wrap table {
		width: auto;
		min-width: 100%;
		border-top: 1px solid #ccc;
		border-left: 1px solid #ccc;
	}
	.table_wrap table td {
		width: auto;
		padding: 5px;
		border-bottom: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	.table_wrap table thead th,
	.table_wrap table thead td {
		padding: 0.25em 0;
		width: auto;
		background: rgba(179, 217, 255, 0.502);
		white-space: nowrap;
		border-bottom: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	.table_wrap table th,
	.table_wrap table td {
		letter-spacing: 0;
	}
	.table_wrap table .line-break {
		white-space: normal;
		word-wrap: break-word;
	}
}




/* table */
@media screen and (min-width: 768px) { /* pc */
	.tbl-r01 {
		width: 100%;
		margin: 20px auto;
	}
	.tbl-r01 th {
		background: rgba(243, 150, 1, 0.25);
		border: solid 1px #ccc;
		color: #222;
		padding: 10px;
	}
	.tbl-r01 td {
		border: solid 1px #ccc;
		padding: 10px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.tbl-r01 {
		width: 90%;
		max-width: 480px;
		margin: 20px auto;
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
	}
	.tbl-r01 th {
		border-bottom: none;
		display: block;
		width: 100%;
		padding: 0.5em 0.5em;
		background: rgba(243, 150, 1, 0.25);
		color: #222;
	}
	.tbl-r01 td {
		border-bottom: none;
		display: block;
		width: 100%;
		padding: 0.5em 0.5em;
	}
	.tbl-r01 .last td:last-child {
		border-bottom: solid 1px #ccc;
		width: 100%;
	}
}




/* table < add */
@media screen and (min-width: 768px) { /* pc */
	table.tbl-r02 {
		margin: 20px auto;
	}
	.tbl-r02 th {
		background: #2ca6a8;
		border: solid 1px #ccc;
		color: #fff;
		padding: 10px;
	}
	.tbl-r02 td {
		border: solid 1px #ccc;
		padding: 10px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.tbl-r02 {
		width: 90%;
		max-width: 480px;
		margin: 20px auto;
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
		border-bottom: 1px solid #ccc;
	}
	.tbl-r02 th {
		border-bottom: none;
		display: block;
		width: 100%;
		padding: 0.5em 0.5em;
		background: #2ca6a8;
		color: #fff;
	}
	.tbl-r02 td {
		border-bottom: none;
		display: block;
		width: 100%;
		padding: 0.5em 0.5em;
	}
	.tbl-r02 .last td:last-child {
		border-bottom: solid 1px #ccc;
		width: 100%;
	}
}




/* table01 */
.table01 {
	width: 100%;
}
.table01 th,
.table01 td {
	margin: 0.1em;
	padding: 0.5em 0.5em;
	border-bottom: 1px dotted #ddd;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* table02 */
.table02 {
	width: 100%;
	line-height: 1.5;
	border-top: 1px solid #ccc;
}
.table02 th,
.table02 td {
	padding: 0.75em 0.75em;
	border-bottom: 1px solid #ccc;
	vertical-align: middle;
}
.table02 thead th,
.table02 thead td {
	background: #ddd;
}
.table02 td:first-child,
.table02 th {
	background-color: #eee;
	white-space: nowrap;
}
.table02 td:last-child {
	background-color: transparent;
	white-space: normal;
}
@media screen and (min-width: 768px) { /* pc */
	.table02 th,
	.table02 td {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.table02.type2 th,
	.table02.type2 td {
		display: block;
	}
	.table02.type2 td:first-child,
	.table02.type2 th {
		padding: 0.5em 0.5em;
		border-bottom: none;
		text-align: center;
	}
	.table02:not(.type2) td:last-child {
		padding: 0.75em 0.75em;
		border-bottom: 1px solid #ccc;
		text-align: center;
	}
	.table02:not(.dummy) td:last-child {
		text-align: left;
		border-bottom: 1px solid #ccc;
	}
	.table02 th,
	.table02 td {
		font-size: 1.2rem;
	}
}




/* table03 */
.table03 {
	width: 100%;
	line-height: 1.5;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
.table03 th,
.table03 td {
	padding: 0.5em 0.5em;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	vertical-align: middle;
}
.table03 thead th,
.table03 thead td {
	background: #2ca6a8;
	color: #fff;
}
@media screen and (min-width: 768px) { /* pc */
	.table03 th,
	.table03 td {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.table03 th,
	.table03 td {
		font-size: 1.2rem;
	}
}




/* table-wrap */
@media screen and (min-width: 768px) { /* pc */
	.table-wrap ~ .table-wrap {
		margin-top: 60px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.table-wrap ~ .table-wrap {
		margin-top: 30px;
	}
	.table-wrap table td,
	.table-wrap table th {
		letter-spacing: 0;
	}
	.table-wrap {
		margin: 0 0 20px;
		padding: 0 0 3px;
		overflow-x: auto;
		font-size: 1.2rem
	}

	.table-wrap::-webkit-scrollbar {
		height: 10px
	}

	.table-wrap::-webkit-scrollbar-thumb {
		background: rgba(38, 15, 129, .75);
		border-radius: 5px
	}

	.table-wrap::-webkit-scrollbar-track-piece {
		background: #efefef
	}

	.table-wrap table {
		width: auto;
		min-width: 100%;
	}

	.table-wrap table td {
		width: auto;
		padding: 5px;
	}

	.table-wrap table thead td,
	.table-wrap table thead th {
		padding: .25em .2em;
		width: auto;
		color: #fff;
		text-align: center;
		white-space: nowrap;
	}
	.table-wrap table .line-break {
		white-space: normal;
		word-wrap: break-word
	}
}




/* circle_label */
.circle_label {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #ffe300;
	border-radius: 66px;
	color: #000;
	text-align: center;
}
@media screen and (min-width: 768px) { /* pc */
	.circle_label {
		width: 132px;
		height: 132px;
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
}




/* doc */
.doc {
	line-height: 1.5;
}
.doc::after {
	content: "";
	clear: both;
	display: block;
}
.doc .img_right,
.doc .img_left {
	margin: 0 20px 1em;
}
.doc .img_right img,
.doc .img_left img {
	width: 100%;
	height: auto;
}
@media screen and (min-width: 768px) { /* pc */
	.doc .img_right {
		float: right;
		width: 320px;
	}
	.doc .img_left {
		float: left;
		width: 320px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.doc .img_right {
		float: right;
	}
	.doc .img_right img {
		width: 40vw;
	}
	.doc .img_left {
		float: left;
	}
	.doc .img_left img {
		width: 40vw;
	}
}




/* input */
input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], select, textarea, .field {
	display: block;
	height: 40px;
	line-height: 40px;
	color: #222;
	border-radius: 3px;
	box-shadow: none;
	border: 1px solid #ADABAB;
	width: 90%;
	font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
	background-color: #fff;
	-webkit-transition: background-color 0.24s ease-in-out;
	transition: background-color 0.24s ease-in-out;
	padding-left: 5px;
}
input[type="text"]:focus, input[type="text"]:active, input[type="password"]:focus, input[type="password"]:active, input[type="datetime"]:focus, input[type="datetime"]:active, input[type="datetime-local"]:focus, input[type="datetime-local"]:active, input[type="date"]:focus, input[type="date"]:active, input[type="month"]:focus, input[type="month"]:active, input[type="time"]:focus, input[type="time"]:active, input[type="week"]:focus, input[type="week"]:active, input[type="number"]:focus, input[type="number"]:active, input[type="email"]:focus, input[type="email"]:active, input[type="url"]:focus, input[type="url"]:active, input[type="search"]:focus, input[type="search"]:active, input[type="tel"]:focus, input[type="tel"]:active, input[type="color"]:focus, input[type="color"]:active, select:focus, select:active, textarea:focus, textarea:active, .field:focus, .field:active {
	background-color: #f7f8fa;
}
input[type="text"].error, input[type="text"].is-invalid, input[type="password"].error, input[type="password"].is-invalid, input[type="datetime"].error, input[type="datetime"].is-invalid, input[type="datetime-local"].error, input[type="datetime-local"].is-invalid, input[type="date"].error, input[type="date"].is-invalid, input[type="month"].error, input[type="month"].is-invalid, input[type="time"].error, input[type="time"].is-invalid, input[type="week"].error, input[type="week"].is-invalid, input[type="number"].error, input[type="number"].is-invalid, input[type="email"].error, input[type="email"].is-invalid, input[type="url"].error, input[type="url"].is-invalid, input[type="search"].error, input[type="search"].is-invalid, input[type="tel"].error, input[type="tel"].is-invalid, input[type="color"].error, input[type="color"].is-invalid, select.error, select.is-invalid, textarea.error, textarea.is-invalid, .field.error, .field.is-invalid {
	color: #222;
	border-color: #fbe3e4;
	background-color: white;
	background-position: 99% center;
	background-repeat: no-repeat;
	background-image: url(../img/common/ask/ask_error.png);
	outline-color: #fbe3e4;
}
input[type="text"].success, input[type="text"].is-valid, input[type="password"].success, input[type="password"].is-valid, input[type="datetime"].success, input[type="datetime"].is-valid, input[type="datetime-local"].success, input[type="datetime-local"].is-valid, input[type="date"].success, input[type="date"].is-valid, input[type="month"].success, input[type="month"].is-valid, input[type="time"].success, input[type="time"].is-valid, input[type="week"].success, input[type="week"].is-valid, input[type="number"].success, input[type="number"].is-valid, input[type="email"].success, input[type="email"].is-valid, input[type="url"].success, input[type="url"].is-valid, input[type="search"].success, input[type="search"].is-valid, input[type="tel"].success, input[type="tel"].is-valid, input[type="color"].success, input[type="color"].is-valid, select.success, select.is-valid, textarea.success, textarea.is-valid, .field.success, .field.is-valid {
	color: #222;
	border-color: #e6efc2;
	background-color: white;
	background-position: 99% center;
	background-repeat: no-repeat;
	background-image: url(../img/common/ask/ask_ok.png);
	outline-color: #e6efc2;
}
input[type="text"][disabled], input[type="text"].is-disabled, input[type="password"][disabled], input[type="password"].is-disabled, input[type="datetime"][disabled], input[type="datetime"].is-disabled, input[type="datetime-local"][disabled], input[type="datetime-local"].is-disabled, input[type="date"][disabled], input[type="date"].is-disabled, input[type="month"][disabled], input[type="month"].is-disabled, input[type="time"][disabled], input[type="time"].is-disabled, input[type="week"][disabled], input[type="week"].is-disabled, input[type="number"][disabled], input[type="number"].is-disabled, input[type="email"][disabled], input[type="email"].is-disabled, input[type="url"][disabled], input[type="url"].is-disabled, input[type="search"][disabled], input[type="search"].is-disabled, input[type="tel"][disabled], input[type="tel"].is-disabled, input[type="color"][disabled], input[type="color"].is-disabled, select[disabled], select.is-disabled, textarea[disabled], textarea.is-disabled, .field[disabled], .field.is-disabled {
	cursor: not-allowed;
	border-color: #cfcfcf;
	opacity: 0.6;
}
input[type="text"][disabled]:focus, input[type="text"][disabled]:active, input[type="text"].is-disabled:focus, input[type="text"].is-disabled:active, input[type="password"][disabled]:focus, input[type="password"][disabled]:active, input[type="password"].is-disabled:focus, input[type="password"].is-disabled:active, input[type="datetime"][disabled]:focus, input[type="datetime"][disabled]:active, input[type="datetime"].is-disabled:focus, input[type="datetime"].is-disabled:active, input[type="datetime-local"][disabled]:focus, input[type="datetime-local"][disabled]:active, input[type="datetime-local"].is-disabled:focus, input[type="datetime-local"].is-disabled:active, input[type="date"][disabled]:focus, input[type="date"][disabled]:active, input[type="date"].is-disabled:focus, input[type="date"].is-disabled:active, input[type="month"][disabled]:focus, input[type="month"][disabled]:active, input[type="month"].is-disabled:focus, input[type="month"].is-disabled:active, input[type="time"][disabled]:focus, input[type="time"][disabled]:active, input[type="time"].is-disabled:focus, input[type="time"].is-disabled:active, input[type="week"][disabled]:focus, input[type="week"][disabled]:active, input[type="week"].is-disabled:focus, input[type="week"].is-disabled:active, input[type="number"][disabled]:focus, input[type="number"][disabled]:active, input[type="number"].is-disabled:focus, input[type="number"].is-disabled:active, input[type="email"][disabled]:focus, input[type="email"][disabled]:active, input[type="email"].is-disabled:focus, input[type="email"].is-disabled:active, input[type="url"][disabled]:focus, input[type="url"][disabled]:active, input[type="url"].is-disabled:focus, input[type="url"].is-disabled:active, input[type="search"][disabled]:focus, input[type="search"][disabled]:active, input[type="search"].is-disabled:focus, input[type="search"].is-disabled:active, input[type="tel"][disabled]:focus, input[type="tel"][disabled]:active, input[type="tel"].is-disabled:focus, input[type="tel"].is-disabled:active, input[type="color"][disabled]:focus, input[type="color"][disabled]:active, input[type="color"].is-disabled:focus, input[type="color"].is-disabled:active, select[disabled]:focus, select[disabled]:active, select.is-disabled:focus, select.is-disabled:active, textarea[disabled]:focus, textarea[disabled]:active, textarea.is-disabled:focus, textarea.is-disabled:active, .field[disabled]:focus, .field[disabled]:active, .field.is-disabled:focus, .field.is-disabled:active {
	background-color: #d5edf8;
}
input[type="password"] {
	letter-spacing: 0.3em;
}
input[type="checkbox"],
input[type="radio"] {
	margin-right: 0.25em;
}
textarea {
	line-height: 1.5;
}

.submit_box {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	width: 100%;
	margin: 30px auto 20px;
}
.submit_box input[type="button"] {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 290px;
	height: 40px;
	background-image: -moz-linear-gradient(top, #FFE660, #FFCD06);
	background-image: -ms-linear-gradient(top, #FFE660, #FFCD06);
	background-image: -webkit-linear-gradient(top, #FFE660, #FFCD06);
	background-image: linear-gradient(top, #FFE660, #FFCD06);
	background-clip: padding-box;
	border-radius: 20px;
	cursor: pointer;
	transition: all 150ms ease;
}
.submit_box input[type="button"]:hover {
	background-image: -moz-linear-gradient(top, #FFCD06, #FFE660);
	background-image: -ms-linear-gradient(top, #FFCD06, #FFE660);
	background-image: -webkit-linear-gradient(top, #FFCD06, #FFE660);
	background-image: linear-gradient(top, #FFCD06, #FFE660);
	background-clip: padding-box;
}
.submit_box input[type="button"]#form_edit {
	background-image: -moz-linear-gradient(top, #bbbbbb, #dddddd);
	background-image: -ms-linear-gradient(top, #bbbbbb, #dddddd);
	background-image: -webkit-linear-gradient(top, #bbbbbb, #dddddd);
	background-image: linear-gradient(top, #bbbbbb, #dddddd);
	background-clip: padding-box;
}
.submit_box input[type="button"]#form_edit:hover {
	background-image: -moz-linear-gradient(top, #dddddd, #bbbbbb);
	background-image: -ms-linear-gradient(top, #dddddd, #bbbbbb);
	background-image: -webkit-linear-gradient(top, #dddddd, #bbbbbb);
	background-image: linear-gradient(top, #dddddd, #bbbbbb);
	background-clip: padding-box;
}
@media screen and (min-width: 768px) { /* pc */
	#contact_form label ~ label {
		margin-left: 1em;
	}
}
@media screen and (max-width: 767px) { /* sp */
	input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], select, textarea, .field {
		width: 100%;
	}
}




/* gototop */
.gototop {
	position: fixed;
}
.gototop a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 48px;
	height: 48px;
	background: #2ca6a8;
	border: 2px solid #fff;
	border-radius: 24px;
	box-shadow: 2px 2px 2px rgba(64, 64, 64, 0.1);
	font-family: 'Roboto', sans-serif;
	color: #fff;
}
.gototop a:hover {
	text-decoration: none;
}
@media screen and (min-width: 768px) { /* pc */
	.gototop {
		position: fixed;
		bottom: 20px;
		right: calc(50% - 560px);
	}
}
@media screen and (max-width: 767px) { /* sp */
	.gototop {
		position: fixed;
		bottom: 20px;
		right: 10px;
	}
}




/* inViewMarker1 < add */
.inViewMarker1-out {
	background-image: -webkit-linear-gradient(left, transparent 50%, #2ca6a8 50%);
	background-image: -moz-linear-gradient(left, transparent 50%, #2ca6a8 50%);
	background-image: -ms-linear-gradient(left, transparent 50%, #2ca6a8 50%);
	background-image: -o-linear-gradient(left, transparent 50%, #2ca6a8 50%);
	background-image: linear-gradient(left, transparent 50%, #2ca6a8 50%);
	background-repeat: repeat-x;
	background-size: 200% .2em;
	background-position: 0 1em;
	transition: all 2s ease;
	font-weight: bold;
}
.inViewMarker1-in {
	background-position: -100% 1em;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* inViewSec-in */
.inViewSec-out {
	opacity: 0;
	transform: translate(0, 40px);
}
.inViewSec-in {
	opacity: 1;
	transform: translate(0, 0);
	transition: all 1000ms ease 500ms;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* inViewH1, inViewH1p */
@media screen and (min-width: 768px) { /* pc */
	.inViewH1-out {
		opacity: 0;
		transform: translate(0, 0);
	}
	.inViewH1-in {
		opacity: 1;
		transform: translate(0, 0);
		transition: all 1000ms ease 250ms;
	}
	.inViewH1p-out {
		opacity: 0;
		transform: translate(0, 0);
	}
	.inViewH1p-in {
		opacity: 1;
		transform: translate(0, 0);
		transition: all 1000ms ease;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.inViewH1-out {
		opacity: 0;
		transform: translate(0, 0);
	}
	.inViewH1-in {
		opacity: 1;
		transform: translate(0, 0);
		transition: all 1000ms ease 250ms;
	}
	.inViewH1p-out {
		opacity: 0;
		transform: translate(0, 0);
	}
	.inViewH1p-in {
		opacity: 1;
		transform: translate(0, 0);
		transition: all 1000ms ease;
	}
}




/* box1 */
.box1 {
	position: relative;
	margin-top: 50px;
	padding: 30px 20px 20px;
	border: 3px solid #2ca6a8;
	border-radius: 10px;
}
.box1 h3:first-of-type {
	position: absolute;
	top: -1.25em;
	left: 30px;
	display: inline-block;
	padding: 0.5em 1em;
	background: #fff;
	line-height: 1.25;
	font-size: 2.2rem;
}
.box1.bg1 h3:first-of-type {
	background: #e5f2f9;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
	.box1 h3:first-of-type {
		font-size: 1.6rem;
	}
}




/* tab */
.tablist {
	display: flex;
	justify-content: flex-start;
	align-content: flex-end;
	border-bottom: 2px solid #2ca6a8;
}
.tablist a {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 0.25em 0.75em;
	border-top: 2px solid #2ca6a8;
	border-right: 2px solid #2ca6a8;
	border-left: 2px solid #fff;
	border-radius: 5px 5px 0 0;
	background: #fff;
	font-size: 1.6rem;
}
.tablist a + a {
	margin-left: 0px;
}
.tablist a:first-of-type {
	border-left: 2px solid #2ca6a8;
}
.tablist a.active,
.tablist a.default {
	background: #2ca6a8;
	border-left: 2px solid #2ca6a8;
	color: #fff;
}
.tabcontentbox {
	padding: 25px;
	border-left: 2px solid #2ca6a8;
	border-right: 2px solid #2ca6a8;
	border-bottom: 2px solid #2ca6a8;
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/* information */
@media screen and (min-width: 768px) { /* pc */
	.information {
		height: 250px;
		padding: 5px;
		overflow-y: auto;
	}
	.information dl {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.information dl dt {
		width: 135px;
		padding: 0.5em 0.2em;
		border-bottom: 1px dotted #ccc;
		font-size: 1.6rem;
	}
	.information dl dd {
		width: calc(100% - 135px);
		padding: 0.5em 0.2em;
		border-bottom: 1px dotted #ccc;
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.information {
		height: 250px;
		padding: 5px;
		overflow-y: auto;
	}
	.information dl {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	.information dl dt {
		width: 75px;
		padding: 0.5em 0.2em;
		border-bottom: 1px dotted #ccc;
		font-size: 1.0rem;
		letter-spacing: -0.15em
	}
	.information dl dd {
		width: calc(100% - 75px);
		padding: 0.5em 1em 0.5em 0.2em;
		border-bottom: 1px dotted #ccc;
		font-size: 1.0rem;
		letter-spacing: -0.15em
	}
}




/* spec1 */
dl.spec1 {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
}
dl.spec1 dt {
	width: 5em;
	padding: 5px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
	background: #eee;
}
dl.spec1 dd {
	width: calc(100% - 5em);
	padding: 5px;
	border-bottom: 1px solid #ccc;
	border-right: 1px solid #ccc;
}
dl.spec1.dt3em dt {width: 3em;}
dl.spec1.dt3em dd {width: calc(100% - 3em);}
dl.spec1.dt4em dt {width: 4em;}
dl.spec1.dt4em dd {width: calc(100% - 4em);}
dl.spec1.dt5em dt {width: 5em;}
dl.spec1.dt5em dd {width: calc(100% - 5em);}
dl.spec1.dt6em dt {width: 6em;}
dl.spec1.dt6em dd {width: calc(100% - 6em);}
dl.spec1.dt7em dt {width: 7em;}
dl.spec1.dt7em dd {width: calc(100% - 7em);}
dl.spec1.dt8em dt {width: 8em;}
dl.spec1.dt8em dd {width: calc(100% - 8em);}
dl.spec1.dt9em dt {width: 9em;}
dl.spec1.dt9em dd {width: calc(100% - 9em);}
dl.spec1.dt10em dt {width: 10em;}
dl.spec1.dt10em dd {width: calc(100% - 10em);}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}



/* lineimgnavi */
@media screen and (min-width: 768px) { /* pc */
	.lineimgnavi .grid {
		margin-bottom: 0;
	}
	.lineimgnavi a {
		position: relative;
		display: block;
		width: 100%;
		height: 250px;
		text-indent: -9999px;
	}
	.lineimgnavi a::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0);
		transition: all 250ms ease;
	}
	.lineimgnavi a:hover::after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.1);
		border: 1px solid #2ca6a8;
	}
	.lineimgnavi .grid > div:nth-of-type(1) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
	.lineimgnavi .grid > div:nth-of-type(2) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
	.lineimgnavi .grid > div:nth-of-type(3) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.lineimgnavi {
		padding-bottom: 30px;
	}
	.lineimgnavi .grid {
		justify-content: center;
	}
	.lineimgnavi .grid > div + div {
		margin-top: 25px;
	}
	.lineimgnavi a {
		position: relative;
		display: block;
		width: calc(400 / 768 * 100vw);
		height: calc(250 / 768 * 100vw);
		margin: 0 auto;
		text-indent: -9999px;
	}
	.lineimgnavi .grid > div:nth-of-type(1) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
	.lineimgnavi .grid > div:nth-of-type(2) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
	.lineimgnavi .grid > div:nth-of-type(3) a {
		background: url(../img/sample/img520.jpg) center center / cover no-repeat;
	}
}




/* point1 */
@media screen and (min-width: 768px) { /* pc */
	.point1 > div h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		min-height: 32px;
		margin: 0;
		background: #eed63e;
		color: #000;
	}
	.point1 > div .text {
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		flex-wrap: wrap;
		min-height: 125px;
		margin-bottom: 0;
		padding: 10px 5px;
		background: #faf5d0;
		color: #000;
	}
	.point1 > div .text strong {
		display: block;
		width: 100%;
		margin-bottom: 5px;
		font-size: 1.9rem;
		text-align: center;
	}
	.point1 > div .text span {
		display: block;
		width: 100%;
		text-align: center;
		letter-spacing: -0.05em;
	}
}
@media screen and (max-width: 767px) { /* sp */
	.point1 > div h3 {
		display: flex;
		justify-content: center;
		align-items: center;
		min-height: 24px;
		margin: 0;
		background: #eed63e;
		color: #000;
		font-size: 1.2rem;
	}
	.point1 > div .text {
		display: flex;
		justify-content: center;
		align-items: center;
		align-content: center;
		flex-wrap: wrap;
		min-height: 100px;
		margin-bottom: 0;
		padding: 10px 5px;
		background: #fff;
		color: #000;
	}
	.point1 > div .text strong {
		display: block;
		width: 100%;
		margin-bottom: 5px;
		font-size: 1.3rem;
		text-align: center;
		letter-spacing: -0.10em;
	}
	.point1 > div .text span {
		display: block;
		width: 100%;
		text-align: center;
		font-size: 1.1rem;
		letter-spacing: -0.1em;
	}
}




/* blink.new < add */
.new {
  animation: blinkAnime 1s infinite alternate;
}

.red {
	color:red;
	}
@keyframes blinkAnime{
   0% { color: #FFBFBF }
 100% { color: #FF0000 }
}
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */

iframe.video {
	width: 100%; height: auto;}

}




/*  */
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}




/*  */
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}





