@charset "UTF-8";
/******************** CSS RESET ********************/
*, *::before, *::after {
	box-sizing: border-box;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
img {
	max-width: 100%;
	vertical-align: bottom;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #ccc;
	margin: 1em 0;
	padding: 0;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
address {
	font-style: normal;
}
input:not([type="radio"]):not([type="checkbox"]), button, textarea {
	padding: 0;
	margin: 0;
	background: none;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
}
input[type="radio"]{
	margin-top: 0;
	padding-top: 0;
}
input,
label{
	vertical-align: middle;
}
legend{
	width: 100%;
}
/******************** 共通設定 ********************/
html{
	scroll-padding-top: 97px;
	overflow: auto;
	scroll-behavior: smooth;
}
body {
	font-family: arial, "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #333;
	font-size: 100%;
	-webkit-text-size-adjust: 100%;
	-webkit-overflow-scrolling: touch;
}
	@media print, screen and (min-width: 1025px) and (max-width: 1000px) {
		body{
			width: 1000px;
		}
	}
	@media (min-width: 1025px) {
		body{
			position: static !important;
			width: 100% !important;
		}
	}
	@media (max-width: 1024px){
		html{
			scroll-padding-top: 0;
		}
	}
/**** テキスト ****/
p, li {
	margin-top: 12px;
}
.small {
	font-size: 85%;
}
strong{
	color: #900;
}
b {font-family: "ヒラギノ角ゴ ProN W6", "HiraKakuProN-W6";}
/**** リンク ****/
a:link {
	text-decoration: underline;
	color: #2b3095;
}
a:visited {
	text-decoration: underline;
	color: #791e78;
}
a:hover {
	text-decoration: none;
	color: #9f0000;
}
a:active {
	text-decoration: none;
	color: #9f0000;
}
.link_white:link {
	text-decoration: underline;
	color: #fff;
}
.link_white:visited {
	text-decoration: underline;
	color: #eee;
}
.link_white:hover {
	text-decoration: underline;
	color: #ffff00;
}
.link_white:active {
	text-decoration: underline;
	color: #ffff00;
}
a:link > strong{
	color: #2b3095;
}
a:visited > strong {
	text-decoration: underline;
	color: #791e78;
}
a:hover > strong {
	text-decoration: none;
	color: #9f0000;
}
a:active > strong {
	text-decoration: none;
	color: #9f0000;
}

/**** 別ウィンドウで開く ****/
.window {
	display: inline-block;
	font-size: 62.5%;
	font-weight: normal;
	background: #FFF0E0;
	color: #333;
	border-radius: 4px;
	padding: 1px 4px;
	margin: 0 4px;
	border: 1px solid #AE6650;
	vertical-align: text-bottom;
	word-wrap: break-word;
}
h2 .window{
	font-size:56.25%;
	text-shadow: none;
}
.main_naka h2 .window{
	font-size: 49%;
}
/**** 本文へ_スキップ用リンク ****/
.skip {
	position: relative;
	text-align: center;
	width: 100%;
	margin: 0;
}
.skip a {
	background-color: #fff;
	width: 1px;
	font-size: 0.1%;
	line-height: 0.1;
	position: absolute;
	top: auto;
	left: -3000px;
	z-index: 9999;
	padding: 4px 0;
}
.skip a:active, .skip a:focus {
	display: block;
	width: 100%;
	margin: 0 auto;
	font-size: 100%;
	left: 0;
	right: 0;
	top: 0;
	line-height: 1.5;
}

/**** フォーム ****/
#body input, header button, #main_outline button, footer button, #body textarea {
	background: #fff;
	border: 1px solid #999;
	font-size: 85%;
}
/* text,textarea */
#body input[type="text"], #body textarea ,#body input[type="password"] {
	font-family: arial, "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background: #fff;
	border: 1px solid #999;
	padding: 8px 6px;
}
/* select */
#body select[size], #body select[multiple], #body select[size][multiple] {
	padding: 6px;
}
/* submit,reset,button */
#body input[type="submit"], #body input[type="reset"],header button[type="button"],#main_outline button[type="button"],footer button[type="button"], header button, #main_outline button, footer button {
	background: #555;
	border-radius: 4px;
	cursor: pointer;
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 6px 16px;
}
#body input[type="submit"]:hover, #body input[type="reset"]:hover,header button[type="button"]:hover,#main_outline button[type="button"]:hover,footer button[type="button"]:hover, header button:hover, #main_outline button:hover, footer button:hover {
	background: #666;
}
/**** その他 ****/
.anchor, .notit {
	display: block;
	height: 1px;
	margin-top: -1px;
}
.date {
	font-size: 85%;
	color: #555;
	display: inline-block;
	margin-left: 12px;
}
.noscript {
	font-size: 85%;
	color: #a90000;
}
.none {
	display: none;
}
/******************** レイアウトCSS ********************/

/********************************************
2カラムの場合ここにliguid.cssをの中身をコピーして、
liguid.cssは削除する
********************************************/

