@charset "UTF-8";
/********************** 記事ページのスタイル **********************/
.inkiji .main_naka_h1 {
	margin: 12px auto 0;
}
.inkiji .main_naka:has(.syosai) {
	margin-bottom: 16px;
	padding-bottom: 0;
}
.waku {
	margin: 0 auto 24px;
}
.waku_top{
	clear: both;
	margin: 0 auto;
	max-width: 1224px;
	padding: 0 12px;
	width: 100%;
}
.main_naka_kiji_box {
	float: left;
	margin-right: 40px;
	width: calc(100% - 280px);
}
.waku .kiji_sub {
	margin-top: 8px;
	float: right;
	width: 240px;
}
	@media only screen and (max-width: 750px) {
		.inkiji .main_naka_h1 {
			margin: 0 auto;
		}
		.main_naka_kiji_box{
			float: none;
			overflow: hidden;
			width: 100%;
		}
		.waku .kiji_sub{
			float: none;
			width: 100%;
		}
	}
/**** 詳細ページのスタイル ****/
.design .main_naka .syosai_hiduke {
	margin-top: 16px;
	font-size: 85%;
}
.design .main_naka .syosai_hiduke li{
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 0;
}
.design .main_naka .syosai_hiduke li span{
	padding: 2px 8px;
	border: 1px solid #aaa;
	background: #fff;
/*	border-radius: 4px;*/
}
.design .main_naka .syosai_hiduke li:nth-child(2) span{
/*	color: #fff;*/
	background: #EBEFF5;
	border: 1px solid #818999;
	border-radius: 4px;
}
.design .main_naka .syosai_hiduke li::before,
.design .main_naka .syosai_hiduke li::after {
	display: none;
}
.design .main_naka .syosai_hiduke li .application,
.design .main_naka .syosai_hiduke li .closed{
	margin: 0;
}
	@media only screen and (max-width: 750px) {
		.design .main_naka .syosai_hiduke{
			margin-bottom: 16px;
		}
	}
/* SNSボタン */
.inbody .design .sns_box {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
}
.inbody .design .sns_box ul {
	display: flex;
	flex-wrap: wrap;
}
.inbody .design .sns_btn {
	padding: 0;
	margin: 0 0 0 8px;
}
.inbody .design .sns_box li::before,
.inbody .design .sns_box li::after {
	display: none;
}
.inbody .design .sns_box li a{
	font-size: 85%;
	display: flex;
	align-items: center;
}
.inbody .design .sns_btn img {
	min-width: 30px;
	width: 30px;
	margin: 20px;
	}
.inbody .design p.sns_btn {
	padding: 5px 2px 0px 3px;
	font-size: 85%;
	line-height: inherit;
	margin-top: 0;
}
	@media only screen and (max-width: 750px) {
		.inbody .design .sns_btn{
			margin: 0;
			width: 100%;
		}
		.inbody .design .sns_box ul{
			width: 100%;
			padding: 10px;
		}
		.inbody .design .sns_box{
			background: #efefef;
		}
		.inbody .design p.sns_btn{
			padding: 12px 12px 0px 12px;
		}
		.inbody .design .sns_btn img{
			min-width: 40px;
			width: 40px;
			margin: 10px 20px 10px 10px;
		}
	}
/**** 記事ページ右メニューのスタイル ****/
/*アイキャッチ画像*/
.waku .kiji_sub .catch {
	margin-top: 16px;
}
.waku .kiji_sub .catch p {
	margin-top: 0;
	text-align: center;
}
.waku .kiji_sub .catch img {
	border: 1px solid #ccc;
	padding: 1px;
	vertical-align: bottom;
}
/*お問い合わせフォーム*/
.waku .kiji_sub .kiji_aside.syosai_sonota {
	margin-top: 16px;
	padding: 12px;
	border: 1px solid #ccc;
	font-size: 85%;
	text-align: center;
	word-wrap: break-word;
}
.waku .kiji_sub .kiji_aside.syosai_sonota h2 {
	display: inline-block;
	padding: 6px 4px 4px;
	background: #DCEDF7;
	border: 0;
	color: #fff;
	width: 100%;
}
.waku .kiji_sub .kiji_aside.syosai_sonota p {
	text-align: left;
}
.waku .kiji_sub .kiji_aside.syosai_sonota p a[href^="tel:"] {
  cursor: default;
  color: #222;
  text-decoration: none;
}
.waku .kiji_sub .kiji_aside.syosai_sonota .for_img {
	text-align: center;
	background: #555;
	font-size: 85%;
	display: inline-block;
	border-radius: 4px;
	width: 100%;
}
.waku .kiji_sub .kiji_aside.syosai_sonota .for_img a {
	display: block;
	padding: 8px 5px 7px;
	color: #fff;
	text-decoration: none;
	width: 100%;
}
	@media only screen and (max-width: 750px) {
		.waku .kiji_sub .kiji_aside.syosai_sonota p a[href^="tel:"]{
			cursor: pointer;
			color: #2b3095;
			text-decoration: underline;
		}
	}

