@charset "utf-8";

/* 基礎レイアウト
========================================================= */

img { width: 100%; height: auto; vertical-align: top; }

#contentsheader {
	width: 100%;
	height: 360px;
	display: block;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	text-align: center;
	overflow: hidden;
}
#contentsheader p.icon {
	width: 55px;
	height: 55px;
	background: url(/images/h1_special2_icon.svg) no-repeat;
	margin: 120px auto 25px;
}
#contentsheader h1 { color: #ffffff; font-size: 48px; margin-right: auto; margin-left: auto; }

@media screen and (max-width: 1199px) {
	#contentsheader { height: 320px; }
	#contentsheader p.icon { margin-top: 100px; }
}

@media screen and (max-width: 992px) {
	#contentsheader { height: 280px; }
	#contentsheader p.icon { margin-top: 80px; }
}

@media screen and (max-width: 768px) {
	#contentsheader { height: 240px; }
	#contentsheader p.icon { width: 44px; height: 44px; margin-top: 60px; margin-bottom: 22px; }
	#contentsheader h1 { font-size: 36px; }
}

@media screen and (max-width: 480px) {
	#contentsheader { height: 160px; }
	#contentsheader p.icon { width: 33px; height: 33px; margin-top: 40px; margin-bottom: 16px; }
	#contentsheader h1 { font-size: 24px; }
}

.sns_icon_area .twitter-share-button {
	vertical-align: top;
	margin-left: 10px;
}



/* corona
========================================================= */

.coronaWrap { border-bottom: solid 1px #cccccc; }

@media screen and (max-width: 767px) {
	.souvenirInner { padding: 10px 0 50px; }
}



/* coronaMain
========================================================= */

#coronaMain { padding: 0 calc(10/320 * 100%); }
#coronaMain .mainInner {
	max-width: 1100px;
	background: #fcf6aa;
	border-radius: 20px;
	margin: 70px auto 0;
	position: relative;
}
#coronaMain .img { padding: 50px calc(20/320 * 100%) 0; position: relative; z-index: 10; }
#coronaMain .img .pc { max-width: 600px; margin: 0 auto; }
#coronaMain .img .sp { display: none; }
#coronaMain .lead { padding: 60px calc(15/320 * 100%) 50px; }
#coronaMain .lead div {
	display: table;
	color: #000000;
	background: #ffffff;
	border-radius: 10px;
	font-size: 17px;
	line-height: 30px;
	text-align: center;
	padding: 15px 20px;
	margin: 0 auto;
	position: relative;
	z-index: 10; 
}
#coronaMain .lead div span { display: inline-block; }
#coronaMain .lead p { font-size: 14px; text-align: right; }
#coronaMain .mainBg {
	width: 100%;
	height: 100%;
	display: block;
	background: url(/images/special/corona/main_bg.png) no-repeat  center 45px;
	position: absolute;
	top: 0; 
}
#coronaMain .mainTitle #snsArea { padding-top: 50px; }



@media screen and (max-width: 840px) {
	#coronaMain .mainBg { opacity: 0; transition: 0.5s; }
}

@media screen and (max-width: 767px) {
	#coronaMain { padding: 0; }
	#coronaMain .mainInner { border-radius: 0; margin: 20px auto 0; }
	#coronaMain .img { padding: 30px calc(20/320 * 100%) 0; }
	#coronaMain .lead { padding: 30px calc(15/320 * 100%) 25px; }
	#coronaMain .lead div { font-size: 15px; line-height: 26px; text-align: left; }
	#coronaMain .lead div span { display: inline; }
	#coronaMain .lead div br { display: none; }
	#coronaMain .mainTitle #snsArea { padding-top: 0px; }
}

@media screen and (max-width: 480px) {
	#coronaMain .img .pc { display: none; }
	#coronaMain .img .sp { display: block; }
}



/* coronaContents
========================================================= */

#coronaContents { padding: 100px calc(10/320 * 100%) 100px; margin-top: -100px; }

#coronaContents .coronaInner {
	width: 100%;
	max-width: 960px;
	font-size: 16px;
	line-height: 28px;
	margin: 100px auto 0;
}
#coronaContents .coronaInner + .coronaInner { margin: 140px auto 0; }

#coronaContents .coronaInner a.pdf {
	display: table;
	background: url(/images/dl_pdf_icon2.svg) no-repeat top left;
	background-size: 17px 22px;
	font-weight: bold;
	padding-left: 28px;
}