.design{
	clear: both;
}
.main .zone01 {
	background: url("img/pho_bg-img01.png");
}
.main .zone02 {
	background: #FFF url("img/pho_bg-img02.png") no-repeat;
}
.main .zone03 {
	background: #FFF url("img/pho_bg-img03.png");
}
.main .zone04 {
	background: #FFF url("img/pho_bg-img04.png");
}
.zone01_in,
.zone02_in,
.zone03_in,
.zone04_in{
	padding: 0 12px;
}

@media only screen and (max-width: 1024px) {
	.zone01 {
		float: none;
		width: 100%;
	}
	.zone02 {
		float: none;
		width: 100%;
	}
}
/********************** ヘッダー **********************/
.main_header {
	background: url("img/pho_bg-img01.png");
	width: 100%;
}
	@media only screen and (max-width: 1024px) {
		.main_header{
			overflow: hidden;
		}
	}
	@media only screen and (max-width: 480px) {
		.main_header{
			min-height: 74px;
		}
	}
/**** ヘッダー上段リンク ****/
.h_top_wrap {
	background: #434040;
	font-size: 85%;
}
.h_top {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 4px 12px;
	display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
}
.h_top .h_toplist01 {
	display: flex;
		align-items: center;
	margin: 4px auto 4px 0;
}
.h_top .h_toplist {
	display: flex;
		align-items: center;
		justify-content: flex-end;
	margin: 4px 0 4px auto;
}
.h_top .h_toplist01 > li {
	margin: 0 16px 0 0;
	padding: 0 0 0 14px;
	position: relative;
}
.h_top .h_toplist01 > li::before {
	content: '';
	display: block;
	position: absolute;
	top: .5em;
	left: 0;
	border-right: 2px solid #999;
	border-bottom: 2px solid #999;
	width: 6px;
	height: 6px;
	transform: rotate(-45deg);
}
.h_top .h_toplist > li {
	margin: 0 0 0 10px;
}
.h_top .h_toplist > li:nth-of-type(n+5) {
	margin: 0;
}
.h_top .h_toplist > li:first-child {margin: 0;}
.h_top .h_toplist > li a {
	display: block;
	position: relative;
	padding: 0 0 0 10px;
	background: transparent;
	transition: .3s;
	color: #FFF;
	text-shadow: 1px 1px 1px transparent,-1px 1px 1px transparent,1px -1px 1px transparent,-1px -1px 1px transparent,1px 0 1px transparent,0px 1px 1px transparent,-1px 0 1px transparent,0 -1px 1px transparent;
}
.h_top .h_toplist > li > a::before {
	display: block;
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	top: .45em;
	left: 0;
	border: 4px solid transparent;
	border-left: 6px solid #FFF;
}
	@media only screen and (max-width: 1024px) {
		.h_top_wrap{
			display: none;
		}
	}
/* 色の反転 */
.bg_color{
	display: flex;
	align-items: center;
	margin-right:16px;
}
.bg_tit{
	padding: 0;
	margin: 0 6px 0 0;
}
.bg_list{
	display: flex;
	align-items: center;
}
.bg_list li{
	padding: 0;
	margin: 0 0 0 4px;
}
.bg_list li a{
	display: block;
	border: 1px solid #ccc;
	border-radius: 4px;
	background: #fff;
	text-decoration: none;
	padding: 0 4px;
}
.bg_list li:last-child a{
	background: #000;
}
.bg_list li:last-child a > strong{
	color: #fff;
}

/* フォントサイズ */
.font_size, .font_tit, .font, .font_list, .font_list li {
	float: left;
}
.font_size {
	margin-left: 10px;
}
.font_tit {
	margin: 3px 2px 0 0;
	color: #FFF;
}
.font_list li {
	margin: 0 0 0 4px;
}
.h_toplist .font_list li a {
	text-decoration: none;
	background: #F4B1C7;
	border: 1px solid #F4B1C7;
	transition: .3s;
	padding: 2px 4px;
	border-radius: 3px;
	color: #2b3095;
	text-shadow: none;
}
.h_toplist .font_list li:nth-child(2) a {
	background: #000;
	border-color: #FFF;
}
.h_toplist .font_list li a:hover {
	background: #FFD5E3;
	color: #9f0000;
	text-shadow: none;
}
.h_toplist .font_list li:nth-child(2) a:hover {
	background: #333;
}
.h_toplist .font_list li a strong {
	color: #FFF;
	transition: .3s;
}
.h_toplist .font_list li a:hover strong {
	color: #FFFF00;
}

