@charset "UTF-8";

/*---------------------------------------------

Each Page CSS

for domain
coded by d-spica at 2019-10-28

---------------------------------------------*/


@import url("default.css");
@import url("base.css");


section {
	padding: 1.5rem 2rem;
	font-size: 1rem;
}

section h3 {
	margin-bottom: 0.8em;
	font-size: 140%;
	color: #009844;
}

section a {
	text-decoration: underline;
	word-break: break-all;
}

section a:hover,
section a:active {
	color: #009844;
}

section p,
section ul,
section dl,
section figure {
	margin-bottom: 1.8em;
	line-height: 1.8;
}


/* */

section.pages {
	margin: 1rem 2rem 0;
	background: url("../img/ln-flag-s.png") no-repeat 0 100% / 100% auto;
	padding: 0 0 2.5rem;
}

section.pages ul {
	margin-bottom: -0.3em;
}

section.pages li {
	margin-bottom: 0.3em;
}

section.pages li a {
	text-decoration: none;
}

section.pages li a:hover,
section.pages li a:active {
	opacity: 0.7;
}

section.news ul {
	margin-bottom: -0.3em;
}

section.news li {
	position: relative;
	margin-bottom: 0.3em;
	padding-left: 6.5em;
}

section.news li time {
	position: absolute;
	top: 0;
	left: -21px;
}

section.news a[href*=".pdf"]::after {
	content: '';
	display: inline-block;
	background: url("../img/ic-pdf.png") no-repeat 50% 50% / 100% auto;
	width: 1.2em;
	height: 1.2em;
	vertical-align: -0.3em;
}

/* */

section.story li {
	position: relative;
	padding-left: 1em;
}

section.story li::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* */

section.message p span {
	display: block;
	text-align: right;
}

section.message .photo {
	margin: 3em auto;
	max-width: 50%;
}

/* */

section.organization table {
	margin-bottom: 1.8em;
	width: 100%;
	font-size: 0.75rem;
}

section.organization th,
section.organization td {
	border: solid 1px #009844;
	padding: 0.4em;
	white-space: nowrap;
}

section.organization thead th {
	background: #C2D84E;
	text-align: center;
	font-weight: 400;
} 

section.organization tfoot td {
	border: none;
	padding: 0.4em;
	text-align: right;
}

section.organization tbody td:nth-child(1),
section.organization tbody td:nth-child(2) {
	text-align: center;
}

section.organization .note {
	margin-bottom: 0;
	text-align: right;
}

/* */

section.documents li a:hover img {
	opacity: 0.7;
}

section.documents li a[href*=".pdf"] span::after {
	content: '';
	display: inline-block;
	background: url("../img/ic-pdf.png") no-repeat 50% 50% / 100% auto;
	width: 1.2em;
	height: 1.2em;
	vertical-align: -0.3em;
}

section.documents dd > a[href*=".pdf"]::after {
	content: '';
	display: inline-block;
	background: url("../img/ic-pdf.png") no-repeat 50% 50% / 100% auto;
	width: 1.2em;
	height: 1.2em;
	vertical-align: -0.3em;
}

section.documents dd span {
	display: inline-block;
	margin-right: 1em;
	white-space: nowrap;
}

section.documents dd ul {
	overflow: hidden;
	margin-top: 1em;
	margin-bottom: -1.5em;
	text-align: center;
}

section.documents dd li {
	float: left;
	margin-bottom: 1.5em;
	width: 50%;
}

section.documents dd li img {
	border: solid 1px #BBB;
	width: 50%;
}

section.documents dd li span {
	display: block;
	margin-top: 0.5em;
	font-size: 95%;
}

section.documents > ul > li {
	margin-bottom: 0.5em;
	padding-left: 1em;
}

section.documents > ul > li em {
	display: block;
	margin-left: -1em;
}

section.documents li li {
	position: relative;
	margin-left: -1em;
	padding-left: 1em;
}

section.documents li li::before {
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* */

section.photos li {
	margin-bottom: 2em;
}

section.photos li em {
	display: block;
	margin-top: 0.4em;
	font-size: 120%;
	font-weight: 700;
	color: #009844;
}

/* */

section.map:nth-of-type(3) p img {
	width: 20em;
}

/* */

section.terms h3 span {
	display: block;
	margin: 1.5em 0;
	font-size: 85%;
}

section.terms dt {
	color: #009844;
}

section.terms dd em {
	display: block;
}

/* */

section.form p.note {
	position: relative;
	padding-left: 1em;
	
}

section.form .note i {
	position: absolute;
	top: 0;
	left: 0;
}

section.form b {
	font-weight: 400;
	color: #F00;
}

section.form [type="text"],
section.form [type="tel"],
section.form [type="email"],
section.form textarea {
	box-sizing: border-box;
	border: solid 1px #999;
	padding: 0.5em;
	width: 100%;
}

section.form [type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border: none;
	background: #009844;
	padding: 0.5em;
	width: 10em;
	text-align: center;
	color: #FFF;
	cursor: pointer;
}

section.form form {
	margin-top: 4em;
}

section.form form p {
	text-align: right;
}

section.form form .warning {
	display: block;
	margin-top: 0.1em;
	color: #F00;
}

section.form form .NG {
	background: #FDD;
}


/* */

section.send blockquote {
	margin-bottom: 1.8em;
	border: solid 1px #999;
	padding: 1.5em;
}

section.send .error {
	border: solid 1px #F00;
	padding: 3em 1em;
	text-align: center;
	color: #F00;
}



@media all and (min-width:640px) {

	section {
		margin-left: auto;
		margin-right: auto;
		padding: 2rem 6.6%;
		max-width: 44rem;
	}

	section.pages {
		margin: 2rem 6.6% 0;
		background-image: url("../img/ln-flag-l.png");
		padding: 0 0 3rem;
		max-width: none;
	}

	section.pages ul {
		overflow: hidden;
	}

	section.pages li {
		float: left;
		width: 32%;
	}

	section.pages li:nth-child(n+2) {
		margin-left: 2%;
	}

	section.message {
		overflow: hidden;
	}

	section.message p:nth-of-type(1) {
		float: left;
		margin-right: 7%;
		width: 70%;
	}

	section.message .photo {
		float: right;
		margin: 0;
		width: 23%;
	}
	
	section.organization:nth-of-type(2) .photo,
	section.organization:nth-of-type(3) .photo {
		margin-left: auto;
		margin-right: auto;
		max-width: 62%;
	}
	
	section.organization:nth-of-type(4) {
		overflow: hidden;
	}
	
	section.organization:nth-of-type(4) .photo {
		float: left;
		margin-right: 6.6%;
		width: 45%;
	}

	section.documents dd li {
		width: 25%;
	}
	
	section.photos ul {
		overflow: hidden;
		margin-bottom: 0;
	}

	section.photos li {
		float: left;
		box-sizing: border-box;
		width: 46%;
		margin-bottom: 3em;
	}

	section.photos:nth-of-type(2) ul li {
		margin-bottom: 2em;
	}
	
	section.photos li:nth-child(2n+1) {
		clear: left;
		margin-right: 8%;
	}

	section.map figure iframe {
		height: 30rem;
	}

	section.form dl:nth-child(-n+3) {
		display: table;
		width: 100%;
	}

	section.form dl:nth-child(-n+3) dt {
		display: table-cell;
		width: 15em;
	}

	section.form dl:nth-child(-n+3) dd {
		display: table-cell;
	}
	
	section.send blockquote {
		padding: 2em;
	}

	
	
}
