@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] 詳細デザイン
*******************************************************************************/
#wrapbg,#wrap{
	min-width:1000px;
}
/*==============================================================================
	ヘッダ
==============================================================================*/
#header{
	margin-top: 5px;
	padding:0px;
	max-width:1400px;
	min-width:1000px;
	display:flex;
	justify-content: space-between;
	align-items:center;
}
#tlogo{
	padding: 30px 0px 33px 0px;
	position: relative;
}
#tlogo::before{
	content:"";
	width: 381px;
	height: 134px;
	position: absolute;
	bottom: 6px;
	right: -395px;
	z-index: -1;
	background: url(images/header/header_img.png) no-repeat;
}
#tlogo a{
	display: flex;
	color: #222;
	font-family:"游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	font-weight:bold;
	text-decoration: none;
	align-items: center;
}
#tlogo a img{
	display: block;
	width: 170px;
}
#tlogo h1 span:not([lang]),
#tlogo p span:not([lang]){
	margin-left: 10px;
	font-size: 122%;
	letter-spacing: .17em;
	line-height: 1.2;
}
#tlogo p span:not([lang]){
	font-size: 244%;
}
#tlogo a span[lang="en"]{
	display: block;
	font-size: 40%;
	letter-spacing: .1em;
}
#utilmenuwrap{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
#dropdownmenu{
	display:flex;
}
/*------------------------------------------------------------------------------
	util
------------------------------------------------------------------------------*/
#util ul{
	display:inline-block;
	list-style-type:none;
}
#util li{
	display:inline-block;
}
/*------------------------------------------------------------------------------
	util2
------------------------------------------------------------------------------*/
#util2{
	margin: 10px 0px 13px 0px;
}
#util2 ul li{
	margin-left: 10px;
}
#util2 ul li a{
	padding: 7px 0px 7px 27px;
	color: #222;
	text-decoration: none;
	font-weight: bold;
	font-size: 95%;
	border-radius: 5px;
}
#util2 ul li a:first-child{
	background: #FFF url(images/header/sitemap.png) no-repeat left 3px center;
}
#util2 ul li[lang="en"] a{
	background: #FFF url(images/header/language.png) no-repeat left 3px center;
	letter-spacing: 0;
}
#util2 ul li:last-child a{
	background: #FFF url(images/header/fontsize.png) no-repeat left 3px center;
}
/*------------------------------------------------------------------------------
	headerlink
------------------------------------------------------------------------------*/
#headerlink{
	margin-bottom: 15px;
}
#headerlink ul{
	list-style-type:none;
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
#headerlink li{
	margin-left: 10px;
	display: flex;
}
#headerlink li a{
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 71px 15px 17px 15px;
	width: 7em;
	box-sizing: border-box;
	font-weight: bold;
	font-size: 145%;
	color: #fff;
	text-decoration: none;
	letter-spacing: .1em;
	border-radius: 20px;
	line-height: 1;
}
#headerlink li.searchlink a{
	background: #0079D1 url(images/header/search.png) top 17px center no-repeat;
}
#headerlink li.kinkyulink a{
	background: #C64D46 url(images/header/emergency.png) top 17px center no-repeat;
}
/*------------------------------------------------------------------------------
	検索
------------------------------------------------------------------------------*/
#sitesearch input{
	box-sizing:border-box;
	font-size:100%;
	vertical-align:middle;
	-webkit-appearance:none;
}
#sitesearch input#key{
	padding:3px 5px 3px 5px!important;
	width:180px!important;
	height:auto!important;
	border:1px solid #ccc!important;
	border-right:none;
	border-radius:0px!important;
}
#sitesearch input[type=submit]{
	padding:3px 15px 3px 15px;
	color:#ffffff;
	font-weight:bold;
	background-color:#003168;
	border-radius:0px;
	border:1px solid #003168;
	text-align:center;
}
/*==============================================================================
	ドロップダウン
==============================================================================*/
#dropdownmenu .pscate{
	position:relative;
}
/*------------------------------------------------------------------------------
	いざという時に
------------------------------------------------------------------------------*/
#dropdownmenu .bmenu{
	position: relative;
}
#smpmenup1bg .bmenu > button{
	margin: 0px;
	width: 130px;
	padding: 40px 10px 15px 10px;
	box-sizing: border-box;
	color: #FFF;
	font-weight: bold;
	background-color: #cc0000;
	border: none;
	border: 3px solid #cc0000;
	text-align: center;
	cursor: pointer;
	box-shadow: 0px 0px 3px 0px #333;
	z-index: 1;
}
#smpmenup1bg .bmenu button{
	display: inline-block;
	position: relative;
}
#smpmenup1bg .bmenu > button::after{
	margin-left:-6px;
	width:6px;
	height:6px;
	display:block;
	left:50%;
	bottom:8px;
	position:absolute;
	content:"";
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-webkit-transform:rotate(135deg);
	transform:rotate(135deg);
}
#smpmenup1bg .bmenu button.choice{
	background-color:#cc0000;
	border:3px solid #cc0000;
}
#smpmenup1bg .bmenu > button.choice::after{
	margin-left:-6px;
	width:6px;
	height:6px;
	display:block;
	left:50%;
	bottom:5px;
	position:absolute;
	content:"";
	border-top:2px solid #FFF;
	border-right:2px solid #FFF;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
