@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, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "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;
}
.all {
	background: url("img/bg_gikai_bg-img.png") repeat;
}
	@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;
}
/**** リンク ****/
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%;
}
.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, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "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;
}
.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: #fff;
	width: 100%;
	border-bottom: 4px solid #1A1A89;
}
	@media only screen and (max-width: 1024px) {
		.main_header{
			overflow: hidden;
			margin-bottom: -4px;
		}
	}
/**** ヘッダー上段リンク ****/
.h_top_wrap {
	width: calc(100% - 270px);
	font-size: 85%;
}
.h_top {
	width: 100%;
	margin: 0 auto;
	padding: 12px 0 4px 12px;
	display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
}
.h_top .h_toplist01 {
	display: flex;
	flex-wrap: wrap;
		align-items: center;
	margin: 4px auto 4px 0;
}
.h_top .h_toplist {
	display: flex;
	flex-wrap: wrap;
		align-items: center;
		justify-content: flex-end;
	margin: 0 0 12px 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: 4px 0 0 12px;
}
.h_top .h_toplist > li a {
	display: block;
	position: relative;
	background: transparent;
	text-decoration: none;
	padding: 0 0 0 10px;
	transition: .3s;
}
.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 #0275A9;
}
	@media only screen and (max-width: 1024px) {
		.h_top_wrap{
			display: none;
		}
	}
/**** ヘッダー下段リンク ****/
.h_toplist-down {
	width: 100%;
	display: flex;
/*	flex-wrap: wrap;*/
}
.h_toplist-down ul {
	align-self: center;
	margin: 0 0 0 auto;
}
.h_toplist-down ul li {
	margin: 0;
}
.h_toplist-down ul li a {
	display: block;
	position: relative;
	text-decoration: none;
	background: transparent;
	padding: 0 0 0 10px;
	transition: .3s;
}
.h_toplist-down ul li a::before {
	display: block;
	position: absolute;
	content: '';
	width: 8px;
	height: 8px;
	top: .45em;
	left: 0;
	border: 4px solid transparent;
	border-left: 6px solid #0275A9;
	transition: .3s;
}
.h_toplist-down ul li a:hover::before {
	border-left-color: #9f0000;
}
/* 色の反転 */
.bg_color{
	display: flex;
	align-items: center;
	margin: 0 2px;
}
.bg_tit{
	padding: 0;
	margin: 0 2px 0 0;
}
.bg_list{
	display: flex;
	align-items: center;
}
.bg_list li{
	padding: 0;
	margin: 0 0 0 4px;
}
.h_top .h_toplist .bg_list > li a{
	border: 1px solid #1A1A89;
	border-radius: 4px;
	background: #1A1A89;
	text-decoration: none;
	padding: 0 4px;
	color: #FFF;
}
.h_top .h_toplist .bg_list > li a::before {display: none;}
.h_top .h_toplist .bg_list > li:last-child a{
	background: #EDFDFD;
	border-color: #8AB9B9;
}
.h_top .h_toplist .bg_list > li a:hover {
	background: #FFF;
	color: #9f0000;
}

/* フォントサイズ */
.font_size, .font_tit, .font, .font_list, .font_list li {
	float: left;
}
.font_size {
/*	margin-left: 16px;*/
}
.font_tit {
	margin: 1px 2px 0 0;
}
.font_list li {
	margin: 0 0 0 4px;
}
.h_top .h_toplist .font_list > li a {
	border: 1px solid #1A1A89;
	border-radius: 4px;
	background: #1A1A89;
	text-decoration: none;
	padding: 0 4px;
	color: #FFF;
}
.h_top .h_toplist .font_list > li a::before {display: none;}
.h_top .h_toplist .font_list > li:nth-child(2) a {
	background: #EDFDFD;
	border-color: #8AB9B9;
}
.h_top .h_toplist .font_list > li a:hover {
	background: #FFF;
	color: #9f0000;
}
/**** ヘッダーメイン ****/
.head {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 0 12px;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
}
.head_in {
	display: inline-block;
}
.h_main {
	width: 270px;
	display: flex;
	flex-wrap: wrap;
		align-items: center;
	padding: 0 0 12px;
	overflow: hidden;
}
.h_main .h1 {
	position: relative;
	margin: 0;
	width: 270px;
	background: url("img/gik_bg-logo.png") no-repeat;
	background-size: contain;
}
.h_main .h1::before {
	position: absolute;
	display: block;
	content: '';
	width: 250px;
	height: 94%;
	background: #FFF;
	border-radius: 0 0 1em 0;
	top: 0;
	left: 0;
	z-index: 0;
}
.h_main .h1 img {
	position: relative;
	z-index: 1;
	margin: 0 13px 0 -13px;
}
.h_main .mainsite {
	margin: 12px auto 0;
}
.h_main .mainsite a {
	display: block;
	border: 1px solid #1A1A89;
	background: #1A1A89;
	color: #fff;
	font-size: 85%;
	padding: 3px 10px 2px;
	text-decoration: none;
	border-radius: 4px;
	transition: .3s;
}
.h_main .mainsite a:hover{
	background: #EDFDFD;
	color: #9f0000;
}
	@media only screen and (max-width: 1024px) {
		.head_in{
			padding: 0;
			width: 100%;
		}
		.h_main{
			position: relative;
			z-index: 1;
			width: 240px;
			padding-left: 8px;
		}
		.h_main .h1 {
			width: 240px;
		}
		.h_main .mainsite{
			display: none;
		}
		.h_main .h1::before {
			width: 212px;
		}
		.h_main .h1 img {
			margin: 0 0 0 -14px;
		}
	}
	@media only screen and (max-width: 390px) {
		.h_main {
			width: calc(100% - 76px);
		}
		.h_main .h1::before {
			width: 92%;
		}
	}

