@charset "utf-8";

/* ==========================================================
top背景色
========================================================== */
.p-page-header::before {
	background: #136e62
}

/* ==========================================================
関連カテゴリ
========================================================== */

.hp_mt_xl {
	margin-top: 30px !important;
}

.bg_default {
	background-color: #ffffff;
	font-size: 200%;
}

.bl_infoBox {
	display: flex;
	align-items: center;
	background-color: #136e62;
	border: 4px solid #136e62;
	border-radius: 15px;
}

.bl_infoBox_ttl {
	width: 230px;
	white-space: nowrap;
	height: 100%;
	padding-top: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
	font-size: 1.25rem;
	font-weight: bold;
	border-radius: 12px 0 0 12px;
	position: relative;
}



.bl_infoBox_ttl::after {
	content: '';
	display: block;
	width: 53px;
	height: 42px;
	background: url(img/icon_list.png) no-repeat center center/100% auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: auto;
}


.bl_infoBox_list {
	font-size: 1.25rem !important;
	min-height: 120px;
	margin: 0;
	padding: 10px 5px 10px 14px;
	flex: 1 1;
	border-radius: 0 12px 12px 0;
	list-style-type: none;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}


.bl_infoBox_item {
	margin: 10px 0 10px 15px;
}

.bl_infoBox_item>.el_link.el_link__arrow {
	font-size: 1.125rem;
	font-weight: bold;
	font-feature-settings: "palt";
}

.el_link.el_link__arrow {
	padding-left: 1.7rem;
	display: inline-block;
	position: relative;
}

.el_link {
	color: #444;
	font-weight: bold;
	font-size: 20px !important;
}

.el_link.el_link__arrow::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: url(img/icon_arr_1.png) no-repeat center center / 100% auto;
	position: absolute;
	left: 5px;
	top: 0px;
	margin: auto;
}



@media (max-width: 767px) {
	.bl_infoBox {
		flex-direction: column;
	}

	.bl_infoBox_ttl {
		width: auto;
		padding: 10px 0 10px 47.75px;
	}

	.bl_infoBox_ttl::after {
		width: 39.75px;
		height: 31.5px;
		right: auto;
		bottom: 0;
	}

	.bl_infoBox_list {
		width: 100%;
		border-radius: 0 0 12px 12px;
		padding: 10px 15px 10px 5px;
		flex: 0 1 auto;
	}

	.bl_infoBox_item {
		margin-left: 10px;
	}

	.bl_infoBox_item::after {
		top: 5px;
		bottom: auto;
	}

}

/* ==========================================================
ライン色
========================================================== */
.band_bg {
	background-color: #136e62;
}

/* ==========================================================
お知らせ一覧
========================================================== */
.right_text {
	position: absolute;
	right: 0;
	white-space: nowrap;
}

.more-btn {
	display: inline-block;
	height: 26px;
	font-size: 16px;
	font-weight: 600;
	font-family: "Josefin Sans";
	color: #fff;
	line-height: 26px;
	text-align: center;
	text-decoration: none;
	background: #136e62;
	padding: 0 11px;
	-webkit-transition: all 0.3sease;
	transition: all 0.3sease;
	border-radius: 10px;
}

/* スマホサイズ（例：最大幅767px）の場合 */
@media (max-width: 767px) {
	.p-cb__item-header {
		display: flex;
		flex-direction: column;
		/* Stack headline and button */
		align-items: flex-start;
		/* Align items to the start */
	}

	.right_text {
		text-align: left;
		margin-bottom: 5px;
		position: static;
		right: auto;
		display: flex;
		/* Flexboxコンテナにする */
		flex-direction: column;
		/* 子要素を縦方向に並べる */
		width: 100%;
		/* 親要素の幅に合わせる */
		word-break: break-all;
		/* 長い単語も改行する */
		white-space: normal;
	}

	.more-btn {
		line-height: 50px;
		height: 50px;
		margin-bottom: 5px;
	}
}



/* ==========================================================
PDFボタン
========================================================== */
.pdf_link01 a {
	height: 100px;
	line-height: 1.5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 2em 1em 2em 1em;
	border: 2px solid #d5decf;
	border-radius: 10px;
	color: inherit;
	font-weight: bold;
	text-decoration: none;
	background: #f4faf0;
}

.pdf_link01 a::before {
	display: block;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	margin: 0 8px 0 0;
	content: "";
	background: url(img/icon_arr_1.png) center center/contain no-repeat;
}

.pdf_link01 a:hover {
	border-color: #136e62;
	color: inherit;
	background: #ffffff;
}

/* ==========================================================
サイドボタン
========================================================== */

#index_side_button {
	position: fixed;
	z-index: 9999;
	right: 0;
	bottom: 100px;
	font-size: 16px;
	-webkit-transform: translateX(60px);
	transform: translateX(60px);
}