#smpmenup1bg #emergencymenu{
	padding:30px;
	width:800px;
	height:auto;
	display:none;
	position:absolute;
	top:100%;
	right:0;
	box-sizing:border-box;
	background-color:#FFFEDF;
	border:3px solid #FFFEDF;
	box-shadow:0px 0px 3px 0px #333;
	z-index:19991;
}
#emergencymenu .flexstyle1{
	margin: 25px auto 25px auto;
	justify-content: center;
	gap: 30px;
}
#emergencymenu .flexstyle1 li{
	width: 180px;
	margin: 0px;
	background: none;
}
#emergencymenu .flexstyle1 li a{
	padding: 20px 10px 10px;
	background-color: #BB4424;
	box-shadow: none;
}
#emergencymenu .flexstyle1 li a img{
	margin: 0px auto 10px;
}
/*------------------------------------------------------------------------------
	目的別検索
------------------------------------------------------------------------------*/
#smpmenup2bg .bmenu > button {
	margin: 0px;
	width: 130px;
	padding: 40px 10px 15px 10px;
	box-sizing: border-box;
	color: #222;
	font-weight: bold;
	background-color: #f9f22e;
	border: none;
	border: 3px solid #f9f22e;
	text-align: center;
	cursor: pointer;
	box-shadow: 0px 0px 3px 0px #333;
	z-index: 1;
}
#smpmenup2bg .bmenu button {
	display: inline-block;
	position: relative;
}
#smpmenup2bg .bmenu > button::after{
	margin-left:-6px;
	width:6px;
	height:6px;
	display:block;
	left:50%;
	bottom:8px;
	position:absolute;
	content:"";
	border-top:2px solid #333;
	border-right:2px solid #333;
	-webkit-transform:rotate(135deg);
	transform:rotate(135deg);
}
#smpmenup2bg .bmenu button.choice{
	background-color:#f9f22e;
	border:3px solid #f9f22e;
}
#smpmenup2bg .bmenu > button.choice::after{
	margin-left:-6px;
	width:6px;
	height:6px;
	display:block;
	left:50%;
	bottom:5px;
	position:absolute;
	content:"";
	border-top:2px solid #333;
	border-right:2px solid #333;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