/*** 伝えるWEB ***/
/* .tsutaeru01-menu */
.tsutaeru01-menu {
  display: none;
}
.tsutaeru01-menu ul {
  margin: 0px;
  padding: 0px;
  text-align: right;
}
.design #head_lang02 li a {
  width: 118px;
  height: 28px;
  display: inline-block;
}
.design #head_lang02 li.tsutaeru01-button-easy {
  padding: 0;
}
.design #head_lang02 li.tsutaeru01-button-easy-off {
  padding: 0;
}
.design #head_lang02 li.tsutaeru01-button-ruby {
  padding: 0;
}
.design #head_lang02 li.tsutaeru01-button-ruby-off {
  padding: 0;
}
/* .tsutaeru01-speech */
.tsutaeru01-speech {
  padding: 0;
  margin: 0;
  position: relative;
}
.tsutaeru01-speech * {
  vertical-align: middle;
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start,
#body button.tsutaeru01-button.tsutaeru01-button-speech-control,
#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config {
  border: 1px solid #F4B1C7;
  border-radius: 4px;
  display: block;
  text-align: center;
  cursor: pointer;
  margin: 0;
  padding: 2px 4px;
  text-decoration: none;
  font-size: 100%;
	background: #F4B1C7;
	transition: .3s;
	color: #2b3095;
	font-family: "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3";
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start {
	min-height: 24px;
}
#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config {
  margin: 0 0 0 4px;
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start:hover,
#body button.tsutaeru01-button.tsutaeru01-button-speech-control:hover,
#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config:hover {
	color: #9f0000;
	background: #FFD5E3;
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start:visited,
#body button.tsutaeru01-button.tsutaeru01-button-speech-control:visited,
#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config:visited {
  color: #791d78;
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start,
#body button.tsutaeru01-button.tsutaeru01-button-speech-control {
  /*margin-right:10px;*/
}
.tsutaeru01-speech .tsutaeru01-button:disabled {
  opacity: 0.8;
}
.tsutaeru01-speech-buttons {
  padding: 0;
	display: flex;
/*	flex-wrap: wrap;*/
}
.tsutaeru01-speech-audio-container {
  padding: 5px 0px;
  position: fixed;
  top: 240px;
  left: 10px;
  z-index: 10000;
}
.tsutaeru01-speech-audio {
  border-radius: 3px;
  max-width: 220px;
  height: 32px;
}
.tsutaeru01-speech-error {
  color: #C00;
}
/* .tsutaeru01-config */
.tsutaeru01-config {
  font-size: 90%;
  position: fixed;
  z-index: 99999;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.75);
  border-radius: 5px;
  max-width: 90%;
  width: 600px;
  text-align: left;
  outline: none !important;
}
.tsutaeru01-config-header {
  padding: 1em;
  color: #434040;
	background: #F4B1C7;
  text-align: center;
  position: relative;
  border-radius: 5px 5px 0px 0px;
  border: 1px solid #FFF;
	font-size: 111.5%;
}
.tsutaeru01-config-body {
  color: #333;
  background: #FFF;
  padding: 1.5em;
  max-height: 50vh;
  overflow: auto;
}
.tsutaeru01-config-body dl, .tsutaeru01-config-body dl dt,
.tsutaeru01-config-body dl dd {
  margin: 0px;
  padding: 0px;
  font-size: 100%;
}
.tsutaeru01-config-body dl {
  overflow: hidden;
}
.tsutaeru01-config-body dl dt {
  font-weight: bold;
  float: left;
  clear: left;
  width: 7em;
  text-align: right;
}
.tsutaeru01-config-body dl dd {
  margin: 0 0 1em auto;
  white-space: nowrap;
	width: calc(100% - 7em);
	text-align: left;
	display: flex;
	flex-wrap: wrap;
}
.tsutaeru01-config-body dl dd:last-child {
  margin-bottom: 0px;
}
.tsutaeru01-config-body dl dd label {
  margin: 0px 1em 0.8em 0px;
  padding: 0px;
  font-size: 100%;
  white-space: nowrap;
  display: inline-block;
	cursor: pointer;
}
.tsutaeru01-config-body dl dd label input {
  margin: 0px 0.3em 0px 0px;
}
.tsutaeru01-config-footer {
  color: #333;
  background: #FFF;
  border-top: 1px solid #CCC;
  text-align: right;
  padding: 0.5em;
  border-radius: 0px 0px 5px 5px;
}
#body .tsutaeru01-config .tsutaeru01-config-footer .tsutaeru01-config-button-close {
  font-size: 100%;
  color: #2b3095;
  background: #F4B1C7;
  padding: 0.5em 1em;
  border-radius: 3px;
  cursor: pointer;
	border: 1px solid #F4B1C7;
	transition: .3s;
}
#body .tsutaeru01-config .tsutaeru01-config-footer .tsutaeru01-config-button-close:hover {
	background: #FFD5E3;
	color: #9f0000;
}
.tsutaeru01-config-overlay {
  position: fixed;
  z-index: 99998;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  background: #000;
  opacity: 0.75;
}
#body .tsutaeru01-config .tsutaeru01-config-header .tsutaeru01-config-close {
  font-size: 100%;
  display: block;
  position: absolute;
  top: 50%;
  right: 1em;
  transform: translateY(-50%);
  width: 1em;
  height: 1em;
  overflow: hidden;
  text-indent: -1000px;
  background: none;
  padding: 0px;
  border: none;
  cursor: pointer;
}
#body .tsutaeru01-config .tsutaeru01-config-header .tsutaeru01-config-close:before,
#body .tsutaeru01-config .tsutaeru01-config-header .tsutaeru01-config-close:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  background: #2b3095;
}
#body .tsutaeru01-config .tsutaeru01-config-header .tsutaeru01-config-close:before {
  transform: rotate(45deg);
}
#body .tsutaeru01-config .tsutaeru01-config-header .tsutaeru01-config-close:after {
  transform: rotate(-45deg);
}
/* .tsutaeru01-text */
.tsutaeru01-text {
  position: fixed;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background: #000;
  color: #FFF;
  text-align: left;
  font-size: 100%;
  padding: 20px;
  z-index: 99000;
}
.tsutaeru01-text-inner {
  line-height: 1.5;
  max-height: 10em;
  overflow: auto;
  padding: 5px;
}
.tsutaeru01-text-inner rt, .tsutaeru01-text-inner rp {
  font-size: 50%;
}
#body .tsutaeru01-text .tsutaeru01-text-close {
  font-size: 100%;
  display: block;
  position: absolute;
  top: 5px;
  right: 5px;
  width: 1em;
  height: 1em;
  overflow: hidden;
  text-indent: -1000px;
  background: none;
  padding: 0px;
  border: none;
  cursor: pointer;
}
#body .tsutaeru01-text .tsutaeru01-text-close:before, #body .tsutaeru01-text .tsutaeru01-text-close:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  background: #FFF;
}
#body .tsutaeru01-text .tsutaeru01-text-close:before {
  transform: rotate(45deg);
}
#body .tsutaeru01-text .tsutaeru01-text-close:after {
  transform: rotate(-45deg);
}
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-ruby,
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-easy {
	padding: 2px 4px;
	border: 1px solid #F4B1C7;
	border-radius: 4px;
	transition: .3s;
	background: #F4B1C7;
	color: #2b3095;
	text-decoration: none;
}
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-ruby:hover,
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-easy:hover {
	background: #FFD5E3;
	color: #9f0000;
}
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-ruby::before,
.h_top .h_toplist > li a.tsutaeru01-button.tsutaeru01-button-easy::before {
	display: none;
}

	@media only screen and (max-width: 1024px) {
		#body button.tsutaeru01-button.tsutaeru01-button-speech-start,
		#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config {
			width: calc(50% - 4px);
			padding: 12px 24px 12px 10px;
			margin: 2px;
			background: transparent;
			border: 0;
			border-right: 1px solid #F4B1C7;
			border-radius: 0;
			position: relative;
			text-align: inherit;
			color: #FFF;
		}
		#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config {
			border: 0;
		}
		#body button.tsutaeru01-button.tsutaeru01-button-speech-start::before,
		#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config::before {
			display: block;
			position: absolute;
			content: '';
			width: 6px;
			height: 6px;
			top: 1.15em;
			right: .68em;
			border: 6px solid transparent;
					border-left: 6px solid #FFF;
		}
		#body button.tsutaeru01-button.tsutaeru01-button-speech-start:hover,
		#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config:hover {
			color: #FFF;
			background: #797575;
		}
		#sidr ul.sidr_navi03 li.yomiage::before {display: none;}
	}