/*** 伝える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 #8AB9B9;
  border-radius: 4px;
  display: block;
  text-align: center;
  cursor: pointer;
  margin: 0;
  padding: 0 4px;
  text-decoration: none;
  font-size: 100%;
	background: #EDFDFD;
	transition: .3s;
	color: #2b3095;
	font-family: "ヒラギノ角ゴ ProN W3", "HiraKakuProN-W3";
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start {
	min-height: 22px;
}
#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;
}
#body button.tsutaeru01-button.tsutaeru01-button-speech-start:hover,
#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config:hover {
	background: #FFF;
}
#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: #FFF;
	background: -moz-linear-gradient(90deg, #1A1A89 0%, #1A1A89 50%, #2B2B91 50%, #2B2B91 100%);
	background: -webkit-linear-gradient(90deg, #1A1A89 0%, #1A1A89 50%, #2B2B91 50%, #2B2B91 100%);
	background: linear-gradient(0deg, #1A1A89 0%, #1A1A89 50%, #2B2B91 50%, #2B2B91 100%);
  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: #FFF;
  background: #1A1A89;
  padding: 0.5em 1em;
  border-radius: 3px;
  cursor: pointer;
	border: 1px solid #1A1A89;
	transition: .3s;
}
#body .tsutaeru01-config .tsutaeru01-config-footer .tsutaeru01-config-button-close:hover {
	background: #FFF;
	color: #860000;
}
.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: #FFF;
}
#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: 0 4px;
	border: 1px solid #8AB9B9;
	border-radius: 4px;
	transition: .3s;
	background: #EDFDFD;
}
.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: #FFF;
}
.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 #1A1A89;
			border-radius: 0;
			color: #2b3095;
			position: relative;
			text-align: inherit;
		}
		#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: .65em;
			border: 6px solid transparent;
			border-left: 6px solid #002A80;
			transform: none;
		}
		#body button.tsutaeru01-button.tsutaeru01-button-speech-start:hover,
		#body button.tsutaeru01-button.tsutaeru01-button-config.tsutaeru01-button-speech-config:hover {
			color: #860000;
			background: transparent;
		}
		#sidr ul.sidr_navi03 li.yomiage::before {display: none;}
	}

/* 言語選択 */
.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 !important;
}
#google_translate_element .goog-te-gadget-simple a::before {display: none;}
/* 検索ボックス */
.h_main .src_box {
	width: 38%;
	margin: 0 0 0 auto;
}
.src_box .q {
	float: left;
	width: calc(100% - 80px) !important;
	margin: 0;
	height: 40px !important;
	padding: 0 6px!important;
	border: 1px solid #aaa!important;
	border-right: none;
}
.h_top .src_box #search_button,
.src_box #search_button_sp {
	width: 80px;
	min-height: 40px;
	margin: 0;
	padding: 0 4px 0 28px;
	background: #1A1A89 url("img/icon_src.png") no-repeat 12px center;
	color: #fff;
	font-size: 80%;
	cursor: pointer;
	border: 1px solid #1A1A89;
	border-left: none;
	white-space: normal;
	border-radius: 0;
	display: block;
	text-shadow: 1px 1px 1px #1A1A89,-1px 1px 1px #1A1A89,1px -1px 1px #1A1A89,-1px -1px 1px #1A1A89,1px 0 1px #1A1A89,0px 1px 1px #1A1A89,-1px 0 1px #1A1A89,0 -1px 1px #1A1A89;
}
.h_top .src_box #search_button {
	font-size: 112%;
}
.h_top .src_box #search_button:hover,
.src_box #search_button_sp:hover{
	background: #1D1D5D url("img/icon_src.png") no-repeat 12px center;
}
.h_top .src_box {
	max-width: 300px;
	width: 100%;
	margin: 0 0 0 12px;
}
	@media only screen and (max-width: 1024px) {
		.h_main .src_box{
			display: none;
		}
		.src_box .q{
			width: calc(100% - 54px) !important;
		}
		.src_box #search_button_sp{
			width: 54px;
		}
	}