#coronaContents .coronaInner h2 {
	border-bottom: 2px solid #da732c;
	font-size: 32px;
	line-height: 42px;
	text-align: center;
	padding-bottom: 20px;
}
#coronaContents .coronaInner h2 span { display: inline-block; }

#coronaContents .coronaInner ul.shisatsu { overflow: hidden; margin-top: 30px; }
#coronaContents .coronaInner ul.shisatsu li:nth-child(1) {
	width: calc(450/960 * 100%);
	max-width: 450px;
	float: left;
}
#coronaContents .coronaInner ul.shisatsu li:nth-child(2) { width: calc(480/960 * 100%); float: right; }

#coronaContents .coronaInner ul.shisatsu li:nth-child(2) p.note {
	font-size: 13px;
	line-height: 20px;
	text-indent: -1em;
	padding-left: 1em;
	margin-top: 1em;
}

#coronaContents .coronaInner ul.shisatsu2 {
	overflow: hidden;
	border: solid 4px #f0f0f0;
	border-radius: 10px;
	font-size: 15px;
	line-height: 25px;
	box-sizing: border-box;
	padding: 15px 20px;
	margin-top: 30px;
}
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(1) {
	width: calc(215/912 * 100%);
	max-width: 215px;
	float: right;
}
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) { width: calc(667/912 * 100%); }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dl { margin-top: 30px; }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt { overflow: hidden; padding: 2px 0 0 0; }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt.map1 { background: rgba(120, 176, 161, 0.3); }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt.map2 { background: rgba(207, 156, 184, 0.3); }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt.map3 { background: rgba(194, 177, 30, 0.4); }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt.map4 { background: rgba(44, 68, 135, 0.3); }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt span { display: inline-block; padding: 0 1em; }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt span:nth-child(1) { font-weight: bold; }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt span:nth-child(2) { float: right; }
#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dd { padding: 15px 0 0 1em; }

#coronaContents .coronaInner h3 {
	display: table;
	border-radius: 10px 10px 0 0;
	font-size: 24px;
	line-height: 34px;
	font-weight: bold;
	text-align: center;
	padding: 10px 2em 5px;
	margin: 50px auto 0;
}
#coronaContents .coronaInner h3 span { display: inline-block; }
#coronaContents .coronaInner .area + h3 { margin: 100px auto 0; }
#coronaContents .coronaInner h3.map1 { background: rgba(120, 176, 161, 0.3); }
#coronaContents .coronaInner h3.map2 { background: rgba(207, 156, 184, 0.3); }
#coronaContents .coronaInner h3.map3 { background: rgba(194, 177, 30, 0.4); }
#coronaContents .coronaInner h3.map4 { background: rgba(44, 68, 135, 0.3); }

#coronaContents .coronaInner .area { border: solid 5px; border-radius: 10px; padding: 30px; }
#coronaContents .coronaInner .area.map1 { border-color: rgba(120, 176, 161, 0.3); }
#coronaContents .coronaInner .area.map2 { border-color: rgba(207, 156, 184, 0.3); }
#coronaContents .coronaInner .area.map3 { border-color: rgba(194, 177, 30, 0.4); }
#coronaContents .coronaInner .area.map4 { border-color: rgba(44, 68, 135, 0.3); }
#coronaContents .coronaInner .area ul { overflow: hidden; }
#coronaContents .coronaInner .area ul:nth-child(2) {
	border-top: dotted 1px #cccccc;
	padding-top: 30px;
	margin-top: 30px;
}
#coronaContents .coronaInner .area p.flR {
	width: calc(250/890 * 100%);
	max-width: 250px;
	float: right;
	margin: 3px 0 0 30px;
}
#coronaContents .coronaInner .area h4 { font-size: 20px; line-height: 30px; font-weight: bold; }
#coronaContents .coronaInner .area h4 + p { padding-top: 10px; }
#coronaContents .coronaInner .area h4 span { display: inline-block; }
#coronaContents .coronaInner .area ul.map { font-size: 15px; line-height: 25px; margin-top: 20px; }
#coronaContents .coronaInner .area ul.map li:nth-child(1) {
	width: calc(406/890 * 100%);
	max-width: 406px;
	float: right;
	margin: 3px 0 0 calc(40/890 * 100%);
}
#coronaContents .coronaInner .area ul.map a.pdf { margin-top: 20px; }
#coronaContents .coronaInner .area ul.map table th { font-weight: bold; white-space: nowrap; padding-bottom: 0.5em; }
#coronaContents .coronaInner .area ul.map table td { text-indent: -1em; padding: 0 0 0.5em 1em; }
#coronaContents .coronaInner .area ul.map table td:before { content: "："; }



