﻿@charset "UTF-8";

body {
	background: #fff;
}
#wrapper {
	background: #fcf7e8;
}

.article-page h1,
.info-top {
	line-height: 1.5;
	font-size: 28px;
}
@media screen and (max-width: 767px) {
.article-page h1,
.info-top {
	font-size: 19px;
}
}
.article-page h4 {
	width:48%;
	margin:0 auto 30px;
	text-align:center;
	background-color:#ffa500;
	color:white;
	font-size:20px;
	position: relative;
	padding: .5em .75em;
}
@media screen and (max-width: 767px) {
.article-page h4 {
		width: 96%;
		font-size: 18px;
}
}
.article-page h4::before,
.article-page h4::after {
	position: absolute;
	bottom: 8px;
	z-index: -1;
	content: '';
	width: 30%;
	height: 50%;
	box-shadow: 0 10px 15px rgba(0, 0, 0, .2);
}
.article-page h4::before {
	-webkit-transform: rotate(-3deg);
	transform: rotate(-3deg);
	left: .3em;
}
.article-page h4::after {
	-webkit-transform: rotate(3deg);
	transform: rotate(3deg);
	right: .3em;
}

main.page-main.article-page article img.staff-photo.large-photo {
	width: 220px;
	border-radius: 60px;
}

.page-main.article-page .box.style2.text-center {
	padding: 20px;
	margin-bottom: 10px;
}
.page-main.article-page .box.style2.text-center h3 {
	font-size: 16px;
}
@media screen and (max-width: 991px) {
	.page-main.article-page .box.style2.text-center h3 {
		font-size: 18px;
	}
}
.page-main.article-page .text-center.bottom-space img {
	width: 70%;
	margin-top: 15px;
}
.page-main.article-page .text-center.bottom-space .container-flex img {
	width: 100%;
	margin-top: 15px;
}
@media screen and (min-width: 768px) {
	.page-main.article-page .text-center img.half-width {
		width: 50%;
	}
}
@media screen and (min-width: 768px) {
	.page-main.article-page .text-center img.quarter-width {
		width: 25%;
	}
}
@media screen and (max-width: 991px) {
	.page-main.article-page .text-center.bottom-space img {
		width: 100%;
		margin-top: 5px;
	}
}
.article-page p.custom-color-alt {
	text-align: left;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.8px;
	width: 80%;
}
@media screen and (max-width: 767px) {
	.article-page p.custom-color-alt {
		width: 100%;
	}
}
.article-page p.custom-color-alt.center-block {
	margin: 30px auto;
}
@media screen and (max-width: 767px) {
.article-page h3 + p.custom-color-alt.center-block {
	margin-top: 10px;
}
}

.article-page h2 {
	border-bottom: 3px solid #155473;
	padding: 0 0 0 5px;
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4;
}
.article-page.camp h2 {
	border-bottom: none;
	padding: 0 0 0 5px;
	font-weight: bold;
	font-size: 30px;
	line-height: 1.4;
}
@media screen and (max-width: 767px) {
	.article-page h2 {
		font-size: 24px;
	}
}
.article-page h3 {
	font-size: 24px;
	line-height: 1.3;
	margin: 10px auto 13px;
	width: 100%;
}
@media screen and (max-width: 767px) {
	.article-page h3 {
		font-size: 14px;
	}
}
.article-page h1~img {
	width: 80%;
}
.article-page h2 + img, 
.article-page h3 + img {
	width: 80%;
}
@media screen and (max-width: 767px) {
.article-page h2 + img, 
.article-page h3 + img {
	width: 100%;
}
}

.container-flex .flexitem-pics {
	-ms-flex-basis: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
}

.container-flex .flexitem-text {
	-ms-flex-basis: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	position: relative
}

