@charset "utf-8";
/*------------------------------------------------------------------------------
[1] レイアウト[ 配置 + 書式設定その他 ]
[2] 詳細デザイン
------------------------------------------------------------------------------*/
/*******************************************************************************
[1] レイアウト[ 配置 + 書式設定その他 ]
*******************************************************************************/
/*==============================================================================
	配置
==============================================================================*/

/*==============================================================================
	書式設定その他
==============================================================================*/
body,input,select,textarea,button{
	font-family:"BIZ UDPGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-weight:normal;
	letter-spacing:.075em;
}
/*******************************************************************************
[2] 詳細デザイン
*******************************************************************************/
/*==============================================================================
	ヘッダ
==============================================================================*/
#header{
	margin-top:0px;
}
#tlogowrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap:wrap;
	padding: 15px;
}
#tlogo {
	line-height: 1;
}
#tlogo img{
	width: 140px;
	vertical-align: top;
}
#header #headerlinkwrap{
	width:calc(100% - 170px);
	display: flex;
}
#header #headerlink .flexstyle1 li{
	width:100%;
}
#header #headerlink .flexstyle1 li a{
	padding: 0.5em 0.5em;
	font-size:90%;
	border-radius: 10px;
	transition:none;
}
#header #headerlink .flexstyle1 li a img{
	margin-bottom:5px;
	width:28px;
	height:auto;
}
#header .kinkyuinfo{
	margin-top:10px;
	width:100%;
}
#header .kinkyuinfo a {
	position: relative;
	display: block;
	padding: 0.75em 1.5em 0.75em 2.5em;
	border: 2px solid #B40000;
	border-radius: 10px;
	background: #FEEDEB url(images/header/kinkyuicon.png) 0.5em center / 1.8em auto no-repeat;
	color: #B40000;
	font-weight: 700;
	font-size: 0.9em;
	text-decoration: none;
}
#header .kinkyuinfo a::after {
	display: block;
	content: "";
	position: absolute;
	right: 0.5em;
	top: 50%;
	width: 0.45em;
	height: 0.45em;
	border-right: 2px solid #B40000;
	border-bottom: 2px solid #B40000;
	transform: translateY(-50%) rotate(-45deg);
}
/*==============================================================================
	ページ遷移
==============================================================================*/

