/******************************************************************************************************
 * Firstview
 *****************************************************************************************************/

#firstview-slick-wrap .slick-slider { margin-bottom: 15px; }

#slick-slider .slick-list li > * { padding-top: 56.25%; }
.slick-dots {
	height: 10px;
	line-height: 10px;
	text-align: center;
	list-style: none;
	vertical-align: middle;
	margin-bottom: 0;
	padding-top: 15px;
}
.slick-dots > li { display: inline-block; height: 10px; line-height: 10px; vertical-align: middle; letter-spacing: normal; }
.slick-dots > li + li { margin-left: 10px; }
.slick-dots > li > button {
	display: block;
	width: 10px;
	height: 10px;
	font-size: 0.5em;
	line-height: 0em;
	text-align: left;
	text-indent: -9999px;
	background-color: #d4d5d5;
	border: none;
	cursor: pointer;
}
.slick-dots > li > button[aria-selected='true'] { background-color: #00418c; }
.slick-dots > li > button:hover { background-color: #7fa0c5; }

#loading-wrap {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background-color: #fff;
	transition: 1s;
	z-index: 999;
}
#loading-wrap.off { opacity: 0; }

#loading-wrap > .loading {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	color: #3f3a34;
	transform: translateY(-50%);
}

#loading-wrap > .loading > .text {
	font-size: 1.5em;
	font-family: Tahoma, Geneva, "sans-serif";
	letter-spacing: 0.075em;
	text-indent: 0.075em;
	text-align: center;
}

#loading-wrap > .loading > .loading-bar {
	position: relative;
	width: 60%;
	max-width: 300px;
	margin: 15px auto;
	background-color: #ddd;
}
#loading-wrap > .loading > .loading-bar > .bar {
	position: relative;
	width: 0%;
	height: 3px;
	background-color: #3f3a34;
	transition: 0.5s linear;
}


@media screen and (min-width: 768px) {
	#firstview-slick,
	#slick-slider,
	#slick-slider > .slick-list,
	#slick-slider > .slick-list *:not(li) { position: relative; top: 0; left: 0; right: 0; bottom: 0; width: 100%; height: 100%; }
	#slick-slider .slick-list li > * { position: relative; bottom: 0; height: 100%; }
	
	.slick-dots { position: absolute; left: 0; bottom: 60px; width: 100%; padding-top: 0; }
}
@media screen and (max-width: 767px) {
	#firstview-slick-wrap { height: auto !important; }
}



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

#concept-block h1,
#concept-block h2,
#concept-block h3,
#concept-block h4,
#concept-block h5,
#concept-block h6,
.note h1,
.note h2,
.note h3,
.note h4,
.note h5,
.note h6
{
	color: #884400;
	font-size: 1.285em;
	font-weight: normal;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E";
	line-height: 1.4em;
	text-align: center;
	margin-bottom: 15px;
	text-shadow: 1px 1px 0 #fff;
}

#concept-block .photo {
	position: relative;
	display: block;
	border: solid 10px #fff;
	box-shadow: 2px 2px 6px 0 rgba(0,0,0,0.25);
}
#service-block > p { margin-bottom: 0; }
#service-block a.more { padding: 15px 30px; }

.point3-thumbnail {
	margin-top: 30px;
	margin-bottom: 30px;
}
.point3-thumbnail h4 { color: #336600; }
.point3-thumbnail .match-height-inner .note > p { margin-bottom: 0; }

#information-block .date {
	display: inline-block !important;
	color: #fff;
	font-size: 0.75em;
	/*font-size: 0.875em;*/
	font-family: "Times New Roman", Times, serif;
	line-height: 1em;
	background: #ff9900;
	padding: 5px 7px;
	/*padding: 7px 10px;*/
	border-radius: 3px;
	margin-right: 10px;
	vertical-align: middle;
}
#information-block .block-label {
	padding: 5px;
	border-bottom: dotted 1px #339966;
	margin-bottom: 15px;
}
#information-block .block-label a.more {
	position: absolute;
	top: 50%;
	right: 5px;
	padding: 5px 10px;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}
#information-block .block-label a.more .dashicons {
	width: 15px;
	margin-left: -5px;
}
#information-block .block-label h3 { vertical-align: middle; }
#information-block .block-label > span {
	position: absolute;
	top: 50%;
	right: 0;
	display: block;
	-webkit-transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	transform: translateY(-50%);
}

#info-example-list { padding-left: 15px; padding-right: 15px; }
#info-example-list > * { padding-left: 0; padding-right: 0; }
#info-example-list > * + * {
	border-top: dotted 1px #339966;
	padding-top: 15px;
	margin-top: 15px;
}
#info-example-list .example-photo,
#info-example-list .example-label {
	position: relative;
	float: left;
}
#info-example-list .example-photo {
	display: block;
	width: 30%;
}
#info-example-list .example-label {
	width: 70%;
	text-align: left;
	padding-left: 15px;
}
#info-example-list .example-label a {
	position: relative;
	overflow: hidden;
	display: block;
	width: 100%;
	font-size: 0.875em;
	text-align: left;
	text-overflow: ellipsis;
	white-space: nowrap;
}

ul.topics {
	display: block;
	width: 100%;
	list-style: none;
}

ul.topics li {
	padding: 10px 5px;
	border-top: dotted 1px #c3a17f;
}
	ul.topics li:first-child { padding-top: 0; border-top: none; }
	ul.topics li:last-child { padding-bottom: 0; }

@media screen and (min-width: 768px) {

	#concept-block h1,
	#concept-block h2,
	#concept-block h3,
	#concept-block h4,
	#concept-block h5,
	#concept-block h6,
	.note h1,
	.note h2,
	.note h3,
	.note h4,
	.note h5,
	.note h6 { font-size: 1.875em; text-align: left; }

	#information-block .block-label {
		padding-top: 0;
		padding-bottom: 0;
		margin-bottom: 30px;
	}

	#info-example-list.type-thumbnail { padding-left: 0; padding-right: 0; }
	#info-example-list.type-thumbnail > * { padding-left: 15px; padding-right: 15px; }
	#info-example-list.type-thumbnail > * + * {
		border-top: none;
		padding-top: 0;
		margin-top: 0;
	}

	#info-example-list.type-thumbnail .example-photo,
	#info-example-list.type-thumbnail .example-label {
		float: none;
		width: 100%;
		padding: 0;
	}


	#info-example-list:not(.type-thumbnail) .example-photo { width: 20%; }
	#info-example-list:not(.type-thumbnail) > .col-sm-4 > .example-label { margin-top: 7px; }

	#info-example-list.type-thumbnail .example-label a { text-align: center; }

	#info-example-list.type-thumbnail .date { display: none !important; }
}