.container-flex .flexitem-text p {
	color: #333745;
	text-align: left;
	font-size: 16px;
	line-height: 30px;
	letter-spacing: 0.8px;
	padding: 15px 15px 15px 30px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media screen and (max-width:767px) {
.container-flex .flexitem-text p {
	padding-top: 10px;
}
}
@media screen and (max-width:767px) {
	.container-flex .flexitem-pics,
	.container-flex .flexitem-text {
	position: static;
	-ms-flex-basis: 100%;
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
}
.container-flex .flexitem-text p {
	padding: 5px;
	position: static;
	-webkit-transform: none;
	transform: none;
}
}

.article-page .article-page-genre {
	width: 80%;
	margin: 0 auto;
}
@media screen and (max-width:767px) {
.article-page .article-page-genre {
	width: 96%;
}
}
.article-page-genre a img {
	width: 100%;
}
.article-page-genre p {
	margin-top: 10px;
	margin-bottom: 15px;
	color: #333745;
	font-size: 14px;
}
@media screen and (max-width:767px) {
.article-page-genre p {
	font-size: 12px;
}
}
.article-page i.icon.icon-checked {
	color: #ff3333;
}


/* 次の記事へ */
.other-topic {
	width:80%;
	margin:0 auto;
	padding:14px;
	background-color: white;
	border-radius: 60px;
	margin-bottom:30px;
	background-color:#91dbff;
}
.other-topic div:first-child img {
	width:100%;
	padding: 6px;
	border: 6px solid #155473;
	background-color: white;
	border-radius: 60px;
	margin-right:15px;
}
.other-topic div:first-child {
	-ms-flex-basis: 220px;
	-webkit-flex-basis: 220px;
	flex-basis: 220px;
	margin-left: 10px;
	margin-right: 10px;
	overflow: hidden;
}
.other-topic div:last-child {
	-ms-flex-basis: calc(100% - 300px);
	-webkit-flex-basis: calc(100% - 300px);
	flex-basis: calc(100% - 300px);
	margin-left: 10px;
	margin-right: 10px;
	overflow: hidden;
	color:#333745;
	font-size:20px;
}
@media screen and (min-width:768px) {
.other-topic div:last-child {
	position: relative;
}
.other-topic div:last-child p {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
}
.other-topic-o {
	width:80%;
	margin:0 auto;
	padding:14px;
	background-color: white;
	border-radius: 60px;
	margin-bottom:30px;
	background-color:#efd0ac;
}
.other-topic-o div:first-child img {
	width:100%;
	padding: 6px;
	border: 6px solid #7c2c00;
	background-color: white;
	border-radius: 60px;
	margin-right:15px;
}
.other-topic-o div:first-child {
	-ms-flex-basis: 220px;
	-webkit-flex-basis: 220px;
	flex-basis: 220px;
	margin-left: 10px;
	margin-right: 10px;
	overflow: hidden;
}
.other-topic-o div:last-child {
	-ms-flex-basis: calc(100% - 300px);
	-webkit-flex-basis: calc(100% - 300px);
	flex-basis: calc(100% - 300px);
	margin-left: 10px;
	margin-right: 10px;
	overflow: hidden;
	color:#333745;
	font-size:20px;
}
@media screen and (min-width:768px) {
.other-topic-o div:last-child {
	position: relative;
}
.other-topic-o div:last-child p {
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
}
@media screen and (max-width:767px) {
.other-topic div:first-child,
.other-topic-o div:first-child {
	-ms-flex-basis: 100%;
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 15px;
}
.other-topic div:last-child,
.other-topic-o div:last-child {
	-ms-flex-basis: 100%;
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 10px;
}
}
.other-topic.container-flex a,
.other-topic-o.container-flex a {
	color: #333745;
}
/* 補足説明のリンク */
.remarks > p {
	width:78%;
	margin-bottom:10px;
	letter-spacing: 0.8px;
	font-size:16px;
}
.remarks > .container-flex {
	width:78%;
	margin:0 auto;
	border:1px solid #333745;
}
@media screen and (max-width:767px) {
	.remarks > p,
	.remarks > .container-flex {
		width: 100%;
}
}
.remarks > .container-flex div:first-child {
	-ms-flex-basis: calc(15% - 10px);
	-webkit-flex-basis: calc(15% - 10px);
	flex-basis: calc(15% - 10px);
	margin-left: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}
.remarks > .container-flex div:first-child a {
	position: relative;
}
.remarks > .container-flex div:first-child img {
	width: 100%;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.remarks > .container-flex div:last-child {
	-ms-flex-basis: 80%;
	-webkit-flex-basis: 80%;
	flex-basis: 80%;
	padding-left: 15px;
}
.remarks>.container-flex div:last-child p {
	padding: 10px;
	color: #333745;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.remarks>.container-flex div:last-child a {
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (max-width:767px) {
.remarks>.container-flex div:first-child {
	-ms-flex-basis: calc(30% - 10px);
	-webkit-flex-basis: calc(30% - 10px);
	flex-basis: calc(30% - 10px);
	margin-left: 10px;
	margin-top: 10px;
	margin-bottom: 10px;
}
.remarks>.container-flex div:last-child {
	-ms-flex-basis: 70%;
	-webkit-flex-basis: 70%;
	flex-basis: 70%;
	padding-left: 5px;
}

.remarks>.container-flex div:last-child p {
	font-size: 15px;
}
}
@media screen and (max-width:767px) {
.remarks > p {
	font-size: 12px;
}
}

.item-btn {
	width: 50%;
	background-color: #7c2c00;
	color: #fff;
	margin: 0 auto;
	font-size: 20px;
}
.list-btn {
	width: 50%;
	background-color: #ff0600;
	color: #fff;
	margin: 0 auto 30px;
	font-size: 20px;
}
.item-btn p,
.list-btn p {
	padding:20px 8px;
}
.item-btn a,
.item-btn a:hover,
.list-btn a,
.list-btn a:hover {
	color:#fff;
}
.tarp-list {
	margin:20px auto 0px;
	width:80%;
}
.tarp-shape {
	font-size: 20px;
	font-weight:bold;
}
@media screen and (max-width:767px) {
.item-btn,
.list-btn {
width: 100%;
font-size:4vw;
}
.item-btn p,
.list-btn p {
padding:14px 8px;
}
.tarp-list {
margin-top:20px;
}
.tarp-shape {
font-size:4vw;
}
}


.pc-nav {
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 100px;
	z-index:100;
}
.pc-nav img {
	width: 100px;
	margin-top: 10px;
}
.large-section {
	margin-bottom: 80px;
}
.fixed-width-700 {
	width: 700px;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width:767px) {
	.fixed-width-700 {
		width: 100%;
	}
}
.w-100 {
	width: 100%;
}
.h-auto {
	height: auto;
}
.container-flex.flex-center {
	-webkit-justify-content: center;
	justify-content: center;
}
.container-flex.pc250-sp2 .flex-item {
	-ms-flex-basis: calc(250px - 20px);
	-webkit-flex-basis: calc(250px - 20px);
	flex-basis: calc(250px - 20px);
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
	border-radius: 4px;
	overflow: hidden;
}
@media screen and (max-width: 480px) {
	.container-flex.pc250-sp2 .flex-item {
		-ms-flex-basis: calc(50% - 10px);
		-webkit-flex-basis: calc(50% - 10px);
		flex-basis: calc(50% - 10px);
		margin-left: 5px;
		margin-right: 5px;
		margin-bottom: 10px;
	}
}
.pc250-sp2 img {
	width: 100%;
	height: auto;
}
.container-flex.pc250-sp2 a:hover img, a:hover img {
	opacity: 0.8;
}