/*------------------------------------------------------------------------------
	このページのトップへ
------------------------------------------------------------------------------*/
#guide p.pagetop{
    display: block;
    clear: both;
    text-align: right;
    position: fixed;
    right: 10px;
    bottom: 55px;
    z-index: 10000;
}
/*------------------------------------------------------------------------------
	ページ戻り
------------------------------------------------------------------------------*/
#guide ul li a.pageback{
	margin-right:15px;
	padding-left:20px;
	background:url(images/page/mark_pageback.png) no-repeat left center;
}
#guide ul li a.pagehome{
	padding-left:20px;
	background:url(images/page/mark_pagehome.png) no-repeat left center;
}
/*------------------------------------------------------------------------------
	表示切替
------------------------------------------------------------------------------*/
#guide .viewmode{
	margin-bottom:20px;
	display:inline-block;
	font-size:95%;
}
#guide .viewmode dl,#guide .viewmode dt,#guide .viewmode dd{
	display:inline-block;
}
#guide .viewmode dl::after{
	content:"";
	display:block;
	clear:both;
}
#guide .viewmode dl{
	margin-left:10px;
	vertical-align:middle;
}
#guide .viewmode dt{
	padding:5px 15px 5px 15px;
	display:inline-block;
	vertical-align:middle;
	font-weight: bold;
}
#guide .viewmode dd{
	vertical-align:middle;
	border: 1px solid #CCCCCC;
	overflow:hidden;
	border-radius: 5px;
}
#guide .viewmode ul{
	margin:0px;
	display:table;
	list-style-type:none;
}
#guide .viewmode ul li{
	display: table-cell;
	text-align:center;
	white-space: nowrap;
}
#guide .viewmode dd a{
	padding:8px 25px 8px 25px;
	display:block;
	color: #222;
}
#guide .viewmode a#viewmode_pc{
	border-right:1px solid #CCC;
	background:#FFF;
	text-decoration: none;
}
#guide .viewmode a#viewmode_smp{
	border: none;
	background:#EEEEEE;
}
/*==============================================================================
	フッタ
==============================================================================*/
#footerbg,#topfooterbg{
	padding-top:400px;
	position:relative;
	background:url(images/footer/footer_img_sp.svg) center 20px / 410px auto no-repeat,#F2DEBC url(images/footer/footer_bg.svg) top center repeat-x;
	overflow:hidden;
}
/*------------------------------------------------------------------------------
	フッタイラスト
------------------------------------------------------------------------------*/
#footerbg::before,#topfooterbg::before{
	content:"";
	width: 145px;
	height: 154px;
	position:absolute;
	left:0;
	top: 220px;
	background:url(images/footer/seaweed_left.png) center center / 100% auto no-repeat;
}
#footerbg::after,#topfooterbg::after{
	content:"";
	width: 140px;
	height: 110px;
	position:absolute;
	right:0;
	top: 240px;
	background:url(images/footer/seaweed_right.png) center center / 100% auto no-repeat;
}
/*------------------------------------------------------------------------------
	フッタメニュー
------------------------------------------------------------------------------*/
#footernavi,#topfooternavi{
}
#footernavi ul,#topfooternavi ul{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	list-style-type:none;
}
#footernavi ul li,#topfooternavi ul li{
	width: calc((100% - 8px) / 2);
}
#footernavi ul li a,#topfooternavi ul li a{
	display: flex;
	align-items: center;
	position: relative;
	height: 100%;
	padding: 0.75em 1.5em;
	background: #fff;
	border-radius: 4em;
	color: #222;
	text-decoration: none;
	box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
	box-sizing: border-box;
}
#footernavi ul li a::before, #topfooternavi ul li a::before{
    position:absolute;
    content:'';
    right: 1em;
    top: 50%;
    width: 0.5em;
    height: 1em;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 100% auto;
    background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%227.638%22%20height%3D%2211.543%22%20viewBox%3D%220%200%207.638%2011.543%22%3E%20%3Cpath%20d%3D%22M1.3%2C3.574l4.487%2C3.85L1.3%2C11.274a1.092%2C1.092%2C0%2C0%2C0%2C1.423%2C1.658L8.181%2C8.253a1.092%2C1.092%2C0%2C0%2C0%2C0-1.658L2.728%2C1.916A1.092%2C1.092%2C0%2C0%2C0%2C1.3%2C3.574Z%22%20transform%3D%22translate(-0.924%20-1.652)%22%20fill%3D%22%230863be%22%2F%3E%3C%2Fsvg%3E');
}
/*------------------------------------------------------------------------------
	フッター
------------------------------------------------------------------------------*/
#footer{
	padding: 0px 15px 25px;
}
#footer address{
	font-style:normal;
}
#add{
	margin-bottom:15px;
}
#addlink{
}
#add h2{
	margin-bottom:10px;
	font-size: 1.32em;
	text-align:left;
}
#addlink ul{
	display: flex;
	list-style-type:none;
}
#addlink ul li{
	margin-left:10px;
	width:calc(100% / 3);
}
#addlink ul li a{
  padding-top: 60px;
  padding-bottom: 10px;
  width: 100%;
  height: 100%;
  display: flex;
  color:#222;
  line-height: 1.2;
  flex-wrap: wrap;
  text-decoration: none;
  text-align: center;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
	border:1px solid #CCC;
	transition:all .6s;
}
#addlink ul li:nth-of-type(1) a{
	background:#efefef url("images/footer/footerlink_01.png") no-repeat top 8px center;
}
#addlink ul li:nth-of-type(2) a{
	background:#efefef url("images/footer/footerlink_02.png") no-repeat top 8px center;
}
#addlink ul li:nth-of-type(3) a{
	background:#efefef url("images/footer/footerlink_03.png") no-repeat top 8px center;
}
#copy{
	margin: 2.5em 1em 0px;
	font-size: 0.88em;
	letter-spacing:0.04em;
}
/*==============================================================================
	左メニュー
==============================================================================*/
#menu{
	margin:0px auto 20px auto;
	padding:0 20px;
	width:100%;
	background:#FFFFFF;
	border-top:3px solid #0863BE;
	border-bottom:3px solid #0863BE;
	box-sizing:border-box;
}
/*------------------------------------------------------------------------------
	見出しh2
------------------------------------------------------------------------------*/
#menu h2 a, #menu h2 span.h2span{
	padding:15px 0 15px 10px;
	margin-right:45px;
	display:block;
	color:#222;
	text-align: left;
	font-size:110%;
	cursor:pointer;
}
#menu h2{
	position:relative;
}
#menu h2.plus::before,
#menu h2.minus:before{
	content:'';
	width:14px;
	height:14px;
	box-sizing:border-box;
	position:absolute;
	top:calc(.9em - 10px + 15px);
	right:15px;
	border-top:solid 4px #0863BE;
	border-right:solid 4px #0863BE;
	transform:rotate(135deg);
	transition:all .3s;
	pointer-events:none;
}
#menu h2.minus:before{
	top:calc(.9em - 6px + 15px);
	transform:rotate(-45deg);
}
/* lang属性用 */
#menu h2 span.h2span span{
	padding:0px;
}
/*------------------------------------------------------------------------------
	リンクなし　セパレータ
------------------------------------------------------------------------------*/
#menu h3.separator{
	margin:0px;
	padding:13px 5px 13px 8px;
	background:#E3F6F9;
	border-top:1px solid #A3E3EE;
}
#menu h4.separator,#menu h5.separator,#menu h6.separator{
	margin:0px 0px 0px 10px;
	padding:13px 5px 13px 6px;
	background:#E3F6F9;
	border-top:1px solid #A3E3EE;
}
/*------------------------------------------------------------------------------
	詳細メニュー　h3 h4 ul 同じリスト風デザイン
------------------------------------------------------------------------------*/
#menu h3{
	margin:0px;
	background:#FFF;
	border-bottom:none;
}
#menu h4{
	margin:0px;
	font-weight:normal;
	background:#FFF;
	border-bottom:none;
}
#menu h5{
	margin-left:10px;
	font-weight:normal;
	background:#FFF;
	border-bottom:none;
}
#menu h3 a{
	padding:14px 5px 14px 23px;
	color:#222;
	background:#D2F1F7;
	border-top:1px solid #A3E3EE;
	position:relative;
}
#menu h3 a::before{
	width:4px;
	height:calc(100% - 28px);
	content:"";
	position:absolute;
	top:14px;
	left:8px;
	background:#0863BE;
	border-radius:4px;
}
#menu h4 a{
	padding:14px 5px 14px 23px;
	color:#222;
	border-top:1px solid #A3E3EE;
	position:relative;
}
#menu h5 a{
	padding:14px 5px 14px 23px;
	color:#222;
	border-top:1px solid #A3E3EE;
	position:relative;
}
#menu h4 a::before,
#menu h5 a::before{
	content:'';
	width:8px;
	height:8px;
	box-sizing:border-box;
	position:absolute;
	top:calc(.9em - 6px + 14px);
	left:8px;
	border-top:solid 2px #0863BE;
	border-right:solid 2px #0863BE;
	transform:rotate(135deg);
}
#menu ul li:not([class]) a{
	padding:14px 5px 14px 23px;
	color:#222;
	border-top:1px solid #A3E3EE;
	position:relative;
}
#menu ul li:not([class]) a::before,
#menu ul li.choice::before{
	content:'';
	width:8px;
	height:8px;
	box-sizing:border-box;
	position:absolute;
	top:calc(.9em - 6px + 14px);
	left:8px;
	border-top:solid 2px #0863BE;
	border-right:solid 2px #0863BE;
	transform:rotate(45deg);
}
#menu ul li.choice{
	padding:14px 5px 14px 23px;
	display:block;
	position:relative;
	color:#FFF;
	background:#0863BE;
	border-top:1px solid #A3E3EE;
}
#menu ul li.choice::before{
	border-color:#FFF;
}
/*------------------------------------------------------------------------------
	入れ子リスト
------------------------------------------------------------------------------*/
#menu ul.lmenu li{
	margin-left:10px;
}
#menu ul.lmenu li a{
	border-top:1px solid #A3E3EE;
	border-bottom:none;
	position:relative;
}
#menu ul.lmenu li a::before,
#menu ul.lmenu li.choice::before{
	width:5px;
	height:5px;
	content:'';
	position:absolute;
	top:calc(.9em - 3px + 14px);
	left:8px;
	background-color:#0863BE;
	border:none;
	border-radius:50%;
}
#menu ul.lmenu li.choice{
	display:block;
	color:#FFF;
	background-color:#0863BE;
	border-top:1px solid #A3E3EE;
	border-bottom:none;
}
#menu ul.lmenu li.choice::before{
	background:#FFF;
}
/*==============================================================================
	ページ下部ナビ
==============================================================================*/
#jssmpbtmnavi{
	margin:0;
	padding:0;
	width:100%;
	position:fixed;
	bottom:0px;
	left:0;
	z-index:9999;
	background:#0863BE;
	box-sizing: border-box;
}
#jssmpbtmnavi > ul{
	display:flex;
	justify-content:space-between;
	list-style:none;
}
#jssmpbtmnavi > ul > li{
	width:25%;
	position: relative;
	box-sizing:border-box;
}
#jssmpbtmnavi > ul > li::before{
	content: "";
	display: block;
	position: absolute;
	top: 6px;
	left: 0px;
	bottom: 4px;
	width: 1px;
	background: #FFF;
}
#jssmpbtmnavi > ul > li > a,
#jssmpbtmnavi > ul > li .hnmenu{
	display: block;
	width: 100%;
	margin: 0px;
	padding: 9px 0px 40px;
	color: #fff;
	text-align: center;
	font-size: 0.76em;
	border: none;
	box-sizing: border-box;
	text-decoration: none;
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center bottom 10px;
	cursor: pointer;
	line-height: 1.5;
}
#jssmpbtmnavi ul li#jssmpbtmnavi01 {
	order: 2;
}
#jssmpbtmnavi ul li#jssmpbtmnavi01 .hnmenu {
	background-image: url(images/smp/menu.svg);
}
#jssmpbtmnavi ul li#jssmpbtmnavi02 {
	order: 1;
}
#jssmpbtmnavi ul li#jssmpbtmnavi02 a {
	background-image: url(images/smp/home.svg);
}
#jssmpbtmnavi ul li#jssmpbtmnavi02::before {
	display: none;
}
#jssmpbtmnavi ul li#jssmpbtmnavi02 .hnmenu {
	background-image: url(images/smp/icon02.png);
	background-color: #BB4424;
}
#jssmpbtmnavi ul li#jssmpbtmnavi03 {
	order: 3;
}
#jssmpbtmnavi ul li#jssmpbtmnavi03 .hnmenu {
	background-image: url(images/smp/search.svg);
}
#jssmpbtmnavi ul li#jssmpbtmnavi04 {
	order: 4;
}
#jssmpbtmnavi ul li#jssmpbtmnavi04 p {
	height: 100%;
}
#jssmpbtmnavi ul li#jssmpbtmnavi04 a {
	display: block;
	height: 100%;
	padding-top: 9px;
	background-image: url(images/smp/pagetop.svg);
	background-color: transparent;
	background-repeat: no-repeat;
	background-position: center bottom 10px;
	color: #fff;
	text-decoration: none;
	font-size: 0.76em;
	box-sizing: border-box;
	text-align: center;
	line-height: 1.5;
}
#jssmpbtmnavi ul li .hnmenu.choice {
	color: #222;
	background-color: #D2F1F7;
	background-image: url(images/smp/close.svg) !important;
}
#jssmpbtmnavi ul li#jssmpbtmnavi02 .hnmenu.choice {
	color: #222;
	background-color: #D2F1F7;
	background-image: url(images/smp/close.svg) !important;
}
/*------------------------------------------------------------------------------
	ページ下部ナビopen
------------------------------------------------------------------------------*/
body.open {
	overflow: hidden;
}
#smpmenu{
	position: relative;
	list-style-type: none;
	text-align: right;
}
#gnavismp,
#emergencymenu,
#smpmenup1menu {
	margin:0px 0px 0px 0px;
	padding: 0px 0px 30px;
	width:100%;
	display:none;
	position:fixed;
	bottom: 0;
	left: 0;
	background-color: #D2F1F7;
	z-index:1000;
	box-sizing:border-box;
	text-align: center;
	overflow-y: scroll;
	line-height: 1.5;
}
/*	いざという時に
------------------------------------------------------------------------------*/
#emergencymenu{
	padding: 20px 10px;
}
#emergencymenu .flexstyle1{
	margin: 0px 0px 30px;
	gap: 10px;
}
#emergencymenu .flexstyle1 li{
	width: calc((100% - 10px) / 2);
	margin: 0px;
	background: none;
}
#emergencymenu .flexstyle1 li a{
	padding: 20px 10px 10px;
	background-color: #BB4424;
	box-shadow: none;
	font-size: 1.21em;
}
#emergencymenu .flexstyle1 li a img{
	margin: 0px auto 10px;
}
/*	util2
------------------------------------------------------------------------------*/
#util2{
	margin-bottom: 16px;
	text-align:left;
}
/*==============================================================================
	検索
==============================================================================*/
/*------------------------------------------------------------------------------
	リセットCSS（アンケートシステム）
------------------------------------------------------------------------------*/
#sitesearch.ui-widget,#sitesearch.ui-widget input,#sitesearch.ui-widget select,#sitesearch.ui-widget textarea,#sitesearch.ui-widget button{
	font-family:"BIZ UDPGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
}
#sitesearch.ui-widget.ui-widget-content,
#sitesearch .ui-widget-header,
#sitesearch .ui-widget-content,
#sitesearch .ui-state-default,
#sitesearch .ui-widget-content .ui-state-default,
#sitesearch .ui-widget-header .ui-state-default,
#sitesearch .ui-button,
#sitesearch .ui-button.ui-state-disabled:hover,
#sitesearch .ui-button.ui-state-disabled:active{
	border:none;
	background:none;
}
/*------------------------------------------------------------------------------
	タブ表示（サイト内検索／ページ番号検索）
------------------------------------------------------------------------------*/
#searchtab{
	list-style-type:none;
	display:flex;
	border-left:3px solid #0062B8;
	border-right:3px solid #0062B8;
	border-top:3px solid #0062B8;
	box-sizing:border-box;
}
#searchtab li{
	width:100%;
}
#searchtab li a{
	padding:15px 30px 15px 30px;
	display:block;
	position:relative;
	font-weight:bold;
	color:#FFF;
	font-size:110%;	
	font-weight:normal;
	background-color:#0062B8;
	border-bottom:none;	
	text-decoration:none;
	text-align:center;
	transition:all .5s;
}
#searchtab li.ui-tabs-active a{
	color:#222222;
	background:#FFF;
	font-weight:bold;
}
/*------------------------------------------------------------------------------
	サイト内検索
------------------------------------------------------------------------------*/
#searchmenu{
	padding:20px;
	box-sizing:border-box;
	background:#FFF;
	border:3px solid #0062B8;
	border-top:none;
}
#searchmenu form{
	margin:0px auto 20px auto;
}
#searchmenu label img{
	vertical-align:middle;
}
#searchmenu input{
	display:inline-block;
	vertical-align:middle;
}
#searchmenu input[type="text"]{
	padding:12px 8px!important;
	width:calc(100% - 135px) !important;
	height:auto!important;
	box-sizing:border-box;
	background-position:left 10px center!important;
	border:1px solid #0062B8 !important;
	border-radius:0px!important;
}
#searchmenu input[type="submit"]{
	padding:12px 30px 12px 30px!important;
	box-sizing:border-box;
	color:#FFF;
	font-size:100%!important;
	background-color:#0062B8;
	border-radius:0px!important;
	border:1px solid #0062B8 !important;
	-webkit-appearance:none;
}
/*------------------------------------------------------------------------------
	ページ番号検索
------------------------------------------------------------------------------*/
#searchmenu .navidetail{
	margin:0px auto 20px auto;
}
#searchmenu .navidetail form{
	width:100%;	
}
#searchmenu .navidetail input[type="text"]{
	width:calc(100% - 100px) !important;
}
#searchmenu .navidetail #idbtn{
	padding:12px 30px 12px 30px!important;
	box-sizing:border-box;
	color:#FFF;
	background-color:#0062B8;
	border-radius:0px!important;
	border:1px solid #0062B8 !important;
	-webkit-appearance:none;
}
#searchmenu #idresult p{
	margin:0px;
	padding-left:5px;
	color:#c50000;
	font-weight:bold;
	text-align:left;
}
/*	検索
------------------------------------------------------------------------------*/
#sitesearch{
	position: relative;
	margin-bottom: 20px;
}
#sitesearch label{
	/* font-size:90%; */
	text-align: left;
	display: block;
	font-weight: bold;
}
#sitesearch input{
}
#sitesearch input#key{
}
#sitesearch input[type=submit]{
}
/*==============================================================================
	検索
==============================================================================*/
#searchtab{
	width: calc(100% - 85px);
	list-style-type:none;
	display:flex;
	box-sizing:border-box;
	justify-content:space-between;
	border:none;
}
#searchtab li{
	width:calc(50% - 5px);
}
#searchtab li a{
	display: block;
	padding: 0.45em 0px;
	border-radius: 1em;
	background-color:#0062B8;
	border: 2px solid #0062B8;
	font-size: 1em;
}
#searchtab li.ui-tabs-active a{
	color:#222222;
	background:#FFF;
	border: 2px solid #0062B8;
}
#searchtab li a::before,
#searchtab li a::after{
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -5px;
	border-style: solid;
	border-width: 10px 5px;
	transition:all .5s;
}
#searchtab li a::before {
	bottom: -20px;
	border-color:transparent;
}
#searchtab li a::after{
	bottom: -16px;
	border-color:transparent;
}
#searchtab li.ui-tabs-active a::before {
	border-color: #0062B8 transparent transparent transparent;
}
#searchtab li.ui-tabs-active a::after{
	border-color: #fff transparent transparent transparent;
}
/*	サイト内検索
------------------------------------------------------------------------------*/
#googlesearch{
	line-height:normal;
}
#googlesearch table{
	margin:0;
	padding:0;
	max-width:100%;
	border:none;
	border-collapse:collapse;
	empty-cells:inherit;
}
#googlesearch th{
	margin:0;
	padding:0;
	background:none;
	border:none;
}
#googlesearch td{
	margin:0;
	padding:0;
	border:none;
}
#searchmenu .gsc-input-box{
	padding:0;
	height:auto;
	border:none;
	background:none;
}
#searchmenu {
	margin-top: 0.7em;
	padding: 0px;
	border: none;
	background-color: transparent;
}
#searchmenu .howto {
	position: absolute;
	right: 30px;
	top: -5px;
}
#searchmenu form {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: auto;
	margin: 0px;
}
#searchmenu #key,
#searchmenu .navidetail input[type="text"],
#searchmenu .gsc-input-box input{
	width: calc(100% - 85px) !important;
	padding: 10px !important;
	border: 3px solid #ccc !important;
	border-radius: 1em !important;
	box-sizing: border-box;
}
#searchmenu .gsc-input{
	padding-right:6px;
}
#searchmenu .gsc-input-box input{
	padding:7px 10px !important;
	width:100%!important;
}
#searchmenu input[type="submit"],
#searchmenu .navidetail #idbtn {
	width: 75px;
	padding: 12px !important;
	font-size: 1.25em;
	background-color:#0863BE !important;
	border:none !important;
	border-radius:15px !important;
	border-width: 3px !important;
	font-weight: 700;
	-webkit-appearance:none;
}
#searchmenu .gsc-search-button-v2{
	margin:0;
	width: 75px;
	padding: 7px !important;
	border-radius: 15px !important;
	font-size: 1.25em;
	background-color:#0863BE !important;
	border:none !important;
}
#searchmenu .gsc-search-button-v2 svg{
	width:1.25em;
	height:1.25em;
}
#searchmenu .submit{
	background:#0863BE url(images/header/search.svg) no-repeat center center !important;
	text-indent:-99999px;
}
/*------------------------------------------------------------------------------
	headerlink
------------------------------------------------------------------------------*/
#headerlink .flexstyle1 {
	margin: 0px;
	gap: 15px;
}
#headerlink .flexstyle1 li {
	width: calc((100% - 15px * 2) / 3);
	margin: 0px;
	background: none;
}
#headerlink .flexstyle1 li a {
	flex-direction: column;
	justify-content: center;
	padding: 1.3em 0.5em;
	border-radius: 20px;
	background-color: #0863BE;
	box-shadow: none;
}
#headerlink .flexstyle1 li.portal a {
	background-color: #B40000;
}