#smpmenup2bg #smpmenup1menu{
	padding:30px;
	width: 900px;
	height:auto;
	display:none;
	position:absolute;
	top:100%;
	right:0;
	box-sizing:border-box;
	background-color:#FFFEDF;
	border:3px solid #FFFEDF;
	box-shadow:0px 0px 3px 0px #333;
	z-index:19991;
}
#smpmenup1menu ul{
	font-size:110%;
	list-style:none;
}
#smpmenup2bg dl{
	margin-bottom: 15px;
}
#smpmenup2bg dt{
	margin-bottom:15px;
	padding-left:10px;
	display:block;
	color:#222;
	font-size:120%;
	font-weight:bold;
	border-left:10px solid #f9f22e;
	line-height:1.4;
}
/*	閉じるボタン
------------------------------------------------------------------------------*/
#emergencymenu button.psclose,
#smpmenup1menu button.psclose{
	margin:20px 0px 0px 0px;
	padding:10px 10px 8px 40px;
	position:absolute;
	border:none;
	right:10px;
	bottom:10px;
	color:#FFF;
	background-color:#003168;
	line-height:1.2;
	cursor:pointer;
}
#emergencymenu button.psclose::before,
#emergencymenu button.psclose::after,
#smpmenup1menu button.psclose::before,
#smpmenup1menu button.psclose::after{
	content:"";
	position:absolute;
	display:inline-block;
	top:10px;
	right:auto;
	left:20px;
	width:2px;
	height:15px;
	border:0;
	margin:0;
	padding:0;
	background-color:#fff;
}
#emergencymenu button.psclose::before,
#smpmenup1menu button.psclose::before{
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
#emergencymenu button.psclose::after,
#smpmenup1menu button.psclose::after{
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
/*==============================================================================
	グローバルナビ
==============================================================================*/
#gnavi{
	position:relative;
	max-width: 1400px;
}
#gnavibg,#topgnavibg{
	background:url(images/gnavi/gnavi_bg.jpg) no-repeat left center;
	background-size: cover;
	border-bottom: 5px solid #0A8900;
}
#gnavi ul#topscate{
	display:flex;
	box-sizing:border-box;
	font-weight:bold;
}
#gnavi ul li.scate{
	box-sizing:border-box;
	width: calc(100% / 7);
	font-size: 120%;
	line-height:1.4;
}
#gnavi ul li.scate1,
#gnavi ul li.scate3,
#gnavi ul li.scate6{
	 flex-basis: 14%;
}
#gnavi ul li.scate2,
#gnavi ul li.scate5{
	 flex-basis: 18%;
}
#gnavi ul li.scate4,
#gnavi ul li.scate7{
	 flex-basis: 11%;
}
/*	閉じるボタン
------------------------------------------------------------------------------*/
#gnavi ul#topscate li button{
	margin:0px;
	padding: 80px 0px 20px 0px;
	width:100%;
	box-sizing:border-box;
	color: #222;
	font-weight: bold;
	font-size: 106%;
	letter-spacing: .1em;
	background:transparent;
	border:none;
	cursor:pointer;
	position:relative;
	transition:all .6s;
}
#gnavi ul#topscate li button::before{
	width: 66px;
	height: 57px;
	position: absolute;
	top: 15px;
	left: calc(50% - 33px);
	content: "";
}
#gnavi ul#topscate li.scate1 button::before{
	background-image: url(images/gnavi/gnavi1.png);
}
#gnavi ul#topscate li.scate2 button::before{
	background-image: url(images/gnavi/gnavi2.png);
}
#gnavi ul#topscate li.scate3 button::before{
	background-image: url(images/gnavi/gnavi3.png);
}
#gnavi ul#topscate li.scate4 button::before{
	background-image: url(images/gnavi/gnavi4.png);
}
#gnavi ul#topscate li.scate5 button::before{
	background-image: url(images/gnavi/gnavi5.png);
}
#gnavi ul#topscate li.scate6 button::before{
	background-image: url(images/gnavi/gnavi6.png);
}
#gnavi ul#topscate li.scate7 button::before{
	background-image: url(images/gnavi/gnavi7.png);
}
/*------------------------------------------------------------------------------
	開閉メニュー
------------------------------------------------------------------------------*/
#gnavi .navi{
	width:100%;
	display:none;
	position:absolute;
	top:100%;
	left:0;
	z-index:9999;
	font-size:90%;
	padding-top: 27px;
}
#gnavi .navi a{
	color:#222;
	text-decoration:underline;
}
#gnavi .navi .gnavilower{
	padding:10px 30px 10px 30px;
	background:#FFF;
	position:relative;
	border-radius: 20px 20px 0px 0px;
	border-top: 3px solid #0A8900;
	border-right: 3px solid #0A8900;
	border-left: 3px solid #0A8900;
}
#gnavi .navi .gnavidetail{
	float:left;
	font-size:130%;
	font-weight:bold;
}
#gnavi .navi .gnavidetail a{
	padding:20px 20px 20px 0px;
	display:block;
	position:relative;
	color:#222;
	font-size: 90%;
	font-weight:bold;
}
#gnavi .navi .gnavidetail a:hover{
	background:transparent;
}
#gnavi .navi .gnavidetail a::after,
#gnavi .navi ul li a::after{
	content:none;
}
/*	閉じるボタン
------------------------------------------------------------------------------*/
#gnavi ul#topscate .navi button.gnaviclose{
	padding:10px 10px 8px 40px;
	display:block;
	position:absolute;
	right:10px;
	left:auto;
	top:10px;
	font-size:90%;
	color:#fff;
	background:#0079D1;
	text-decoration:none;
	border-radius: 20px;
	line-height:1.2;
	cursor:pointer;
	width:auto;
}
#gnavi ul#topscate .navi button.gnaviclose::before,
#gnavi ul#topscate .navi button.gnaviclose::after{
	content:"";
	position:absolute;
	display:inline-block;
	top:10px;
	right:auto;
	left:20px;
	width:2px;
	height:15px;
	border:0;
	margin:0;
	padding:0;
	background-color:#fff;
}
#gnavi ul#topscate .navi button.gnaviclose::before{
	-moz-transform:rotate(45deg);
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
}
#gnavi ul#topscate .navi button.gnaviclose::after{
	-moz-transform:rotate(-45deg);
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
}
#gnavi .navi ul{
	margin:0px;
	padding:0px 30px 15px 30px;
	clear:both;
	background:#FFF;
	border-radius: 0px 0px 20px 20px;
	border-bottom: 3px solid #0A8900;
	border-right: 3px solid #0A8900;
	border-left: 3px solid #0A8900;
}
#gnavi .navi ul li{
	margin-right:15px;
	margin-bottom:15px;
	width:calc(100% / 4 - 15px);
	text-align:left;
	box-sizing:border-box;
	background:none;
	padding:0;
}
#gnavi .navi ul li:nth-child(4n){
	margin-right:0px;
}
#gnavi .navi ul li:nth-child(4n+1){
	clear:left;
}
#gnavi .navi ul li{
	padding:0px 12px 0px 15px;
	position:relative;
	display:flex;
	justify-content:flex-start;
	font-weight:normal;
	font-size: 93%;
	background: url(images/gnavi/mark_gnavi.png) no-repeat left top .25em;
}
#gnavi .navi ul li a{
	font-weight:normal;
}
/*------------------------------------------------------------------------------
	吹き出しの矢印
------------------------------------------------------------------------------*/
#gnavi .navi::before{
	content:"";
	position:absolute;
	top:5px;
	border-style:solid;
	border-width:0px 19px 25px 19px;
	border-color:transparent transparent #0A8900 transparent;
	z-index:1;
}
#gnavi .navi::after{
	content:"";
	position:absolute;
	top: 11px;
	border-style:solid;
	border-width:0px 19px 25px 19px;
	border-color:transparent transparent #FFF transparent;
	z-index:1;
}
#gnavi #list1.navi::before{
	left: calc(7% - 19px);
}
#gnavi #list1.navi::after{
	left: calc(7% - 19px);
}
#gnavi #list2.navi::before{
	left: calc(23% - 19px);
}
#gnavi #list2.navi::after{
	left: calc(23% - 19px);
}
#gnavi #list3.navi::before{
	left: calc(39% - 19px);
}
#gnavi #list3.navi::after{
	left: calc(39% - 19px);
}
#gnavi #list4.navi::before{
	left: calc(51.5% - 19px);
}
#gnavi #list4.navi::after{
	left: calc(51.5% - 19px);
}
#gnavi #list5.navi::before{
	left: calc(66% - 19px);
}
#gnavi #list5.navi::after{
	left: calc(66% - 19px);
}
#gnavi #list6.navi::before{
	left: calc(82% - 19px);
}
#gnavi #list6.navi::after{
	left: calc(82% - 19px);
}
#gnavi #list7.navi::before{
	left: calc(94.5% - 19px);
}
#gnavi #list7.navi::after{
	left: calc(94.5% - 19px);
}
/*==============================================================================
	左メニュー
==============================================================================*/
#menu{
	padding-bottom: 20px;
	background:#FFFCE1;
	border-radius: 20px;
	letter-spacing: 0;
}
#menu a{
	transition:all .5s;
}
/*------------------------------------------------------------------------------
	見出しh2
------------------------------------------------------------------------------*/
#menu h2{
	padding:40px 8px 40px 8px;
	display:block;
	font-size: 130%;
	background-color:#D4ECC6;
	border-bottom: 3px solid #FFF;
	border-radius: 20px 20px 0px 0px;
}
#menu h2 a{
	color:#222;
}
/* lang属性用 */
#menu h2 span.h2span span{
	padding:0px;
}
/*------------------------------------------------------------------------------
	リンクなし　セパレータ
------------------------------------------------------------------------------*/
#menu h3.separator{
	margin:0px 0px 0px 10px;
	padding:12px 5px 12px 8px;
	background:#FFF;
	border-bottom: 2px solid #FFF;
}
#menu h4.separator,#menu h5.separator,#menu h6.separator{
	margin:0px 0px 0px 10px;
	padding:12px 5px 12px 6px;
	background:#FFF;
	border-bottom: 2px solid #FFF;
}
/*------------------------------------------------------------------------------
	詳細メニュー　h3 h4 ul 同じリスト風デザイン
------------------------------------------------------------------------------*/
#menu h3{
	margin:0px;
	border-bottom: 2px solid #FFF;
}
#menu h4{
	margin:0px;
	font-weight:normal;
	border-bottom: 2px solid #FFF;
}
#menu h5{
	margin-left:10px;
	font-weight:normal;
	border-bottom: 2px solid #FFF;
}
#menu h3 a{
	padding: 12px 10px 12px 24px;
	color:#222;
	position:relative;
}
#menu h3 a::before{
	width:5px;
	height: calc(100% - 14px);
	content:"";
	position:absolute;
	top:7px;
	left:10px;
	background:#0A8900;
	border-radius: 3px;
	transition:all .2s;
}
#menu h3 a:hover{
	color:#222;
	background:#FFEA9D;
}
#menu h3 a:hover::before{
	width:5px;
	height: calc(100% - 14px);
	content:"";
	position:absolute;
	top:7px;
	left:10px;
	background:#AF6F36;
	border-radius: 3px;
	transition:all .2s;
}
#menu h4 a{
	padding:12px 5px 12px 23px;
	color:#222;
	background: url(images/lnavi/mark_h4_lnavi.png) no-repeat left 8px top 1em;
}
#menu h5 a{
	padding:12px 5px 12px 23px;
	color:#222;
	background: url(images/lnavi/mark_h4_lnavi.png) no-repeat left 8px top 1.2em;
}
#menu h4 a:hover{
	background:#FFEA9D url(images/lnavi/mark_h4_lnavi_o.png) no-repeat left 8px top 1em;
}
#menu h5 a:hover{
	background:#FFEA9D url(images/lnavi/mark_h4_lnavi_o.png) no-repeat left 8px top 1.2em;
}
#menu ul li:not([class]) a{
	margin-left: 10px;
	padding:12px 5px 12px 23px;
	color:#222;
	background: url(images/lnavi/mark_slnavi.png) no-repeat left 10px top 1.2em;
	border-bottom: 2px solid #FFF;
}
#menu ul li:not([class]) a:hover{
	background:#FFEA9D url(images/lnavi/mark_slnavi_o.png) no-repeat left 10px top 1.2em;
}
#menu ul li.choice{
	margin-left: 10px;
	padding:12px 5px 12px 23px;
	display:block;
	background:#FFEA9D url(images/lnavi/mark_slnavi_o.png) no-repeat left 10px top 1.2em;
	border-bottom: 2px solid #FFF;
}
/*------------------------------------------------------------------------------
	入れ子リスト
------------------------------------------------------------------------------*/
#menu ul.lmenu li{
	margin-left:10px;
	border-bottom: 2px solid #FFF;
}
#menu ul.lmenu li a{
	margin-left: 0px;
	background: url(images/lnavi/mark_slnavi.png) no-repeat left 10px top 1.2em;
	border-bottom:none;
}
#menu ul.lmenu li a:hover{
	color:#222;
	background:#FFEA9D url(images/lnavi/mark_slnavi_o.png) no-repeat left 10px top 1.2em;
}
#menu ul.lmenu li.choice{
	display:block;
	color:#222;
	background:#FFEA9D url(images/lnavi/mark_slnavi_o.png) no-repeat left 10px top 1.2em;
}
/* フォーカス */
#menu h2 a:focus{
	z-index: 1;
	position: relative;
	outline: 2px solid #000;
}
#menu h3 a:focus,
#menu h4 a:focus,
#menu h5 a:focus{
	z-index: 1;
}
#menu ul li a:focus{
	z-index: 1;
}
/*==============================================================================
	ページ遷移
==============================================================================*/
#guide{
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
#guide ul,#guide ul li{
	display:inline-block;
}
/*------------------------------------------------------------------------------
	このページのトップへ
------------------------------------------------------------------------------*/
#guide p.pagetop{
	display:block;
	clear:both;
	text-align:right;
	position:fixed;
	right:30px;
	bottom:25px;
	z-index:10000;
	line-height:0;
	display:none;
}
#guide p.pagetop a{
	padding-left:18px;
}
#guide p.pagetopnoscript{
	display:block;
	clear:both;
	text-align:right;
	position:fixed;
	right:30px;
	bottom:25px;
	z-index:10000;
	line-height:0;
}
/*------------------------------------------------------------------------------
	ページ戻り
------------------------------------------------------------------------------*/
#guide ul li a.pageback{
	margin-right:15px;
	padding-left:25px;
	background:url(images/page/mark_pageback.png) no-repeat left center;
}
#guide ul li a.pagehome{
	padding-left:25px;
	background:url(images/page/mark_pagehome.png) no-repeat left center;
}
/*------------------------------------------------------------------------------
	表示切替
------------------------------------------------------------------------------*/
#topguidebg{
	background-color: #F2F2F2;
}
#guide{
	padding-bottom: 30px;
	font-size:100%;
}
#guide .viewmode{
	display:inline-block;
	padding: 2px;
	border-radius: 5px;
	background: #7FD6F7;
	margin-left: 20px;
}
#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;
	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{
	display: block;
	padding: 1px 5px;
	color: #222;
	text-decoration: none;
}
#guide .viewmode a#viewmode_pc{
	background: #fff;
	border-radius: 5px 0px 0px 5px;
	text-decoration:none;
}
#guide .viewmode a#viewmode_pc:hover{
	background-color: #FFF;
}
#guide .viewmode a#viewmode_smp{
	padding-left: 1.5em;
	background-repeat: no-repeat;
	background-position: 0.5em center;
	background-image: url(images/page/pc_on.png);
}
#guide .viewmode a#viewmode_smp:hover{
	background-color: #FFF;
	border-radius: 0px 5px 5px 0px;
}