/*共通スタイル*/
.waku .kiji_sub .kiji_aside{
	margin-top: 16px;
	background: #fff;
	border: 1px solid #ccc;
}
.waku .kiji_sub .kiji_aside_lower{
	padding: 0 16px 16px;
}
.waku .kiji_sub .kiji_aside h2 {
	padding: 10px 8px 8px;
	background: #e8f4f9;
}
.waku .kiji_sub .kiji_aside > ul {
	border: 1px solid #ccc;
	padding: 0 8px 12px;
}
.waku .kiji_sub .kiji_aside li {
	position: relative;
	padding-left: 16px;
}
.waku .kiji_sub .kiji_aside li::before {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: 6px;
	height: 6px;
	border-right: 2px solid #999;
	border-bottom: 2px solid #999;
	transform: rotate(-45deg);
}
.waku .kiji_sub .kiji_aside li li {
	font-size: 85%;
}
/*コンテンツページ_組織内ジャンル*/
.waku .kiji_sub .kiji_aside.kakuka {
}
/*関連コンテンツ*/
.waku .kiji_sub .kiji_aside.kanren {
}
/*この記事を見ている人*/
.waku .kiji_sub .kiji_aside.kanren2 {
}
/**** コンテンツ評価のスタイル ****/
.design .main_naka .kiji_aside.syosai_qa {
	background: #fff;
}
.design .main_naka .kiji_aside.syosai_qa li {
	padding-left: 0;
}
.design .main_naka .kiji_aside.syosai_qa li::before,
.design .main_naka .kiji_aside.syosai_qa li::after {
	display: none;
}
.design .main_naka .kiji_aside.syosai_qa li p {
	padding: 5px 1%;
	border: 1px dashed #bbb;
}
.design .main_naka .kiji_aside.syosai_qa li p span {
	display: inline-block;
}
.design .main_naka .kiji_aside.syosai_qa li p span input,
.design .main_naka .kiji_aside.syosai_qa li p span label {cursor: pointer;}
.design .main_naka .kiji_aside.syosai_qa li p span label {padding: 5px 0;}
.design .main_naka .kiji_aside.syosai_qa #opinion {
	width : 100%;
}
.design .main_naka .kiji_aside.syosai_qa .comment {
	font-size : 85%;
}
.design .main_naka .kiji_aside.syosai_qa .qa_button {
	margin-top: 8px;
	padding-top: 16px;
	border-top: 1px solid #ccc;
	text-align: center;
}
.design .main_naka .kiji_aside.syosai_qa .qa_button2 {
	margin-top: 8px;
	padding: 8px 0;
	text-align: center;
}
.design .main_naka .kiji_aside.syosai_qa .qa_button2 button{
	margin: 0 4px;
}
@media only screen and (max-width: 750px) {
	.design .main_naka .kiji_aside.syosai_qa form p span{
		display: block;
		line-height: 2;
	}
}

/**** 別ルートのスタイル ****/
.design .main_naka .route_box {
	margin-bottom: 24px;
}
.design .main_naka .route_box h2{
	background: #fff;
	border-top: 0;
	border-bottom: 2px solid #ccc;
	font-size: 100%;
	padding: 2px;
	margin: 0 0 12px;
}
.design .main_naka .route_box h2::after{
	display: none;
}
.design .route {
	margin-top: 8px;
}
.design .route li {
	font-size: 85%;
	margin: 0 6px 0 0;
	padding: 0 28px 0 0;
	border: 0;
	list-style-type: none;
	background: none;
	display: inline-block;
	height: auto;
	position: relative;
}
.design .route li::before {
	display: none;
}
.design .route li::after {
	background: transparent url("img/atom_arrow.svg") no-repeat center / cover;
	top: .5em;
	left: unset;
	right: 8px;
}
.design .route li:last-child::after {
	display: none;
}
.design .route li a{
	display: block;
}
/**** 記事ページ下メニューのスタイル ****/
.inkiji .main_naka .kiji_aside,
.infaq .main_naka .kiji_aside{
	margin-bottom: 24px;
	background: #fff;
	border: 1px solid #818999;
	border-radius: 4px;
	overflow: hidden;
}
.inkiji .main_naka .kiji_aside_lower,
.infaq .main_naka .kiji_aside_lower {
  padding: 0 16px 16px;
}
.inkiji .main_naka .kiji_aside_lower .webmap{
	margin-left: 8px;
	font-size: 80%;
	text-decoration: none;
	padding: 2px 4px;
	display: inline-block;
	background: #fff;
	border: 1px solid #818999;
}
.inkiji .main_naka .kiji_aside_lower .webmap:hover{
	background-color: #F0F5F9;
}
.inkiji .main_naka .kiji_aside_lower a{
	display: inline-block;
}
.inkiji .main_naka .kiji_aside_lower a[href^="tel:"] {
  cursor: default;
  color: #222;
  text-decoration: none;
}
.inkiji .main_naka .kiji_aside h2,
.infaq .main_naka .kiji_aside h2 {
	margin: 0;
	padding: 10px 12px;
	background: #EBEFF5;
	border: 0;
	border-radius: 4px 4px 0 0;
	font-size: 100%;
}
.inkiji .main_naka .kiji_aside h3,
.infaq .main_naka .kiji_aside h3 {
	margin: 16px 16px 0;
	padding: 2px 2px 2px 12px;
	border-left: 4px solid #003B96;
	font-size: 100%;
}
.inkiji .main_naka .kiji_aside h3 a,
.infaq .main_naka .kiji_aside h3 a{
	display: inline-block;
}
.inkiji .main_naka .kiji_aside ul,
.infaq .main_naka .kiji_aside ul {
	margin-top: 16px;
	padding: 0;
	border: none;
}
.inkiji .main_naka .kiji_aside li li,
.infaq .main_naka .kiji_aside li li{
	font-size: 85%;
}
.inkiji .main_naka .kiji_aside li li::before,
.infaq .main_naka .kiji_aside li li::before {
	top: -1.8px;
}
.inkiji .main_naka .kiji_aside li li::after,
.infaq .main_naka .kiji_aside li li::after {
	top: 5.5px;
}
	@media only screen and (max-width: 750px) {
		.inkiji .main_naka .kiji_aside.kanrenlink h2,
		.infaq .main_naka .kiji_aside.kanrenlink h2,
		.inkiji .main_naka .kiji_aside.rssfide h2,
		.infaq .main_naka .kiji_aside.rssfide h2{
			padding-right: 4em;
		}
		.inkiji .main_naka .kiji_aside_lower a[href^="tel:"] {
			cursor: pointer;
			color: #2b3095;
			text-decoration: underline;
		}
	}
	@media only screen and (max-width: 390px) {
		.inkiji .main_naka .kiji_aside.kanrenlink h2,
		.infaq .main_naka .kiji_aside.kanrenlink h2,
		.inkiji .main_naka .kiji_aside.rssfide h2,
		.infaq .main_naka .kiji_aside.rssfide h2{
			padding-right: 5em;
		}
	}