/*	グローバルナビ　ボタン
------------------------------------------------------------------------------*/
#gnavi ul{
	display: flex;
	flex-wrap: wrap;
	gap: 15px;
	margin-top: 20px;
	list-style-type:none;
}
#gnavi ul li{
	width: calc((100% - 15px * 2) / 3);
}
#gnavi .navi,
#gnavi .gnavilower,
#gnavi .gnavidetail {
	height: 100%;
}
#gnavi ul li a{
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	padding: 78px 0.5em 0.5em;
	background-color: #fff;
	background-position: center 15px;
	background-size: 55px;
	background-repeat: no-repeat;
	border: 2px solid #0863BE;
	border-radius: 20px;
	color: #222;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
}
#gnavi ul li.scate1 a{
	background-image: url(images/gnav/nav01.svg);
}
#gnavi ul li.scate2 a{
	background-image: url(images/gnav/nav02.svg);
}
#gnavi ul li.scate3 a{
	background-image: url(images/gnav/nav03.svg);
}
#gnavi ul li.scate4 a{
	background-image: url(images/gnav/nav04.svg);
}
#gnavi ul li.scate5 a{
	background-image: url(images/gnav/nav05.svg);
}
#gnavi ul li.scate6 a{
	background-image: url(images/gnav/nav06.svg);
}
#gnavi ul li.scate7 a{
	background-image: url(images/gnav/nav07.svg);
}
#gnavi ul li.scate8 a{
	background-image: url(images/gnav/nav08.svg);
}
#gnavi ul li.scate9 a{
	background-image: url(images/gnav/nav09.svg);
}
/*　閉じるボタン
------------------------------------------------------------------------------*/
#gnavismp button.hnclose,
#emergencymenu button.psclose,
#smpmenup1menu button.psclose{
	position: relative;
	margin: 20px auto 0px;
	padding: 0.5em 1em 0.5em 3em;
	border:none;
	color:#FFF;
	background-color: #055DB5;
	border-radius: 1.5em;
	line-height:1.2;
	cursor:pointer;
	-webkit-appearance:none;
}
#gnavismp button.hnclose::before,
#gnavismp button.hnclose::after,
#emergencymenu button.psclose::before,
#emergencymenu button.psclose::after,
#smpmenup1menu button.psclose::before,
#smpmenup1menu button.psclose::after{
    content:"";
	position:absolute;
	display:inline-block;
	top: 50%;
	right:auto;
	left:20px;
	width:2px;
	height:15px;
	border:0;
	margin:0;
	padding:0;
	background-color:#fff;
}
#gnavismp button.hnclose::before,
#emergencymenu button.psclose::before,
#smpmenup1menu button.psclose::before{
	-moz-transform: translateY(-50%) rotate(45deg);
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}
#gnavismp button.hnclose::after,
#emergencymenu button.psclose::after,
#smpmenup1menu button.psclose::after{
	-moz-transform: translateY(-50%) rotate(-45deg);
	-webkit-transform: translateY(-50%) rotate(-45deg);
	transform: translateY(-50%) rotate(-45deg);
}