#index_side_button.animate {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
	-webkit-transition: -webkit-transform 0.35s 1.5s;
	transition: transform 0.35s 1.5s;
}

#index_side_button a {
	margin-bottom: 8px;
	display: block;
	height: 60px;
	line-height: 50px;
	background: #fe535c;
	color: #fff;
	text-align: center;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 10px 0px 0px 10px;
}

#index_side_button.type1 a {
	padding: 0 30px;
	min-width: 100px;
	-webkit-transform: rotate(-90deg) translate(0, -100%);
	transform: rotate(-90deg) translate(0, -100%);
	-webkit-transform-origin: 100% 0;
	transform-origin: 100% 0;
}

#index_side_button.type2 {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	white-space: nowrap;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;

}

#index_side_button.type2 a {
	padding: 30px 0;
	min-height: 100px;
	height: auto;
}

#index_side_button a {
	font-weight: 900;
	color: #ffffff;
	background: #136e62;
	box-shadow: rgba(32, 32, 32, 0.28) 0px 1px 6px 0px;
	border-width: 2px 0px 2px 2px;
	border-style: solid solid solid;
	border-color: rgb(255, 255, 255) rgb(255, 255, 255) rgb(255, 255, 255);
	border-image: initial;
	border-right: 0px;
	opacity: 1 !important;
}

#index_side_button a:hover {
	color: #999;
	background: #06302a;
}

@media screen and (max-width: 768px) {
	#index_side_button.animate {
		display: none;
	}
}

/* ==========================================================
カテゴリアイコン
========================================================== */
.anchor_block_ttl a span {
	display: block;
	padding: 10px 10px 16px 45px;
	border-bottom: 1px solid #b1b1b1;
	text-decoration: none;
	color: #222222;
	background: #ffffff url(img/icon_arr_1.png) no-repeat 10px 7px;
	background-size: 26px auto;
	-moz-background-size: 26px auto;
	-webkit-background-size: 26px auto;
}

.anchor_block_cnt ul>li>a {
	display: inline-block;
	padding: 5px 0 5px 30px;
	font-size: 88.9%;
	text-decoration: none;
	color: #222222;
	background: #ffffff url(img/icon_arr_1.png) no-repeat 0 1px;
	background-position: 0 0;
	background-size: 20px auto;
	-moz-background-size: 20px auto;
	-webkit-background-size: 20px auto;
}

/* ==========================================================
BG
========================================================== */



.bgcon1 {
	background-color: #136e62;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	width: 100%;
	margin-bottom: 30px;

}

.bgcon2 {
	width: 1200px;
	margin: 0 auto;
}

.bgbox {
	background-color: #136e62;
	box-sizing: border-box;
	padding: 10px;
	position: relative;
	height: 200px;
	display: flex;
	align-items: center;
	/* 垂直方向中央揃え */
	justify-content: center;
	/* 水平方向中央揃え (必要に応じて) */
}

.bgbox1 {
	background-color: #136e62;
	display: grid;
	place-items: center;
	/* 水平・垂直方向の中央揃え */
	float: left;
	width: 30%;
}

.bgbox1 .mainimg_ttl {
	color: #ffffff;
	font-size: 2vw;
	font-weight: 700;
}

.bgbox1 .mainimg_sub {
	color: #ffffff;
	font-size: 3.2vw;
}


.bgbox2 {
	width: 70%;
	background: url(img/bg_mainvisual01.jpg) center left/cover no-repeat #136e62;
	display: inline;
	float: right;
	background-color: #e0e0e0;
	flex-grow: 1;
	position: absolute;
}


/* 480px以上（大きめSP） */
@media only screen and (min-width: 480px),
print {

	.bgbox1 {
		width: 40%;
	}

	.bgbox2 {
		width: 60%;
	}

	.bgbox {
		height: 200px;
	}

	.bgbox1 .mainimg_ttl {
		font-size: 20px;
		font-size: 2rem;
	}

	.bgbox1 .mainimg_sub {
		font-size: 10px;
		font-size: 1rem;
	}
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px),
print {
	.bgbox1 {
		width: 40%;
	}

	.bgbox2 {
		width: 60%;
	}

	.bgbox {
		height: 200px;
	}

	.bgbox1 .mainimg_ttl {
		font-size: 30px;
		font-size: 3rem;
	}

	.bgbox1 .mainimg_sub {
		font-size: 20px;
		font-size: 2rem;
	}
}


/* ==========================================================
見出し
========================================================== */

#main_header {
	width: 100%;
	padding: 0px;
	background: #136e62;
	border-radius: 10px;
	margin-top: 15px;
}

#main h1,
#main_header h1 {

	font-weight: 700;
	margin: 0px;
	font-size: 1.5rem;
	line-height: 1em;
	padding: 1em 1em 1em 60px;
	color: #fff;
	background: url(img/h1bg1.png) no-repeat 18px center;
	/* url(img/h1bg2.png) repeat-x left bottom;
	           url(wp-content/themes/edo/img/h1bg3.png) no-repeat right bottom; */
}