/* 関連リンク */
.inkiji .main_naka .kiji_aside.kanrenlink{
}
/* 外部RSS */
.inkiji .main_naka .kiji_aside.rssfide h2{
}
/* 組織内ジャンル */
.inkiji .main_naka .kiji_aside.kakuka h2{
}
/* 関連コンテンツ */
.inkiji .main_naka .kiji_aside.kanren h2{
}
/* 関連している可能性のある記事 */
.inkiji .main_naka .kiji_aside.kanren2 h2{
}
/* お問い合わせフォーム */
.main_naka .kiji_aside.syosai_sonota{
	background: #ffffff;
	margin-bottom: 24px;
	padding: 16px;
	border: 1px solid #818999;
	border-radius: 4px;
}
.main_naka .kiji_aside.syosai_sonota h2 {
	margin: 0;
	padding: 4px 8px;
	background: none;
	border-bottom: 3px solid #EBEFF5;
	color: #333;
}
.main_naka .kiji_aside.syosai_sonota a{
	display: inline-block;
	min-height: 24px;
}
.main_naka .kiji_aside.syosai_sonota p.for_txt {
	padding: 0 0 8px 0;
	border-bottom: 1px solid #ccc;
	font-size: 85%;
}
.main_naka .kiji_aside.syosai_sonota .kiji_aside_lower{
	padding: 0;
}
/**** 記事ページ緊急情報のスタイル ****/
.kiji_emergency .main_naka_h1 h1 {
	border-left: none;
	background: #a90000;
	color: #fff;
	padding: 6px 8px 4px;
}
/**** 記事ページ見出しのスタイル ****/
.mol_contents h2 {
	width: 100%;
	margin: 48px 0 0;
	padding: 6px 10px;
	background-color: #EBEFF5;
	border-bottom: 1px solid #003B96;
	border-left: 6px solid #003B96;
	border-radius: 0;
	font-size: 160%;
}
.mol_contents h3 {
	margin: 40px 0 0 4px;
	padding: 12px 8px 2px 8px;
	border-bottom: 2px solid #003B96;
	font-size: 130%;
}
.mol_contents h4 {
	margin: 32px 0 0 16px;
	padding: 0 12px;
	border-left: 6px double #E60019;
	font-size: 110%;
}
	@media only screen and (max-width: 750px){
		.mol_contents h2{
			font-size: 136%;
		}
		.mol_contents h3{
			font-size: 120%;
		}
	}
/**** 記事ページ_文字の装飾 ****/
/*em(黒太字)*/
.mol_contents em{
	color: #333;
	font-weight: bold;
	font-style: normal;
}
/*囲み枠_色*/
.mol_textblock_color {
	margin-top: 16px;
	padding: 0 20px 15px;
	background: #fff;
	border: 2px solid #DBDBFF;
	border-radius: 4px;
}
/*囲み枠_黒*/
.mol_textblock_black {
	margin-top: 16px;
	padding: 0 20px 15px;
	background: #fff;
	border: 2px solid #eee;
	border-radius: 4px;
}
/**** ページ内目次のスタイル ****/
.mol_page_contents {
	margin: 24px 0 0;
	border: 1px solid #818999;
	border-radius: 4px;
}
.mol_page_contents h2 {
	margin: 0;
	padding: 10px 12px;
	background: #EBEFF5;
	border: 0;
	border-radius: 4px 4px 0 0;
	font-size: 136%;
}
.mol_page_contents .page_contents_lower {
	padding: 16px;
	border-radius: 0 0 4px 4px;
}
.mol_page_contents ul {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
}
.mol_page_contents ul li {
	position: relative;
	width: 100%;
	margin: 0;
	padding-left: 24px;
}
.mol_page_contents ul li::before {
	display: none;
}
.mol_page_contents ul li::after {
	position: absolute;
	display: block;
	content: '';
	width: 12px;
	height: 9px;
	background: transparent url("img/atom_arrow.svg") no-repeat center / cover;
	top: .45em;
	left: 2px;
}
.mol_page_contents ul li a{
	display: inline-block;
}
.mol_page_contents ul ul {
	margin: 16px 0 0;
}
	@media only screen and (max-width: 750px) {
		.mol_page_contents h2{
			padding-right: 3em;
			border-radius: 4px;
		}
		.mol_page_contents .active h2 {
			border-radius: 4px 4px 0 0;
		}
	}
