@charset "utf-8";

/********** 1 共通 **********/

/* float clear */
.cf:before,
.cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom: 1;
}

/* スマートフォン用 */
#sp_page_index_link_wrap {
	display: none;
}
#spm_wrap {
	display: none;
}
.sp_button {
	display: none;
}

/* レスポンシブアコーディオン用 */
.acc_title + input {
	display: none;
}
.acc_icon {
	display: none;
}

/* 隠す */
.hide {
	display: block;
	width: 0px;
	height: 0px;
	margin: 0px;
	padding: 0px;
	clip: rect(0,0,0,0);
	overflow: hidden;
}
hr.hide {
	border: none;
}

/* 承認枠 */
#approval_table {
	font-size: 1.4rem;
}

/********** 2 基本設定 **********/

/* フォント */
body {
	font-family: arial, sans-serif;
/*	font-family: Meiryo, メイリオ, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif; */
}
em {
	font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}

/* リンク */
a:link {
	color: #1a0dab;
	text-decoration: underline;
}
a:visited {
	color: #660099;
	text-decoration: underline;
}
a:active {
	color: #cc0000;
	text-decoration: underline;
}
a:hover {
	color: #cc0000;
	text-decoration: underline;
}

a img {
	border: none;
}

input[type="button"],
input[type="submit"],
button {
	cursor: pointer;
	font-family: arial,sans-serif;
	font-size: 1.6rem;
}

input[type="text"],
textarea {
	font-family: arial,sans-serif;
	font-size: 1.6rem;
}

.question form p:has(> input[type="submit"]),
.question form p:has(> input[type="button"]) {
	text-align:center;
}

.question  div:has(> input[type="submit"]),
.question  div:has(> input[type="button"]) {
	text-align:center!important;
}


/* 外部リンク */
.external_link_text {
	display: none;
}

/* 基本タグ */
p {
	margin: 1em 0px;
	word-break: normal;
	word-wrap: break-word;
}

hr {
	clear: both;
}

pre {
	white-space: break-spaces!important;
}

body:not(.top_index) #main {
	margin:5% 0;
}

body.site #main{
	margin:0 auto;
}

#main_body div{
	text-align:left;
}

.life_list3 #main_body, .life_list2 #main_body {
	padding:0!important;
}

/*背景設定*/
body:not(.top_index) {
	background-image:url(/img/top-area-bg.png);
	background-repeat:no-repeat;
	background-size:cover;
}

body:not(.top_index) #container {
	background-color:rgba(255,255,255,0.2);
}

.soshiki #main_body, .sitemap #main_body, .life #main_body, .mail_form #main_body, .book_list #main_body, .question #main_body, .calendar #main_body {
	background:#fff;
	padding:20px;
	border-radius:0.4em;
}  

.life_list3 #main_body, .life_list2 #main_body{
	background:none;	
}

/*.life_list1 #main_body {
	margin: 30px 0px;
	background-image:url(/img/about-bg.jpg)!important;
	border-radius:1em;
	padding-bottom:1.5em;
	padding:1em 0 1.8em;
}*/

/* テーブル */
#main_body table {
	border-color: #127b55;
	border-collapse: collapse;
	border-style: solid;
	border-width: 2px;
	margin: 0px 0px 10px;
	width: auto;
	max-width: 100%;
}
#main_body th {
	background: #ecf6e6;
	border-color: #a1c5b8;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5em;
}
#main_body td {
	border-color: #a1c5b8;
	border-collapse: collapse;
	border-style: solid;
	border-width: 1px;
	padding: 0.5em;
}
/* テーブル（borderを「0」に設定した場合は罫線を表示させない） */
/*
#main_body table[border="0"],
#main_body table[border="0"] th,
#main_body table[border="0"] td {
	border-width: 0px;
}
*/

/* 見出し */
#main_header {
	margin-bottom: 20px;
}
#main_header h1 {
	margin: 0px;
	padding: 0.8em 20px;
	border: none;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.4;
	background-color:#425fb4!important;
	color:#fff;
	border-radius:0.2em;
	background-image:url(/img/h1_wave.png);
	background-position:bottom -92px left 0;
	background-repeat: repeat-x;
	text-align:center;
}

#main_body h2 {
  position:relative;
  clear: both;
  margin: 20px 0px;
  padding: 0.8em 20px 0.8em 50px;
  border: none;
  font-size: 2.2rem;
  font-weight: bold;
  line-height: 1.4;
  text-align:left;
  background: #fff;
}

#main_body h2:before {
	display:inline-block;
	content:'';
	position:absolute;
	top:0.5em;
	left:0;
	background-image:url(/img/h2-fish.png);
	width:42px;
	height:33px;
	background-repeat:no-repeat;
	background-size:contain;
}

#main_body h2:after {
	    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background-image: repeating-linear-gradient(135deg, #425fb4 0px, #425fb4 2px, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%);
    background-size: 10px 10px;
}

#main_body h3 {
	position:relative;
	text-align:left;
	clear: both;
	margin: 20px 0px;
	padding: 0.6em 20px 0.6em 2.5em;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
	border-bottom:solid 3px #ffd40b;
	background-color:#fafaee;
}

#main_body h3:before {
	position:absolute;
	top:0.8em;
	left:1em;
	content:'';
	width:18px;
	height:18px;
	background:#ffd40b;
	border-radius:0.2em;
}

#main_body h4 {
	position:relative;
	clear: both;
	margin: 20px 0px;
	padding: 0.6em 20px 0.6em 30px;
	background: transparent;
	border: none;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1.4;
	text-align:start;
	border-bottom: 2px dotted #127b55;
}

#main_body h4:before {
	content:'';
	display:inline-block;
	width:6px;
	height:50%;
	position:absolute;
	top:0.5em;
	left:0.5em;
	background-color:#127b55;
}

#main_body h5 {
	clear: both;
	margin: 20px 0px;
	padding: 0.5em 20px;
	background: transparent;
	border: none;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	background:#fdfde9;
}

#main_body h6 {
	clear: both;
	margin: 20px 0px;
	padding: 0.5em 20px;
	background: transparent;
	border: none;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	border-bottom:solid 2px #0049a4;
}

#main_body ul li::marker {
	color: #127ea6;
}

#main_body ol li::marker {
	color: #127ea6;
}

/********** 見出し（記事） **********/
.detail_free h2{
	position:relative;
	background: #fff;
}

.detail_free h2:before {
	display:inline-block;
	content:'';
	position:absolute;
	top:0.5em;
	left:0;
	background-image:url(/img/h2-fish.png);
	width:42px;
	height:34px;
	background-repeat:no-repeat;
}

.detail_free h2:after {
	    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 5px;
    background-image: repeating-linear-gradient(135deg, #425fb4 0px, #425fb4 2px, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 50%);
    background-size: 10px 10px;
}

.detail_free h3 {
	position:relative;
	border-bottom:solid 3px #ffd40b;
	background-color:#fafaee;
}


.detail_free h3:before {
	position:absolute;
	top:0.8em;
	left:1em;
	content:'';
	width:18px;
	height:18px;
	background:#ffd40b;
	border-radius:0.2em;
}

.detail_free h4 {
	border-bottom: 2px dotted #127b55;
}



/********** 3 ヘッダ **********/

/* ヘッダ */
#header {
	position:relative;
	font-size: 1.5rem;
	z-index:4;
}

#header2 {
        display: flex;
	justify-content: flex-end;
	width: 100%;
	margin: 0px auto;
	position: relative;
}

@media screen and (max-width:1100px) {
	body:not(.top_index) #header2 {
		height:9em;
	}
}

#he_left {
   position: absolute;
   top: 0;
   left: 0;
   width:20%;
   max-width:349px;
   max-height:349px;
}


#he_left #logo {
	margin: 0px;
}
#he_left #logo a {
	display: block;
}
#he_left #logo img {
	width: 100%;
	height: auto;
	min-width:130px;
}

#he_right {
	display:inline-block;
	position:absolute;
	top:2em;
	right:0;
	text-align: right;
	background-color:#fff;
	border-radius:3em 0 0 3em;
	padding:1em 3em 0.5em 2em;
}

#he_right_inner {
	display:flex;
	justify-content:flex-end;
	gap:1em;
	align-items: center;	
}

body:not(.top_index) #he_right_inner {
	flex-flow:column;
	justify-content:flex-end;
	align-items:end;
}

body:not(.top_index) .nav-list {
	margin-top:0.5em!important;
}


.flex-btn {
	display:flex;
	gap:1em;
	align-items:center;
}

