/* CSS Document */

article h3
{
	margin-bottom: 10px;
}

article .main_box
{
	margin-bottom: 20px;
	padding-top: 20px;
}



.clr
{
	clear: none !important;
	float: none !important;
	width: auto !important;
}

article .text p
{
	text-align: justify;
	font-size: 18px;
	line-height: 160%;
}

article .info_box
{
	background-color: var(--second-color);
	padding: 20px;
	margin-bottom: 40px;
}

article .info_box table
{
	width: 100%;
}

article .info_box table th
{
	color: var(--font-color);
	width: 120px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: var(--font-color);
	font-weight: normal;
	text-align: justify;
	vertical-align: middle;
	padding-top: 20px;
	padding-right: 10px;
	padding-bottom: 20px;
	padding-left: 10px;
}

article .info_box table td
{
	color: var(--font-color);
	padding: 20px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: var(--font-color);
	font-weight: normal;
	text-align: justify;
	vertical-align: middle;
}

article .info_box table tr:last-child th,
article .info_box table tr:last-child td
{
	border-bottom-style: none;
}


article .photo_box
{
	float: right;
	width: 600px;
}

article .photo_box img
{
	width:100%;
	height:auto;
}

article .photo_box p
{
	font-size: 16px;
	line-height: 1.4;
	margin: 0px;
	padding-top: 4px;
}


article .sub_photo
{
	clear: both;
	float: none;
	margin-bottom: 60px;
}

article .sub_photo ul
{
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* 4列 */
	column-gap: 20px; /* 横のスペース */
	row-gap: 20px; /* 縦のスペース */
	align-items: stretch; /* 子要素をセルの高さに合わせて引き伸ばす */
	margin: 0px;
	padding: 0px;

}


article .sub_photo ul li
{
	margin: 0px;
	padding: 0px;
	list-style-type: none;
}

article .sub_photo ul li img
{
	width:auto;
	height:auto;
}

article .sub_photo ul li p
{
	font-size: 16px;
	line-height: 1.4;
	margin: 0px;
	padding-top: 4px;
}


article .photo_box a:hover img,
article .sub_photo ul li a:hover img
{
	transform:scale(1.04,1.04);
	transition:1s all;
}



/* PCのみ設定  768 以上*/
@media screen and (min-width:1200px)
{



article h2
{
	margin-bottom: 30px;
}

article section .text
{
	float: left;
	width: 540px;
}





}

@media (max-width: 1199px) 
{

article .text
{
	float: left;
	width: 56%;
}

article .photo_box
{
	width: 40%;
	float: right;

}



}

/* タブレットレイアウト : 768 px 〜 959 px*/
@media screen and (max-width:1199px)
{




}



/* スマホ設定  768 以下*/
@media screen and (max-width:767px)
{




}

/* スマホ設定  599 以下*/
@media screen and (max-width:599px)
{

article .photo_box
{
	float: none;
	width: auto !important;
	margin-bottom: 20px;
}

article .text
{
	float: none;
	width: auto !important;
}

article .info_box 
{
	margin-bottom: 20px;
	padding-top: 0px;
	padding-bottom: 0px;
}

article .info_box table th
{
	width: auto;
	font-weight: bold;
	display: block;
	padding-bottom: 0px;
	border-bottom-style: none;
	padding-right: 0px;
	padding-left: 0px;
}

article .info_box table td
{
	display: block;
	padding-top: 0px;
	padding-right: 0px;
	padding-left: 0px;
}

article .sub_photo ul
{
	grid-template-columns: repeat(2, 1fr); /* 4列 */
}


}