/* リセット */
img{
	vertical-align:top;
}

ol,ul{
	list-style: none;
}


/* メインコンテンツ */

.contents{
	font-family:'Roboto','Yu Gothic Medium', '游ゴシック Medium', YuGothic, '游ゴシック体','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN','Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro';
	letter-spacing: 0.05em;
	color: #4D4D4dD;
	font-size: 1.6rem;
	width: 100%;
	margin: 0 auto;
	max-width: 800px;
}

/* TOP */
.pcimg{
	display: block !important;
}

.spimg{
	display: none !important;
}

@media only screen and (max-width: 768px){
	.pcimg{
		display: none !important;
		}

	.spimg{
		display: block !important;
		}
}

.main_visual{
	padding-bottom: 7%;
}

.top_text h4{
	width: 800px;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 20px;
	line-height: 35px;
	color: #3C6D88;
	font-size: 25px;
	font-weight: bold;
}

@media only screen and (max-width: 768px){
	.top_text h4{
		width: 100%;
		font-size: 21px;
	}
}

.top_text2 p{
	width: 800px;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 50px;
	line-height: 25px;
	font-size: 14px;
}

@media only screen and (max-width: 768px){
	.top_text2 p{
		width: 100%;
		font-size: 13px;
	}
}


/* 目次 */

.index_color_area{
	margin: 0 auto;
	width: 100%;
	background-color: #f4f4f4;
	padding: 40px 0 40px 0;
	margin-bottom: 70px;
}

.index_title{
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 30px;
	text-align: center;
}

.index_text{
	display: flex;
	justify-content: center;
	width: 100%;
	gap: 30px;
}

@media only screen and (max-width: 768px){
	.index_text{
		flex-wrap: wrap;
		justify-content: center;
		gap: 20px;
	}
}

.index_text h4{
	font-weight: bold;
    margin-bottom: 8px;
    border: solid 1px #3C6D88;
	border-radius: 3px;
    color: #3C6D88;
    padding: 5px;
    text-align: center;
    width: 140px;
}

@media only screen and (max-width: 768px){
	.index_text h4{
		margin-bottom: 5px;
	}
}

.index_text h4{
	transition: 1.0s;
}

.index_text h4:hover{
	opacity: 0.3;
}

.index_text p{
	transition: 1.0s;
}

.index_text p:hover{
	opacity: 0.3;
}



/*スマホだけ改行*/

.title_br {
	display: none;
}

@media screen and (max-width: 768px) {
	.title_br {
		display: block;
	}
}


/* メインコンテンツ */

.main_contents{
	padding-top: 50px;
}

.contents_text_area{
	margin: 0 auto;
	text-align: center;
	width: 100%;
}


.contents_block_main_title{
	text-align: center;
	letter-spacing: 0.05em;
	font-weight: bold;
	font-size: 22px;
	margin-bottom: 25px;
	color: #3C6D88;
	background-color: #E6F0F6;
	padding: 20px 0;
}

.contents_block_main_title a{
	color: inherit;
}

@media only screen and (max-width: 768px){
	.contents_block_main_title{
		font-size: 19px;
		padding: 15px 0;
		margin-bottom: 20px;
	}
}

.contents_block_sub_title{
	display: block;
	font-size: 20px;
	text-align: center;
	letter-spacing: 0.05em;
	font-weight: bold;
	margin-bottom: 25px;
	color: #3C6D88;
}

.contents_block_sub_title a{
	color: inherit;
}

@media only screen and (max-width: 768px){
	.contents_block_sub_title{
		font-size: 16px;
	}
}

/*メインアイテム*/

@media only screen and (min-width: 768px){
	.main_item_area ul{
		display: flex;
		justify-content: space-between;
		gap: 20px;
		margin-bottom: 70px;
		width: 100%;
	}
}

@media only screen and (max-width: 768px){
	.main_item_area ul{
		width: 100%;
	}
}

@media only screen and (max-width: 768px){
	.main_item_area li{
		margin-bottom: 40px;
	}
}

.main_item_area img{
	margin-bottom: 15px;
}