@media screen and (max-width:1100px) {
	.flex-btn {
		flex-flow:column;
		align-items:end;
	}
}

@media screen and (max-width:768px) {
	.flex-btn {
		align-items:start;
		margin-bottom:7%!important;
	}

	.sub-top-btn {
		padding-left:0;
	}
}

ul#header_link {
        display:flex;
	margin: 0px;
	padding: 0px;
	list-style: none;
	align-items:center;
	color:#000;

}
ul#header_link > li {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 0px 0px 20px;
	text-align: left;
}
ul#header_link > li > a {
	display: block;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 2rem;
	padding: 5px 0px 5px 25px;
	color:#000;
}

ul#header_link > li > a:hover {
	color:#cc0000;
}

ul#header_link > li dl dd a {
	text-decoration:none;
}

ul#header_link > li#hl_main > a {
	background-image: url(/img/yellow-arrow-s.png);
}
ul#header_link > li#hl_guide > a {
	position:relative;
	background-image: url(/img/yellow-arrow-s.png);
}
ul#header_link > li#hl_sitemap > a {
	position:relative;
	background-image: url(/img/yellow-arrow-s.png);
}
ul#header_link > li#hl_lang > a {
	background-image:url(/img/yellow-arrow-s.png);
}
ul#header_link > li#hl_func > a {
	background-image: url(/img/yellow-arrow-s.png);
}


/* 子メニュー - .subMenu */

div.langMenu .subMenu {
	position: fixed;
	/* width: 100%; */
	background-color: #fff;
	opacity: 0;
	visibility: hidden;
	transition: .5s;
	list-style: none;
	padding: 0;
	display: flex;
	border: solid 2px#425fb4;
	z-index: 999;
	flex-flow: column;
}

div.langMenu ul {
	list-style-type:none;
	padding-left:1.8em;
}

div.langMenu .subMenu li {
	flex: 0 0 auto;
}

div.langMenu .subMenu a {
	color: #222;
	padding: 10px 15px;
	width: 100%;
	display: block;
	box-sizing: border-box;
}

div.langMenu .subMenu a:hover {
	color: #425fb4;
}

li.langChildren:nth-child(4)>ul:nth-child(2), li.langChildren:nth-child(5)>ul:nth-child(2) {
	right: 0;
}

.langChildren a {
	color:#000;
}

.langChildren a:hover {
	color:#cc0000;
}



#hl_lang {
	display: block;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: left center;
	line-height: 2rem;
	padding: 5px 0px 5px 0;
	background-image: url(/img/yellow-arrow-s.png);
}

/* ホバー＆フォーカスで子メニュー表示 */

div.langMenu .langChildren:hover ul, div.langMenu .langChildren ul.focused {
	opacity: 1;
	visibility: visible;
}

div.langMenu li.langChildren li a:hover, div.langMenu li.langChildren li a:focus {
	background-color: #425fb4;
	color: #FFF;
}


/*下層ヘッダー*/

body:not(.top_index) #header {
	background-image:url(/img/header-bg-sub2.png);
	background-position: center bottom -9vw;
	background-size:100%;
	background-repeat:no-repeat;
	flex-flow:column;
	justify-content:flex-end;
	align-items:end;

}

body:not(.top_index) #header2 {
	    background-image:url(/img/header-bg-sub.png);
	    background-position: 0 0;
	    background-repeat:no-repeat;
	    background-size:100% 18em;
}

@media screen and (max-width:1100px) {
	body:not(.top_index) #header {
			height:20vw;
	}

	body:not(.top_index) #header2 {
	    background-position: 0 -5vw;
		background-size:contain;
		height:20vw;
	}
}

body:not(.top_index) #he_right {
	position:relative;
	top:80%;
	left:0;
	background:none;
	/*height:20vh;*/
	margin-bottom:18vh;
	z-index: 1;
}

body:not(.top_index) #he_left{
	z-index:2;
}

#he_right.sp {
	position:fixed!important;
	top:0!important;
	background:#fff!important;
	height:100vh!important;
}

#he_right.sp ul#header_link {
	margin-top:5em;
        justify-content:flex-end;
}

@media screen and (max-width:1100px) {
	body:not(.top_index) #he_left{
		z-index:inherit;
	}

	body:not(.top_index) #logo {
		z-index:1;
	}
	
	body:not(.top_index) #header_link {
		position:relative;
		z-index:2;
	}
}


@media screen and (max-width:768px) {
	#he_right.sp ul#header_link {
		flex-wrap:wrap;
		justify-content:flex-start;
		margin-top:7em;
	}
}

@media screen and (min-width:1100px) {
body:not(.top_index) .nav-item img {
	display:none!important;
}

body:not(.top_index) .nav-list {
	margin-top:1em!important;
}

body:not(.top_index) .nav-list li a {
	font-weight:bold;
}
}


@media screen and (max-width:1280px) {
	#he_right {
		top:3.5em;
		padding:1% 2%;
		z-index:3;
	}
}

@media screen and (max-width:1200px) {
	#he_right {
		top:4.1em;
	}
	
	#he_right_inner {
		font-size:1.4rem;
	}

	.nav-item_sub {
		left:53%!important;
	}


	.nav-list {
		gap:2.3em!important;
	}
}

@media screen and (max-width:1100px) {
	#he_right_inner {
		display:none;
		margin-right:3em;
	}
}

@media screen and (max-width:768px) {
	#he_right_inner {
		display:none;
		margin-left:2em;
		margin-right:2em;
	}
}


/*下層トップボタン*/
.sub-top-btn {
	list-style-type:none;
	paddingng-left:0;
	display:flex;
	justify-content:flex-end;
	gap:1em;
}

.sub-top-btn {
	list-style-type:none;
	paddingng-left:0;
	display:flex;
	justify-content:flex-end;
	gap:1em;
}

.sub-top-btn li a {
	position:relative;
	transition:all .3s;
}

.sub-top-btn li a:after {
	content:'';
	display:inline-block;
	position:absolute;
	top:50%!important;
	transform:translatey(-50%);
	right:1em;
	width:8px;
	height:12px;
	background-repeat:no-repeat;
	background-size:contain;	
}

.sub-top-btn li:first-child a {
	color:#368b4d;
	font-weight:bold;
	text-decoration:none;
	background-color:#fff;
	border:solid 2px #368b4d;
	border-radius:0.2em;
	padding:0.8em 2.5em 0.8em 1em;
}

.sub-top-btn li:first-child a:hover {
	background-color:#d1efd9;
}

.sub-top-btn li:first-child a:after {
		background-image:url(/img/btn1-arrow.png);
}


.sub-top-btn li:nth-child(2) a {
	color:#005bac;
	font-weight:bold;
	text-decoration:none;
	background-color:#fff;
	border:solid 2px #005bac;
	border-radius:0.2em;
	padding:0.8em 2.5em 0.8em 1em;
}

.sub-top-btn li:nth-child(2) a:hover {
	background-color:#d3dbf2;
}


.sub-top-btn li:nth-child(2) a:after {
		background-image:url(/img/btn2-arrow.png);
}
	
.sub-top-btn li:nth-child(3) a {
	color:#624f01;
	font-weight:bold;
	text-decoration:none;
	background-color:#fff;
	border:solid 2px #e9b605;
	border-radius:0.2em;
	padding:0.8em 2.5em 0.8em 1em;
}

.sub-top-btn li:nth-child(3) a:hover {
	background-color:#fef8e1;
}

.sub-top-btn li:nth-child(3) a:after {
		background-image:url(/img/btn3-arrow.png);
}
/*下層ヘッダーここまで*/

/* アクセシビリティ機能 */

/*背景色*/
#haikei_color dl {
     display:flex;
     gap:0.5em;
}

#haikei_color dd {
     margin-left:0;
}

#moji_size dl {
     display:flex;
     gap:0.5em;
}

#moji_size dd {
     margin-left:0;
     border:solid 1px #001e6b;
     padding:0em 0.5em;
     background:#fff;
}

#moji_size dd a {
	color:#000;
	text-decoration:none;
}

#moji_size dd a:hover {
	color:#cc0000;
}

#hl_func {
	position: relative;
}

ul#acc_func_box {
	display: none;
	position: absolute;
	top: 100%;
	right: 0px;
	z-index: 100;
	background: #ffffff;
	-webkit-box-shadow: 0px 3px 10px -2px rgba(0, 0, 0, 0.5);
	box-shadow: 0px 3px 10px -2px rgba(0, 0, 0, 0.5);
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	min-width: 100%;
	margin: 0px;
	padding: 15px 10px;
	list-style: none;
	text-align: center;
}
ul#acc_func_box.func_menu_open {
	display: block;
}
ul#acc_func_box li {
	display: block;
	margin-bottom: 15px;
}