/**** 記事ページ画像ブロックのスタイル ****/
.mol_imageblock {
	margin-top: 32px;
	padding-left: 16px;
}
.mol_imageblock .window {
	margin-top: 5px;
	line-height: 1.5;
}
div.mol_contents .mol_imageblock_imgfloatleft {
	padding: 3px 3px 3px 3px;
}
div.mol_contents .mol_imageblock_imgfloatright {
	padding: 3px 3px 3px 3px;
}
div.mol_contents .mol_imageblock_imgfloatleft {
	padding: 3px 3px 3px 3px;
}
div.mol_contents .mol_imageblock_imgfloatright {
	padding: 3px 3px 3px 3px;
}
.mol_imageblock_center div {
	margin-left: auto;
	margin-right: auto;
	padding: 3px 3px 3px 3px;
}
.mol_imageblock_right div {
	margin-left: auto;
	padding: 3px 3px 3px 3px;
}
div.mol_contents .mol_imageblock_img_large,
div.mol_contents div.mol_imageblock_img_large{
	max-width: 796px;
	width: 100%;
}
div.mol_imageblock .mol_imageblock_img_medium,
div.mol_contents div.mol_imageblock_img_medium {
	max-width: 360px;
	width: 100%;
}
div.mol_imageblock .mol_imageblock_img_small,
div.mol_contents div.mol_imageblock_img_small {
	max-width: 159px;
	width: 100%;
}
div.mol_contents .mol_imageblock_w_long {
	width: 100%;
}
div.mol_contents .mol_imageblock_w_middle {
	max-width: 400px;
}
div.mol_contents .mol_imageblock_w_short {
	max-width: 300px;
}
div.mol_contents .mol_imageblock_img_al_left {
	text-align: left;
}
div.mol_contents .mol_imageblock_img_al_center .mol_imageblock_img {
	text-align: center;
}
div.mol_contents .mol_imageblock_img_al_right .mol_imageblock_img{
	text-align: right;
}
.mol_imageblock_img {
	margin-top: 0;
}
.mol_imageblock_img a{
	display: inline-block;
}
.mol_imageblock_img a:focus-visible{
	outline: none;
    border: 2px solid #000;
    overflow: hidden;
}
div.mol_imageblock_img_al_left .mol_imageblock_img {
	line-height: 150%;
}
div.mol_imageblock_img_al_right .mol_imageblock_img {
	line-height: 150%;
}
div.mol_imageblock_img_al_center .mol_imageblock_img {
	line-height: 150%;
}
div.mol_imageblock_img_al_floatleft,
div.mol_imageblock_img_al_floatright,
div.mol_imageblock_img_al_right,
div.mol_imageblock_w_long.mol_imageblock_img_al_center{
	min-width: 400px;
}
div.mol_imageblock_img_al_floatleft.mol_imageblock_w_short,
div.mol_imageblock_img_al_floatright.mol_imageblock_w_short,
div.mol_imageblock_img_al_left.mol_imageblock_w_short,
div.mol_imageblock_img_al_right.mol_imageblock_w_short{
	min-width: 300px;
}
div.mol_imageblock_img_al_floatleft .mol_imageblock_img {
	float: left;
	text-align: left;
	line-height: 150%;
	margin-right: 10px;
}
div.mol_imageblock_img_al_floatright .mol_imageblock_img {
	float: right;
	text-align: right;
	line-height: 150%;
	margin-left: 10px;
}
div.mol_contents div.mol_imageblock_inlineblock {
	display: inline-block;
	vertical-align: top;
}
/* フロートの解除 */
div.mol_contents div.mol_imageblock {
	overflow: auto;
}
/* Hides from IE-mac \*/
* html div.mol_contents div.mol_imageblock {
	height: 1%;
	overflow: visible;
}
	@media only screen and (max-width: 750px) {
		div.mol_imageblock_img_al_floatleft .mol_imageblock_img{
			float: none;
		}
		div.mol_imageblock_img_al_floatright .mol_imageblock_img{
			float: none;
		}
	}
/**** 記事ページのテキストのスタイル ****/
.mol_contents p {
	line-height: 1.9;
}
.mol_contents ol {
	list-style-type: decimal;
	padding-top: 8px;
}
.mol_contents ol li {
	margin-left: 32px;
	line-height: 1.9;
}
.mol_contents ul {
	list-style-type: disc;
	padding-top: 8px;
}
.mol_contents ul li {
	margin-left: 32px;
	line-height: 1.9;
}
/**** 記事ページテキストブロックのスタイル ****/
.mol_textblock{
	margin-left: 16px;
}
.mol_textblock p {
	margin-top: 16px;
}
.mol_textblock_aligncenter {
	display:grid;
	justify-items:center;
}
.mol_textblock_alignright {
	display:grid;
	justify-items:right;
}
.mol_textblock ol {
	margin-left: 12px;
}
.mol_textblock .list_float{
	overflow: hidden;
}
.mol_textblock .list_float li{
	float: left;
	padding-right: 1em;
  margin-left: 2em;
}
/**** 記事ページテーブルブロックのスタイル ****/
div.mol_contents .mol_tableblock,
.shelter .mol_tableblock{
	margin-top: 16px;
	text-align: left;
	width: auto;
	overflow-x: auto;
	margin-left: 16px;
}
#body div.mol_contents .mol_tableblock::-webkit-scrollbar,
.shelter .mol_tableblock::-webkit-scrollbar{
	height:8px;
}
#body div.mol_contents .mol_tableblock::-webkit-scrollbar-track,
.shelter .mol_tableblock::-webkit-scrollbar-track{
	border-radius: 8px;
	background: #ccc;
}
#body div.mol_contents .mol_tableblock::-webkit-scrollbar-thumb,
.shelter .mol_tableblock::-webkit-scrollbar-thumb{
	border-radius: 8px;
	background: #666;
}
.mol_tableblock caption {
	padding: 6px 12px 4px;
	background-color: #002966;
	color: #FFF;
}
.mol_tableblock th {
	padding: 6px 8px 2px;
	background: #EBEFF5;
	border: 1px solid #ddd;
	font-size: 85%;
	text-align: left;
}
.mol_tableblock th p{
	margin-top: 0 !important;
}
.mol_tableblock td {
	padding: 2px 8px 2px;
	border: 1px solid #ddd;
	font-size: 85%;
	text-align: left;
}
.mol_tableblock td p{
	margin-top: 0 !important;
}
.mol_tableblock th *,
.mol_tableblock td * {
	line-height: 1.5!important;
}
.mol_tableblock td .window{
	margin: 4px 4px 0;
}
.mol_tableblock .t_left{
	text-align: left;
}
.mol_tableblock .t_right{
	text-align: right;
}
.mol_tableblock .t_center{
	text-align: center;
}
.mol_tableblock .t_center th {
	text-align: center;
}
.mol_tableblock .t_right ol,
.mol_tableblock .t_right ul{
	display: grid;
	justify-content: flex-end;
}
.mol_tableblock .t_center ol,
.mol_tableblock .t_center ul{
	display: grid;
	justify-content: center;
}
.mol_tableblock td ul,
.mol_tableblock td ol{
	padding-top: 0;
}
.mol_tableblock td ul li:nth-of-type(n),
.mol_tableblock td ol li:nth-of-type(n){
	margin-top: 0px;
	margin-bottom: 16px;
}
.mol_tableblock li:first-child {
	margin-top: 0;
}
.mol_tableblock ol li{
	margin-left: max(2.35em, 32px);
}
.mol_tableblock_inlineblock{
	display: inline-block;
	vertical-align: top;
}
.mol_tableblock .t_right ol li,
.mol_tableblock .t_right ul li,
.mol_tableblock .t_center ol li,
.mol_tableblock .t_center ul li{
text-align: left;
}