@media only screen and (min-width: 768px){
	.main_item_area li{
		width: 50%;
	}
}

.main_item_text h4{
	margin-bottom: 10px;
}

.main_item_text p{
	margin-bottom: 15px;
}

.main_item_name{
	color: #3C6D88;
	border-left: solid 3px #3C6D88;
	padding: 1px 7px;
	font-size: 13px;
	font-weight: bold;
}

.main_item_name a{
	color: inherit;
}

.main_item_name{
	transition: 1.0s;
}

.main_item_name:hover{
	opacity: 0.3;
}


/*メイン横並び*/

.main_item_area2 ul{
	padding: 0;
}

.main_item_area2 h4{
	line-height: 30px;
}

@media only screen and (max-width: 768px){
	.main_item_area2 img{
		margin-bottom: 15px;
	}
}

.main_item_area2 ul li{
	margin-bottom: 40px;
}

@media only screen and (max-width: 768px){
	.main_item_area2 ul li{
		margin-bottom: 40px;
	}
}


@media only screen and (min-width: 768px){
	.main_item_area2 ul li{
		display: flex;
	}
}

.main_item_text2{
	text-align: justify;
	font-size:14px;
}

@media only screen and (min-width: 768px){
	.main_item_text2{
		width: 50%;
		padding: 0 0 0 3%;
	}
}

@media only screen and (min-width: 768px){
	.main_item_text2 h4{
		margin:70px 0 20px 0;
		font-size: 18px;
	}
}

@media only screen and (max-width: 768px){
	.main_item_area2 h4{
		line-height: 27px;
		margin-bottom: 10px;
		font-size: 16px;
	}
}

@media only screen and (max-width: 768px){
	.main_item_text2 p{
		margin-bottom: 15px;
	}
}

.main_item_name2{
	color: #3C6D88;
	border-left: solid 3px #3C6D88;
	padding: 1px 7px;
	font-size: 13px;
	font-weight: bold;
}

.main_item_name2 a{
	color: inherit;
}

.main_item_name2{
	transition: 1.0s;
}

.main_item_name2:hover{
	opacity: 0.3;
}


/*サブアイテム*/

.sub_item_area ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 50px;
	width: 800px;
}

.sub_item_area ul::after{
	content: "";
	display: block;
	width: 253px;
}

@media only screen and (max-width: 768px){
	.sub_item_area ul{
		gap: 10px;
		width: 100%;
		margin-bottom: 30px;
	}
}

.sub_item_area li{
	width: 253px;
	margin-bottom: 30px;
}

@media only screen and (max-width: 768px){
	.sub_item_area li{
		width: 48%;
	}
}

.sub_item_area img{
	margin-bottom: 15px;
}

.sub_item_text h4{
	margin-bottom: 15px;
	line-height: 26px;
}

@media only screen and (max-width: 768px){
	.sub_item_text h4{
		font-size: 13px;
		line-height: 21px;
	}
}

.sub_item_name{
	color: #3C6D88;
	border-left: solid 3px #3C6D88;
	padding: 1px 7px;
	font-size: 13px;
	font-weight: bold;
}

@media only screen and (max-width: 768px){
	.sub_item_name{
		font-size: 12px;
		line-height: 18px;
		padding: 0 7px;
	}
}

.sub_item_name a{
	color: inherit;
}

.sub_item_name{
	transition: 1.0s;
}

.sub_item_name:hover{
	opacity: 0.3;
}


.contents_hover img{
	transition: 1.0s;
}

.contents_hover img:hover{
	opacity: 0.3;
}


/*アイテム一覧ボタン*/


.item_btn{
	width: 60%;
	border: solid 1px #3C6D88;
	border-radius: 3px;
	text-align: center;
	color: #3C6D88;
	padding: 10px 0;
	margin: 0 auto;
	font-weight: bold;
}

.item_btn p{
	font-size: 16px;
}

@media only screen and (max-width: 768px){
	.item_btn{
		width: 100%;
	}
}

.item_btn a{
	color: inherit;
	display: block;
}

.item_btn p{
	transition: 1.0s;
}

.item_btn p:hover{
	opacity: 0.3;
}