/**** ヘッダーメイン ****/
.head_in {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 0 12px 0 0;
	overflow: hidden;
}
.h_main {
	display: flex;
		align-items: center;
	padding: 0;
	overflow: hidden;
}
.h_main .h1-box {
	max-width: 500px;
	width: 100%;
}
.h_main .h1 {
	margin: 0 auto 0 -3px;
	max-width: 485px;
	width: 100%;
}
.h_main .h1 a {display: inline-block;}
.h_top .mainsite {
	margin: 0 auto 0 0;
	padding: 0 8px 0 12px;
}
.h_top .mainsite a {
	position: relative;
	display: block;
	background: transparent;
	border: 1px solid transparent;
	border-radius: 5px;
	font-size: 100%;
	padding: 2px 2px 2px 16px;
	max-width: 330px;
	width: fit-content;
	margin: 0 auto;
	transition: .3s;
	color: #FFF;
}
.h_top .mainsite a::before {
	display: block;
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	top: .55em;
	left: 2px;
	border-right: 2px solid #F4B1C7;
	border-bottom: 2px solid #F4B1C7;
	transform: rotate(-45deg);
	transition: .3s;
}
.h_main p.h1 {margin-right: 0;}
.h_main p.h1 a {
	display: flex;
	text-decoration: none;
	align-items: center;
}
.h_main p.h1 img {
	max-width: calc(100% - 30%);
	height: fit-content;
}
.h_main .h1 a .site_top {
	margin: 0 0 0 8px;
	padding: 4px 10px;
	background: #434040;
	border-radius: 4px;
	color: #FFF;
	text-shadow: 1px 1px 1px #434040,-1px 1px 1px #434040,1px -1px 1px #434040,-1px -1px 1px #434040,1px 0 1px #434040,0px 1px 1px #434040,-1px 0 1px #434040,0 -1px 1px #434040;
	text-align: center;
	max-width: calc(100% - 70%);
	height: fit-content;
	transition: .3s;
	font-size: 80%;
}
.h_main .h1 a:hover .site_top {
	background: #5e5858;
}
	@media only screen and (max-width: 1024px) {
		.head_in{
			padding: 0;
			width: 100%;
		}
		.h_main{
			padding: 0 70px 0 12px;
			position: relative;
			z-index: 1;
		}
		.h_main .h1 {
			width: 346px;
			margin-left: -15px;
		}
		.h_main p.h1 a {display: inline-block;}
		.h_main p.h1 img {
			max-width: unset;
			height: auto;
			width: 100%;
		}
		.h_main .h1 a .site_top {display: none;}
	}
	@media only screen and (max-width: 480px) {
		.h_main .h1 {
			width: 100%;
			max-width: 328px;
		}
		.h_main .h1 img {
			padding-top: 4px;
		}
	}
	@media only screen and (max-width: 320px) {
		.h_main .h1 {
			max-width: 238px;
		}
		.h_main .h1 img {padding-top: 11px;}
	}