/* テーブル・列の幅(パーセント) */
.mol_tableblock table.per5,.mol_tableblock col.per5{ width: 5%; }
.mol_tableblock table.per10,.mol_tableblock col.per10{ width: 10%; }
.mol_tableblock table.per15,.mol_tableblock col.per15{ width: 15%; }
.mol_tableblock table.per20,.mol_tableblock col.per20{ width: 20%; }
.mol_tableblock table.per25,.mol_tableblock col.per25{ width: 25%; }
.mol_tableblock table.per30,.mol_tableblock col.per30{ width: 30%; }
.mol_tableblock table.per35,.mol_tableblock col.per35{ width: 35%; }
.mol_tableblock table.per40,.mol_tableblock col.per40{ width: 40%; }
.mol_tableblock table.per45,.mol_tableblock col.per45{ width: 45%; }
.mol_tableblock table.per50,.mol_tableblock col.per50{ width: 50%; }
.mol_tableblock table.per55,.mol_tableblock col.per55{ width: 55%; }
.mol_tableblock table.per60,.mol_tableblock col.per60{ width: 60%; }
.mol_tableblock table.per65,.mol_tableblock col.per65{ width: 65%; }
.mol_tableblock table.per70,.mol_tableblock col.per70{ width: 70%; }
.mol_tableblock table.per75,.mol_tableblock col.per75{ width: 75%; }
.mol_tableblock table.per80,.mol_tableblock col.per80{ width: 80%; }
.mol_tableblock table.per85,.mol_tableblock col.per85{ width: 85%; }
.mol_tableblock table.per90,.mol_tableblock col.per90{ width: 90%; }
.mol_tableblock table.per95,.mol_tableblock col.per95{ width: 95%; }
.mol_tableblock table.per100,.mol_tableblock col.per100{ width: 100%; }

/* テーブル・列の幅(ピクセル) */
.mol_tableblock table.px50,.mol_tableblock col.px50{ width: 50px; }
.mol_tableblock table.px100,.mol_tableblock col.px100{ width: 100px; }
.mol_tableblock table.px150,.mol_tableblock col.px150{ width: 150px; }
.mol_tableblock table.px200,.mol_tableblock col.px200{ width: 200px; }
.mol_tableblock table.px250,.mol_tableblock col.px250{ width: 250px; }
.mol_tableblock table.px300,.mol_tableblock col.px300{ width: 300px; }
.mol_tableblock table.px350,.mol_tableblock col.px350{ width: 350px; }
.mol_tableblock table.px400,.mol_tableblock col.px400{ width: 400px; }
.mol_tableblock table.px450,.mol_tableblock col.px450{ width: 450px; }
.mol_tableblock table.px500,.mol_tableblock col.px500{ width: 500px; }
.mol_tableblock table.px550,.mol_tableblock col.px550{ width: 550px; }
.mol_tableblock table.px600,.mol_tableblock col.px600{ width: 600px; }
.mol_tableblock table.px650,.mol_tableblock col.px650{ width: 650px; }
.mol_tableblock table.px700,.mol_tableblock col.px700{ width: 700px; }
.mol_tableblock table.px750,.mol_tableblock col.px750{ width: 750px; }
.mol_tableblock table.px800,.mol_tableblock col.px800{ width: 800px; }
.mol_tableblock table.px850,.mol_tableblock col.px850{ width: 850px; }
.mol_tableblock table.px900,.mol_tableblock col.px900{ width: 900px; }
.mol_tableblock table.px950,.mol_tableblock col.px950{ width: 950px; }
.mol_tableblock table.px1000,.mol_tableblock col.px1000{ width: 1000px; }

/**** 記事ページ添付ファイルブロックのスタイル ****/
div.mol_contents .mol_attachfileblock {
	margin: 16px 0 0 16px;
	padding: 16px;
	border: 2px solid #DBDBFF;
	border-radius: 4px;
}
.mol_attachfileblock p {
	margin-top: 10px;
	padding-left: 0;
	font-size: 85%;
	text-indent: 0;
}
.mol_attachfileblock ul li {
	border-bottom: 1px dashed #ccc;
	margin-top: 16px;
	margin-left: 0;
	padding: 0 0 16px 30px;
	text-indent: -30px;
	list-style: none;
}
.mol_attachfileblock ul li a{
	display: block;
}
.mol_attachfileblock li::before,
.mol_attachfileblock li::after {
	display: none;
}
.mol_attachfileblock li:last-child{
	border-bottom: 0;
}
.mol_attachfileblock .data {
	font-size: 85%;
	color: #555;
}
.mol_attachfileblock .icon {
	margin-right: 8px;
	position: relative;
	top: 0;
}
p.mol_attachfileblock_title {
	clear: both;
	margin-top: 0;
	padding: 8px 12px;
	background: #EBEFF5;
	border-radius: 4px;
	text-align: left;
	font-size: 100%;
}
.mol_attachfileblock_adobe {
	margin-top: 16px;
	padding: 16px;
	border: 1px dashed #bbb;
	border-radius: 4px;
	font-size: 85%;
}
.mol_attachfileblock_adobe dt {
	float: left;
	width: 160px;
}
.mol_attachfileblock_adobe dd {
	margin-left: 174px;
	display: block;
}
.mol_attachfileblock_adobe a {
	display: inline-block;
}

