@charset "UTF-8";

/* --------------------------------
	common
-------------------------------- */

#main p {
	font-size: min(22px, 4.2vw);
	padding-top: 20px;
}

#sec02 {
	padding-bottom: min(80px, 3rem);
}

.marker {
	background-color: #fdff6c;
	font-weight: 400;
}

@media (max-width: 768px) {
	#main p {
		padding-top: 1rem;
	}
}

#sec01 strong {
    font-weight: 600 !important;
}


/* --------------------------------
	cover
-------------------------------- */
#cover p#info {
	background-color: black;
	color: white;
	text-align: center;
	font-size: min(20px, 4vw);
	padding: 3px 0;
}

@media (max-width: 768px) {
	#cover p#info {
		padding: 0.3rem 0;
	}
}



/* --------------------------------
	#sec01
-------------------------------- */
#sec01 {
	padding-top: min(20px, 2rem);
	padding-bottom: min(80px, 4rem);
	background-color: #dbdbdb;
}

#sec01 p {
	padding-top: min(40px, 2rem)!important;
}

#sec01 p.note {
	padding-top: 0!important;
}

#sec01 div#about {
	margin-top: min(80px, 4rem);
}

#sec01 div#about div.about_inner {
	background-image: url(../img/sec01_bg02.png);
	background-size: 99.8% auto;
	background-repeat: repeat-y;
	background-position: left top;
}

#sec01 div#about div.about_inner h2 {
	color: #816c17;
	text-align: center;
	font-size: min(36px, 6.5vw);
	line-height: 1.4;
}

#sec01 div#about div.about_inner h3 {
	padding-top: min(40px, 2rem);
}

#sec01 div#about div.about_inner h3:first-of-type {
	padding-top: min(20px, 1rem);
}

#sec01 div#about p {
	font-size: min(20px, 4.0vw);
	padding-top: 10px!important;
}

@media (max-width: 768px) {
	#sec01 div#about div.about_inner {
		background-size: 100% auto;
	}
}

/* --------------------------------
	#sec02
-------------------------------- */

#sec02 {
	background-color: #e7bbc7;
	background-image: url("../img/sec02_bg.jpg");
	background-position: center bottom;
	background-size: 100% auto;
	background-repeat: no-repeat;
	padding-top: 60px;
	padding-bottom: 398px;
}

#sec02 h2, #sec03 h2  {
	color: black;
	font-size: min(40px, 7vw);
	text-align: center;
	padding-bottom: 40px;
}

#sec02 p.note {
	color: black;
}

@media (max-width: 768px) {
	#sec02 {
		padding-top: 4rem;
		padding-bottom: 28rem;
	}
	#sec02 h2, #sec02 h3 {
		padding-bottom: 3rem;
	}
}

/* --------------------------------
	#sec03
-------------------------------- */
#sec03 {
	padding-top: 60px;
	padding-bottom: 60px;
	background-color: #dbdbdb;
}

#sec03 .inner {
	margin-top: min(40px, 2rem);
}

#sec03 h3 {
	font-size: min(24px, 4.5vw);
	padding-bottom: min(20px, 1rem);
	padding-top: min(60px, 3rem);
}

#sec03 h4 {
	font-size: min(32px, 6.5vw);
}

#sec03 .line {
	width: 20.53333333%;
	height: 1px;
	background-color: #84732d;
	margin: min(80px, 4rem) auto min(40px, 2rem);
}

@media (max-width: 768px) {
	#sec03 {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
}


/* --------------------------------
#offer
-------------------------------- */
#offer > h2, #offer p.note, #offer #single {
    background: #e2ded1!important;
}