#main_header2 {
	width: 100%;
	padding: 0px;
	background: #136e62;
	border-radius: 10px;
	margin-bottom: 15px;
}

#main_header2 h1 {

	font-weight: 700;
	margin: 0px;
	font-size: 1.7rem;
	line-height: 1em;
	padding: 1em 1em 1em 75px;
	color: #fff;
	background: url(img/h1bg3.png) no-repeat 30px center;
	/* url(img/h1bg2.png) repeat-x left bottom;
	           url(wp-content/themes/edo/img/h1bg3.png) no-repeat right bottom; */
}


#sub_header {
	width: 100%;

}

#sub h2,
#sub_header h2 {
	font-weight: 700;
	position: relative;

	padding: 0.6em 0.5em 0.5em 2em;
	border-bottom: 3px solid #136e62;
	background-color: #FAFAFA;
	border-radius: 10px 10px 0 0;


}

#sub h2::after,
#sub_header h2::after {
	vertical-align: top;
	position: absolute;
	top: 35px;
	left: 0.8em;
	transform: translateY(-50%);
	content: '';
	width: 8px;
	height: 8px;
	border: solid 7px #136e62;
	border-radius: 100%;
}

@media screen and (max-width: 767px) {

	#sub h2::after,
	#sub_header h2::after {
		vertical-align: top;
		position: absolute;
		top: 25px;
		left: 0.8em;
		transform: translateY(-50%);
		content: '';
		width: 8px;
		height: 8px;
		border: solid 7px #136e62;
		border-radius: 100%;
	}
}

/* H3 H4 */

.h3-area {
	margin-bottom: 25px;
	padding: 15px 25px 14px 25px;
	color: black;
	font-size: 24px;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.5;
	background-color: #ebfffc;
	border-radius: 10px;
}

.h3-area::before {
	content: "●";
	color: #136e62;
	/* オレンジ色 */
	margin-right: 0.5em;
	/* ●と文字の間のスペース */
}

@media screen and (max-width: 767px) {
	.h3-area {
		padding-top: 20px;
		font-size: 20px;
	}

	.h3-area::before {
		margin-right: 0.3em;
		/* モバイルではスペースを少し狭く */
	}
}


.h4-area {
	padding: 15px 18px;
	margin-bottom: 20px;
	/* background-color: #fcf7ed; */
	/* 背景色削除 */
	border-radius: 15px;
	font-weight: bold;
	font-size: 100%;
	color: black;
	border: 3px solid #136e62;
	/* オレンジ色のボーダーを追加 */
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.1);
	/* 影を追加 */
}

/* H3 H4 */



/* ==========================================================
!Lnavi
========================================================== */
.lnavi+.lnavi {
	margin: 20px 0 0 0;
}

.lnavi_ttl>a,
.lnavi_ttl>span {
	display: block;
	padding: 25px 15px 25px 15px;
	border-radius: 5px 5px 0 0;
	color: #ffffff;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	text-decoration: none;
	background: #136e62;
}

.lnavi_ttl>a:hover {
	opacity: 0.7;
	color: #ffffff;
}

.lnavi_list li {
	line-height: 1.5;
}

.lnavi_list a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 15px 10px 15px 10px;
	border-bottom: 1px solid #d5decf;
	text-decoration: none;
}

.lnavi_list a.current {
	color: #136e62;
	background-color: #effad9;
}

.lnavi_list a::before {
	display: inline-block;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 0.7em;
	height: 0.7em;
	margin-right: 1em;
	border-top: 2px solid #136e62;
	border-right: 2px solid #136e62;
	content: "";
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.lnavi_cate {
	border-bottom: 1px solid #d5decf;
	font-weight: bold;
	background: #f4faf0 !important;
}

.lnavi_cate::before {
	display: none !important;
}

.lnavi_cate a {
	color: #136e62;
}

.lnavi_subject a {
	padding: 12px 10px 12px 10px;
	color: #136e62;
}

.lnavi_subject a.current+.lnavi_sub {
	display: block;
}

.lnavi_sub {
	display: none;
}

.lnavi_sub a {
	padding: 12px 10px 12px 22px;
}

.lnavi_sub a::before {
	width: 0.5em;
	height: 0.5em;
	margin-right: 0.5em;
	border-top: 1px solid #136e62;
	border-right: 1px solid #136e62;
}

.lnavi a.current+.lnavi_sub {
	display: block;
}

/* アイコン付き主なメニュー
------------------------------*/
.lnavi_primary {
	margin: 20px 0 20px 0;
}

.lnavi_primary_list li {
	margin: 0 0 10px 0;
}

.lnavi_primary_list a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 80px;
	border: 1px solid #d5decf;
	border-radius: 5px;
	font-weight: bold;
	text-decoration: none;
}