#acc_func_box dl {
	margin: 0px;
	padding: 0px;
	font-size: 1.4rem;
	line-height: 1.8rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
#acc_func_box dl dt {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 5px 0px 0px;
	padding: 6px 0px;
	font-weight: bold;
	width: 5em;
}
#acc_func_box dl dd {
	display: inline-block;
	vertical-align: middle;
	margin: 0px 0px 0px 2px;
	padding: 0px;
}
#acc_func_box dl dd a {
	display: block;
	background: #ffffff;
	border: 1px solid #cccccc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	color: #000000;
	text-decoration: none;
	padding: 5px 7px;
}
#acc_func_box dl dd a#moji_large {
	font-size: 1.6rem;
	font-weight: bold;
}
#haikei_white {
	background: #ffffff !important;
	color: #000000 !important;
	border:solid 1px #000;
	border-radius:1em;
	padding:0.4em;
}
#haikei_black {
	background: #000000 !important;
	color: #ffffff !important;
	border-radius:1em;
	padding:0.4em;;
}
#haikei_blue {
	background: #0000ff !important;
	color: #ffff00 !important;
	border-radius:1em;
	padding:0.4em;
}
#acc_func_box dl dd a:hover {
	border-color: #cc0000;
}

#func_menu_close {
	border: none;
	background: #e6e6e6;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	font-size: 1.4rem;
	margin: 0px;
	padding: 0px 20px;
	height: 3rem;
}
#func_menu_close:hover {
	background: #f5f5f5;
}

/* 検索 */
#top_search_keyword {
	position:relative;
}

#cse-search-box {
	position:relative;
	display: inline-block;
	vertical-align: middle;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border: 2px solid #001e6b;
	border-radius:3em;
}

#tmp_query {
	display: inline-block;
	vertical-align: middle;
	border: none !important;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
	height: 38px;
	font-size: 1.6rem;
	border: 2px solid #001e6b;
	border-radius:3em;
}

#tmp_query imput {
	position:relative;
}

#submit {
	position:absolute;
	top:0.6em;
	right:0.7em;
	display: inline-block;
	vertical-align: middle;
	border: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background:inherit;
	background-image:url(/img/search.png);
	background-repeat:no-repeat;
	width: 22px;
	height: 22px;
	margin: 0px;
	padding: 0px;
	font-size: 1.6rem;
}
/*#submit:hover {
	background: #f5f5f5;
}*/

#cse_filetype {
	display: inline-block;
	vertical-align: middle;
}
#cse_filetype fieldset {
	border: none;
	margin: 0px;
	padding: 0px 0px 0px 10px;
}
#cse_filetype fieldset legend {
	margin: 0px;
	padding: 0px;
	display: none;
}
#cse_filetype fieldset span {
	font-size: 1.4rem;
	display: inline-block;
}
#cse_filetype fieldset span input {
	margin: 4px;
	vertical-align: middle;
}

@media screen and (max-width:1100px) {
	#top_search_keyword { 
		text-align:end!important;
		margin-right:3em!important;
		width:100%;
		margin:0!important;
}

	#cse-search-box {
		width:35%;
	}
}


@media screen and (max-width:768px) {
	#top_search_keyword {
		text-align:start!important;
	}
	
	#cse-search-box {
		width:80%;
	}
}

/* グローバルナビ */
#top_search {
	background: #e6e6e6;
}

ul#gnav {
	margin: 0px auto;
	padding: 10px 0px;
	list-style: none;
	width: 100%;
	max-width: 1100px;
	display: table;
	table-layout: fixed;
}
ul#gnav li {
	display: table-cell;
	vertical-align: middle;
}
ul#gnav li a {
	display: block;
	background: #e6e6e6;
	color: #000000;
	font-size: 2.2rem;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	line-height: 3rem;
	padding: 15px 10px;
}
ul#gnav li a:hover {
	background: #f5f5f5;
}

/* グローバルナビ（動的メニュー） ※使用する場合は要調整 */
#context_category02,
#context_category01 {
	display: none;
}

/********** 4 パンくず **********/

/* パンくず */
#pankuzu_wrap {
	background: #fff;
	padding: 20px 0px 15px;
	text-align:left;
}
#pankuzu_wrap > div {
	width: 98%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.pankuzu {
	clear: both;
	margin-bottom: 5px;
	padding: 3px 0px 3px 8.5rem;
	position: relative;
}
.pankuzu .icon_current {
	display: none;
}
.pankuzu:first-child .icon_current {
	display: block;
	width: 7rem;
	height: auto;
	background: #368b4d;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	color: #ffffff;
	font-size: 1.4rem;
	line-height: 2rem;
	padding: 5px 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: absolute;
	top: 0px;
	left: 0px;
	text-align: center;
}

/********** 5 フッタ **********/

/* フッタ */
#footer {
	font-size: 1.5rem;
	position:relative;
}



#back_or_pagetop {
	width: 98%;
	max-width: 1100px;
	margin: 0px auto;
	text-align: right;
}
#back_or_pagetop > div {
	display: none;
	vertical-align: middle;
	margin-left: 5px;
}
#back_or_pagetop > div a {
	display: block;
	text-align: center;
	color: #000000;
	line-height: 2rem;
	padding: 10px 20px;
	width: 10em;
}

#footer_navi {
	background: #e6e6e6;
}
#footer_navi ul {
	width: 98%;
	max-width: 1100px;
	margin: 0px auto;
	padding: 20px 0px;
	list-style: none;
}
#footer_navi ul li {
	display: inline-block;
	vertical-align: middle;
	margin: 5px 10px 5px 0px;
	padding-right: 15px;
	border-right: 1px solid #333333;
	line-height: 2rem;
}

#footer_navi ul li a {
	color:#000;
}

#footer_navi ul li a:hover {
	color:#cc0000;
}
#footer_navi ul li:last-child {
	margin-right: 0px;
	padding-right: 0px;
	border-right: none;
}

#author_info {
	background: #e6e6e6;
}
#author_box {
	width: 98%;
	max-width: 1100px;
	margin: 0px auto;
	padding: 20px 0px;
	color:#000;
}
#author_box p {
	margin: 0px;
	line-height: 1.8;
}
#author_box p.f_author {
	font-size: 3rem;
	font-weight: bold;
}
#author_box p span {
	display: inline-block;
	margin-left: 0.5em;
}

#copyright p {
	margin: 0px;
	padding: 20px 0px;
	text-align: center;
	font-size: 1.4rem;
	line-height: 2rem;
}

/* おすすめ情報（回遊ボタン） */
#osusume_banner {
	position: fixed;
	left: 10px;
	bottom: 10px;
	z-index: 90;
}
#osusume_banner_box {
	width: auto;
	display: table;
}

#osusume_banner_ttl {
	display: table-cell;
	vertical-align: bottom;
	width: 100px;
}
#osusume_banner_ttl a {
	display: block;
	color: #000000;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 2rem;
	text-align: center;
	text-decoration: none;
	background: #cccccc;
	padding: 30px 0px;
}

#osusume_banner_list {
	display: none;
	vertical-align: bottom;
	background: #cccccc;
	padding: 10px;
	max-width: calc(100vw - 140px);
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-border-radius: 0px 10px 10px 0px;
	-moz-border-radius: 0px 10px 10px 0px;
	border-radius: 0px 10px 10px 0px;
}
#osusume_banner.open #osusume_banner_list {
	display: table-cell;
}

#osusume_banner_list_box {
	background: #ffffff;
	-webkit-border-radius: 0px 5px 5px 0px;
	-moz-border-radius: 0px 5px 5px 0px;
	border-radius: 0px 5px 5px 0px;
	padding: 5px;
	position: relative;
}
#osusume_banner_list_box ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
#osusume_banner_list_box ul li {
	display: inline-block;
	vertical-align: top;
	width: 200px;
	height: 60px;
	margin: 5px;
}
#osusume_banner_list_box ul li img {
	width: 100%;
	height: auto;
}

#osusume_banner_close {
	display: block;
	width: 22px;
	height: 22px;
	margin: 0px;
	padding: 0px;
	border: none;
	background: url(/img/common/icon_keep_clear.png) no-repeat center center #333333;
	background-size: 10px 10px;
	color: #ffffff;
	line-height: 1;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
	cursor: pointer;
	text-align: left;
	text-indent: -9999em;
	overflow: hidden;
	position: absolute;
	top: -10px;
	right: -10px;
}

