@charset "utf-8";

/* common ------------------------------------- */

@media screen and (min-width: 768px) { /* pc */
}

@media screen and (max-width: 767px) { /* sp */
}
/* common < add */
.center {
	text-align: center;
}
.mt50 {
	margin-top: 50px;
}
.fs40 {
	font-size: 4.0rem;
}
.img_ra02 {
	border-radius: 10px 40px;
}

@media screen and (min-width: 768px) { /* pc */
.plink {
	display: block;
	padding-top: 70px;
	margin-top: -70px;
}
}

@media screen and (max-width: 767px) { /* sp */
}
/* Individual ------------------------------------- */

/* contact, reserve */
main#contact #contact_form input[type="checkbox"], main#contact #contact_form input[type="radio"], 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#contact #contact_form label ~ label,  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 label ~ label,  main#reserve #contact_form label ~ label {
	display: inline-block;
	margin-top: 1em;
}
}

/* sitetop */
@media screen and (min-width: 768px) { /* pc */
main#sitetop {
	background: url(../img/top/main_img2.png) center 166px no-repeat,  url(../img/top/top_bg.png) center 544px no-repeat;
}
#sitetop .main_img {
	height: 460px;
}
#sitetop .main_img .inner {
	display: flex;
	align-content: center;
	align-items: center;
	height: 100%;
	flex-wrap: wrap;
}
#sitetop h1 {
	width: 100%;
}
#sitetop .main_img h1 {
	font-size: 2.2rem;
	font-weight: normal;
	line-height: 1.5;
	margin-top:50px;
	}
#sitetop .main_img h1 strong {
	font-size: 3.8rem;
	font-weight: normal;
	color: #2ca6a8;
}
#sitetop .main_img h1 span {
	font-size: 2.8rem;
}
#sitetop .sec01 .inner {
}
#sitetop .sec01 .sec01-1 {
	height: 402px;
	padding-top: 324px;
	background: url(../img/top/t01.png) left top no-repeat;
}
#sitetop .sec01 .sec01-1 .btnbox {
	align-content: flex-end;
}
#sitetop .sec01 .sec01-1 .btnbox .btn7 a {
	width: 264px;
	height: 78px;
	margin: 0;
}
#sitetop .sec01 .sec01-1 .btnbox .btn7 a::after {
	width: 100%;
	height: 100%;
}
}

@media screen and (max-width: 767px) { /* sp */
main#sitetop {
 background: url(../img/sp/top/main_img.png) right calc(194 / 768 * 100vw + 52px) / calc(645 / 768 * 100vw) auto no-repeat,  url(../img/sp/top/top_bg.png) center calc(592 / 768 * 100vw + 52px) / contain no-repeat;
}
#sitetop .main_img {
 height: calc(906 / 768 * 100vw);
}
#sitetop .main_img h1 {
	padding: 0 20px;
 font-size: calc(22 / 768 * 100vw);
	font-weight: normal;
	line-height: 1.5;
}
#sitetop .main_img h1 strong {
 font-size: calc(40 / 768 * 100vw);
	font-weight: normal;
	color: #2ca6a8;
}
#sitetop .main_img h1 span {
 font-size: calc(26 / 768 * 100vw);
}
#sitetop .sec01 .sec01-1 {
 height: calc(402 / 768 * 100vw);
 padding-top: calc(324 / 768 * 100vw);
 background: url(../img/top/t01.png) left top / auto calc(366 / 768 * 100vw) no-repeat;
}
#sitetop .sec01 .sec01-1 .btnbox {
	align-content: flex-end;
}
#sitetop .sec01 .sec01-1 .btnbox .btn7 a {
 width: calc(264 / 768 * 100vw);
 height: calc(78 / 768 * 100vw);
	margin: 0;
}
#sitetop .sec01 .sec01-1 .btnbox .btn7 a::after {
	width: 100%;
	height: 100%;
}
}

/*  */
@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 */
}