.lnavi_primary_list [class^="icon_menu"],
.lnavi_primary_list [class^="icon_sns"] {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-item-align: stretch;
	align-self: stretch;
	width: 90px;
	margin: 0 10px 0 0;
	border-radius: 5px 0 0 5px;
	background: #f4faf0;
}

.lnavi_primary_list [class^="icon_menu"]::before,
.lnavi_primary_list [class^="icon_sns"]::before {
	width: 60px;
	height: 60px;
}

/* ==========================================================
!Lnaviend
========================================================== */

/* button - CSSボタンのスタイル */
.q_button {
	background-color: #136e62;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
	color: #fff !important;
	display: inline-block;
	font-size: 100%;
	font-weight: 400;
	min-width: 200px;
	margin: 0;
	max-width: 90%;
	padding: .6em 1.3em .5em;
	transition: all 0.3s ease-in-out 0s;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
}

.q_button:hover,
.q_button:focus {
	background-color: #136e62;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.15) inset;
	color: #fff;
	text-decoration: none;
}

/* headline - 見出しのスタイル */
.style3a,
.style3b,
.style4a,
.style4b,
.style5a,
.style5b,
.style6 {
	line-height: 1.6;
}

.style3a {
	color: #136e62;
	font-weight: 700;
	border-top: 1px solid #136e62;
	border-bottom: 1px solid #136e62;
	font-size: 22px;
	margin: 3em 0 1.5em;
	padding: 1.1em .2em 1em;
}

.style3b {
	color: #136e62;
	font-weight: 700;
	background: #fafafa;
	border-top: 2px solid #136e62;
	border-bottom: 1px solid #ddd;
	box-shadow: 0px 1px 2px #f7f7f7;
	font-size: 22px;
	margin: 3em 0 1.5em;
	padding: 1.1em .9em 1em;
}

.style4a {
	color: #136e62;
	font-weight: 700;
	border-bottom: none;
	border-left: 2px solid #136e62;
	font-size: 18px;
	margin: 2.5em 2px 1.2em;
	padding: .3em 0 .3em .8em;
}

.style4b {
	color: #136e62;
	font-weight: 700;
	border-bottom: 1px dotted #aaa;
	font-size: 18px;
	margin: 2.5em 0 1.2em;
	padding: .9em 0 .8em;
}

.style5a {
	color: #136e62;
	font-weight: 700;
	background: #f5f5f5;
	box-shadow: 0px 2px 0px 0px #f2f2f2;
	font-size: 18px;
	margin: 2em 0 1em;
	padding: .5em .8em .3em 1em;
}

.style5b {
	font-weight: 700;
	background: #136e62;
	border-radius: 4px;
	box-shadow: 0px 2px 0px 0px #f2f2f2;
	color: #fff;
	font-size: 18px;
	margin: 2em 0 1em;
	padding: .5em .8em .4em 1em;
}

.style6 {
	color: #136e62;
	font-weight: 700;
	font-size: 16px;
	margin: 2em 0 1em;
	padding: .5em .8em .8em 1.3em;
	position: relative;
}

.style6:before {
	background: #136e62;
	content: "";
	position: absolute;
	top: .5em;
	left: .2em;
	width: 12px;
	height: 12px;
}


/*  ページ内タイトル
-------------------------- */
#main_header {
	width: 100%;
	padding: 0px 5px 0px 5px;
	/**/
	margin-top: 10px;
	background: #136e62;
}

#main h1,
#main_header h1 {
	font-weight: 700;
	margin: 0px;
	font-size: 1.8rem;
	line-height: 1.0em;
	padding: 1em 1em 1em 50px;
	color: #fff;
	background: url(http://www.minaminasukouiki.jp/wp-content/themes/minami/img/h1bg1.png) no-repeat 10px center,
		url(http://www.minaminasukouiki.jp/wp-content/themes/minami/img/h1bg2.png) repeat-x left bottom;
	/*url(wp-content/themes/edo/img/h1bg3.png) no-repeat right bottom;*/
}





/*  タイトル
-------------------------- */

.boxCategoryTitle,
.boxCategoryTitle *,
.boxSubCategoryTitle,
.boxSubCategoryTitle *,
.ttlSection,
.ttlSection02 {
	font-weight: bold;
}

/* -- カテゴリータイトル -- */

.boxCategoryTitle {
	position: relative;
	padding: 26px 23px 24px;
	border-top: 4px solid #136e62;
	background: #ebf5ed;
	font-size: 1.72em;
	text-align: center;
}

.boxCategoryTitle h1 {
	color: #666666;
	font-size: 1.3em;
}

.boxCategoryTitle:before {
	position: absolute;
	top: 0px;
	left: 0;
	width: 100%;
	height: 3px;
	border-top: 3px solid #136e62;
	content: "";
}

/* ------------------------------------------ */
/* パンくず */
/* ------------------------------------------ */

#pankuzu2 {
	text-align: center;
}

