@charset "utf-8";


/* sitetop */
#sitetop .main_img h1 {
	font-family: -apple-system, BlinkMacSystemFont, 'Kosugi Maru', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', '游ゴシック  Medium', meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	font-family: 'Kosugi Maru', sans-serif;
	font-weight: 100;
	letter-spacing: 0.1em;
	line-height: 1.3;
}
#sitetop .main_img h1 .underline-marker {
	background-image: linear-gradient(transparent 92%, #f39801 0%); 
}
@media screen and (min-width: 768px) { /* pc */
	#sitetop .main_img {
		position: relative;
		height: 657px;
		background: url(../img/top/main_img.jpg) center top / contain no-repeat;
	}
	#sitetop .main_img .inner {
		position: relative;
		width: 1120px;
		height: 657px;
		margin: 0 auto;
		padding: 180px 20px 0;
	}
	#sitetop .main_img h1 {
		margin-bottom: 20px;
		font-size: 3.6rem;
	}
	#sitetop .main_img h1 .underline-marker {
		background-image: linear-gradient(transparent 92%, #f39801 0%); 
	}
	#sitetop .main_img p {
		font-size: 1.8rem;
		line-height: 1.75;
	}
	#sitetop .sec_greeting .inner {
		position: relative;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		padding-top: 50px;
		padding-bottom: 40px;
	}
	#sitetop .sec_greeting .inner h2 {
		width: 1080px;
	}
	#sitetop .sec_greeting .inner h3 {
		color: #000;
		font-size: 2.8rem;
	}
	#sitetop .sec_greeting .inner .text {
		width: 680px;
		line-height: 1.5;
	}
	#sitetop .sec_greeting .inner .img {
		width: 350px;
	}
	#sitetop .sec_greeting .btn1 a {
		width: 300px;
	}
	#sitetop .sec_greeting .pop1 {
		top: -15px;
		left: 40px;
	}
	#sitetop .sec_feature .inner {
		counter-reset: cnt;
		position: relative;
	}
	#sitetop .sec_feature .inner > section {
		width: 1080px;
		margin-bottom: -160px;
	}
	#sitetop .sec_feature .inner > section:nth-of-type(2n+1) {
		padding-right: calc(1080px - 505px);
	}
	#sitetop .sec_feature .inner > section:nth-of-type(2n) {
		padding-left: calc(1080px - 505px);
	}
	#sitetop .sec_feature .inner > section:nth-of-type(3) {
		margin-bottom: -100px;
	}
	#sitetop .sec_feature .inner > section:last-of-type {
		margin-bottom: 80px;
	}
	#sitetop .sec_feature .inner > section h3 {
		display: flex;
		align-items: center;
		font-size: 2.3rem;
		color: #000;
		line-height:130%;
		}
	#sitetop .sec_feature .inner > section h3::before {
		counter-increment:cnt;
		content: counter(cnt, decimal-leading-zero);
		display: inline-block;
		margin-right: 0.2em;
		font-size: 6.0rem;
		font-family: 'Sawarabi Mincho', sans-serif;
		color: #f39801;
	}
	#sitetop .sec_feature .pop2 {
		top: -40px;
		right: 40px;
	}
	#sitetop .sec_information {
		padding-top: 90px;
		padding-bottom: 40px;
	}
	#sitetop .sec_information .inner {
		position: relative;
	}
	#sitetop .sec_information h3 {
		color: #000;
		text-align: center;
	}
	#sitetop .sec_information .grid > div {
		padding: 40px;
		background: #fff;
	}
	#sitetop .sec_information .img {
		margin: 0 0 60px;
	}
	#sitetop .sec_information .label_list {
		display: flex;
		justify-content: space-between;
		margin-bottom: 30px;
	}
	#sitetop .sec_information .pop3 {
		top: -70px;
		left: -20px;
	}
	#sitetop .sec_staff {
		overflow-x: hidden;
	}
	#sitetop .sec_staff .inner {
		position: relative;
	}
	#sitetop .sec_staff .img {
		margin-bottom: 30px;
	}
	#sitetop .sec_staff .pop4 {
		bottom: 0;
		right: -260px;
	}
	#sitetop .sec_info_banner .inner {
		position: relative;
		display: flex;
		justify-content: space-between;
	}
	#sitetop .sec_info {
		width: 560px;
		height: 1300px;
		padding: 32px 32px;
		background: #fff;
	}
	#sitetop .sec_info .info_list {
	width: 100%;
	height: 1130px;
	overflow-y: auto;
	}
	#sitetop .sec_info .info_list dl {
		font-size: 1.4rem;
	}
	#sitetop .sec_info .info_list dt {
		float: left;
		padding: 0.5em 1em 0.1em 0;
		width: 7em;
	}
	#sitetop .sec_info .info_list dd {
		padding: 0.5em 1em 0.4em 7em;
		border-bottom: 1px solid #ccc;
	}
	#sitetop .sec_banner {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-content: center;
		width: 520px;
		padding: 32px 32px;
		background: #fff;
	}
	#sitetop .sec_banner2 {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-content: center;
		width: 520px;
		padding: 32px 32px;
		background: #fff;
	}
	
	#sitetop .sec_banner .banner + .banner {
		margin-top: 16px;
	}
}
@media screen and (max-width: 767px) { /* sp */
	#sitetop .main_img {
		position: relative;
		height: 360px;
		background: url(../img/sp/top/main_img.jpg) center top / cover no-repeat;
	}
	#sitetop .main_img .inner {
		position: relative;
		padding: 160px 20px 0;
	}
	#sitetop .main_img p {
		display: none;
	}
	#sitetop .sec_greeting .inner {
		position: relative;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
		padding-top: 50px;
		padding-bottom: 40px;
	}
	#sitetop .sec_greeting .inner h2 {
		width: 100%;
	}
	#sitetop .sec_greeting .inner h3 {
		color: #000;
	}
	#sitetop .sec_greeting .inner .text {
		width: 59%;
		line-height: 1.5;
		font-size: 1.0rem;
		letter-spacing: 0.05em;
	}
	#sitetop .sec_greeting .inner p {
	}
	#sitetop .sec_greeting .inner .img {
		width: 39%;
	}
	#sitetop .sec_greeting .btnbox {
		width: 100%;
	}
	#sitetop .sec_greeting .btn1 {
		width: 100%;
	}
	#sitetop .sec_greeting .btn1 a {
		width: calc(100% - 20px);
	}
	#sitetop .sec_greeting .pop1 {
		top: -15px;
		left: 10px;
	}
	#sitetop .sec_feature {
		padding-top: 40px;
	}
	#sitetop .sec_feature .inner {
		counter-reset: cnt;
		position: relative;
		padding-left: 60px;
		padding-right: 60px;
	}
	#sitetop .sec_feature .inner > section {
		margin-bottom: 40px;
	}
	#sitetop .sec_feature .inner > section:last-of-type {
		margin-bottom: 80px;
	}
	#sitetop .sec_feature h2 {
		font-size: 2.0rem;
		letter-spacing: 0;
	}
	#sitetop .sec_feature .inner > section h3 {
		display: flex;
		align-items: center;
		font-size: 1.3rem;
		color: #000;
		letter-spacing: 0;
	}
	#sitetop .sec_feature .inner > section h3::before {
		counter-increment:cnt;
		content: counter(cnt, decimal-leading-zero);
		display: inline-block;
		margin-right: 0.2em;
		font-size: 2.8rem;
		font-family: 'Sawarabi Mincho', sans-serif;
		color: #f39801;
	}
	#sitetop .sec_feature .pop2 {
		top: -40px;
		right: 5px;
		z-index: -1;
	}
	#sitetop .sec_information {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	#sitetop .sec_information .inner {
		position: relative;
		padding-left: 50px;
		padding-right: 50px;
	}
	#sitetop .sec_information h2 {
		margin-bottom: 40px;
	}
	#sitetop .sec_information h2 .eng {
		font-size: 1.1rem;
	}
	#sitetop .sec_information h3 {
		color: #000;
		text-align: center;
	}
	#sitetop .sec_information .grid > div {
		padding: 20px;
		background: #fff;
	}
	#sitetop .sec_information .img {
		margin: 0 0 30px;
	}
	#sitetop .sec_information .label_list {
		display: flex;
		justify-content: space-between;
		margin-bottom: 0;
	}
	#sitetop .sec_information .circle_label {
		width: calc(144 / 768 * 100vw);
		height: calc(144 / 768 * 100vw);
		border-radius: calc(72 / 768 * 100vw);
		font-size: calc(22 / 768 * 100vw);
		letter-spacing: 0;
	}
	#sitetop .sec_information .btn1 {
		margin-bottom: 0;
	}
	#sitetop .sec_information .pop3 {
		bottom: calc(100% - 120px);
		left: 5px;
		width: calc(212 / 768 * 100vw);
		height: calc(247 / 768 * 100vw);
	}
	#sitetop .sec_staff {
		padding: 30px 0 30px;
	}
	#sitetop .sec_staff .img {
		margin-left: -20px;
		margin-right: -20px;
		margin-bottom: 30px;
	}
	#sitetop .sec_staff .pop4 {
		display: none;
	}
	#sitetop .sec_info_banner .inner {
		position: relative;
		display: flex;
		justify-content: space-between;
	}
	#sitetop .sec_info {
		width: 100%;
		padding: 16px 16px;
		background: #fff;
	}
	#sitetop .sec_info .info_list {
		width: 100%;
		height: 320px;
		overflow-y: auto;
	}
	#sitetop .sec_info .info_list dl {
		font-size: 1.4rem;
	}
	#sitetop .sec_info .info_list dt {
		float: left;
		padding: 0.5em 1em 0.1em 0;
	}
	#sitetop .sec_info .info_list dd {
		padding: 0.5em 1em 0.4em 0;
		border-bottom: 1px solid #ccc;
	}
	#sitetop .sec_banner {
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		align-content: center;
		width: 100%;
		padding: 16px 16px;
		background: #fff;
	}
	#sitetop .sec_banner .banner + .banner {
		margin-top: 16px;
	}
}




/* contact, reserve */
main#reserve #contact_form input[type="checkbox"],
main#reserve #contact_form input[type="radio"] {
	margin-right: 0.5em;
}
@media screen and (min-width: 768px) { /* pc */
	main#reserve #contact_form label ~ label {
		display: inline-block;
		margin-left: 1em;
	}
	main#reserve #contact_form .grid,
	main#reserve #contact_form .grid > div {
		margin-bottom: 0;
	}
	main#reserve #contact_form .tbl-r01 th {
		width: 25%;
	}
	main#reserve #contact_form .tbl-r01 td {
		width: 75%;
	}
	main#reserve #contact_form .tbl-r01 dl dt {
		float: left;
	}
}
@media screen and (max-width: 767px) { /* sp */
	main#contact #contact_form,
	main#reserve #contact_form {
		
	}
	main#reserve #contact_form label ~ label {
		display: inline-block;
		margin-top: 1em;
	}
}




/*  */
@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 */
}




/*  */
@media screen and (min-width: 768px) { /* pc */
}
@media screen and (max-width: 767px) { /* sp */
}