/********** 6 バナー **********/

/* バナー広告 */
ul.banner_list {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
ul.banner_list li {
	width: 20%;
	height: auto;
	overflow: hidden;
	margin: 5px 10px;
}

ul.banner_list li a {
	display:block;
}

ul.banner_list li img {
	width: 100%;
	height: auto;
	transition: all .3s;
}

ul.banner_list li a img:hover {
	filter: brightness(75%);
}

.banner_text {
	display: block;
	padding: 10px;
	font-size: 1.4rem;
	line-height: 1.3;
	text-align: left;
}

@media screen and (max-width:1024px) {
	ul.banner_list li {
		min-width:200px;
	}
}

/* バナー広告（縦並び） */
ul.banner_list.banner_list_side {
	display: block;
	max-width: 300px;
	margin: 0px auto 10px;
}
ul.banner_list.banner_list_side li {
	display: block;
	width: 100%;
	height: auto;
	margin: 0px auto 10px;
}

/********** 7 リスト **********/

/* リスト */
.info_list ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.info_list ul li {
	margin: 0px;
	padding: 8px 0px 8px 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}


/* リスト（日付） */
.info_list.info_list_date ul li {
	width: 100%;
	display: flex;
	gap:0.5em;
}
/*.info_list.info_list_date ul li > span {
	display: table-cell;
	vertical-align: top;
}*/
.info_list.info_list_date ul li > span.article_date {
	width: 8em;
}

.article_section:before {
	content: '（';
}
.article_section:after {
	content: '）';
}
.article_section:empty:before,
.article_section:empty:after {
	display: none;
}

.article_date_thum.article_date {
	margin-right:1em;
}

/* リスト（一覧リンク） */
div.link_ichiran {
	margin-top: 20px;
	text-align: right;
}

/* リスト（横並び） */
.navigation ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.navigation ul li,
.navigation > div {
	display: inline-block;
	vertical-align: middle;
	margin: 5px 10px 5px 5px;
	padding-right: 15px;
	border-right: 1px solid #666666;
	line-height: 1.4;
}
.navigation ul li:last-child,
.navigation > div:last-child {
	border-right: none;
	padding-right: 0px;
}

/* リスト（新着情報）*/
.section_information {
	margin: 30px 0px;
	background-image:url(/img/about-bg.jpg);
	border-radius:1em;
	padding-bottom:1.5em;
	padding:1em 0 1.8em;
}

.section_information_list_wrap {
	background-color:#fff;
	width:96%;
	margin:1em auto 0;
	border-radius:0.6em;
}

.section_information_ttl.acc_title {
	position:relative;
	text-align:left;
	padding-left:4.5em!important;
}

.section_information h2,
#main_body .section_information h2 {
	margin: 0px;
	padding: 20px 20px 0px;
	background: transparent;
	border: none;
	font-size: 2.2rem;
	font-weight: bold;
}

#main_body .section_information h2:before{
	content:'';
	display:inline-block;
	position:absolute;
	top:55%;
	left:1em!important;
	transform:translatey(-50%);
	left:0;
	background-image:url(/img/kamome.png);
	background-repeat:no-repeat;
	background-size:contain;
	width:59px;
	height:42px;
}

#main_body .section_information h2:after{
	display:none;
}


.section_information_ttl.acc_title:before {
	content:'';
	display:inline-block;
	position:absolute;
	top:55%;
	left:1em!important;
	transform:translatey(-50%);
	left:0;
	background-image:url(/img/kamome.png);
	background-repeat:no-repeat;
	background-size:contain;
	width:59px;
	height:42px;
}

.section_information p.no_data {
	margin: 0px;
	padding: 20px;
}

.section_information_list ul {
	margin: 0px;
	padding: 10px 20px;
	list-style: none;
}
.section_information_list ul li {
	width: 100%;
	display: table;
	margin: 0px;
	padding: 8px 0px 8px 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

.section_information_list ul li > span {
	display: table-cell;
	vertical-align: top;
}
.section_information_list ul li > span.article_date {
	width: 8em;
}

.section_information_list div.link_box {
	padding: 0px 20px 20px;
	text-align: center!important;
}
.section_information_list div.link_box span {
	display: inline-block;
	vertical-align: middle;
	margin: 5px 0px 5px 10px;
	padding-left: 15px;
	border-left: 1px solid #666666;
	line-height: 1.4;
}
.section_information_list div.link_box span:first-child {
	position:relative;
	border-left: none;
	margin-left: 0px;
	padding-left: 25px;
}

.section_information_list div.link_box span:first-child:before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	background-image:url(/img/yellow-arrow.png);
	background-repeat:no-repeat;
	background-size:cover;
	width:18px;
	height:18px;
}

.section_information_list div.link_box span:nth-child(2) {
	position:relative;
	padding-left:34px;
}

.section_information_list div.link_box span:nth-child(2):before {
	content:'';
	position:absolute;
	left:10px;
	top:0;
	background-image:url(/img/rss-icon.png);
	background-repeat:no-repeat;
	background-size:cover;
	width:18px;
	height:18px;
}

/* リスト（新着情報サムネイル） */
.section_information_thum {
	width: 100%;
	display: table;
	margin: 0px;
	padding: 15px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.section_information_thum > div {
	display: table-cell;
	vertical-align: top;
}
.section_information_thum > div.lettering2 {
	width: 200px;
}
.section_information_thum > div.lettering2 img {
	width: 100%;
	height: auto;
}
.section_information_thum > div.lettering3 {
	padding-left: 20px;
}
.section_information_thum > div.lettering3 span {
	display: block;
}

/*お知らせ*/
.life_list1 #main {
	width:100%!important;
}

/*.life_list1 #main_body {
	margin: 30px 0px;
	background-image:url(/img/about-bg.jpg)!important;
	border-radius:1em;
	padding-bottom:1.5em;
	padding:1em 0 1.8em;
}

.life_list1 .info_list {
	background-color:#fff;
	width:94%;
	margin:1em auto 0;
	border-radius:0.6em;
	padding:1em 0.5em;
}

.life_list1 h2 {
	margin: 0px;
	padding: 0 0 0 4.5em!important;
	background: none!important;
	border: none;
	font-size: 2.2rem;
	font-weight: bold;
}

.life_list1 h2:before {
	content:'';
	display:inline-block;
	position:absolute;
	top:55%;
	left:1em!important;
	transform:translatey(-50%);
	left:0;
	background-image:url(/img/kamome.png)!important;
	background-repeat:no-repeat;
	background-size:contain;
	width:59px!important;
	height:42px!important;
}

.life_list1 h2:after {
	display:none;
}*/

/********** 8 サイド **********/

/* サイドバー */
#sidebar1 > div:last-child,
#sidebar2 > div:last-child {
	margin-bottom: 0 !important;
}
#sidebar1 img,
#sidebar2 img {
	max-width: 100% !important;
	height: auto !important;
}

/* サイドメニュー */
.side_box {
	background: #f5f5f5;
	margin: 0px 0px 10px;
	padding: 0px;
}
.side_box_ttl h2 {
	background: #faf7ca;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 15px;
	text-align:center;
	margin: 0;
}

.side_box_list {
	background:#fff;
}

.side_box_list ul {
	margin: 0px;
	padding: 10px 15px;
	list-style: none;
	text-align:left;
}
.side_box_list ul li {
	margin: 0px;
	padding: 3px 0px 3px 0px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}

.side_box_list ul li ul {
	padding: 0px;
}

.side_box_txt {
	padding: 15px;
	background:#fff;
}
.side_box_txt p {
	margin: 0px 0px 10px;
}
.side_box_txt p:last-child {
	margin-bottom: 0px;
}

/*防災バナー*/
.bosai_bnr {
	display:block;
	text-align:center;
	transition:all .3s;
}

.bosai_bnr:hover {
	filter: brightness(75%);
	
}

@media screen and (max-width:768px) {
	.bosai_bnr {
		text-align:start;
	}
}

/*便利ツール*/
#benri-side dt {
	text-align:center;
	background:#425FB4;
	padding:0.7em;
	border-radius:0.4em 0.4em 0 0;
	color:#fff;
	font-size:1.8rem;
}

#benri-side dd {
	background-color:#fff;
	margin-left:0;
	border-radius:0 0 0.4em 0.4em;
	padding:0.1em 1em;
}

#benri-side dd ul {
	padding-left:0;
	list-style-type:none;
}