#pankuzu2 .title2 {
	display: inline;
	float: left;
	width: 120px;
	font-size: 100%;
}

#pankuzu2 .title2 .bg_2 {
	white-space: nowrap;
	display: inline-block;
	padding-top: 3px;
	padding-right: 5px;
	padding-bottom: 0px;
	padding-left: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	background-color: #136e62;
	color: #FFF;
}

#pankuzu2 .box2 {
	margin-left: 110px;
}

#pankuzu2 .list2 li {
	display: inline;
}



#js-archive-slider {
	border-radius: 7px;
}

div.p-article-slider__item-info>h3 {
	display: flex;
	/* インライン要素にFlexboxを適用 */
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0%;
	left: 50%;
	/* 水平方向にも中央に配置する場合 */
	transform: translate(-50%, -50%);
	/* 水平・垂直方向の中央揃え */

}


.p-article-slider__item-info .p-article__title {
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.6;
	opacity: 1 !important;
	border-radius: 10px;
	background: #136e62;
	padding: 20px;
	height: auto;
	width: auto;
	display: inline-block;
	cursor: pointer;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
	/* ドロップシャドウ */
	/**/
	/* 濃いめの影 */
	border-width: 1px;
	border-style: solid;
	border-color: #fff;
}

.p-article-slider__item-info .p-article__title:hover {
	background: #10574e;
	/* ホバー時の背景色 (少し暗くする例) */
	color: #ddd;
	/* ホバー時の文字色 (少し明るくする例) */
	/* box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3); /* ホバー時の影 (例) */
	border-color: #ddd;
	/* ホバー時の枠線の色 (例) */
	transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
	/* 滑らかな変化を加える (オプション) */
}



/**/


/* ==========================================================
!Mainimg
========================================================== */



#mainimg {
	background-position: right;
	min-height: 100%;
	color: #ffffff;
	background-image: url(img/bg_mainvisual01.jpg);
	background-size: 1600px auto;
	/*background-position: left 400px center 100%;
	  優先順位を高くする  */
	/* 左から20%、垂直方向中央 
	background-size: cover;*/
	/* 要素全体を覆うように拡大縮小 */
	background-repeat: no-repeat;
	background-color: #136e62;

}

.top #mainimg {
	background: none;
}

#mainimg .outer01 {
	display: flex;
	/* Flexコンテナにする */
	min-height: 100%;
	width: 100%;
}

#mainimg .inner01 {

	/* 各ボックスが均等にスペースを分け合う */
	display: -webkit-box;
	display: -ms-flexbox;

	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 200px;

}





#mainimg .mainimg_txt {
	width: 30%;

	align-items: center;
	height: 100%;
	width: auto;
	background: #136e62;
}

#mainimg .mainimg_txt2 {
	width: 70%;
	align-items: center;
	height: 100%;

	min-height: 100%;
	background: #136e62;
}

#mainimg .mainimg_ttl {
	background: #136e62;
	font-size: 5.33333vw;
}

#mainimg .mainimg_sub {
	color: #ffffff;
	font-size: 3.2vw;
}

/* 480px以上（大きめSP） */
@media only screen and (min-width: 480px),
print {
	#mainimg .inner01 {
		height: 40vw;
	}
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px),
print {
	#mainimg .inner01 {
		height: 200px;
	}

	#mainimg .mainimg_ttl {
		font-size: 20px;
		font-size: 2rem;
	}

	#mainimg .mainimg_sub {
		font-size: 10px;
		font-size: 1rem;
	}
}


/* ==========================================================
!Section Common
========================================================== */
.outer01 p,
.outer01 li,
.outer01 dt,
.outer01 dd,
.outer01 figcaption {
	/* Android */
	background: url(img/img_android01.png);
}

.inner01 {
	padding: 0 4% 0 4%;
	text-align: left;
}

article,
section {
	margin: 8% 0 8% 0;
}



article .inner01,
section .inner01 {
	padding: 0 4% 0 4%;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px),
print {
	.outer01 {
		width: 100%;
		max-width: calc(1262px);
		margin: 0 auto;
	}

	article,
	section {
		margin: 80px 0 80px 0;
	}


}





/*メニュー開始ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */



.line {
	margin: 0 auto;
	width: 270px;
	height: 30px;
	overflow-wrap: break-word;
	word-wrap: break-word;
	word-break: break-all;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}


#post_category_archive {
	padding: 5px 0 10px
}

#post_category_archive .inner {
	max-width: 1200px;
	width: 100%;
	margin: 0 auto
}

#post_category_archive .category_group {
	margin-bottom: 0px
}

#post_category_archive .category_group:last-of-type {
	margin-bottom: 0
}

#post_category_archive .content_wrap {
	margin-bottom: 0px;
	overflow: hidden
}