/**** 関連情報のスタイル ****/
.mol_linkslistblock{
	margin: 16px 0 0 16px;
	padding: 16px;
	border: 2px solid #efefef;
	border-radius: 4px;
}
.mol_linkslistblock_title,
.mol_contents h2.mol_linkslistblock_title {
	clear: both;
	margin-top: 0;
	padding: 8px 12px;
	background: #EBEFF5;
	border-radius: 4px;
	text-align: left;
	font-size: 100%;
}
.mol_contents .mol_linkslistblock ul{
	padding: 0;
}
.mol_contents .mol_linkslistblock ul li{
	margin-left: 16px;
	padding-bottom: 12px;
	border-bottom: 1px dashed #ccc;
}
.mol_contents .mol_linkslistblock ul li:last-child{
	border-bottom: 0;
}
.mol_contents .mol_linkslistblock ul li a{
	display: block;
}
.mol_contents .mol_linkslistblock ul li p{
	margin-top: 8px;
	padding-left: 0;
	font-size: 85%;
	text-indent: 0;
}

/* クリエイティブ・コモンズ */
.mol_ccbytop{
	border: 2px solid #ddd;
/*  border-radius: 8px;*/
	padding: 12px;
	font-size: 100%;
	margin: 16px 0;
}
.mol_ccbytop img{
	margin-right: 10px;
}


/* Hides from IE-mac \*/
* html .mol_attachfileblock_adobe {
	height: 1%;
	overflow: visible;
}
/*IE6*/
* html .mol_attachfileblock_adobe a {
	display: inline;
}
/*IE7*/
*+html .mol_attachfileblock_adobe a {
	display: inline;
}
.mol_attachfileblock_adobe img {
	margin-right: 10px;
	float: left;
}
/**** 記事ページアレンジ画像ブロックのスタイル ****/
div.mol_contents .mol_argimgblock {
	text-align: center;
}
.mol_argimgblock_imgbox3 {
	margin: 10px 1% 0px 1%;
	padding: 4px;
	text-align: left;
	float: left;
	width: 29%;
}
.mol_argimgblock_imgbox2 {
	margin: 10px 1% 0px 1%;
	padding: 4px;
	text-align: left;
	float: left;
	width: 45.3%;
}
.mol_argimgblock_imgbox1 {
	margin: 10px 1% 0px 1%;
	padding: 4px;
	text-align: left;
	float: left;
	width: 94.2%;
}
.mol_argimgblock p {
	padding-top: 4px;
	width: 200px;
}
.mol_argimgblock .mol_argimgblock_imgbox {
	text-align: center;
	margin-top: 0;
	padding-top: 0;
	width: auto;
}
.mol_argimgblock_imgbox img {
	margin: 0px auto 0px auto;
	width: 200px;
	height: auto;
}
/* フロートの解除 */
div.mol_contents .mol_argimgblock {
	overflow: hidden;
}
/* Hides from IE-mac \*/
* html div.mol_contents .mol_argimgblock {
	height: 1%;
	overflow: visible;
}
	@media only screen and (max-width: 750px) {
		.mol_attachfileblock_adobe{
			padding: 12px;
		}
		.mol_attachfileblock_adobe dt{
			float: none;
			width: 100%;
		}
		.mol_attachfileblock_adobe dd{
			margin-left: 0;
			width: 100%;
		}
		div.mol_contents .mol_imageblock_w_middle {
			width: 100%;
		}
	}
	@media only screen and (max-width: 750px) {
		
		div.mol_imageblock_img_al_floatleft,
		div.mol_imageblock_img_al_floatright,
		div.mol_imageblock_img_al_left,
		div.mol_imageblock_img_al_right,
		div.mol_imageblock_w_long.mol_imageblock_img_al_center{
			min-width: 100%;
		}
		div.mol_imageblock_img_al_floatleft.mol_imageblock_w_short,
		div.mol_imageblock_img_al_floatright.mol_imageblock_w_short,
		div.mol_imageblock_img_al_left.mol_imageblock_w_short,
		div.mol_imageblock_img_al_right.mol_imageblock_w_short{
			min-width: 100%;
		}
	}