#benri-side dd ul li{
	position:relative;
	padding:0.6em 0 0.6em 3em;
	list-style-type:none;
	margin:0;
	border-bottom:solid 1px #ccc;
}

#benri-side dd ul li a {
	display:block;
}

#benri-side dd ul li:before {
	content:'';
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	left:0.5em;
	background-repeat:no-repeat;
	background-size:contain;
        z-index:1;
}

@media screen and (max-width:1099px) {
	#benri-side dd ul li{
		padding:1em 0 1em 3.5em;
        }
}

.i_gomi:before {
	background-image:url(/img/benri-icon01.png);
	width:20px;
	height:31px;
}

.i_kotu:before {
	background-image:url(/img/benri-icon02.png);
	width:61px;
	height:20px;
	left:0!important;
}

.i_event:before {
	background-image:url(/img/benri-icon03.png);
	width:24px;
	height:26px;
}

.i_map:before {
	background-image:url(/img/benri-icon04.png);
	width:32px;
	height:25px;
	left:0.4em!important;
}

.i_downroad:before {
	background-image:url(/img/benri-icon05.png);
	top:73%!important;
	left:2%!important;
	width:33px;
	height:43px;
}

@media screen and (max-width:768px) {
	.i_downroad:before {
		left:1%!important;
	}
}

.i_hojyokin:before {
	background-image:url(/img/benri-icon06.png);
	width:28px;
	height:41px;
	top:60%!important;
	left:0.4em!important;
}

#benri-side dd ul li:after {
	content:'';
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	right:0;
	background-image:url(/img/blue-arrow.png);
	background-repeat:no-repeat;
	background-size:contain;
	width:10px;
	height:15px;
    z-index:1;
}

/*重要なお知らせ*/
#second_important {
	margin:1em 0;
}

#second_important_ttl {
	color:#fff;
	background:#E74242;
	text-align:center;
	font-size:1.8rem;
	font-weight:400;
	border-radius:0.4em 0.4em 0 0;
	margin:0;
	padding:0.7em;
}

#second_important_list {
	background-color:#fff;
	border-radius:0 0 0.4em 0.4em;
	margin:0;
	padding:1em 1.5em;
	list-style-type:none;
}

#second_important_list li {
	display:flex;
	flex-flow:column;
	margin-bottom:1em;
}

#second_important_list li:last-child {
	margin-bottom:0;
}

#important_noticest_area .link_box {
	display:none;
}

/* レコメンド */
#sidebar_recommend {
	border: 1px solid #cccccc;
	margin: 0px 0px 10px;
}
#sidebar_recommend h2 {
	margin: 0px;
	padding: 15px;
	font-size: 1.8rem;
	font-weight: bold;
}
#sidebar_recommend h2 span {
	display: inline-block;
}
#sidebar_recommend ul {
	margin: 0px;
	padding: 10px 15px;
	list-style: none;
}
#sidebar_recommend ul li {
	margin: 0px;
	padding: 8px 0px 8px 20px;
	background: url(/img/common/icon_list_recommend.png) no-repeat left 0.8em;
}

/* 「見つからないときは」「よくある質問」バナー */
#common_banner_link {
	margin: 0px 0px 10px;
}
#common_banner_link ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
#common_banner_link ul li {
	margin-bottom: 10px;
}
#common_banner_link ul li:last-child {
	margin-bottom: 0px;
}
#common_banner_link ul li a {
	display: block;
	border: 1px solid #cccccc;
	background: #e6e6e6;
	color: #000000;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 20px 15px;
}
#common_banner_link ul li a:hover {
	background: #f5f5f5;
}

/********** 9 メイン **********/

/* メイン */
#mymainback {
	/*padding-top: 30px;*/
	padding-bottom: 30px;
}

/********** 10 各ページ **********/

/* 印刷用アイコン */
#content_header {
	margin: 20px 0px;
	text-align: right!important;
	font-size:14px;
}
#content_header span {
	display: inline-block;
	vertical-align: middle;
	margin-left: 0.5em;
	text-align: left;
}
#print_mode_link,
#print_mode_link_large {
	padding-left: 20px;
	background: url(/img/common/icon_print.png) no-repeat left center;
}

#print_mode_link_large {
	display:none;
}

/* PDF・WMPリンク */
.pdf_download,
.wmplayer_download {
	clear: both;
	margin: 30px 0px 0px;
	width: 100%;
	display: table;
}
.pdf_download .pdf_img,
.wmplayer_download .wmplayer_img {
	display: table-cell;
	vertical-align: top;
	width: 158px;
	margin: 0px;
	padding: 0px;
}
.pdf_download .pdf_img img,
.wmplayer_download .wmplayer_img img {
	width: 100%;
	height: auto;
}

.tenpu_txt {
	display: table-cell;
	vertical-align: top;
	margin: 0px;
	padding: 0px 0px 0px 20px;
	font-size: 1.3rem;
	line-height: 1.5;
}
.tenpu_txt br {
	display: none;
}

/* サイトマップ */
/*#sitemap_list_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
#sitemap_list_wrap > div {
	width: calc(50% - 15px);
}*/
#main_body #sitemap_list_wrap > div h2 {
	margin-top: 0px;
}

#sitemap_list_wrap .sitemap_life3 {
	display:grid;
	grid-template-columns:1fr 1fr;
	gap: 0 2em;
}

/* 大分類（見出し） */
div[id^="main_header_life3_"] {
	display: block;
	width: 100%;
	height:100px;
	background-color: #425fb4;
	color:#fff;
	background-repeat: no-repeat;
	background-position: right center;
	background-size: cover;
	margin: 0px 0px 30px;
	padding: 0px;
	position: relative;
	border-radius:0.3em;
	background-image:url(/img/h1_wave.png);
	background-position:bottom -92px left 0;
}

div#main_header_life3_1 { background-image: url(/img/life/life3_1_title.jpg); } /* くらしの情報 */
div#main_header_life3_2 { background-image: url(/img/life/life3_2_title.jpg); } /* 事業者の方へ */
div#main_header_life3_3 { background-image: url(/img/life/life3_3_title.jpg); } /* 観光情報 */
div#main_header_life3_4 { background-image: url(/img/life/life3_4_title.jpg); } /* 市政情報 */

div[id^="main_header_life3_"] h1 {
	width: 100%;
	margin: 0px;
	padding: 0px 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.4;
	position: absolute;
	top: 50%;
	left: 0px;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	text-align:center;
}

#section_footer h2:before {
	display:none;
}

/* 大分類（ライフイベント） */
#lifestage {
	margin-bottom: 30px;
}
#lifestage h2 {
	margin: 0px;
	padding: 0px 20px 20px;
	font-size: 2.2rem;
	font-weight: bold;
}
#lifestage ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
#lifestage ul li {
	width: 130px;
	max-width: 12%;
}
#lifestage ul li a {
	display: block;
	background-color: #cccccc;
	background-repeat: no-repeat;
	background-position: center 20px;
	text-align: center;
	padding: 80px 10px 10px;
}
#lifestage ul li#lifestage1 a {
	background-image: url(/img/lifestage/lifestage1_b.png);
}
#lifestage ul li#lifestage2 a {
	background-image: url(/img/lifestage/lifestage2_b.png);
}
#lifestage ul li#lifestage3 a {
	background-image: url(/img/lifestage/lifestage3_b.png);
}
#lifestage ul li#lifestage4 a {
	background-image: url(/img/lifestage/lifestage4_b.png);
}
#lifestage ul li#lifestage5 a {
	background-image: url(/img/lifestage/lifestage5_b.png);
}
#lifestage ul li#lifestage6 a {
	background-image: url(/img/lifestage/lifestage6_b.png);
}
#lifestage ul li#lifestage7 a {
	background-image: url(/img/lifestage/lifestage7_b.png);
}
#lifestage ul li#lifestage8 a {
	background-image: url(/img/lifestage/lifestage8_b.png);
}

/* 分類 */
#life_menu_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: nowrap;
	    flex-wrap: nowrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
#life_menu_left {
	width:100%;
	padding-right:0;
}

.life_list3 #life_menu_right {
	display:none;
}

#life_cat_list_wrap {
	width:100%;
}
.life_cat_list {
	width: 100%;
	margin: 0px 30px 20px 0px;
	background:#fff;
	border-radius:0 0 0.5em 0.5em;
}

.life_cat_list:nth-child(2n) {
	margin-right: 0px;
}
#main_body .life_cat_list h2,
#main_body .life_cat_list h3 {
	margin-top: 0px;
}