/* 言語選択 */
.language{
	position: relative;
}
.lang_btn{
	margin: 0;
}
.lang_btn a{
	background: #fff;
	display: inline-block;
	border: 1px solid #ccc;
	border-radius: 2px;
	text-decoration: none;
	padding: 4px 10px;
	letter-spacing: 0;
	transition: all 0.2s;
}
.lang_btn a:hover{
	background: #efefef;
	transition: all 0.2s;
}
.language > div{
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	background: rgba(255,255,255);
	border: 1px solid #ccc;
	border-top: 0;
	border-bottom: 0;
	width: 100%;
	z-index: 100;
	border-radius: 0 0 4px 4px;
}
.lang_list li{
	border-bottom: 1px solid #ccc;
	padding: 0;
	margin: 0;
}
.h_top .h_toplist .lang_list li a{
	display: inline-block;
	padding: 2px;
	text-align: center;
	width: 100%;
	border: none;
}
.h_top .lang_btn.close a{
	padding: 2px 6px 2px 20px;
	position: relative;
	border-radius: 0 0 4px 4px;
	border: none;
	border-bottom: 1px solid #ccc;
	text-align: center;
}
.lang_btn.close a::before,
.lang_btn.close a::after {
	content: '';
	background: #3B4043;
	height: 1px;
	width: 12px;
	position: absolute;
	left: 5px;
	top: 50%;
	margin-top: 0;
	transform: rotate(-45deg);
}
.lang_btn.close a::after{
	transform: rotate(45deg);
}
/* グーグル言語 */
.goog-te-gadget-simple {
	display: flex !important;
}
#google_translate_element .goog-te-gadget-simple a {
	padding: 0;
	color: #222;
	text-shadow: none;
}
#google_translate_element .goog-te-gadget-simple a::before {display: none;}
#google_translate_element .goog-te-gadget-simple a:hover {
	color: #9f0000;
	text-shadow: none;
}
/* 検索ボックス */
.h_toplist .src_box {
	width: calc(100% - 12px);
	margin: 0 0 0 12px;
}
.src_box .q {
	float: left;
	width: calc(100% - 50px) !important;
	margin: 0;
	height: 26px !important;
	padding: 0 6px!important;
	border: 1px solid #FFF!important;
	border-right: none;
	border-radius: 5px 0 0 5px !important;
}
.h_toplist .src_box #search_button,
.src_box #search_button_sp {
	width: 50px;
	min-height: 26px;
	margin: 0;
	padding: 0;
	background: #F4B1C7;
	color: #222;
	font-size: 100%;
	cursor: pointer;
	border: 1px solid #F4B1C7;
	border-left: none;
	white-space: normal;
	border-radius: 0 5px 5px 0;
	display: block;
	transition: .3s;
}
.h_toplist .src_box #search_button:hover,
.src_box #search_button_sp:hover{
	background: #FFD5E3;
	color: #9f0000;
}
	@media only screen and (max-width: 1024px) {
		.h_toplist .src_box{
			display: none;
		}
		.src_box .q{
			width: calc(100% - 54px) !important;
			height: 40px !important;
			border-color: #848484 !important;
		}
		.src_box #search_button_sp{
			width: 54px;
			min-height: 40px;
			border-color: #848484;
		}
	}
/**** グローバルナビ ****/
.g_navi {
	background: transparent;
	letter-spacing: 0.1em;
	position: relative;
	overflow: hidden;
	z-index: 1;
	width: calc(100% - (500px + 24px));
	margin-left: auto;
}
.g_navi_in {
	width: 100%;
	margin: 0 auto;
	padding: 0 0 0 12px;
	display: flex;
}
.g_navi_in > li {
	position: relative;
	width: calc((100% - 12px) / 2);
	margin: 0 12px 0 0;
	display: flex;
}
.g_navi_in > li:last-child {
	margin-right: 0;
}
.g_navi_in > li:nth-child(1)::before {
	display: block;
	position: absolute;
	content: '';
	width: 1px;
	height: 60%;
	top: calc(50% - 30%);
	right: -6px;
	background: #222;
	border-radius: 10px;
}
.g_navi_in > li > a {
	display: block;
	position: relative;
	z-index: 2;
	background: transparent;
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	font-size: 120%;
	padding: 12px 8px;
	width: 100%;
	transition: all 0.3s;
	color: #333;
}
.g_navi_in > li > a b {
	position: relative;
	padding-left: 60px;
}
.g_navi_in > li > a b::before {
	display: block;
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	top: calc(50% - 20px);
	left: 0;
	background: url("img/pho_icon_navi.png") no-repeat;
	background-size: contain;
}
.g_navi_in > li > a:hover,
.g_navi_in > li.active > a {
	opacity: .8;
/*	color: #9f0000;*/
}
	@media only screen and (max-width: 1024px) {
		.g_navi{
			display: none;
		}
	}