/**** グローバルナビ ****/
.g_navi {
	background: #007bbb;
	letter-spacing: 0.1em;
	position: relative;
	overflow: hidden;
	z-index: 1;
}
.g_navi_in {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 0 12px;
	display: flex;
}
.g_navi_in > li {
	width: 20%;
	border-right: 1px solid #fff;
	margin: 0;
	display: flex;
}
.g_navi_in > li:nth-of-type(1) {
	border-left: 1px solid #fff;
}
.g_navi_in > li > a {
	display: block;
	position: relative;
	z-index: 2;
	background: #007bbb;
	border: 2px solid #007bbb;
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	font-size: 120%;
	padding-top: 13px;
	padding-bottom: 11px;
	width: 100%;
	transition: all 0.3s;
	color: #fff;
}
.g_navi_in > li > a:hover, .g_navi_in > li.active > a {
	background-color: #fff;
	border-color: #007bbb;
	color: #007bbb;
}
	@media only screen and (max-width: 1024px) {
		.g_navi{
			display: none;
		}
	}
/* 追従メニュー */
.clone-nav.is-show {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;
}
#menu_button a{
	position: relative;
	background: #1A1A89;
	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;
}
#menu_button a strong{
	color: #fff;
	text-shadow: 1px 1px 1px #1A1A89,-1px 1px 1px #1A1A89,1px -1px 1px #1A1A89,-1px -1px 1px #1A1A89,1px 0 1px #1A1A89,0px 1px 1px #1A1A89,-1px 0 1px #1A1A89,0 -1px 1px #1A1A89;
}
#menu_button a .icon_ham{
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -15px;
	display: inline-block;
	background: #fff;
	height: 3px;
	width: 30px;
}
#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;
}
#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: #1A1A89;
	border-left: 4px solid #1A1A89;
	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: #00123E;
	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 #1A1A89;
	background: #FFF;
}
.src_box #search_button_sp {
	padding: 0 4px 0 17px;
	background: #1A1A89 url("img/icon_src.png") no-repeat 4px center;
	background-size: 12px;
	font-size: 90%;
}
.src_box #search_button_sp:hover {
	background: #1D1D5D url("img/icon_src.png") no-repeat 4px center;
	background-size: 12px;
}
#sidr ul {
	display: block;
	border-bottom: 3px solid #FFF;
	margin: 0;
	padding: 0;
}
#sidr ul li {
	background: none;
	border-bottom: 1px solid #FFF;
	display: block;
	text-align: left;
	margin: 0;
	padding: 0;
	position: relative;
}
#sidr ul li::before{
	display: block;
	content: '';
	position: absolute;
	width: 6px;
	height: 6px;
	top: 1.15em;
	right: .8em;
	border: 6px solid transparent;
	border-left: 6px solid #002A80;
	transform: none;
}
#sidr ul li:last-child{
	border-bottom: none;
}
#sidr ul.sidr_navi {
	border-top: 2px solid #FFF;
}
#sidr ul li a{
	display: inline-block;
	padding: 12px 24px 12px 12px;
	text-decoration: none;
	width: 100%;
}
#sidr ul.sidr_navi li {
	border-bottom: 0;
}
#sidr ul li a b {
	color: #FFF;
}
#sidr ul li.mainsite{
	background: #1A1A89;
	border-top: 2px solid #FFF;
	font-size: 85%;
}
#sidr ul li.mainsite::before {
	border-left-color: #FFF;
}
#sidr ul li.mainsite a strong {
	color: #FFF;
	font-family: "ヒラギノ角ゴ ProN W5", "HiraKakuProN-W5";
}
#sidr ul.sidr_navi_sub{
	display: flex;
	border-top: 1px solid #1A1A89;
	border-bottom-color: #1A1A89;
}
#sidr ul.sidr_navi_sub li{
	border-bottom: 0;
	font-size: 85%;
	width: 100%;
}
#sidr ul.sidr_navi_sub li a{
	letter-spacing: -0.01em;
}
/**** 支援機能 ****/
#sidr .side_shien{
	background: #FFF;
}
#sidr ul.sidr_navi03{
	border-top: 3px solid #1A1A89;
	border-bottom: 0;
}
#sidr ul.sidr_navi03 li{
	font-size: 85%;
	width: 100%;
	border-color: #1A1A89;
}
#sidr ul.sidr_navi03 li:last-child {
	border-bottom: 0;
}
/*********** フッター ***********/
.main_footer {
	background: #fff;
	overflow: hidden;
	width: 100%;
	margin-top: 30px;
}
	@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;
	position: absolute;
	top: 12px;
	right: 12px;
}
.foot_modori .modoriin {
	width: 100%;
	margin: 0 auto;
	padding: 0 12px;
	text-align: right;
}
.foot_modori a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	background: #FFF;
	border: 2px solid #FFF;
	line-height: 1;
	padding: 34px 10px 10px;
	font-size: 85%;
	border-radius: 5px;
	transition: .3s;
}
.foot_modori a::before {
	display: block;
	content: '';
	position: absolute;
	top: .5em;
	left: calc(50% - 12px);
	width: 24px;
	height: 14px;
	background: url("img/gik_page-back.png") no-repeat;
	background-size: contain;
}
/*
.foot_modori a:hover {
	border-color: #9f0000;
}
*/
.foot_modori a:hover::before {
	background: url("img/gik_page-back2.png") no-repeat;
	background-size: contain;
}
	@media only screen and (max-width: 1024px) {
		.foot_modori{
			padding: 0 10px;
		}
		.foot_modori .modoriin {
			width: 100%;
		}
	}
	@media only screen and (max-width: 499px) {
		.foot_modori{
			top: 2px;
		}
	}