@media screen and (max-width: 767px) {
	#coronaContents { padding: 55px calc(10/320 * 100%) 50px; margin-top: -55px; }
	
	#coronaContents .coronaInner { font-size: 15px; line-height: 25px; margin: 70px auto 0; }
	#coronaContents .coronaInner + .coronaInner { margin: 70px auto 0; }
	#coronaContents .coronaInner h2 { font-size: 28px; line-height: 38px; text-align: center; padding-bottom: 18px; }
	
	#coronaContents .coronaInner ul.shisatsu { display: flex; flex-direction: column; margin-top: 25px; }
	#coronaContents .coronaInner ul.shisatsu li:nth-child(1) {
		width: 100%;
		float: none;
		order: 2;
		margin: 20px auto 0;
	}
	#coronaContents .coronaInner ul.shisatsu li:nth-child(2) { width: 100%; float: none; }
	#coronaContents .coronaInner ul.shisatsu li br { display: none; }
	#coronaContents .coronaInner ul.shisatsu2 {
		font-size: 14px;
		line-height: 24px;
		border: solid 2px #e0e0e0;
		padding: 20px 10px 20px;
	}
	#coronaContents .coronaInner ul.shisatsu2 li:nth-child(1) { width: 215px; float: none; margin: 0 auto 20px; }
	#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) { width: 100%; }
	#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt { text-align: center; padding: 5px 0 3px 0; }
	#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dt span:nth-child(2) { float: none; }
	#coronaContents .coronaInner ul.shisatsu2 li:nth-child(2) dd { padding: 15px 0 0 0; }
	
	#coronaContents .coronaInner h3 {
		display: block;
		font-size: 20px;
		line-height: 30px;
		padding: 10px 1em 3px;
		margin: 30px auto 0;
	}
	#coronaContents .coronaInner .area + h3 { margin: 50px auto 0; }
	#coronaContents .coronaInner .area { border: solid 3px; border-radius: 0 0 10px 10px; padding: 15px; }
	#coronaContents .coronaInner .area ul:nth-child(2) { border-top: none; padding-top: 0; margin-top: 50px; }
	#coronaContents .coronaInner .area li { display: flex; flex-direction: column; }
	#coronaContents .coronaInner .area br { display: none; }
	#coronaContents .coronaInner .area p.flR {
		width: 100%;
		max-width: 300px;
		float: none;
		margin: 20px auto 0;
		order: 2;
	}
	#coronaContents .coronaInner .area h4 { font-size: 17px; line-height: 26px; }
	#coronaContents .coronaInner .area h4 + p { font-size: 15px; line-height: 24px; }
	#coronaContents .coronaInner .area h4 span { display: inline; }
	#coronaContents .coronaInner .area ul.map { font-size: 14px; line-height: 22px; }
	#coronaContents .coronaInner .area ul.map table { font-size: 14px; line-height: 22px; margin-top: 20px; }
	#coronaContents .coronaInner .area ul.map table th {
		display: block;
		border-top: dotted 1px #cccccc;
		padding: 0.5em 0 0 0;
	}
	#coronaContents .coronaInner .area ul.map table td {
		display: block;
		text-indent: 0;
		padding: 0 0 0.5em 0;
	}
	#coronaContents .coronaInner .area ul.map table td:before { content: none; }
	#coronaContents .coronaInner .area ul.map li:nth-child(1) { width: 100%; float: none; margin: 0 auto; }
}



/* 汎用パーツ
========================================================= */

/* detailsLink
------------------------------------------ */

.detailsLink1 { max-width: 190px; margin-top: 15px; }
.detailsLink1 a {
	display: block;
	background-color: #333333;
	color: #ffffff;
	border-radius: 5px;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
	text-decoration: none;
	padding: 6px 5px 5px;
}

.detailsLink2 { max-width: 190px; margin-top: 15px; }
.detailsLink2 a {
	display: block;
	background-color: #ffffff;
	color: #333333;
	border-radius: 5px;
	font-size: 15px;
	line-height: 24px;
	text-align: center;
	text-decoration: none;
	padding: 6px 5px 5px;
}

@media screen and (min-width: 769px) {
	.detailsLink1 a { -webkit-transition: 0.2s ease; transition: 0.2s ease; }
	.detailsLink1 a:hover { background-color: #ff6600; }
	
	.detailsLink2 a { -webkit-transition: 0.2s ease; transition: 0.2s ease; }
	.detailsLink2 a:hover { background-color: #000000; color: #ffffff; }
}