/* 追従メニュー */
.clone-nav {
	background: rgba(255,255,255,0.9);
	position: fixed !important;
	left: 0;
	top: 0;
	max-width: 100%;
	width: 100%;
	transition: .4s;
	transform: translateY(-170%);
	z-index: 9999;
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
}
.is-show {
  transform: translateY(0);
}
.clone-nav .h_top_wrap{
	display: none;
}
.clone-nav .head_in{
	padding: 0 12px;
}
.clone-nav .h1{
	flex-shrink: 0;
	width: 230px;
}
.clone-nav .h1 img{
	width: 170px;
}
.clone-nav .h1 .go_home{
	display: none;
}
.clone-nav .h_shien{
	font-size: 90%;
}
.clone-nav .g_navi_in > li a{
	font-size: 80%;
	padding-top: 6px;
	padding-bottom: 4px;
	letter-spacing: 0;
}
.clone-nav .src_box .q,
.clone-nav .head_in .src_box #search_button{
	height: 32px;
	vertical-align: top;
}
.clone-nav:focus-within{
	transform: translateY(0);
}
	@media only screen and (max-width: 998px) {
		.clone-nav-in{
			flex-wrap: wrap;
			padding: 10px 0 0;
		}
		.clone-nav .h1{
			padding: 0 12px 10px;
			width: auto;
		}
		.clone-nav .h1 img{
			width: 250px;
		}
		.clone-nav .g_navi_in{
			width: 100%;
		}
	}
	@media only screen and (max-width: 1024px) {
		.clone-nav {
			display: none;
		}
	}
/**** スマホメニューに関するスタイル ****/
#menu_button{
	position: absolute;
	top: 0;
	right: 12px;
	z-index: 999;
}
#menu_button a{
	position: relative;
	background: #B95576;
	font-size: 70%;
	display: inline-block;
	text-decoration: none;
	letter-spacing: -0.5px;
	text-align: center;
	padding-top: 34px;
	min-height: 54px;
	width: 54px;
	z-index: 2;
	border-radius: 5px;
}
#menu_button a strong{
	color: #fff;
	text-shadow: 1px 1px 1px #B95576,-1px 1px 1px #B95576,1px -1px 1px #B95576,-1px -1px 1px #B95576,1px 0 1px #B95576,0px 1px 1px #B95576,-1px 0 1px #B95576,0 -1px 1px #B95576;
}
#menu_button a .icon_ham{
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -15px;
	display: inline-block;
	background: #fff;
	height: 3px;
	width: 30px;
	border-radius: 5px;
}
#menu_button a .icon_ham:before,
#menu_button a .icon_ham:after{
	content: '';
	position: absolute;
	left: 50%;
	margin-left: -15px;
	background: #fff;
	height: 3px;
	width: 30px;
	border-radius: 5px;
}
#menu_button a .icon_ham:before{
	top: 8px;
}
#menu_button a .icon_ham:after{
	top: 16px;
}
	@media print, screen and (min-width: 1025px) {
		#menu_button,
		#lan_drop{
			display: none !important;
		}
	}
#sidr {
	position: fixed;
	top: 0;
	height: 100%;
	z-index: 9999;
	width: 260px;
	overflow-x: hidden;
	overflow-y: auto;
	font-size: 100%;
	background: #434040;
	border-left: 4px solid #434040;
	box-sizing: border-box;
	color: #333;
}
	@media print, screen and (min-width: 1025px) {
		#sidr {
			display: none !important;
		}
	}