#post_category_archive .headline {
	font-size: 18px;
	line-height: 1.6;
	opacity: 1;
	transition: opacity .3s ease;
	border-radius: 10px;
	padding: 10px 20px;
	color: #136e62;
	border: 4px solid #136e62;
	/*
    background-color: #DC143C;
 */
}

#post_category_archive .headline a {
	display: inline-block;
	padding-left: 8px;
	color: inherit
}

#post_category_archive .headline:hover {
	opacity: .5
}

#post_category_archive .description {
	line-height: 2;
	padding: 0 25px
}

#post_category_archive .description span {
	display: block;
	margin: -.5em 0
}

#post_category_archive .headline+.description {
	margin-top: 30px
}

#post_category_archive .post_list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: -30px 0 0 -10px;
	padding: 0px 20px 0px 0px
}

#post_category_archive .item {
	width: calc(100%/3 - 30px);
	margin: 30px 0 0 30px;
	border-radius: 10px;
	padding: 0px;
}

#post_category_archive .item5 {
	width: calc(100%/5 - 30px);
	margin: 30px 0 0 30px;
	border-radius: 10px;
	padding: 0px;
}



#post_category_archive .item.no_desc {
	height: auto
}

#post_category_archive .link {
	padding: 14px;
	font-size: 14px;
	background-color: #136e62;
	border-radius: 10px;
	box-shadow: 0 3px 0 #063831;
	border-radius: 10px;
	color: #fff;
	display: block;
	position: relative;
	/* position: relative;で矢印の位置を基点とさせます */
	text-align: center;
	text-decoration: none;
	width: 100%;
}



#post_category_archive .link:hover {
	color: #fff;
	background-color: #136e62;
	box-shadow: 0 0px 0 #063831;
	transform: translateY(3px);

}


#post_category_archive .link::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	right: 27px;
	width: 9px;
	height: 9px;
	margin: auto;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	box-sizing: border-box;
}



#post_category_archive .desc {
	line-height: 2.2;
	max-height: 4.4em;
	margin: calc(26px - .6em) 0 -.6em
}



@media screen and (max-width:1000px) {



	#post_category_archive .inner {
		max-width: 840px
	}

	@media screen and (max-width:900px) {
		#post_category_archive .inner {
			max-width: calc(100% - 5px)
		}
	}

	@media screen and (max-width:750px) {
		#post_category_archive {
			padding: 10px 0
		}

		#post_category_archive>.inner {
			max-width: calc(100% - 5px)
		}

		#post_category_archive .category_group {
			margin-bottom: 0px
		}

		#post_category_archive .headline {
			font-size: 20px
		}

		#post_category_archive .headline a {
			padding-left: 15px
		}

		#post_category_archive .description {
			padding: 0
		}

		#post_category_archive .headline+.description {
			margin-top: 20px
		}

		#post_category_archive .content_wrap {
			margin-bottom: 20px
		}

		#post_category_archive .post_list {
			margin: -15px 0 0
		}

		#post_category_archive .item {
			width: 100%;
			margin: 15px 0 0
		}

		#post_category_archive .link {
			padding: 25px
		}

		#post_category_archive .title {
			font-size: 16px
		}

		#post_category_archive .desc {
			max-height: 6.6em
		}

		#post_category_archive .desc span {
			-webkit-line-clamp: 3
		}
	}
}



/*メニュー終了ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー */
/* 緑丸つきリスト（ul_basic01・標準）
--------------------------------- */
.resp-tabs-list:not(li),
.article ul {
	margin: 1.5em 0 1.5em 0;
}

.post_conten ul {
	margin: 1.5em 0 1.5em 0;
}

.p-entry__body ul li,
.resp-tabs-list:not(li),
.article ul li,
.p-entry__body ul li {
	position: relative;
	padding-left: 1em;
	line-height: 1.5;
	list-style: none;
}


.p-entry__body ul li::before {
	list-style: none;
	display: block;
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 0.625em;
	height: 0.625em;
	border-radius: 50%;
	content: "";
	background: #136e62;
}

.resp-tabs-list li,
ul.resp-tabs-list,
.resp-tabs-list li,
.resp-tabs-list li::before,
ul.resp-tabs-list,
.resp-tabs-list li::before {

	padding-top: 9999em;
	position: relative;
	padding-left: 9999em;


}