#main_body .life_cat_list h2 a,
#main_body .life_cat_list h3 a {
	display:block;
} 

.life_cat_list h2 {
	position:relative;
	background-color:#fdfde9!important;
	text-align:left;
	border-left:solid 6px #ffd40b!important;
	padding-left:1.5em!important;
}

.life_cat_list h2:after {
	content:'';
	display:inline-block;
	position:absolute;
	top:50%!important;
	transform:translatey(-50%)!important;
	left:95%!important;
	width:30px!important;
	height:30px!important;
	background-image:url(/img/yellow-arrow.png)!important;
	background-repeat:no-repeat;
	background-size:contain!important;
}

.life_cat_list h2:before {
	display:none!important;
}

.life_cat_list .info_list.info_list_date ul li > span {
	display: block;
}
.life_cat_list .info_list.info_list_date ul li > span.article_date {
	width: 8em;
}

.info_list_date ul li {
	display:flex!important;
	gap:1em;
}

.info_list_date {
	padding:0;
}


.life_cat_list ul {
	padding-bottom:1em;
	display:grid;
	grid-template-columns:1fr 1fr;
}

.life_cat_list ul li {
	display:flex;
	gap:0.5em;
	position:relative;
	padding-right:0;
	border-right:none;
	padding:0.5em 3em 1em 1em;
	border-bottom:solid 1px#e2e1de;
}

.life_cat_list ul li:after {
	content:'';
	display:inline-block;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
	right:1.5em;
	width:10px;
	height:15px;
	background-image:url(/img/blue-arrow.png);
	background-repeat:no-repeat;
	background-size:contain;
}

.life_list2 .life_cat_list ul {
	grid-template-columns:1fr;
}

/* 関連情報 */
#kanren_info {
	background: #f5f5f5;
	margin: 0px 0px 10px;
	padding: 0px;
}
#kanren_info h2 {
	background: #e6e6e6;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0px;
	padding: 15px;
}
#kanren_info h3 {
	background: #e6e6e6;
	font-size: 1.6rem;
	font-weight: normal;
	margin: 10px 15px 0px;
	padding: 10px 15px;
}

.kanren_box ul {
	margin: 0px;
	padding: 10px 15px;
	list-style: none;
}
.kanren_box ul li {
	margin: 0px;
	padding: 3px 0px 3px 20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: relative;
}
.kanren_box ul li:before {
	content: '';
	width: 0px;
	height: 0px;
	border: 5px solid transparent;
	border-right-width: 0px;
	border-left-width: 8px;
	border-left-color: #666666;
	position: absolute;
	top: 0.6em;
	left: 0px;
}

.kanren_box div.link_ichiran {
	margin-top: 0px;
	padding: 0px 15px 15px;
}

/* サブカテゴリ */
#lifesub_cat_list_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
.lifesub_cat_list {
	width: calc(50% - 15px);
	margin: 0px 30px 20px 0px;
}
.lifesub_cat_list:nth-child(2n) {
	margin-right: 0px;
}
#main_body .lifesub_cat_list h2,
#main_body .lifesub_cat_list h3 {
	margin-top: 0px;
}

.life_cat_list_ttl {
	padding: 0.6em 20px;
	background: #f5f5f5;
	border: none;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
}

/* 組織 */
#soshiki_hyouji ul {
	margin: 20px 0px;
	padding: 0px;
	list-style: none;
	text-align: center;
}
#soshiki_hyouji ul li {
	display: inline-block;
	vertical-align: middle;
	margin: 5px 10px 5px 0px;
	padding-right: 15px;
	border-right: 1px solid #666666;
	line-height: 1.4;
}
#soshiki_hyouji ul li:last-child {
	border-right: none;
	margin-right: 0px;
	padding-right: 0px;
}

#freespace_bu {
	margin: 30px 0px;
}
#freespace_bu p {
	margin: 0px 0px 1em;
}
#freespace_bu p:last-child {
	margin-bottom: 0px;
}

.kakuka_info_box {
	margin-bottom: 30px;
}
.kakuka_contact_box > div {
	margin-bottom: 0.5em;
}
.kakuka_contact_box > div:last-child {
	margin-bottom: 0px;
}

.kakuka_tel_list ul {
	margin: 0px;
	padding: 0px;
	list-style: none;
}
.kakuka_tel_list ul li span {
	margin-left: 0.5em;
}
.kakuka_tel_list ul li span:before {
	content: '(';
}
.kakuka_tel_list ul li span:after {
	content: ')';
}
.kakuka_tel_list ul li span:empty:before,
.kakuka_tel_list ul li span:empty:after {
	display: none;
}

#soshiki_pr_image {
	margin: 30px 0px;
}
#soshiki_pr_image a {
	display: inline-block;
}
#soshiki_pr_image img {
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 250px;
}

#freespace_ka {
	margin: 30px 0px;
}
#freespace_ka p {
	margin: 0px 0px 1em;
}
#freespace_ka p:last-child {
	margin-bottom: 0px;
}

#freespace2_ka {
	margin: 0px 0px 10px;
}
#freespace2_ka p {
	margin: 0px 0px 10px;
}
#freespace2_ka p:last-child {
	margin-bottom: 0px;
}

.kakuka_view {
	max-width: 300px;
	margin: 0px auto;
}
.kakuka_view img {
	width: 100%;
	height: auto;
}

.soshiki_kakuka .side_box_txt > div {
	margin-bottom: 0.5em;
}
.soshiki_kakuka .side_box_txt > div:last-child {
	margin-bottom: 0px;
}

/* 改ページ */
.page_num {
	margin: 30px 0px 0px;
	font-size: 1.8rem;
	text-align:center!important;
}
.page_num_ttl {
	font-size: 1.6rem;
}

/* ウェブブック */
#book_list_wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	-webkit-box-pack: start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
}
.book_list_box {
	width: calc(50% - 15px);
	margin: 0px 30px 20px 0px;
}
.book_list_box:nth-child(2n) {
	margin-right: 0px;
}

#main_body .book_list_box h3 {
	margin-top: 0px;
}
.book_list_box .book_info {
	width: 100%;
	display: table;
}
.book_list_box .book_info > div {
	display: table-cell;
	vertical-align: top;
}
.book_list_box .book_info > div.book_thumb_img {
	width: 66px;
	padding-right: 15px;
}
.book_list_box .book_info > div.book_thumb_img img {
	width: 100%;
	height: auto;
}

/* アンケート */
#main_body table.tbl_ques {
	width: 100%;
	margin: 20px 0px 0px;
}
#main_body table.tbl_ques th {
	text-align: center;
}
#main_body table.tbl_ques th.title {
	width: 60%;
}
#main_body table.tbl_ques th.date {
	width: 15%;
}
#main_body table.tbl_ques th.date2 {
	width: 15%;
}
#main_body table.tbl_ques th.button {
	width: 10%
}
#main_body table.tbl_ques td.t_center {
	text-align: center;
}
#main_body table.tbl_ques td input {
	display: inline-block;
	width: 100%;
	border: none;
        background-color: #f1f3f5;
        color: #425fb4;
	font-size: 1.4rem;
	font-weight:bold;
	line-height: 2rem;
	margin: 0px;
	padding: 5px 0px;
	text-align: center;
}
#main_body table.tbl_ques td input:hover {
	background: #f5f5f5;
}

div.q2 br {
	display: none;
}

.question_detail input[type="text"] {
	font-size: 1.6rem;
	max-width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.question_detail textarea {
	font-size: 1.6rem;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.question_detail select {
	font-size: 1.6rem;
}

.question input[type="submit"],
.question input[type="button"] {
	display: inline-block;
	width: 23%;
	border: none;
	background:  #425fb4;
	color: #fff;
	line-height: 2rem;
	margin: 0px 1% 0px 0px;
	padding: 10px 0px;
	text-align: center;
	border-radius:2em;
	transition:all .3s;
}
.question input[type="submit"]:hover,
.question input[type="button"]:hover {
	background: #617bc7;
}

/* アンケート結果グラフ */
#main_body img[src="img/graph.gif"] {
	height: 20px !important;
	vertical-align: middle;
}

/* お問い合わせフォーム */
#mail_form_message,
#cookie_err_message {
	margin: 1em 0px;
	color: #cc0000;
}

