@charset "UTF-8";

/* ===========================================
	   Top Page
   =========================================== */

/* billboard */
.billboard {
	position: absolute;
	width: 100%;
	left: 0;
	top: 0;
	z-index: -1;
}

/* slider */
.billboard_bg.slick-initialized {
	display: block;
}

.billboard,
.billboard div {
	height: calc(100vh - 60px);
}

.billboard div {
	width: 100%;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.bg1 {
	background-image: url(../sy_images/home/top_billboard_01_sp@2507.jpg);
}

.bg2 {
	background-image: url(../sy_images/home/top_billboard_02_sp.jpg);
}

.bg3 {
	background-image: url(../sy_images/home/top_billboard_03_sp@2507.jpg);
}

@media (min-width: 768px) {

	.billboard,
	.billboard div {
		height: calc(100vh - 120px);
	}

	.bg1 {
		background-image: url(../sy_images/home/top_billboard_01@2507.jpg);
	}

	.bg2 {
		background-image: url(../sy_images/home/top_billboard_02.jpg);
	}

	.bg3 {
		background-image: url(../sy_images/home/top_billboard_03@2507.jpg);
	}
}

/* heading */
.ho_heading {
	position: relative;
	margin-bottom: 45px;
	padding-bottom: 16px;
	color: #6cbb63;
	font-size: 2.4rem;
	letter-spacing: .15em;
	line-height: 1.5;
}

.ho_heading:after {
	position: absolute;
	bottom: 0;
	left: calc(50% - 17px);
	width: 34px;
	height: 2px;
	background-color: #6cbb63;
	content: "";
}

.ho_heading span {
	display: block;
	margin-bottom: 7px;
	color: #74716F;
	font-size: 1.2rem;
	letter-spacing: .15em;
}

@media (max-width: 767px) {
	.ho_heading {
		text-align: center;
	}
}

@media (min-width: 768px) {
	.ho_heading {
		font-size: 2.8rem;
	}

	.ho_heading:after {
		left: 0;
		width: 40px;
		height: 3px;
	}

	.ho_heading span {
		margin-bottom: 9px;
		font-size: 1.4rem;
	}
}

/* button */
.ho_btn {
	display: block;
	width: 170px;
	line-height: 45px;
	border: solid 1px #6cbb63;
	border-radius: 8px;
	text-align: center;
	letter-spacing: .15;
	font-family: "source-han-sans-japanese", sans-serif;
	font-style: normal;
	font-weight: 500;
	font-size: 1.5rem;
	text-decoration: none;
	color: #6cbb63;
	background: #fff url(../sy_images/common/common_linkarrow.png) no-repeat 95% center;
	background-size: 6px auto;
	transition: .4s;
}

.ho_btn:hover {
	background-color: #B5DDB1;
	color: #fff;
}

@media (max-width: 767px) {
	.ho_btn {
		width: 70%;
		margin-left: auto;
		margin-right: auto;
		line-height: 40px;
		font-size: 1.3rem;
	}
}

/* news */
.sec1 {
	position: relative;
	padding-top: 40px;
	padding-bottom: 112px;
	background-color: #f0f8ef;
}

.ho_news {
	padding-left: 6%;
	padding-right: 6%;
	background-color: #fff;
}

.ho_news a {
	color: #383331;
}

.ho_news li {
	opacity: 1;
	padding-top: 25px;
	padding-bottom: 25px;
	transition-duration: 0.5s;
	transition-property: opacity;
}

.ho_news li[aria-hidden=true] {
	opacity: 0;
}

.ho_news li~li {
	border-top: solid 1px #EBEAEA;
}

.ho_news dl:after {
	clear: both;
	display: block;
	content: "";
}

.ho_news dt span {
	display: inline-block;
	width: 6em;
	font-family: "din-2014-narrow", sans-serif;
	font-style: normal;
	font-weight: 600;
	font-size: 1.2rem;
	letter-spacing: .1em;
	color: #74716F;
}

.ho_news dt b {
	position: relative;
	display: inline-block;
	width: 90px;
	line-height: 17px;
	text-align: center;
	font-size: 1rem;
	font-weight: 500;
	border-radius: 9px;
}

.ho_news dt b.news_new:before {
	position: absolute;
	top: -15px;
	left: 50%;
	margin-left: -29px;
	content: "";
	display: block;
	width: 58px;
	height: 12px;
	background: url(../sy_images/common/common_cms_new.png) no-repeat;
	background-size: 100% auto;
}

.news_closed {
	background-color: #6CBBC2;
	color: #fff;
}

.news_vaccination {
	background-color: #917BA7;
	color: #fff;
}

.news_infection {
	background-color: #D7788F;
	color: #fff;
}

.news_general,
.news_info {
	background-color: #6cbb63;
	color: #fff;
}

.ho_news dd {
	margin-top: 5px;
	font-size: 1.4rem;
	line-height: 1.7;
}

@media (max-width: 767px) {
	.sec1_all {
		position: absolute;
		bottom: 40px;
		left: 15%;
		width: 70%;
		line-height: 40px;
		font-size: 1.3rem;
	}
}

@media (min-width: 768px) {
	.sec1 {
		padding-top: 70px;
		padding-bottom: 70px;
	}

	.sec1_content {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}

	.sec1_content>div {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		width: 220px;
	}

	.ho_news {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		width: 760px;
		padding-left: 30px;
		padding-right: 30px;
	}

	.ho_news li {
		padding-top: 25px;
		padding-bottom: 25px;
	}

	.ho_news dt {
		float: left;
		padding-right: 20px;
	}

	.ho_news dd {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap
	}

	.ho_news dt span {
		font-size: 1.5rem;
	}

	.ho_news dt b {
		width: 110px;
		line-height: 23px;
		font-size: 1.3rem;
		border-radius: 12px;
	}

	.ho_news dd {
		margin-top: 0;
		font-size: 1.7rem;
		letter-spacing: .15;
	}
}

/* sec2 */

.sec2 {
	padding-top: 50px;
	padding-bottom: 50px;
}

.sec2_content {
	position: relative;
	padding-left: 5%;
	padding-right: 5%;
}

.sec2_note li {
	padding-left: 28px;
	color: #6cbb63;
	line-height: 2;
	font-size: 1.4rem;
	background: url(../sy_images/common/common_list_mark.png) no-repeat 0 1px;
	background-size: 24px;
}

.sec2_note li~li {
	margin-top: 25px;
}

.sec2_note li em {
	display: inline-block;
	font-weight: 500;
	background: url(../sy_images/common/common_bg_waveline.png) repeat-x 0 bottom;
	background-size: 10px auto;
}

.sec2_note2 {
	margin-top: 16px;
}

.sec2_note2 li {
	padding-left: 1em;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.666;
}

.sec2_note2 li:before {
	display: inline-block;
	margin-left: -1em;
	content: "●";
	color: #6cbb63;
}

@media (max-width: 767px) {
	.sec2_note {
		margin-top: 20px;
		margin-bottom: 13px;
	}
}

@media (min-width: 768px) {
	.sec2 {
		padding-top: 100px;
		padding-bottom: 150px;
	}

	.sec2_content {
		min-width: 980px;
		padding-left: calc((100% - 980px) / 2);
		padding-right: 50%;
	}

	.sec2_img {
		position: absolute;
		width: 50%;
		top: 0;
		left: 50%;
	}

	.sec2_img img {
		width: 100%;
		max-width: none;
	}

	.sec2_note li {
		padding-left: 45px;
		line-height: 1.833;
		font-size: 2.4rem;
		letter-spacing: .05em;
		background-position: 0 0;
		background-size: 40px;
	}

	.sec2_note li~li {
		margin-top: 40px;
	}

	.sec2_note li em {
		background-size: 20px auto;
	}

	.sec2_table {
		position: relative;
		padding-right: 133px;
	}

	.sec2_note2 {
		margin-top: 24px;
	}

	.sec2_note2 li {
		display: inline-block;
		margin-right: 2em;
		font-size: 1.8rem;
	}
}

/* sec3 */
.sec3 {
	padding-top: 78px;
	padding-bottom: 10px;
	background: url(../sy_images/home/top_sec3_title_back.jpg) no-repeat center 0;
}

.sec3 .ho_heading {
	margin-bottom: 21px;
	color: #fff;
	font-size: 2.4rem;
}

.sec3 .ho_heading:after {
	background-color: #fff;
}

.sec3 .ho_heading span {
	color: #fff;
	font-size: 1.2rem;
}

.sec3 .ho_btn {
	margin-top: 26px;
}

.sec3_heading {
	position: relative;
	margin-bottom: 15px;
	padding-bottom: 8px;
	font-size: 2rem;
	line-height: 1.5;
	font-family: "source-han-sans-japanese", sans-serif;
	font-style: normal;
	font-weight: 500;
	letter-spacing: .15em;
}

.sec3_content section {
	padding-bottom: 40px;
	text-align: center;
}

.sec3_content section:not(:first-child) {
	border-top: solid 1px #EBEAEA;
}

.sec3_heading:after {
	position: absolute;
	bottom: 0;
	left: calc(50% - 13px);
	width: 26px;
	height: 2px;
	background-color: #6cbb63;
	content: "";
}

.sec3_heading span {
	letter-spacing: .5em;
	padding-left: .5em;
}

.sec3_icon {
	width: 90px;
	margin: 0 auto 20px;
}

.sec3_list li {
	display: inline-block;
	line-height: 1.666;
	font-family: "source-han-sans-japanese", sans-serif;
	font-style: normal;
	font-weight: 300;
	font-size: 1.4rem;
}

.sec3_list li:not(:last-child):after {
	display: inline-block;
	content: "／";
}

@media (max-width: 767px) {
	.sec3 {
		background-size: auto 235px;
	}

	.sec3_content section:not(:first-child) {
		padding-top: 40px;
	}
}

@media (min-width: 768px) {
	.sec3 {
		padding-top: 132px;
		padding-bottom: 150px;
	}

	.sec3 .ho_heading {
		margin-bottom: 145px;
		font-size: 4rem;
		text-align: center;
	}

	.sec3 .ho_heading:after {
		left: calc(50% - 20px);
	}

	.sec3 .ho_btn {
		width: 270px;
		margin: 35px auto 0;
	}

	.sec3_content {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		padding: 0 100px 50px;
		background-color: #fff;
		box-shadow: 10px 10px #B5DDB1;
	}

	.sec3_content section {
		padding-bottom: 50px;
	}

	.sec3_content section:first-child {
		width: 100%;
	}

	.sec3_content section:not(:first-child) {
		width: 50%;
		padding-top: 50px;
	}

	.sec3_content section:nth-child(even) div {
		border-right: solid 1px #EBEAEA;
	}

	.sec3_icon {
		width: 126px;
		margin-bottom: 30px;
	}

	.sec3_content section:first-child .sec3_icon {
		margin-top: -63px;
	}

	.sec3_heading {
		margin-bottom: 25px;
		padding-bottom: 10px;
		font-size: 2.4rem;
		line-height: 1.5;
	}

	.sec3_heading:after {
		left: calc(50% - 15px);
		width: 30px;
		height: 3px;
	}

	.sec3_list li {
		font-size: 1.7rem;
	}

	.sec3_content section:first-child .sec3_list {
		width: 32em;
		margin-left: auto;
		margin-right: auto;
		font-size: 1.7rem;
	}
}