/* 黒丸つきリスト（ul_basic02）
--------------------------------- */
.ul_basic02:not(#_),
.article ul.ul_basic02 {
	margin: 1.5em 0 1.5em 0;
}

.ul_basic02:not(#_) li,
.article ul.ul_basic02 li {
	position: relative;
	padding-left: 1em;
	line-height: 1.5;
}

.ul_basic02:not(#_) li::before,
.article ul.ul_basic02 li::before {
	display: block;
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 0.375em;
	height: 0.375em;
	border-radius: 50%;
	content: "";
	background: #333333;
}

.ul_basic02:not(#_) li+li,
.article ul.ul_basic02 li+li {
	margin-top: 1em;
}

/* 数字つきリスト（ol_basic01・標準）
--------------------------------- */
.ol_basic01:not(#_),
.article ol {
	margin: 1.5em 0 1.5em 0;
}

.ol_basic01:not(#_) li,
.article ol li {
	position: relative;
	padding-left: 1.5em;
}

.ol_basic01:not(#_) li::before,
.article ol li::before {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	position: absolute;
	left: 0;
	width: 1.5em;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	content: counter(number) ". ";
	counter-increment: number 1;
}

.ol_basic01:not(#_) li+li,
.article ol li+li {
	margin-top: 1em;
}

.ol_basic01:not(#_) {
	counter-reset: number 0;
}

.article ol {
	counter-reset: number 0;
}

/* カッコ数字つきリスト（ol_basic02）
--------------------------------- */
.ol_basic02:not(#_),
.article ol.ol_basic02 {
	margin: 1.5em 0 1.5em 0;
}

.ol_basic02:not(#_) li,
.article ol.ol_basic02 li {
	position: relative;
	padding-left: 2.5em;
}

.ol_basic02:not(#_) li::before,
.article ol.ol_basic02 li::before {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	position: absolute;
	left: 0;
	width: 2.2em;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	content: "(" counter(number) ") ";
	counter-increment: number 1;
}

.ol_basic02:not(#_) li+li,
.article ol.ol_basic02 li+li {
	margin-top: 1em;
}

.ol_basic02:not(#_) {
	counter-reset: number 0;
}

.article ol.ol_basic02 {
	counter-reset: number 0;
}

/* 注釈リスト（ul_note01）
--------------------------------- */
.ul_note01:not(#_) {
	margin: 1.5em 0 1.5em 0;
	padding: 1em;
	background: #f8f8f8;
}

.ul_note01:not(#_) li {
	position: relative;
	padding-left: 1em;
	color: #444444;
	font-size: 0.85em;
	line-height: 1.5;
}

.ul_note01:not(#_) li::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	content: "※";
	background: none;
}

.ul_note01:not(#_) li+li {
	margin-top: 0.25em;
}






/* 緑丸つきリスト（ul_basic01・標準）
--------------------------------- */
.resp-tabs-list:not(li),
.article ul {
	margin: 1.5em 0 1.5em 0;
}

.post_conten ul {
	margin: 1.5em 0 1.5em 0;
}

.p-entry__body ul li,
.resp-tabs-list:not(li),
.article ul li,
.p-entry__body ul li {
	position: relative;
	padding-left: 1em;
	line-height: 1.5;
	list-style: none;
}


.p-entry__body ul li::before {
	list-style: none;
	display: block;
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 0.625em;
	height: 0.625em;
	border-radius: 50%;
	content: "";
	background: #136e62;
}

.resp-tabs-list li,
ul.resp-tabs-list,
.resp-tabs-list li,
.resp-tabs-list li::before,
ul.resp-tabs-list,
.resp-tabs-list li::before {

	padding-top: 9999em;
	position: relative;
	padding-left: 9999em;


}




/* 黒丸つきリスト（ul_basic02）
--------------------------------- */
.ul_basic02:not(#_),
.article ul.ul_basic02 {
	margin: 1.5em 0 1.5em 0;
}

.ul_basic02:not(#_) li,
.article ul.ul_basic02 li {
	position: relative;
	padding-left: 1em;
	line-height: 1.5;
}

.ul_basic02:not(#_) li::before,
.article ul.ul_basic02 li::before {
	display: block;
	position: absolute;
	top: 0.5em;
	left: 0;
	width: 0.375em;
	height: 0.375em;
	border-radius: 50%;
	content: "";
	background: #333333;
}

.ul_basic02:not(#_) li+li,
.article ul.ul_basic02 li+li {
	margin-top: 1em;
}

/* 数字つきリスト（ol_basic01・標準）
--------------------------------- */
.ol_basic01:not(#_),
.article ol {
	margin: 1.5em 0 1.5em 0;
}

.ol_basic01:not(#_) li,
.article ol li {
	position: relative;
	padding-left: 1.5em;
}

.ol_basic01:not(#_) li::before,
.article ol li::before {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	position: absolute;
	left: 0;
	width: 1.5em;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	content: counter(number) ". ";
	counter-increment: number 1;
}

.ol_basic01:not(#_) li+li,
.article ol li+li {
	margin-top: 1em;
}

.ol_basic01:not(#_) {
	counter-reset: number 0;
}

.article ol {
	counter-reset: number 0;
}

/* カッコ数字つきリスト（ol_basic02）
--------------------------------- */
.ol_basic02:not(#_),
.article ol.ol_basic02 {
	margin: 1.5em 0 1.5em 0;
}

.ol_basic02:not(#_) li,
.article ol.ol_basic02 li {
	position: relative;
	padding-left: 2.5em;
}

.ol_basic02:not(#_) li::before,
.article ol.ol_basic02 li::before {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	position: absolute;
	left: 0;
	width: 2.2em;
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	content: "(" counter(number) ") ";
	counter-increment: number 1;
}

.ol_basic02:not(#_) li+li,
.article ol.ol_basic02 li+li {
	margin-top: 1em;
}

.ol_basic02:not(#_) {
	counter-reset: number 0;
}

.article ol.ol_basic02 {
	counter-reset: number 0;
}

/* 注釈リスト（ul_note01）
--------------------------------- */
.ul_note01:not(#_) {
	margin: 1.5em 0 1.5em 0;
	padding: 1em;
	background: #f8f8f8;
}

.ul_note01:not(#_) li {
	position: relative;
	padding-left: 1em;
	color: #444444;
	font-size: 0.85em;
	line-height: 1.5;
}

.ul_note01:not(#_) li::before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 1em;
	height: 1em;
	content: "※";
	background: none;
}

.ul_note01:not(#_) li+li {
	margin-top: 0.25em;
}





/* ==========================================================
!H(n)eading
========================================================== */
/* h3相当
------------------------------------ */
.p-entry__body h3 {
	margin: 30px 0 30px 0;
	padding: 0 0 8px 0;
	border-bottom: 3px solid #136e62;
	color: #333333;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
}

@media only screen and (min-width: 768px) {
	.p-entry__body h3 {
		margin: 30px 0px 30px 0;
		padding: 0 0 10px 0;
		font-size: 32px;
		font-size: 3.2rem;
	}
}



/*for投稿記事本文エリア*/
/* h4相当
------------------------------------ */
.p-entry__body h4 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 60px 0 30px 0;
	color: #333333;
	font-size: 22px;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
}

@media only screen and (min-width: 768px) {
	.p-entry__body h4 {
		margin: 30px 0 30px 0;
		font-size: 26px;
		font-size: 2.6rem;
	}
}


.p-entry__body h4::before {
	display: inline-block;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 8px;
	margin: 0 10px 0 0;
	vertical-align: middle;
	content: "";
	background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #136e62), color-stop(50%, #ccfff8));
	background: -webkit-linear-gradient(top, #136e62 50%, #ccfff8 50%);
	background: -o-linear-gradient(top, #136e62 50%, #ccfff8 50%);
	background: linear-gradient(to bottom, #136e62 50%, #ccfff8 50%);
}






/* タイトル */


.page-title-left {
	position: relative;
	margin: 0 0 30px;
	padding: 0 0 4px;
	border: 1px solid #136e62;
	border-bottom: 0;
	border-radius: 5px 5px 0 0;
	z-index: 1;
	margin-top: 30px;
}

.page-title-left::before {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 4px;
	background-image: linear-gradient(to right, #136e62 20%, #136e62 20%, #136e62 40%, #136e62 40%, #136e62 60%, #136e62 60%, #136e62 80%, #136e62 80%);
	background-size: 100% 6px;
	content: ""
}

.page-title-left .page-title {
	position: relative;
	z-index: 1
}

.page-title-left .page-title::before {
	position: absolute;
	right: 0;
	top: 0;
	width: 90px;
	height: 50px;
	/* background: url("img/title-h1.png") no-repeat 0 0/cover; */
	content: "";
	z-index: -1
}

.page-title-left .page-title h1 {
	margin: 0;
	padding: 20px 30px 20px 15px;
	font-size: 1.72em;
	font-weight: 900;
}


.p-entry__body h2 {
	position: relative;
	margin: 15px 0 15px -5px;
	padding: 15px 12px 13px 15px;
	overflow: hidden;
	border-bottom: 2px solid #136e62;
	background: #ebf8ff;
	font-size: 1.72em;
	font-weight: 500;
	z-index: 1
}

.p-entry__body h2::after {
	display: block;
	position: absolute;
	top: 15px;
	right: 15px;
	width: 65px;
	height: 46px;
	z-index: -1;
	/* background: url("../images/top/title2-0.png") no-repeat; */
	content: ''
}

.p-entry__body h2.no-css {
	margin: 0;
	padding: 0;
	border: none;
	background: none
}

.p-entry__body h5 {
	position: relative;
	margin: 24px 0 12px -5px;
	padding: 0 10px 10px 15px;
	border-bottom: 2px solid #136e62;
	font-size: 1.2rem
}

.p-entry__body h6 {
	margin-bottom: 15px;
	margin-left: -5px;
	padding: 5px 0.75em 5px;
	border-left: 6px solid #136e62;
	background: none
}


@media print,
screen and (min-width: 601px) {
	.page-title-left {
		padding: 0 0 6px
	}

	.page-title-left::before {
		height: 6px;
		background-size: 50% 6px
	}

	.page-title-left .page-title::before {
		width: 153px;
		height: 83px
	}

	.page-title-left .page-title h1 {
		padding: 28px 170px 28px 30px
	}

}