#main_body table#mail_form_tbl {
	width: 100%;
}
#main_body table#mail_form_tbl th {
	width: 25%;
}
#main_body table#mail_form_tbl td {
	width: 75%;
}
#main_body table#mail_form_tbl td input[type="text"] {
	font-size: 1.6rem;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#main_body table#mail_form_tbl td textarea {
	font-size: 1.6rem;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#mail_form_btn_wrap {
	margin: 20px 0px 0px;
	text-align:center!important;
}
#mail_form_btn_wrap input[type="submit"] {
	display: inline-block;
	width: 23%;
	background: #f1f3f5;
	color: #425fb4;
	line-height: 2rem;
	margin: 0px 1% 0px 0px;
	padding: 10px 0px;
	text-align: center;
        font-weight:bold;
        border-radius:3em;
	border:solid 1px #425fb4;
}
#mail_form_btn_wrap input[type="submit"]:hover {
	background: #f5f5f5;
	color:#94a7e0;
}

/* googleカスタム検索結果 */
#main_body #cse_search_result table {
	border: none;
	margin: 0px;
}
#main_body #cse_search_result td {
	border: none;
}

.gsc-results .gsc-cursor-box .gsc-cursor-page {
	display: inline-block !important;
	vertical-align: middle;
	margin-bottom: 5px;
	padding: 10px 15px;
	border: 1px solid #cccccc;
	font-size: 1.6rem;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
	background: #f5f5f5;
}

/* Googlemap */
.gglmap {
	position: relative;
	padding-top: 30px;
	padding-bottom: 56.25%;
	height: 0px;
	overflow: hidden;
}
.gglmap iframe,
.gglmap object,
.gglmap embed {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}

/* 地図でさがす */
#shisetsu_list_txt {
	border: 1px solid #cccccc;
	border-bottom: none;
}
#shisetsu_list_txt p {
	margin: 0px;
	padding: 20px;
}

#shisetsu_list_link {
	border: 1px solid #cccccc;
	border-bottom: none;
}
#shisetsu_list_link ul {
	margin: 0px;
	padding: 10px 20px;
	list-style: none;
}
#shisetsu_list_link ul li {
	display: inline-block;
	vertical-align: top;
	margin: 5px 20px 5px 0px;
}

#shisetsu_map {
	border: 1px solid #cccccc;
}
#map_canvas {
	width: 100%;
	height: 500px;
}

#map_canvas_detail {
	width: 100%;
	height: 400px;
}

.shisetsu_detail_box {
	margin-bottom: 20px;
}

/* タブレット */
/*@media screen and (max-width : 1099px) {

	div[id^="main_header_life3_"] {
		height: 150px;
	}

	#soshiki_pr_image img {
		max-height: 150px;
	}

}*/
/* タブレット ここまで */



/*20221019_デザイン改修*/
/*header2*/

/*-----------------------------------------------------------------
（分類のメインメニュー）

  -----------------------------------------------------------------*/

/* グローバルメニュー */
.global-nav {
  margin: 0;
  position: relative;
}

/*ハンバーガーメニュー非表示*/
.global-nav-header {
	display:none;
}

.global-nav .nav-list {
  position:relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  list-style: none;
  gap:3em;
  margin: 3.2em 0 0 0;
  padding: 0;
}

.global-nav .nav-list .nav-item_sub {
   display:grid;
   grid-template-columns:1fr 1fr 1fr;
   position:absolute;
   top:3.5em;
   left:50%;
   transform:translateX(-50%);
   margin: 0 auto;
   width:1100px;
   justify-content: space-between;
   flex-wrap:wrap;
   background:#fbfcf1;
   list-style-type:none;
   box-sizing:border-box;
   padding-left:0;
}

@media screen and (max-width:1200px) {
	.global-nav .nav-list .nav-item_sub {
	   transform:translateX(-54%);
	   width:1050px;
	}
}

@media screen and (max-width:1100px) {
   .global-nav .nav-list .nav-item_sub {
         margin: 0 calc(50% - 50vw);
	      width:99vw;
   } 
}

.global-nav .nav-list .nav-item_sub li a {
	text-align:left;
	padding:1em 1em 1em 3em;
}


.global-nav .nav-list .nav-item_sub li a:before {
	content:'';
	display:inline-block;
	position:absolute;
	top:50%;
	left:1em!important;
	transform:translatey(-50%);
	background-image:url(/img/blue_arrow.png);
	background-repeat:no-repeat;
	background-size:contain;
	width:18px;
	height:18px;
}

@media screen and (max-width:1100px) {
	.global-nav .nav-list .nav-item_sub li a:before {
		left:1em!important;
	}
}

.global-nav .nav-list .nav-item a {
  position:relative;
  color: #000;
  display: block;
  padding: 0.6em 0.4em;
  text-align: center;
  text-decoration: none;
}

.global-nav .nav-list .nav-item:hover > a {
	color:#304b96;
}

.global-nav .nav-list .nav-item a img {
	position:absolute;
	top:-3em;
	left:50%;
	transform: translatex(-50%);
	width:inherit;
}

.global-nav .nav-list .nav-item:nth-child(5) a img {
	width:59px;
	height:inherit;
	top:-3.3em;
}

/*hoverのアイコンの色*/
.global-nav .nav-list .nav-item .nav-blue {
	display:none;
}

.global-nav .nav-list .nav-item:hover > a .nav-blue{
	display:block;
}

.global-nav .nav-list .nav-item a:hover > a .nav-glay{
	display:none;
}


/* サブナビゲーション */
@media screen and (min-width: 1100px) {
  .nav-list {
    position: relative;
  }
  .nav-list .nav-item:hover .nav-item_sub {
    opacity: 1;
    visibility: visible;
  }
  .nav-item_sub {
    left: 0;
    margin: 0 calc(50% - 50vw);
    opacity: 0;
    position: fixed;
    top: 8em;
    left: 0;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    visibility: hidden;
    width: 100vw;
    z-index: 2;
    border:solid 4px #f8de66;
  }

  .nav-item_sub a {
    text-align: left;
  }

.global-nav .nav-list .nav-item:hover > a:before {
  content: "";
  position: absolute;
  bottom: 0em;
  left: 0;
  width:100%;
  border-bottom: 4px solid #3e5aa8;
}


.global-nav .nav-list .nav-item:hover > a:after{
  content: "";
  position: absolute;
  bottom: -1.2em;
  left: 50%;
  margin-left: -15px;
  border: 15px solid transparent;
  border-bottom: 15px solid #fce57b;
}

.global-nav .nav-list .nav-item .nav-item_sub li a:hover:before {
	border:none;
}

.global-nav .nav-list .nav-item .nav-item_sub li a:hover:after {
	display:none;
}
}

/* SP時：ハンバーガーメニューボタン */
@media screen and (max-width: 1100px) {
#he_right {
	background:none;
}


#he_right.sp {
	position:fixed;
	top:0;
	background:#fff;
	height:100vh;
	box-sizing:border-box;
	border-radius:0;
	width:100%;
	overflow-y:scroll;
	overflow-x:hidden;
	padding:0 0 6em;
	background:#e8f5ff!important;
}

.global-nav-header {
	position:fixed;
	right:1em;
	top:1em;
	display:block;
}
	
.global-nav-icon {
  display:block;
}

#he_right_inner {
	display:none;
}

.global-nav {
	display:none;
}
}


/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.global-nav-icon{
  position: relative;/*ボタン内側の基点となるためrelativeを指定*/
  background:#425fb4;
  cursor: pointer;
    width: 40px;
    height:40px;
  border-radius: 5px;
}

/*ボタン内側*/
.global-nav-icon span{
    display: inline-block;
    transition: all .4s;/*アニメーションの設定*/
    position: absolute;
    left: 11px;
    height: 3px;
    border-radius: 2px;
  background: #fff;
    width: 45%;
  }

.global-nav-icon span:nth-of-type(1) {
  top:10px; 
}

.global-nav-icon span:nth-of-type(2) {
  top:18px;
}

.global-nav-icon span:nth-of-type(3) {
  top:27px;
}

/*activeクラスが付与されると線が回転して×に*/

.global-nav-icon.active span:nth-of-type(1) {
    top: 14px;
    left: 15px;
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.global-nav-icon.active span:nth-of-type(2) {
  opacity: 0;/*真ん中の線は透過*/
}

.global-nav-icon.active span:nth-of-type(3){
    top: 26px;
    left: 15px;
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

/*メニュー展開デザイン*/
#he_right_inner #logo {
	display:none;
}

#he_right.sp #he_right_inner {
	display:block;
}

#he_right.sp #he_right_inner #logo {
	display:block;
	position:absolute;
	top:0;
	left:0;
	margin:0;
}

#he_right.sp #he_right_inner #logo img {
    height: auto;
}