/*==============================================================================
	フッタ
==============================================================================*/
#topfooterbg, #footerbg{
	background: url(images/footer/footer_bg.jpg) no-repeat;
	background-size: cover;
	background-position: 50% 50%;
}
#footerwrap{
	padding: 20px 20px 20px 40px;
	width: 70%;
	box-sizing: border-box;
	background: rgba(255,255,255,.8);
	border-radius: 20px;
}
#footercontent{
	display: flex;
	justify-content: space-between;
}
#footercontent #addleft{
	padding-top: 20px;
	width: calc(100% - 180px);
}
#footercontent > p{
	margin-right: 20px;
}
/*------------------------------------------------------------------------------
	フッタメニュー
------------------------------------------------------------------------------*/
#footernavi,#topfooternavi{
	background: #0A8900;
}
#footernavi ul,#topfooternavi ul{
	margin: 0 auto;
	padding: 30px 0px 20px 0px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	max-width: 1200px;
	text-align:center;
	list-style-type:none;
}
#footernavi ul li,#topfooternavi ul li{
	margin-left:10px;
	margin-bottom: 10px;
	padding-left:15px;
	text-align: left;
	display:inline-block;
	font-size: 95%;
	background: url(images/footer/mark_footer.png) no-repeat top .1em left;
}
#footernavi ul li a,#topfooternavi ul li a{
	color: #FFF;
	text-decoration: none;
}
/*------------------------------------------------------------------------------
	所在地、リンクなど
------------------------------------------------------------------------------*/
#footer{
	padding: 30px 20px 140px 20px;
	font-size: 100%;
	box-sizing: border-box;
}
#add{
	margin-bottom: 10px;
	width: 100%;
	line-height: 1.8;
}
#addlink{
	width: 100%;
}
#add h2{
	padding-bottom: 8px;
	font-size:160%;
	text-align:left;
}
#add > p,
#add > address{
	letter-spacing: .05em;
}
#addlink ul{
	display:flex;
	list-style-type:none;
}
#addlink ul li{
	margin-right:10px;
}
#addlink ul li a{
	padding: 10px 38px;
	display: block;
	color:#222;
	background: #FFF url(images/footer/mark_btn.png) no-repeat right 10px center;
	line-height:1.2;
	text-decoration:none;
	text-align:center;
	box-sizing:border-box;
	border-radius: 20px;
	box-shadow: 0px 0px 15px -5px #707070;
	transition:all .6s;
	letter-spacing: .05em;
}
#copy{
	margin: 15px auto 0px auto;
	clear:both;
	font-size: 80%;
	font-family:"游ゴシック","Yu Gothic","游ゴシック体",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
	text-align: right;
	letter-spacing: 0;
}
/*==============================================================================
	画面幅調整
==============================================================================*/
/*------------------------------------------------------------------------------
	1200px以下
------------------------------------------------------------------------------*/

/*==============================================================================
	チャットボット
==============================================================================*/
.chatbot{
	position: fixed;
	left: 20px;
	bottom: 20px;
	z-index: 9998;
}
.chatbot a{
	display: block;
}
.chatbot a img{
	width: 120px;
	height: auto;
}
.chatbot button{
	margin: 0;
	padding: 0;
	position: absolute;
	top: -12px;
	right: -12px;
	border: none!important;
	background: transparent;
	cursor: pointer;
}