#sidr .sidr-inner {
  padding: 0 0 15px;
}
.sidr.right {
  left: auto;
  right: -260px;
}
#sidr .close{
	text-align: left;
	position: relative;
	padding: 0;
	margin: 0;
}
#sidr .close a{
	background: #000;
	display: inline-block;
	color: #fff;
	padding: 14px 10px 14px 32px;
	position: relative;
	width: 100%;
}
#sidr .close a:before,
#sidr .close a:after{
	content: '';
	background: #fff;
	height: 2px;
	width: 16px;
	position: absolute;
	left: 10px;
	top: 50%;
	margin-top: 0;
	transform: rotate(-45deg);
}
#sidr .close a:after{
	transform: rotate(45deg);
}
#sidr .src_box{
	padding: 10px;
	border-bottom: 3px solid #F4B1C7;
	background: #F4B1C7;
}
#sidr ul {
	display: block;
	border-bottom: 0;
	margin: 0;
	padding: 0;
}
#sidr ul li {
	background: none;
	border-bottom: 1px solid #F4B1C7;
	display: block;
	text-align: left;
	margin: 0;
	padding: 0;
	position: relative;
}
#sidr ul li::before{
	content: '';
	position: absolute;
	width: 6px;
	height: 6px;
	top: 1.15em;
	right: .8em;
	border: 6px solid transparent;
	border-left: 6px solid #FFF;
}
#sidr ul li:last-child{
	border-bottom: none;
}
#sidr ul li a{
	display: inline-block;
	padding: 12px 42px 12px 12px;
	text-decoration: none;
	width: 100%;
}
#sidr ul.sidr_navi li::before {display: none;}
#sidr ul.sidr_navi li a {
	position: relative;
	color: #FFF;
	background: #434040;
	transition: .3s;
}
#sidr ul li.mainsite{
	background: #F4B1C7;
	border-top: 0;
	font-size: 85%;
}
#sidr ul li.mainsite a {
	background: #F4B1C7;
}
#sidr ul.sidr_navi_sub{
	display: flex;
}
#sidr ul.sidr_navi_sub li{
	border-bottom: 0;
	font-size: 85%;
	width: 50%;
}
#sidr ul.sidr_navi_sub li a{
	letter-spacing: -0.01em;
}
#sidr ul.sidr_navi_sub li:nth-child(odd){
	border-right: 1px solid #007bbb;
}
/**** 支援機能 ****/
#sidr .side_shien{
	background: #FFE8EF;
}
#sidr ul.sidr_navi03{
	border-top: 0;
	border-bottom: 0;
	background: #6A6767;
}
#sidr ul.sidr_navi03 li{
	font-size: 85%;
	width: 100%;
	border-bottom: 1px solid #F4B1C7;
}
#sidr ul.sidr_navi03 li:last-child {
	border-bottom: 0;
}
#sidr ul.sidr_navi03 li a {color: #FFF;}
/*********** フッター ***********/
.main_footer {
	background: url("img/pho_bg-img04.png");
	overflow: hidden;
	width: 100%;
}
.insub .main_footer {background: #FFF;}
	@media only screen and (max-width: 1024px) {
		.main_footer {
			min-width: 100%;
		}
	}
/**** マイページのスタイル ****/
.online_strage_a {
	padding-bottom: 24px;
}
.online_strage_a .mypage {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 0 12px;
}
.online_strage_a .mypage_h2_wrapper {
	background-color: #88c9ea;
	padding-left: 16px;
	position: relative;
}
.online_strage_a .mypage_title {
	float: left;
	color: #fff;
	margin: 0;
	padding: 0;
	position: absolute;
	z-index: -1;
}
.online_strage_a .mypage_h2_wrapper p {
	float: right;
}
.online_strage_a .mypage_contents {
	background-color: #e8f4f9;
	padding: 4px 16px 16px;
}
.online_strage_a .mypage_list li {
	display: inline-block;
	font-size: 85%;
	margin-right: 8px;
}
.online_strage_a .mypage_list li p.online_strage_title {
	background: #fff;
	border: 1px solid #ccc;
	padding: 2px 8px;
	margin: 0;
	border-radius: 4px;
}
.online_strage_a .online_strage button {
	background: #fff;
	color: #333;
	font-size: 68.75%;
	padding: 2px 4px;
	margin: 12px 8px 12px 0;
	vertical-align: bottom;
}
#body .online_strage_a .online_strage button[type="button"]{
	background: #fff;
	color: #2b3095;
	font-size: 75%;
	padding: 4px 6px;
}
#body .online_strage_a .online_strage button[type="button"]:hover{
	background: #efefef;
	color: #9f0000;
}
	@media only screen and (max-width: 1024px) {
		.online_strage_a{
			padding: 0 10px 24px;
		}
		.online_strage_a .mypage{
			width: 100%;
		}
	}
/**** トップへ戻る ****/
.foot_modori {
	background: transparent;
}
.foot_modori .modoriin {
	position: relative;
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 0 12px;
	text-align: right;
}
.foot_modori a {
	position: absolute;
	display: inline-block;
	text-decoration: none;
	background: #434040;
	border: 2px solid #434040;
	border-bottom: 0;
	line-height: 1;
	margin-top: -60px;
	right: 12px;
	padding: 32px 30px 100px;
	font-size: 85%;
	border-radius: 100% 100% 0 0;
	color: #FFF;
	transition: .3s;
}
.foot_modori a::before {
	display: block;
	position: absolute;
	content: '';
	width: 20px;
	height: 8px;
	background: url("img/pho_page-back.png") no-repeat;
	background-size: contain;
	top: 14px;
	left: calc(50% - 11px);
}
.foot_modori a:hover {
	opacity: .8;
	text-shadow: 1px 1px 1px #040303,-1px 1px 1px #040303,1px -1px 1px #040303,-1px -1px 1px #040303,1px 0 1px #040303,0px 1px 1px #040303,-1px 0 1px #040303,0 -1px 1px #040303;
}
	@media only screen and (max-width: 1024px) {
		.foot_modori{
			padding: 0 10px;
		}
		.foot_modori .modoriin {
			width: 100%;
		}
	}