#he_right.sp .global-nav {
	display:block;
	margin-top: 3%!important;
}

#he_right.sp .nav-list{
	flex-flow:column;
	gap:0!important;
}

#he_right.sp .nav-item {
	position:relative;
	width:100%;
	margin-bottom:0;
}

#he_right.sp .nav-item a {
	display:block;
	position:relative;
	font-size:1.6rem;
	text-align:start;
	padding:1.5em 2em;
	border-bottom:solid 1px #ccc;
	background-color:#fff8ba;
}

#he_right.sp .nav-item a:hover {
	filter: brightness(105%);
}


#he_right.sp .nav-item a img{
	display:none;
}

#he_right.sp .nav-item_sub {
	position:relative;
	width:102%!important;
	left:55%!important;
	display:none;
	top:0;
	padding:0;
}

#he_right.sp .nav-item_sub a {
	padding: 1em 2em 1em 3em;
	border:none;
	background:#fbfcf1;
}

@media screen and (max-width:768px) {
	#he_right.sp .nav-item_sub {
		width:102%!important;
		left:54%!important;
	}
}

#he_right.sp .hasDropdown {
	background:#fffbcf;
	color:#425FB4!important;
	font-weight:bold;
}

.open-btn {
	display:none;
}

#he_right.sp .open-btn {
	display:block;
	position:absolute;
	right: 0em;
	top:0em;
	background-image:url(/img/plus.png);
	background-repeat:no-repeat;
	background-position:top 1.6em right 1em;
	width:55px;
	height:100%;
}

@media screen and (max-width:670px) {
	#he_right.sp .open-btn {
		background-position:top 2em right 1em;
	}
}


.open-btn.sp {
	background-image:url(/img/minus.png)!important;
}


.open-btn.sp + .nav-item_sub {
	display:inline-flex!important;
	position:relative;
	z-index:2;
}

.open-btn.sp + .nav-item_sub li {
	width:50%;
}

/*tabキー切り替え用のCSS*/
nav .nav-item:hover ul,
nav .nav-item ul.focused {
	opacity: 1;
	visibility: visible;
}

nav li.nav-item li a:hover,
nav li.nav-item li a:focus {
	background: #f8de66;
}


/*フッター*/
#footer {
	background-image:url(/img/footer-bg.png);
	background-repeat:no-repeat;
	background-size:cover;
	padding:9% 5% 0;
	
}

@media screen and (max-width:1024px) {
	#footer {
		padding:15% 5% 65px!important;
	}
}

@media screen and (max-width:768px) {
	#footer {
		padding:20% 5% 65px!important;
	}
}

#footer:after {
	content:'';
	position:absolute;
	left:0;
	bottom:0;
	background-image:url(/img/footer-bg2.png);
	background-repeat:no-repeat;
	background-size:cover;
	width:100%;
	height:17vw;
	z-index:1;
}

#author_info {
	position:relative;
	max-width:1100px;
	margin:0 auto;
	background-color:#fff;
	border-radius:0.8em;
	padding:2%;
	z-index:2;
	margin-bottom: 0;
}

#author_box {
	list-style-type:none;
	display:flex;
	gap:1em;
}

#author_box2 {
	text-align:center;
	list-style-type:none;
	display:flex;
	gap:2.5em;
	place-content:center;
	padding:0;
}

#author_box2 li {
	text-align:start;
}

#author_box > li {
	position:relative;
	line-height:1.8em;
	min-width:180px;
	max-width:300px;
	box-sizing:border-box;
	padding:1em 1.5em 1em;
	border-radius:0.4em;
}

#author_box > li:after {
	position:absolute;
	top:55%;
	transform:translatey(-50%);
	left:0;
	display:inline-block;
	content:'';
	width:1px;
	height:70%;
	background:#f0f0f0;
	z-index:2;
}

#author_box > li:first-child:after {
	display:none;
}

.f_detail_list {
	list-style-type:none;
	padding:0;
	text-align:start;
}

.f_author_title {
	font-size:1.6rem;
	font-weight:bold;
	letter-spacing:0.1em;
	padding:0.4em;
	margin-bottom:1em;
	text-align:left;
	color:#005bac;
	border-bottom:solid 2px#005bac;
}

.f_tel, .f_time {
	padding-left:6.7em;
	text-indent:-6.7em;
}

.f_close {
	padding-left:6.7em;
	text-indent:-6.7em;
}

.close-bg {
	background:#fae16e;
	padding: 5px 21px 5px 21px;
	border-radius:2em;
	border-radius:1em;
	margin-right:0.5em;
}

.time-bg {
	width:4em;
	background:#fae16e;
	padding: 6px 15px 6px 15px;
	border-radius:1em;
	margin-right:0.5em;
}

#footer_navi {
	background:initial;
	margin-left:0;
}

#footer_navi ul {
	padding:0;
	text-align:center;
}

@media screen and (max-width:1100px) {
	#footer {
		font-size:1.6rem;
	}

	.f_author_title {
		font-size:1.7rem;
	}
	
	#author_box {
		display:grid;
		grid-template-columns:1fr 1fr;
		place-content:center;
	}
	
	#author_box > li {
		width:100%;
		max-width:inherit;
		min-width:160px;
		padding:1.5em;
	}

	#author_box > li:after {
		left:-0.5em;
		top:60%;
	}

	#author_box > li:nth-child(3):after,
	#author_box > li:nth-child(5):after {
		display:none;
	}

	#author_box2 {
		display:grid;
		gap:1em;
	}

	#footer_navi ul {
		padding: 20px 10px;
	}
} 

@media screen and (max-width:540px) {
	.f_author_title {
		font-size:1.6rem;
	}
	
	#footer_navi ul {
		text-align:left;
	}

	#author_box2 {
		padding:0 1.5em;
	}
}

.footer_btn {
	max-width:1100px;
	text-align:center;
}

#footer .btn_list {
	display:flex;
	gap:1em;
	justify-content:center;
	list-style-type:none;
	margin-bottom:4%;
	padding-left:0;
}

@media screen and (max-width:768px) {
	.btn_list {
	    flex-wrap:wrap;
	    margin:3em 0!important;
	    gap:4em 1em!important;
		
	}
}


#footer .btn_list li a {
	padding:1em 3em;
	background-color:#005bac;
	color:#fff;
	text-decoration:none;
	border-radius:0.4em;
	transition:all .3s;
}

#footer .btn_list li a:hover {
		background-color:#044885;
}


.footer_btn {
	margin:0 auto;
}

.footer_logo {
	margin-bottom:4.5%;
}

@media screen and (max-width:1024px) {
	.footer_logo img {
		max-width:120px;
	}
}

#footer .btn_list li a {
	position:relative;
	padding:1.2em 3em 1.2em 5em;
	background-color:#005bac;
	color:#fff;
	text-decoration:none;
	border-radius:0.4em;
}

#footer .btn_list li a:before {
  content: '';
  display: inline-block;
  position: absolute;
  left:2em;
  top:50%;
  transform: translatey(-50%);
  background-size: contain;
  background-repeat: no-repeat;
}

@media screen and (max-width:768px) {
	.btn_list {
	    flex-flow:column;
	    margin:3em 0!important;
	    gap:1em 1em!important;
		justify-content:center;

	}

	.btn_list li a {
		display:block;
		width:10em;
		margin:0 auto;
	}

	.f_address {
		text-align:left;
	}

	.f_address:after {
		display:none;
	}
}


#footer .btn_list li:first-child a:before {
	  background-image: url(/img/access-icon.png);
	  width: 30px;
 	  height: 24px;
}

#footer .btn_list li:nth-child(2) a:before {
	  background-image: url(/img/tel-icon.png);
	  width: 25px;
 	  height: 25px;
}

#footer .btn_list li:nth-child(3) a::before {
	  background-image: url(/img/mail-icon.png);
	  width: 25px;
 	  height: 19px;
}

#copyright {
	position:relative;
	z-index:3;
}

/*トップに戻るボタン*/

#to_page_top {
    display: none;
    position: fixed;
    bottom: 30px;
    right: 15px;
    z-index:3;   
}

#to_page_top a:hover {
	filter:alpha(opacity=60);
    -moz-opacity: 0.6;
    opacity: 0.6;
}

@media screen and (max-width:1440px) {
	#to_page_top {
		bottom:1em;
		right:-1em;
	}   
	
	#to_page_top img {
		width:80%;
	}
} 

@media screen and (max-width:1024px) {
	#to_page_top img {
		width:80%;
		right: 15px;
	}
}