/**** メインフッター ****/
.foot_wrap {
	border-top: 4px solid #1A1A89;
	background: #FFF;
	padding: 0;
}
.foot {
	max-width: 1224px;
	width: 100%;
	margin: 0 auto;
	padding: 12px;
	position: relative;
}
.foot_link li {
	padding: 0;
	display: inline-block;
	position: relative;
	margin-left: 16px;
	margin-right: 16px;
}
.foot_link li::after {
	display: block;
	content: '';
	position: absolute;
	top: .4em;
	left: -16px;
	width: 6px;
	height: 6px;
	border-right: 2px solid #999;
	border-bottom: 2px solid #999;
	transform: rotate(-45deg);
}
.foot_id {
	max-width: 58%;
	margin: 8px auto 0 0;
}
.foot .address {
	margin-top: 8px;
	display: flex;
	align-items: flex-start;
}
.foot .address span.ad_p-box {
	display: flex;
	flex-wrap: wrap;
	width: calc(100% - 50px);
	margin: 3.5px auto 0 0;
}
.foot .address a[href^="tel:"]{
	cursor: default;
	color: #222;
	text-decoration: none;
}
.foot .address b {
	font-family: "ヒラギノ角ゴ ProN W5", "HiraKakuProN-W5";
}
.foot .address .small {
	margin: 3px 0 0 8px;
}
.foot .address .small.tel {
	margin-left: 0;
	width: 100%;
}
.foot_copy {
	background: #FFF;
	font-size: 85%;
	padding: 8px 12px;
	margin-top: 8px;
	text-align: end;
}
.foot_copyin {
	width: 1000px;
	margin: 0 auto;
	padding-right: 12em;
}
	@media only screen and (max-width: 1024px) {
		.foot {
			padding: 10px;
			width: 100%;
		}
		.foot_copyin{
			padding: 0 10px;
			width: 100%;
		}
		.foot .address a[href^="tel:"]{
			cursor: pointer;
			color: #2b3095;
			text-decoration: underline;
		}
		.foot_copy {text-align: left;}
	}
	@media only screen and (max-width: 768px) {
		.foot_id {
			max-width: unset;
			width: 75%;
			margin-top: 34px;
		}
	}
	@media only screen and (max-width: 499px) {
		.foot_id {
			width: 100%;
			margin-top: 58px;
		}
	}
	@media only screen and (max-width: 390px) {
		.foot .address .small {
			margin-left: 0;
		}
	}
/**** アコーディオンのスタイル ****/
.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: #1A1A89;
		border: 1px solid #1A1A89;
		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_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;
}