/**** メインフッター ****/
.foot_wrap {
	margin-top: 60px;
	background: #434040;
	padding: 0;
}
.foot {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 12px;
}
.foot_link {
	position: relative;
	padding: 0 0 28px;
	text-align: center;
}
.foot_link::before {
	display: block;
	position: absolute;
	content: '';
	width: 100vw;
	height: 1px;
	bottom: 0;
	left: calc(50% - 50vw);
	background: #FFF;
}
.foot_link li {
	padding: 0;
	display: inline-block;
	margin-left: 16px;
	margin-right: 16px;
}
.foot_link li a {
	position: relative;
	color: #FFF;
	text-shadow: 1px 1px 1px transparent,-1px 1px 1px transparent,1px -1px 1px transparent,-1px -1px 1px transparent,1px 0 1px transparent,0px 1px 1px transparent,-1px 0 1px transparent,0 -1px 1px transparent;
	transition: .3s;
	font-size: 85%;
}
.foot_link li a::after {
	display: block;
	content: '';
	position: absolute;
	width: 8px;
	height: 8px;
	top: .15em;
	left: -16px;
	border: 5px solid transparent;
	border-left: 8px solid #F4B1C7;
	transition: .3s;
}
.foot_link li a:hover::after {
	border-left-color: #FFF;
}
.foot_link.foot_link_bottom {
	padding-bottom: 18px;
}
.foot_link.foot_link_bottom::before,
.foot_link.foot_link_bottom li a::after {display: none;}
.foot_id {
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
}
.foot_id img {
	max-width: 115px;
	width: 100%;
	height: fit-content;
}
.foot .adress-box {
	width: calc(100% - (115px + 40px));
	margin: 0 0 0 auto;
	color: #FFF;
}
.foot .address {
	margin-top: 0;
	margin-bottom: 8px;
}
.foot .address a[href^="tel:"]{
	cursor: default;
	color: #FFF;
	text-decoration: none;
}
.foot_copy {
	background: #000;
	font-size: 85%;
	color: #fff;
	padding: 28px 12px;
	margin-top: 16px;
	text-align: center;
}
.foot_copyin {
	width: 1000px;
	margin: 0 auto;
}
	@media only screen and (max-width: 1024px) {
		.foot {
			padding: 10px;
			width: 100%;
		}
		.foot_id {
			margin-top: 24px;
		}
		.foot_copy {
			padding: 2px;
			text-align: inherit;
		}
		.foot_copyin{
			padding: 0 8px;
			width: 100%;
		}
		.foot .adress-box {
			width: 100%;
			margin-top: 12px;
		}
		.foot .address a[href^="tel:"]{
			cursor: pointer;
			text-decoration: underline;
		}
		.foot .address a[href^="tel:"]:hover {
			text-decoration: none;
		}
		.foot_link.foot_link_bottom {
			padding-bottom: 0;
		}
	}
	@media only screen and (max-width: 480px) {
		.foot_link.foot_link_bottom {
			text-align: inherit;
		}
		.foot_link.foot_link_bottom > li {
			margin-left: 0px;
		}
		.foot_link.foot_link_bottom > li:last-child {
			width: calc(100% - 16px);
		}
	}
/**** アコーディオンのスタイル ****/
.ac_display{
	display: none;
}
@media print, screen and (min-width: 1025px) {
	.ac_box{
		pointer-events: none !important;
	}
	.ac_box + div{
		display: block !important;
	}
}
@media only screen and (max-width: 1024px) {
	.ac_box h2{
		padding-right: 72px;
	}
	.ac_display{
		display: inline-block;
		position: absolute;
		top: 50%;
		margin: -14px 0 0;
		right: 12px;
		font-size: 72%;
		background: #434040;
		border: 1px solid #000;
		z-index: 100;
		border-radius: 5px;
	}
	.ac_display a{
		display: inline-block;
		position: relative;
		text-decoration: none;
		padding: 4px 4px 4px 18px;
		color: #FFF;
	}
	.ac_display::before,
	.ac_display::after{
		content: '';
		background: #FFF;
		position: absolute;
		left: 4px;
		top: 11px;
		height: 2px;
		width: 10px;
	}
	.ac_display::after{
		transform: rotate(90deg);
	}
	.ac_display:hover {
		background: #FFF;
	}
	.ac_display:hover a,
	.ac_display a:hover {
		color: #9f0000;
	}
	.ac_display:hover::before,
	.ac_display:hover::after {
		background: #9f0000;
	}
	.ac_box + div{
		display: none;
	}
	.ac_box{
		position: relative;
		width: 100%;
		overflow: hidden;
	}
	.ac_box.active p::after{
		display: none;
	}
}
/**** RSSアイコンのスタイル ****/
.rss_icon,
a.rss_icon,
a.rss_icon2{
	background: #FF8F21;
	display: inline-block;
	color: #fff;
	text-decoration: none;
	text-shadow: 1px 1px 1px #b45c00,-1px 1px 1px #b45c00,1px -1px 1px #b45c00,-1px -1px 1px #b45c00,1px 0 1px #b45c00,0px 1px 1px #b45c00,-1px 0 1px #b45c00,0 -1px 1px #b45c00;
	vertical-align: middle;
	padding: 5px 5px 5px 7px;
	line-height: 1.1;
	position: relative;
	vertical-align: middle;
}
.rss_icon,
a.rss_icon{
	font-size: 90%;
}
a.rss_icon2{
	font-size: 68.75%;
	padding: 3px 28px 1px 6px;
}
a.rss_icon2 span{
	display: block;
}
a.rss_icon img{
	margin-left: 4px;
	margin-top: -3px;
	height: auto;
	width: 16px;
	vertical-align: middle;
}
.rss_icon img{
	margin-left: 4px;
	margin-top: -3px;
	height: auto;
	width: 16px;
	vertical-align: middle;
}
a.rss_icon2 img{
	position: absolute;
	top: 50%;
	margin-top: -9px;
	right: 6px;
	height: auto;
	width: 16px;
	vertical-align: middle;
}