/*　目的別検索メニュー
------------------------------------------------------------------------------*/
#smpmenup2bg #smpmenup1menu{
	padding: 30px 15px 40px;
	background-color: #D2F1F7;
}
#smpmenup1menu ul{
	gap: 15px;
	margin: 0px;
	list-style:none;
}
#smpmenup1menu ul li {
	width: calc((100% - 15px * 2) / 3);
	min-height: calc((100vw - (15px + 15px * 2)) / 3);
	margin: 0px;
	background: none;
}
#smpmenup1menu ul li a {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	padding: 5px;
	background: #fff;
	border-radius: 20px;
	box-shadow: none;
	color: #222;
}
#smpmenup1menu ul li a > img {
	width: 43.5%;
}



#emergency{
	margin-top:20px;
	background:#900;
}
#emergency a{
	display:block;
	padding:10px;
	color:#FFF;
}
#emergency br{
	display:none;
}

/*　メニュー
------------------------------------------------------------------------------*/
#gnavismp {
	padding: 20px 15px;
}
#util2 #translation select {
	width: 100%;
	padding: 0.5em;
	border: 2px solid #ccc;
	border-radius: 0.4375em;
	background-color: #fff;
	box-sizing: border-box;
}
#util2 #translation button{
	margin:0px;
	padding: 0.5em;
	width: 100%;
	color:#222;
	position:relative;
	border: 2px solid #ccc;
	border-radius: 0.4375em;
	background-color: #fff;
	text-align:left;
	box-sizing: border-box;
	-webkit-appearance:none;
}
#util2 #translation button::before {
	content: "";
	display: block;
	position: absolute;
	right: 10px;
	top: 0.75em;
	width: 0.4em;
	height: 0.4em;
	border-right: 2px solid #0863BE;
	border-bottom: 2px solid #0863BE;
	transform: rotate(45deg);
}
#util2 #translation #translationlist{
	padding:3px;
	width:100%;
	display:none;
	background-color: #fff;
	border: 1px solid #ccc;
	border-radius: 0.4375em;
	box-sizing: border-box;
}
#util2 #translation #translationlist{
	list-style:none;
}
#util2 #translation #translationlist a{
	padding:5px 7px;
	display:block;
	color:#222;
	text-decoration:none;
}
/*==============================================================================
	セーフエリア
==============================================================================*/
#jssmpbtmnavi{
	padding-bottom: env(safe-area-inset-bottom);
}