/* light_box */
#body #colorbox, #body #cboxOverlay, #body #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; -webkit-transform: translate3d(0,0,0);}
#body #cboxWrapper {max-width:none; background:#fff;}
#body #cboxOverlay{position:fixed; width:100%; height:100%;}
#body #cboxMiddleLeft, #body #cboxBottomLeft{clear:left;}
#body #cboxContent{position:relative;}
#body #cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
#body #cboxTitle{margin:0;}
#body #cboxLoadingOverlay, #body #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
#body #cboxPrevious, #body #cboxNext, #body #cboxClose, #body #cboxSlideshow{cursor:pointer;}
.cboxPhoto{float:left; margin:auto; border:0; display:block; -ms-interpolation-mode:bicubic; max-width: 1000px; height:auto !important; width: 100%;}
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
#body #colorbox, #body #cboxContent, #body #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
#body #cboxOverlay{background:#000; opacity: 0.9;}
#body #colorbox{outline:0;}
#body #cboxTopLeft{width:24px;}
#body #cboxTopCenter{height:24px;}
#body #cboxTopRight{width:24px;}
#body #cboxBottomLeft{width:24px;}
#body #cboxBottomCenter{height:43px;}
#body #cboxBottomRight{width:24px; height:43px;}
#body #cboxMiddleLeft{width:24px;}
#body #cboxMiddleRight{width:24px;}
#body #cboxContent{background:#fff; overflow:visible;}
.cboxIframe{background:#fff;}
#body #cboxError{padding:50px; border:1px solid #ccc;}
#body #cboxLoadedContent{margin-bottom:5px;}
#body #cboxTitle{position:absolute; bottom:-25px; left:0; text-align:center; width:100%; font-weight:bold; color:#222;}
#body #cboxCurrent{font-weight: bold; color: #222; padding-right: 80px; float: none !important; background: #fff; margin: 12px 0 0 0;}
#cboxLoadingGraphic{background:url(img/light_loading.gif) no-repeat center center;}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#body #cboxPrevious, #body #cboxNext, #body #cboxSlideshow, #body #cboxClose {border:0; border-radius:0; padding:0; margin:0; overflow:visible;  position:absolute; bottom:-35px; background:url(img/light_controls.png) no-repeat 0px 0px; background-size: 231px 70px; width:70px; height:32px; text-indent:-9999px;}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus-visible (tabbed navigating) */
#body #cboxPrevious:active, #body #cboxNext:active, #body #cboxSlideshow:active, #body #cboxClose:active {outline:0;}

#body #cboxPrevious,#body #cboxNext{top:50%; margin-top:-12px;}
#body #cboxPrevious{left:0; background-position:0 0;}
#body #cboxPrevious:hover{background-position:0 -38px;}
#body #cboxNext{ right:0; background-position:-76px 0;}
#body #cboxNext:hover{background-position:-76px -38px;}
#body #cboxClose{right:0; background-position:-152px 0; width: 79px;}
#body #cboxClose:hover{background-position:-152px -38px;}
@media only screen and (max-width: 768px) {
	#body #cboxTopLeft{width:8px;}
	#body #cboxTopCenter{height:8px;}
	#body #cboxTopRight{width:8px;}
	#body #cboxBottomLeft{width:8px;}
	#body #cboxMiddleLeft{width:8px;}
	#body #cboxMiddleRight{width:8px;}
}
.free_imglist ul{
	display: flex;
	flex-wrap:  wrap;
}
.free_imglist ul li{
	margin: 0 15px 15px 0;
	vertical-align: top;
	width: 225px;
	list-style: none;
}
.free_imglist ul li a{
	padding: 0;
	margin: 0;
}
.free_imglist ul li .img{
	text-align: center;
	background-color: #edeef0;
	border: 1px solid #96807F;
}
.free_imglist ul li img{
	height: 225px;
	max-width: 100%;
	object-fit: contain;
}
@media only screen and (max-width: 510px) {
	.free_imglist ul{
		gap: 0 12px;
	}
	.free_imglist ul li{
		margin: 0 0 12px;
		width: calc(50% - 6px);
	}
	.free_imglist ul li img{
		height: calc(50vw - 18px);
	}
	.free_imglist ul li a p:nth-child(2){
		margin-top: 6px;
	}
}

/**** 姫路市の概要のスタイル ****/
.gaiyou_h1_caption{
	position: relative;
	overflow: hidden;
	padding: 10px 20% 18px 10px;
}
.gaiyou_h1_caption::before,
.gaiyou_h1_caption::after{
	content: "";
	display: block;
	position: absolute;
	background: url(img/iin_bg4.svg) center top/100% no-repeat;
	width: 50vw;
  height: 30vw; 
}
.gaiyou_h1_caption::before{
	top: -17vw;
  right: -10vw;
  transform: rotate(10deg);
}
.gaiyou_h1_caption::after{
	bottom: -16vw;
  left: -10vw;
  transform: rotate(30deg);
}
.gaiyou_h1_caption_img_wrap{
	position: relative;
}
.gaiyou_h1_caption_img{
	margin-right: 25%;
  position: absolute;
  padding: 10px;
}
.gaiyou_h1_caption_text{
	padding: 5% 10px 10px 0;
	width: 100%;
}
.gaiyou_h1_caption_text p{
  display: block;
	background: #fff;
  padding: 24px;
  position: relative;
  z-index: 1;
  margin: 0 0 0 auto;
	bottom: -20px;
	max-width: 320px;
	box-shadow: 8px 8px #e4c3c3;
	right: -25%;
	border: 1px solid #e4c3c3;
}
/* 見出しスタイル */
.mol_contents .gaiyou_h2{
	position: relative;
	background: transparent url(img/iin_gai_h2_b.svg) center bottom no-repeat;
	border: none;
	text-align: center;
	font-size: 180%;
	margin-top: 80px;
}
.mol_contents .gaiyou_h2 span{
	display: block;
	margin-bottom: 8px;
}
.gaiyou_h2::before,
.gaiyou_h2::after{
	content: "";
	display: block;
	position: absolute;
	width: 280px;
  height: 145px;
	background: url(img/iin_gai_h2_bg.svg) 0 0/100% no-repeat;
	bottom: 0;
	z-index: -1;
}
.gaiyou_h2::before{
	left: 0;
}
.gaiyou_h2::after{
	right: 0;
	transform: scale(-1,1);
}
.mol_contents .gaiyou_h3{
	padding: 0 12px 12px;
}
.mol_contents .gaiyou_h3 span{
	width: 60px;
	margin: 0 12px 0 0;
}
	@media only screen and (max-width: 750px){
		.gaiyou_h1_caption{
			padding: 10px 10px 8px 10px;
		}
		.gaiyou_h1_caption_img{
			margin-right: 18px;
			padding: 10px 0 0;
		}
		.gaiyou_h1_caption_text{
			padding: 52vw 10px 10px 0;
		}
		.gaiyou_h1_caption_text p{
			padding: 18px;
			font-size: 85%;
			max-width: none;
			right: -10px;
	    bottom: 0;
		}
		.gaiyou_h2::before,
		.gaiyou_h2::after{
			width: 140px;
			height: 75px;
		}
		.gaiyou_h2::before{
			left: -10px;
		}
		.gaiyou_h2::after{
			right: -10px;
		}
}
/* 気候 */
.gaiyou_kikou_in{
	display: flex;
	gap: 24px;
}
.gaiyou_kikou_in > div{
	width: 100%;
}
.mol_contents .gaiyou_kikou p{
	margin-left: 16px;
}
	@media only screen and (max-width: 750px){
		.gaiyou_kikou_in{
			flex-wrap: wrap;
		}
	}
/* アクセス */
.mol_contents .gaiyou_access p{
	margin-left: 16px;
}
.gaiyou_access01 .img,
.gaiyou_access03 .img{
	max-width: 800px;
	margin: 0 auto;
}
.gaiyou_access01 .img:nth-of-type(1),
.gaiyou_access03 .img{
	margin-top: 32px;
}
.gaiyou_access02 .gaiyou_access02_in{
	display: flex;
	margin: 25px 0 0;
}
.gaiyou_access02_in_text{
	width: calc(100% - 500px);
}
.gaiyou_access02 .img{
	max-width: 500px;
  padding: 20px;
  background: #f1eded;
}
	@media only screen and (max-width: 750px){
		.gaiyou_access02 .gaiyou_access02_in{
			flex-wrap: wrap;
			margin: 0 0 24px;
		}
		.gaiyou_access02_in_text{
			width: 100%;
		}
		.gaiyou_access02 .img{
			margin: 24px 0 0;
		}
	}

/**** 姫路市の魅力のスタイル ****/
/* 見出しスタイル */
.mol_contents .miryoku_h2{
	display: block;
  position: relative;
  overflow: hidden;
  text-align: center;
  padding: 0;
  border: none;
  margin: 100px 0 -24px;
}
.mol_contents .miryoku_h2.miryoku_h2_first{
	margin-top: 32px;
}
.mol_contents .miryoku_h2 img{
	max-width: 1366px;
  width: 100%;
}
.mol_contents .miryoku_h3_1,
.mol_contents .miryoku_h3_2{
	position: relative;
	background: transparent;
	border: none;
	text-align: center;
	font-size: 180%;
	margin-top: 80px;
	padding-bottom: 16px;
}
.mol_contents .miryoku_h3_1{
	background: #f1eded;
	margin-bottom: 32px;
	border-right: 10px solid #fff;
  border-left: 10px solid #fff;
  padding: 24px 10px 32px;
}
.mol_contents .miryoku_h3_1 .miryoku_h3_1_in{
	position: relative;
	z-index: 2;
}
.mol_contents .miryoku_h3_1 span:not(.miryoku_h3_1_in),
.mol_contents .miryoku_h3_2 span{
	display: block;
	margin-bottom: 8px;
}
.miryoku_h3_1::before,
.miryoku_h3_1::after{
	content: "";
	display: block;
	position: absolute;
	width: 240px;
  height: 108px;
	background: url(img/iin_mir_h3_bg1.svg) 0 0/100% no-repeat;
	z-index: 1;
}
.miryoku_h3_1::before{
	left: -10px;
	bottom: -10px;
}
.miryoku_h3_1::after{
	top: -10px;
	right: -10px;
	transform: scale(-1,-1);
}
.miryoku_h3_2::before,
.miryoku_h3_2::after{
	content: "";
	display: block;
	position: absolute;
	width: 280px;
  height: 145px;
	background: url(img/iin_mir_h3_bg2.svg) 0 0/100% no-repeat;
	bottom: 0;
	z-index: -1;
}
.miryoku_h3_2::before{
	left: 0;
}
.miryoku_h3_2::after{
	right: 0;
	transform: scale(-1,1);
}
.mol_contents .miryoku_h4{
	border: none;
	padding: 0px 12px 8px;
  font-size: 140%;
  border-bottom: 2px solid #e4c3c3;
}
.mol_contents .miryoku_h4 span{
	margin: 0 12px 0 0;
}
/*.mol_contents .miryoku_h5{
	padding: 4px 10px 4px;
  font-size: 120%;
  border: 2px solid #e6efd6;
  margin: 24px 0 0 16px;
}*/
.mol_contents .miryoku_h5{
	display: inline-block;
	padding: 2px 8px 2px;
  font-size: 100%;
  background: #f1eded;
  margin: 24px 0 0 16px;
}
	@media only screen and (max-width: 750px){
		.mol_contents .miryoku_h2{
			width: calc(100% + 24px);
			left: -12px;
		}
		.mol_contents .miryoku_h2 img{
			width: 1000px;
			left: calc(50% - 500px);
			position: relative;
		}
		.mol_contents .miryoku_h3_1,
		.mol_contents .miryoku_h3_2{
			margin-top: 60px;
		}
		.mol_contents .miryoku_h3_1,
		.mol_contents .miryoku_h3_2{
			padding-left: 0;
			margin-left: 0;
		}
		.miryoku_h3_1::before,
		.miryoku_h3_1::after{

		}
		.miryoku_h3_2::before,
		.miryoku_h3_2::after{
			width: 140px;
			height: 75px;
		}
		.miryoku_h3_1::before{

		}
		.miryoku_h3_2::before{
			left: -12px;
		}
		.miryoku_h3_1::after{

		}
		.miryoku_h3_2::after{
			right: -12px;
		}
		.mol_contents .miryoku_h4 span{
			display: block;
			margin: 0 0 8px;
		}
	}
	@media only screen and (max-width: 590px){
		.mol_contents .miryoku_h2 img{
			width: 240%;
			left: -70%;
		}
	}

/**** コンテンツページボタンのスタイル ****/
.kiji_more{
	margin: 16px 0 0 16px;
	padding-bottom: 12px;
}
.kiji_more a{
	position: relative;
	display: inline-block;
	width: auto;
	max-width: 300px;
	padding: 12px;
	background: #EBEFF5;
	border: 1px solid #818999;
	border-radius: 4px;
	text-decoration: none;
	text-align: center;
	transition: 0.3s;
	font-size: 85%;
}
.kiji_more a:hover{
	background: #fff;
}
.kiji_more.kiji_more_center{
	text-align: center;
}
.kiji_more.kiji_more_center a{
	font-size: 100%;
  padding: 12px 24px;
  max-width: none;
  margin-inline: auto;
  max-inline-size: max-content;
  text-align: left;
}