/* style
========================================================================== */
/* common
========================================================================== */
/*===============================================================================
コンテンツレイアウト
===============================================================================*/
@media only screen and (min-width:768px) {
.contents #mainTtl{
	width: 100%;
}
.contents #mainTtlInner{
	display: block;
}
.contents #mainTtl #mainTtlCategory{
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.contents #mainTtl #mainTtlTxt{
	display: block;
	padding: 50px 0 0;
}
.contents #mainPhoto{
	margin: 0;
}
}
#startIntro{
	padding-top: 30px;
}
#saiennavi{
	width: 100%;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 30px 0;
	padding: 20px 25px;
	background-color: #eeeeee;
	border-radius: 10px;
}
#saiennavi p.boxLogo{
	width: 212px;
	text-align: center;
}
#saiennavi p.boxLogo img{
	max-width: 100%;
}
#saiennavi p.boxTxt{
	flex: 1;
	box-sizing: border-box;
	padding-left: 25px;
	font-size: 15px;
	line-height: 1.7;
	letter-spacing: -0.025em;
}
#intro .boxPhoto{
	width: 100%;
	max-width: 700px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	line-height: 1.45;
}
#intro .boxPhoto .boxL{
	width: 270px;
}
#intro .boxPhoto .boxR{
	width: 410px;
}
#intro .boxPhoto img{
	max-width: 100%;
}
.contents #intro .boxPhoto .caption{
	padding-top: 5px;
}
#naviler{
	width: 100%;
	box-sizing: border-box;
	margin-top: 30px;
	padding: 25px;
	border-radius: 10px;
	background: #eaeee0;
}
#naviler h2{
	font-size: 28px;
	color: #319300;
	margin-bottom: 10px;
}
.section .figTtl{
	display: flex;
	padding-top: 10px !important;
	font-size: 18px;
	font-weight: bold;
	color: #ff6600;
	line-height: 1.45;
}
.section .boxFig{
	position: relative;
}
.section .boxFig .figTtl{
	position: absolute;
	left: 0;
	bottom: 0;
	transform: translateX(-77%);
}
.section .figTtl span:first-child{
	white-space: nowrap;
}
.contents .section .blockColumn dt{
	color: #319300;
	font-size: 100%;
	margin-top: 15px;
	font-weight: bold;
}
.contents .section .blockColumn dd{
}
.contents .section .blockColumn dd+dt{
	border-top: 1px dotted #666;
	padding: 15px 0 0;
}
.contents .section .blockColumn .boxW390{
	width: 100%;
	max-width: 390px;
	margin: 0 auto;
}
.contents .section .capPhoto{
	padding: 0;
	margin: 0;
	color: #319300;
	font-size: 16px;
	font-weight: bold;
}
.contents .section .boxHalf{
	width: 50%;
}
.contents .section .boxHalfW{
	width: 513px;
}
.contents .section .boxHalfN{
	width: 285px;
}
.contents .section .ttlH4{
	margin-top: 40px;
	text-align: center;
}
.contents .section .ttlH4>div{
	display: inline-block;
	position: relative;
	padding: 10px 0;
}
.contents .section .ttlH4>div:before,
.contents .section .ttlH4>div:after{
	content: "";
	width: 3px;
	height: 100%;
	background: #319300;
	position: absolute;
	top: 0;
}
.contents .section .ttlH4>div:before{
	left: -20px;
	transform: rotate(-15deg);
}
.contents .section .ttlH4>div:after{
	right: -20px;
	transform: rotate(15deg);
}
.contents .section .ttlH4>div>h4{
	font-size: 20px;
	color: #319300;
}
.contents .section ul.voice{
	margin: 20px 0 0;
	padding: 0;
	border-bottom: 1px dotted #666;
}
.contents .section ul.voice li{
	padding: 10px 0px 10px 1em;
	text-indent: -1em;
	border-top: 1px dotted #319300;
}
.contents .section ul.voice li span{
	color: #ff9900;
}
.contents .section .boxPhoto{
	width: 100%;
	max-width: 700px;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	line-height: 1.45;
}
.contents .section .boxPhoto .boxL{
	width: 270px;
}
.contents .section .boxPhoto .boxR{
	width: 410px;
}
.contents .section .boxPhoto img{
	max-width: 100%;
}
.contents #intro .boxPhoto .caption{
	padding-top: 5px;
}
#page04 p{
	font-size: 115%;
	font-weight: bold;
	color: #319300;
}
#page04 .boxTable{
	margin: 30px 0 0;
	padding: 25px 0 0;
	border-top: 1px solid #ccc;
}
#page04 .boxTable table{
}
#page04 .boxTable table th{
	padding: 5px 5px 5px 0;
	font-weight: bold;
	white-space: nowrap;
}
#page04 .boxTable table td{
	padding: 5px 0 5px 5px;
	font-weight: bold;
	white-space: nowrap;
}
#page04 .boxTable table td a{
	color: #3399cc;
	text-decoration: underline;
}
/*===============================================================================
/* sp
===============================================================================*/
@media only screen and (max-width:767px) {
	/*===============================================================================
コンテンツレイアウト
===============================================================================*/
#startIntro{
	margin: 0 15px;
	padding-top: 20px;
}
#saiennavi{
	display: block;
	padding: 10px;
}
#saiennavi p.boxLogo{
	margin: 10px auto;
}
#saiennavi p.boxTxt{
	padding-left: 0;
	font-size: 14px;
}
#intro .boxPhoto{
	display: block;
}
#intro .boxPhoto .boxL{
	width: 100%;
}
#intro .boxPhoto .boxR{
	width: 100%;
	margin-top: 20px;
}
#naviler{
	margin-top: 20px;
	padding: 10px;
}
#naviler h2{
	font-size: 20px;
}
.section .figTtl{
	font-size: 15px;
}
.section .boxFig .figTtl{
	position: static;
	transform: translateX(0);
}
.contents .section .blockColumn .boxW390{
	max-width: 100%;
}
.contents .section .capPhoto{
	font-size: 14px;
}
.contents .section .boxHalf{
	width: 100%;
}
.contents .section .boxHalfW{
	width: 100%;
}
.contents .section .boxHalfN{
	width: 100%;
}
.contents .section .ttlH4>div>h4{
	display: flex;
	flex-direction: column;
	font-size: 16px;
}
.contents .section .boxPhoto{
	display: block;
}
.contents .section .boxPhoto .boxL{
	width: 100%;
}
.contents .section .boxPhoto .boxR{
	width: 100%;
	margin-top: 20px;
}
#page04 .boxTable table{
}
#page04 .boxTable table th{
	display: block;
	padding: 5px 0 0 0;
}
#page04 .boxTable table td{
	display: block;
	padding: 0 0 5px 0;
}
}