/* リセット */
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: 60%;
	background-color: #f4f4f4;
	padding: 40px 0% 40px 0%;
	margin-bottom: 2%;
	display: block;
	text-align: left;
}

@media only screen and (max-width: 768px){
	.index_color_area{
		width: 100%;
	}
}

.index_title {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 10px;
	padding-left: 0;
}

.index_title2 {
	font-size: 16px;
	font-weight: bold;
	padding-left: 20%;
	margin-bottom: 2%;
	margin-top: 3%;
}

.index_color_area ul{
	display: inline-block;
	padding-left: 25%;
	padding-bottom: 10px;
}

.index_color_area ul li{
	text-align: left;
}

.index_text li a{
	display: inline-block;
	margin-bottom: 3%;
	line-height: 1.6;
	border-bottom: 1px solid #c8c8c8;
}

.index_contents{
	padding-bottom: 7%;
}

.index_text li{
	transition: 1.0s;
}

.index_text{
	font-size:15px;
}



/*スマホだけ改行*/

.title_br {
	display: none;
}

@media screen and (max-width: 768px) {
	.title_br {
		display: block;
	}
}


/* 見出し */
.heading-22 {
    padding: .5em .7em;
    border-left: 5px solid #28767a;
    background-color: #f2f2f2;
    color: #333333;
	margin-top: 40px;
}

/*副見出し*/
.heading-6 {
    display: inline-block;
    position: relative;
    padding: 20px 3em;
    color: #333333;
}

.heading-6::before,
.heading-6::after {
    content: '';
    display: inline-block;
    position: absolute;
    top: 50%;
    width: 45px;
    height: 3px;
    background-color: #8fc1e6;
}

.heading-6::before {
    left: 0;
}

.heading-6::after {
    right: 0;
}

/* 副副見出し */
.heading-1 {
    padding: .5em .7em;
    background-color: #f2f2f2;
    color: #333333;
	display: inline-block;
}

/*ボタン*/

.button-1 {
    display: flex;
    justify-content:center;
    align-items: center;
    width: 280px;
    margin:0px auto;
    padding: .9em 2em;
    border: 1px solid #2589d0;
    border-radius: 5px;
    background-color: #fff;
    color: #2589d0;
    font-size: 1em;

}

.button-1::after {
    transform: rotate(45deg);
	display: flex;
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #2589d0;
    border-right: 2px solid #2589d0;
    content: '';
}

.button-2 {
    display:flex;
    justify-content:center;
    align-items: center;
    width: 200px;
    margin:0px 10px;
    padding: .8em .4em;
    border: 1px solid #2589d0;
    border-radius: 5px;
    background-color: #fff;
    color: #2589d0;
    font-size: 1em;

}

.button-2::after {
    transform: rotate(45deg);
	display: flex;
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #2589d0;
    border-right: 2px solid #2589d0;
    content: '';
}

.button-2-1 {
    display: flex;
    justify-content:center;
    align-items: center;
    margin:10px auto;
}


/*記事*/

.index_contents1,.contents_block1{
	margin-bottom: 60px;
    padding-bottom: 60px;
    border-bottom: 2px solid #c8c8c8;
	align: left;
}

.hie_text1 p{
	width: 800px;
	margin: 10px auto;
    display: block;
	text-align: left;
	padding: 0 0 0 0;
	font-size: 14px;
}



/* メインコンテンツ */

.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-top: 40px;
	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;
}

