@charset "UTF-8";
/* CSS Document */



/****************************************************************************************************
初期設定
****************************************************************************************************/

/* IE8以下への対応 */
article, aside, figure, figcaption, footer, header, nav, section {
	display:block;
}
/* IE8以下への対応 */

.pcOnly {
	display:block;
}
span.pcOnly,
i.pcOnly {
	display:inline;
}
.spOnly {
	display:none;
}

html,body{
	text-align:center;
	/* https://spyweb.media/2017/11/27/css-font-family-best-practice-yu-gothic-meiryo-etc/ */
	font-family:-apple-system, blinkMacSystemFont, /* Macの欧文はSan Francisco (OS X 10.11以降) */
				'Hiragino Kaku Gothic ProN', /* Macのヒラギノ */
				'Helvetica Neue',            /* Macの欧文 (OS X 10.10以前) */
				Meiryo,                      /* Windowsのメイリオ */
				'Segoe UI',                  /* Windowsの欧文 */
				sans-serif;
	-webkit-font-smoothing:antialiased;
	-webkit-text-size-adjust:100%;
	font-feature-settings:"palt";
	scroll-padding-top:110px;
	color:#100043;
	line-height:1.8;
	background:URL(../img/common/bg1.png) no-repeat left top fixed;
}

* {
	box-sizing:border-box;
}
img {
	vertical-align:top;
}
strong {
	font-weight:600;
}
em {
	font-style:normal;
}
a {
	color:#100043;
	text-decoration:none;
	-webkit-transition:opacity 300ms;
	-moz-transition:opacity 300ms;
	transition:opacity 300ms;
}
a:hover {
	opacity:.5;
}

/* clear fix */
.clearfix:before,
.clearfix:after {
	content:" ";
	display:table;
}
.clearfix:after {
	clear:both;
}
.clearfix {
	*zoom:1;
}
/* clear fix */



/****************************************************************************************************
文字サイズ・背景色上書き
****************************************************************************************************/
html.large {
	font-size:17px;
}
html,
html.medium {
	font-size:14px;
}
html.small {
	font-size:11px;
}
html.blue {
	background:#100041;
}

html.large #func-box .inner > div:nth-of-type(2) {
	margin-left:15px;
}
html.large #func-box .inner > div:nth-of-type(3) {
	margin-left:12px;
}

/****************************************************************************************************
TOP
****************************************************************************************************/
html.large #panel-right .tel {
	margin-top:15px;
}
html.large .tel + .panel-right-cont {
	margin-top:15px;
}
html.large #panel-right dt,
html.large #panel-right dd
html.large #panel-right li {
	line-height:1.6;
}
html.large .panel-right-cont .link-btn {
	margin-top:10px;
}
html.large #access {
	margin-top:40px;
}
html.blue #panel-sub-cont > div:nth-of-type(5) {
	width:222px;
}
html.blue #panel-cont {
	border:1px solid rgba(255,255,255,.5);
	border-bottom:none;
}
html.blue #panel-left {
	width:732px;
}
html.blue #panel-left > div {
	width:365px;
}
html.blue #panel-sub-cont {
	border:1px solid rgba(255,255,255,.5);
	border-top:none;
}
html.blue #news-tab li {
	border:1px solid rgba(255,255,255,.5);
	border-bottom:none;
}

/****************************************************************************************************
共通
****************************************************************************************************/
html.blue #breadcrumblist *,
html.blue #contents *,
html.blue #page-link *,
html.blue #pagetop * {
	color:#FFF !important;
}
html.blue body,
html.blue #contents-wrap,
html.blue #contents-wrap-2,
html.blue #contents {
	background:none !important;
}
html.blue th,
html.blue td {
	background:none !important;
	border:1px solid rgba(255,255,255,.5);
}

html.blue li.btn-link,
html.blue li.btn-anch {
	background:#100041;
	border:1px solid rgba(255,255,255,.5);
}
html.blue #topics-tab ul li {
	border:1px solid rgba(255,255,255,.5);
	border-bottom:none;
}
html.blue #topics-tab ul li.select {
	border:none !important;
}
html.blue #topics-tab ul li:nth-of-type(4) {
	border:none;
}
html.blue ul.btn-col-container li.select a,
html.blue ul.btn-row-container.access li.select a {
	background:none !important;
}
html.blue .map {
	background:#FFF;
}





/****************************************************************************************************
header
****************************************************************************************************/
#header {
	position:fixed;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	top:0;
	left:0;
	width:100%;
	height:110px;
	z-index:150;
	background:#100042;
	background:URL(../img/common/header-bg.png) no-repeat left top;
}
#logo {
	position:fixed;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	top:0;
	left:0;
	width:332px;
	height:110px;
	padding-left:103px;
}
#name {
}
#gNavi {
	position:fixed;
	top:0;
	right:0;
	z-index:200;
	
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
}
#search,
#sns,
#sns ul,
#menu {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	
	width:110px;
	height:110px;
}
#search {
	background:#FFF;
}
#sns {
	background:URL(../img/common/sns-bg.png);
}
#sns ul li + li {
	margin-left:9px;
}
#menu {
	background:URL(../img/common/menu-bg.png);
}


#menu-btn {
	position:fixed;
	top:0;
	right:0;
	width:110px;
	height:110px;
	z-index:2000;
}
#menuButton {
	overflow:hidden;
	display:block;
	position:relative;
	width:100%;
	height:100%;
	cursor:pointer;
	z-index:2000;
}

#menuButton span,
#menuButton::before,
#menuButton::after {
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:36px;
	height:4px;
	margin:auto;
	background:#FFF;
	border-radius:2px;
}
#menuButton span {
  overflow:hidden;
  z-index:1;
  color:#FFF;
}
#menuButton::before {
	z-index:2;
	-webkit-transform:translate(0, -12px);
	transform:translate(0, -12px);
	content:"";
}
#menuButton::after {
	z-index:2;
	-webkit-transform:translate(0, 12px);
	transform:translate(0, 12px);
	content:"";
}

#menuButton span {
  opacity: 1;
  transition: opacity 150ms 50ms;
}
#menuButton::before,
#menuButton::after {
  -webkit-transition: -webkit-transform 200ms;
  transition: transform 200ms;
}
#menuButton.active {
	width:110px;
	border-left:1px solid rgba(255,255,255,.3);
}
#menuButton.active span {
  opacity: 0;
  -webkit-transition: opacity 150ms;
  transition: opacity 150ms;
}
#menuButton.active::before {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
#menuButton.active::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#search-block {
	display:none;
	position:absolute;
	top:0;
	right:220px;
	width:300px;
	height:110px;
	background:#FFF;
	text-align:left;
}
#search-block form {
	position:relative;
	width:100%;
	height:100%;
	padding:42px 38px;
}
#searchbox {
	width:180px;
	height:26px;
	padding:10px 10px;
	border:none;
	border-radius:0;
	outline:none;
	background:#FFF;
	color:#333;
	font-size:1rem;
}
#search-block form::before {
	position:absolute;
	content:'';
	display:block;
	border-left:1px solid #AAA;
	height:26px;
	width:1px;
	animation: Flash1 1.8s infinite;
}
@keyframes Flash1{
  50%{
    opacity: 0;
  }
}
#searchbtn {
	position:absolute;
	right:37px;
	top:37px;
	width:35px;
	height:36px;
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	padding:0;
	border:none;
	border-radius:0;
	outline:none;
	background:transparent;
	background:URL(../img/common/search.png);
	cursor:pointer;
	-webkit-transition:opacity 300ms;
	-moz-transition:opacity 300ms;
	transition:opacity 300ms;
	text-indent:-9999px;
}
#searchbtn:hover {
	opacity:.7;
}
#close-search {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	
	display:none;
	position:fixed;
	top:0;
	right:220px;
	width:110px;
	height:110px;
	z-index:2000;
	background:#26C9FF;
}
#closeButton {
	overflow:hidden;
	display:block;
	position:relative;
	width:100%;
	height:100%;
	cursor:pointer;
	z-index:2000;
}

#closeButton span,
#closeButton::before,
#closeButton::after {
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	right:0;
	width:36px;
	height:4px;
	margin:auto;
	background:#FFF;
	border-radius:2px;
}
#closeButton span {
	display:none;
}
#closeButton::before {
	z-index:2;
	-webkit-transform:translate(0, -12px);
	transform:translate(0, -12px);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	content:"";
}
#closeButton::after {
	z-index:2;
	-webkit-transform:translate(0, 12px);
	transform:translate(0, 12px);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	content:"";
}

#closeButton span {
  opacity: 1;
  transition: opacity 150ms 50ms;
}

#sNavi {
	display:none;
}

/****************************************************************************************************
ヘッダー部分 20201130
****************************************************************************************************/
#search-btn {
	-ms-transform:translate(0, 4px);
	-moz-transform:translate(0, 4px);
	-webkit-transform:translate(0, 4px);
	transform:translate(0, 4px);
}
#search-btn em {
	display:block;
	color:#00A7DC;
	font-size:0.666rem;
	font-weight:bold;
	line-height:1.6;
}
#facebook-btn,
#twitter-btn {
	-ms-transform:translate(0, -3px);
	-moz-transform:translate(0, -3px);
	-webkit-transform:translate(0, -3px);
	transform:translate(0, -3px);
}

#menuButton {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
}
#menu-btn em {
	display:block;
	-ms-transform:translate(0, 4px);
	-moz-transform:translate(0, 4px);
	-webkit-transform:translate(0, 4px);
	transform:translate(0, 4px);
	
	color:#FFF;
	font-size:0.666rem;
	font-weight:bold;
	line-height:1.6;
	letter-spacing:0.5px;
}
#menu-btn em::before {
	display:block;
	content:'';
	height:35px;
	width:36px;
}
#menuButton span {
	-ms-transform:translate(0, -4px);
	-moz-transform:translate(0, -4px);
	-webkit-transform:translate(0, -4px);
	transform:translate(0, -4px);
}
#menuButton::before {
	-ms-transform:translate(0, -16px);
	-moz-transform:translate(0, -16px);
	-webkit-transform:translate(0, -16px);
	transform:translate(0, -16px);
}
#menuButton::after {
	-ms-transform:translate(0, 8px);
	-moz-transform:translate(0, 8px);
	-webkit-transform:translate(0, 8px);
	transform:translate(0, 8px);
}
#menuButton.active::before {
	-ms-transform:translate(0, -2px) rotate(45deg);
	-moz-transform:translate(0, -2px) rotate(45deg);
	-webkit-transform:translate(0, -2px) rotate(45deg);
	transform:translate(0, -2px) rotate(45deg);
}
#menuButton.active::after {
	-ms-transform:translate(0, -2px) rotate(-45deg);
	-moz-transform:translate(0, -2px) rotate(-45deg);
	-webkit-transform:translate(0, -2px) rotate(-45deg);
	transform:translate(0, -2px) rotate(-45deg);
}
/****************************************************************************************************
ヘッダー部分 20201130
****************************************************************************************************/





/****************************************************************************************************
サブナビ
****************************************************************************************************/
#sNavi {
	position:fixed;
	width:330px;
	max-height:100vh;
	top:0;
	right:0;
	z-index:140;
	padding:130px 0 30px 40px;
	overflow:scroll;
	background:#99E5FF;
	text-align: left;
	display:none;
}
#sNaviWrap {
	contents:'';
	display:block;
	position:fixed;
	width:100%;
	height:100%;
	left:0;
	top:0;
	z-index:110;
	background:rgba(0,0,0,.5);
	opacity:0;
}
#sNavi ul {
	padding:0.8rem 0;
	font-size:1rem;
	line-height:1.8;
}
#sNavi ul.sub {
	padding:1.4em 0;
	font-size:0.785rem;
	line-height:1.8;
}
#sNavi > ul + ul {
	border-top:1px dotted #FFF;
}

.func-box {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	display:none;
	padding:0.8rem 0;
	border-bottom:1px dotted #FFF;
	line-height:1.0 !important;
}
.func-box > div:nth-of-type(2) {
	margin-left:23px;
}
.func-box > div:nth-of-type(3) {
	margin-left:20px;
}
.func-box dl {
}
.func-box dl dt {
	color:#100043;
	font-size:0.785rem;
	font-family:'Hiragino Sans', Meiryo, sans-serif;
	font-weight:500;
	letter-spacing:0.3px;
}
.func-box dl dd {
	margin-top:7px;
}
.func-box dl dd ul {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	padding:0 !important;
}
.func-box dl dd ul li {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	width:22px;
	height:22px;
	color:#100043;
	font-family:'Hiragino Sans', Meiryo, sans-serif;
	font-weight:500;
}
.func-box li,
.func-box li {
	background:#FFF;
	cursor:pointer;
	line-height:1.0;
}
.func-box li[data-font="small"] {
	font-size:0.642rem;
}
.func-box li[data-font="medium"] {
	font-size:0.857rem;
}
.func-box li[data-font="large"] {
	font-size:1.071rem;
}
.func-box li.select {
	background:#100043 !important;
}
.func-box li.select {
	color:#FFF;
}
.func-box .co li {
	background:#100043;
}
.func-box .co li.select {
	background:#FFF !important;
}
.func-box .co li[data-color="blue"] {
	background:#100043;
}
.func-box .co li.select[data-color="blue"] {
	background:#FFF!important;
}
.func-box .co li {
	text-indent:-9999px;
}
.func-box .vo li {
	width:auto;
	height:auto;
	background:none !important;
	border:none !important;
}

/****************************************************************************************************
サブナビ 20201130
****************************************************************************************************/
#sNavi {
	padding:127px 0 25px 40px;
}
#sNavi .sNavi-box {
	padding:1.0rem 0 0.88rem 0;
	font-size:1rem;
	line-height:1.8;
}
#sNavi .sNavi-box + .sNavi-box {
	border-top:1px dotted #FFF;
}
#sNavi .sNavi-box h3 {
	font-size:1rem;
	font-weight:bold;
}
#sNavi .sNavi-box ul {
	margin-left:1.6rem;
	padding:0;
}
#sNavi .sNavi-box ul li {
	font-size:0.933rem;
}

/****************************************************************************************************
サブナビ 20201130
****************************************************************************************************/





/****************************************************************************************************
全体レイアウト
****************************************************************************************************/
#contents-wrap {
	padding:120px 0 58px 0;
	background-image:
		URL(../img/common/bg2.png),
		URL(../img/common/bg3.png);
	background-repeat:
		no-repeat,
		no-repeat;
	background-position:
		calc(50% + 682px) 560px,
		calc(50% + 400px) bottom;
}





/****************************************************************************************************
breadcrumblist
****************************************************************************************************/
#breadcrumblist {
	width:100%;
	padding:10px 60px;
	text-align:left;
}
#breadcrumblist ol {
}
#breadcrumblist ol li {
	display:inline-block;
	color:#100043;
	font-size:0.928rem;
	line-height:1.0;
}
#breadcrumblist ol li + li::before {
	content:'\00A0\00A0＞\00A0\00A0';
}
#breadcrumblist ol li a {
	color:#00A5DE;
}
#breadcrumblist ol li:nth-last-of-type(1) a {
	color:#100043;
}






/****************************************************************************************************
func-box
****************************************************************************************************/
#contents-wrap #func-box {
	width:330px;
	position:absolute;
	right:0;
	top:131px;
}
#contents-wrap #func-box .inner {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
}
#contents-wrap #func-box .inner > div:nth-of-type(2) {
	margin-left:23px;
}
#contents-wrap #func-box .inner > div:nth-of-type(3) {
	margin-left:20px;
}
#contents-wrap #func-box .inner dl {
}
#contents-wrap #func-box .inner dl dt {
	color:#00A7DC;
	font-size:0.785rem;
	font-family:'Hiragino Sans', Meiryo, sans-serif;
	font-weight:500;
	letter-spacing:0.3px;
}
#contents-wrap #func-box .inner dl dd {
	margin-top:5px;
}
#contents-wrap #func-box .inner dl dd ul {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
}
#contents-wrap #func-box .inner dl dd ul li {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	width:22px;
	height:22px;
	color:#00A7DF;
	font-family:'Hiragino Sans', Meiryo, sans-serif;
	font-weight:500;
}
#contents-wrap #func-box #font-size li,
#contents-wrap #func-box #color li {
	background:#DDD;
	cursor:pointer;
	line-height:1.0;
}
#contents-wrap #func-box li[data-font="small"] {
	font-size:0.642rem;
}
#contents-wrap #func-box li[data-font="medium"] {
	font-size:0.857rem;
}
#contents-wrap #func-box li[data-font="large"] {
	font-size:1.071rem;
}
#contents-wrap #func-box #font-size li.select {
	background:#19AADB !important;
}
#contents-wrap #func-box #font-size li.select {
	color:#FFF;
}
#contents-wrap #func-box #color li {
	background:#19AADB;
}
#contents-wrap #func-box #color li.select {
	background:#F3F3F3;
}
#contents-wrap #func-box #color li[data-color="blue"] {
	background:#19AADB;
}
#contents-wrap #func-box #color li.select[data-color="blue"] {
	background:#F3F3F3;
}
#contents-wrap #func-box #color li {
	text-indent:-9999px;
}
#contents-wrap #func-box #voice li {
	width:auto;
	height:auto;
}





/****************************************************************************************************
contents
****************************************************************************************************/
#contents {
	width:1100px;
	margin:0 auto;
	padding:0 0 0 0;
}





/****************************************************************************************************
page-link
****************************************************************************************************/
#page-link {
	margin-top:74px;
}
#page-link ul {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
}
#page-link ul li {
	font-size:1.428rem;
	line-height:1.0;
}
#page-link ul li + li {
	margin-left:2em;
}
#page-link ul li.link-prev a,
#page-link ul li.link-next a {
    position:relative;
    display:inline-block;
    padding:0 0 0 27px;
}
#page-link ul li.link-next a {
    padding:0 27px 0 0;
}
#page-link ul li.link-prev a::before,
#page-link ul li.link-prev a::after,
#page-link ul li.link-next a::before,
#page-link ul li.link-next a::after {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    margin:auto;
}
#page-link ul li.link-next a::before,
#page-link ul li.link-next a::after {
    left:auto;
    right:0;
}
#page-link ul li.link-prev a::before,
#page-link ul li.link-next a::before {
    width:20px;
    height:20px;
    background:#39D0FF;
}
#page-link ul li.link-prev a::after,
#page-link ul li.link-next a::after {
    width:8px;
    height:8px;
	left:8px;
    border-top:2px solid #FFF;
    border-right:2px solid #FFF;
	-webkit-transform:rotate(-135deg);
	-ms-transform:rotate(-135deg);
	transform:rotate(-135deg);
	-webkit-transform-origin:50% 50%;
	-ms-transform-origin:50% 50%;
	transform-origin:50% 50%;
}
#page-link ul li.link-next a::after {
	left:auto;
	right:8px;
	-webkit-transform:rotate(45deg);
	-ms-transform:rotate(45deg);
	transform:rotate(45deg);
}





/****************************************************************************************************
pagetop
****************************************************************************************************/
#pagetop {
	margin:0 auto;
	margin-top:86px;
}
#pagetop a {
	display:block;
	position:relative;
	width:60px;
	margin:0 auto;
	padding:48px 0 0 0;
	color:#333;
	font-size:0.785rem;
}
#pagetop a:after {
	content:'';
	display:block;
	position:absolute;
	top:9px;
	left:0;
	right:0;
	margin:0 auto;
	width:44px;
	height:44px;
	border:2px solid;
	border-color:transparent transparent #00BFFF #00BFFF;
	-webkit-transform:rotate(135deg);
	-ms-transform:rotate(135deg);
	transform:rotate(135deg);
	-webkit-transform-origin:50% 50%;
	-ms-transform-origin:50% 50%;
	transform-origin:50% 50%;
	
	-webkit-transition:all 150ms ease-in-out;
	-ms-transition:all 150ms ease-in-out;
	transition:all 150ms ease-in-out;
}
#pagetop a:hover:after,
.pagetop a:hover:after {
	/*top:-2px;*/
}

.pagetop.visible {
	opacity:1;
	pointer-events:auto;
}
.pagetop {
	opacity:0;
	position:fixed;
	right:27px;
	bottom:27px;
	z-index:1;
	background:URL(../img/common/menu-bg.png);
	border-radius:100%;
	width:56px;
	height:56px;
	pointer-events:none;
	
	-webkit-transition:all 300ms ease-in-out;
	-ms-transition:all 300ms ease-in-out;
	transition:all 300ms ease-in-out;
}
.pagetop a {
	display:block;
	position:relative;
	width:56px;
	height:56px;
	margin:0 auto;
	padding:0 0 0 0;
	color:#333;
	font-size:0.785rem;
	text-indent:-9999px;
}
.pagetop a:after {
	content:'';
	display:block;
	position:absolute;
	top:23px;
	left:0;
	right:0;
	margin:auto;
	width:20px;
	height:20px;
	border:2px solid;
	border-color:transparent transparent #FFF #FFF;
	-webkit-transform:rotate(135deg);
	-ms-transform:rotate(135deg);
	transform:rotate(135deg);
	-webkit-transform-origin:50% 50%;
	-ms-transform-origin:50% 50%;
	transform-origin:50% 50%;
	
	-webkit-transition:all 150ms ease-in-out;
	-ms-transition:all 150ms ease-in-out;
	transition:all 150ms ease-in-out;
}





/****************************************************************************************************
footer
****************************************************************************************************/
#footer {
	position:relative;
	background:#EEE;
	border-top:8px solid #000066;
}
#footer::before {
	position:absolute;
	content:'';
	display:block;
	left:0;
	top:-8px;
	width:calc(50vw - 550px);
	height:8px;
	background:#0AC8FF;
}
#footer .inner {
	position:relative;
	width:1100px;
	margin:0 auto;
	padding:14px 0 80px 0;
}
#fNavi {
	float:right;
}
#fNavi ul {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
}
#fNavi ul li + li {
	margin-left:2em;
}
#fNavi ul li a {
	color:#202020;
	font-size:1rem;
}
#fNavi ul li a span {
	color:#00C5FF;
}
#f-logo {
	clear:both;
	padding-top:20px;
}
#address {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:horizontal;
  	-webkit-box-direction:normal;
  	-ms-flex-direction:row;
  	flex-direction:row;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-webkit-align-items:center;
	-ms-flex-align:center;
	align-items:center;
	
	margin-top:46px;
	color:#212121;
	font-size:1rem;
	line-height:1.6;
}
#address div + div {
	margin-left:2em;
}
#copyright {
	margin-top:18px;
	color:#10003F;
	font-size:0.785rem;
	line-height:1.6;
}

@media screen and (max-width: 767px) {
	/****************************************************************************************************
	初期設定
	****************************************************************************************************/
	html,
	body,
	.l-row-cont,
	.col-block,
	.col-box {
		/*iphone safari 原因不明のエラーのためJSで対応*/
		/*scroll-padding-top:15vw;*/
	}
	html,
	body {
		min-width:initial;
		min-width:auto;
		background:none;
		font-feature-settings:initial;
		scroll-padding-top:0;
	}
	/*body:before{
		content:"";
		display:block;
		position:fixed;
		top:0;
		left:0;
		z-index:-1;
		width:100%;
		height:100vh;
		background:URL(../img/common/bg1.png) no-repeat left top fixed;
		background-size:24.2vw auto;
	}*/
	img {
		width:100%;
		height:auto;
	}
	a {
		-webkit-transition:none;
		transition:none;
	}
	a:hover {
		opacity:1;
	}
	.pcOnly,
	span.pcOnly,
	i.pcOnly {
		display:none;
	}
	.spOnly {
		display:block;
	}
	span.spOnly {
		display:inline;
	}
	
	
	
	/****************************************************************************************************
	文字サイズ・背景色上書き
	****************************************************************************************************/
	html.large {
		font-size:4.266vw;
	}
	html,
	html.medium {
		font-size:3.466vw;
	}
	html.small {
		font-size:2.66vw;
	}

	/****************************************************************************************************
	TOP
	****************************************************************************************************/
	html.large #panel-right .tel {
		margin-top:4vw;
	}
	html.large .tel + .panel-right-cont {
		margin-top:4vw;
	}
	html.large #panel-right dt,
	html.large #panel-right dd
	html.large #panel-right li {
		line-height:1.6;
	}
	html.large .panel-right-cont .link-btn {
		margin-top:3vw;
	}
	html.large #access {
		margin-top:10vw;
	}
	html.blue #panel-sub-cont > div {
		width:49.9%;
	}
	html.blue #panel-sub-cont > div:nth-of-type(5) {
		width:100%;
	}
	html.blue #panel-cont {
		border:1px solid rgba(255,255,255,.5);
		border-bottom:none;
	}
	html.blue #panel-left {
		width:100%;
	}
	html.blue #panel-left > div {
		width:50%;
	}
	html.blue #panel-sub-cont {
		margin:0;
		border:1px solid rgba(255,255,255,.5);
	}
	
	
	
	
	/****************************************************************************************************
	header
	****************************************************************************************************/
	#header {
		height:15vw;
		background:URL(../img/common/header-bg-sp.png) no-repeat left top;
		background-size:auto 15vw;
	}
	#logo {
		width:30vw;
		height:15vw;
		padding-left:7vw;
	}
	#logo a {
		line-height:1.0;
	}
	#logo img {
		width:10vw;
	}
	#name img {
		width:50vw;
	}
	#search,
	#sns {
		display:none;
	}
	#menu {
		width:15vw;
		height:15vw;
	}
	#menu {
		background:rgba(115,220,255,.8);
	}
	#menu-btn {
		width:15vw;
		height:15vw;
	}
	#menuButton span,
	#menuButton::before,
	#menuButton::after {
		width:8vw;
		height:1vw;
		border-radius:0.5vw;
	}
	#menuButton::before {
		-webkit-transform:translate(0, -3vw);
		transform:translate(0, -3vw);
	}
	#menuButton::after {
		-webkit-transform:translate(0, 3vw);
		transform:translate(0, 3vw);
	}
	#menuButton.active {
		width:12vw;
	}
	#menuButton.active::before {
	  -webkit-transform: rotate(45deg) translate(1vw,-1vw);
	  transform: rotate(45deg) translate(1vw,-1vw);
	}
	#menuButton.active::after {
	  -webkit-transform: rotate(-45deg) translate(1vw,1vw);
	  transform: rotate(-45deg) translate(1vw,1vw);
	}

	/****************************************************************************************************
	ヘッダー部分 20201130
	****************************************************************************************************/
	#menu-btn em {
		display:block;
		-ms-transform:translate(0, 0);
		-moz-transform:translate(0, 0);
		-webkit-transform:translate(0, 0);
		transform:translate(0, 0);
		
		color:#FFF;
		font-size:0.666rem;
		font-weight:bold;
		line-height:1.6;
		letter-spacing:0;
	}
	#menu-btn #menuButton.active em {
		padding-left:0.8rem;
	}
	#menu-btn em::before {
		display:block;
		content:'';
		height:8.2vw;
		width:8.2vw;
	}
	#menuButton span {
		-ms-transform:translate(0, -1.3vw);
		-moz-transform:translate(0, -1.3vw);
		-webkit-transform:translate(0, -1.3vw);
		transform:translate(0, -1.3vw);
	}
	#menuButton::before {
		-ms-transform:translate(0, -3.8vw);
		-moz-transform:translate(0, -3.8vw);
		-webkit-transform:translate(0, -3.8vw);
		transform:translate(0, -3.8vw);
	}
	#menuButton::after {
		-ms-transform:translate(0, 1.2vw);
		-moz-transform:translate(0, 1.2vw);
		-webkit-transform:translate(0, 1.2vw);
		transform:translate(0, 1.2vw);
	}
	#menuButton.active::before {
		-ms-transform:translate(1.3vw, -1vw) rotate(45deg);
		-moz-transform:translate(1.3vw, -1vw) rotate(45deg);
		-webkit-transform:translate(1.3vw, -1vw) rotate(45deg);
		transform:translate(1.3vw, -1vw) rotate(45deg);
	}
	#menuButton.active::after {
		-ms-transform:translate(1.3vw, -1vw) rotate(-45deg);
		-moz-transform:translate(1.3vw, -1vw) rotate(-45deg);
		-webkit-transform:translate(1.3vw, -1vw) rotate(-45deg);
		transform:translate(1.3vw, -1vw) rotate(-45deg);
	}
	/****************************************************************************************************
	ヘッダー部分 20201130
	****************************************************************************************************/
	
	
	
	
	
	/****************************************************************************************************
	サブナビ
	****************************************************************************************************/
	#sNavi {
		width:90vw;
		padding:3vw 0 15vw 8vw;
	}
	#search-block-sp {
		height:15vw;
		margin:-3vw 0 0 -8vw;
		padding:3.5vw 0 0 8vw;
		background:#FFF;
	}
	#searchbox-sp {
		width:54vw;
		height:7vw;
		margin:0;
		padding:2vw;
		border:none;
		border-radius:0;
		outline:none;
		font-size:1rem;
		animation: Flash1 1.8s infinite;
	}
	@keyframes Flash1{
	  50%{
		opacity: 0;
	  }
	}
	#search-block-sp form {
		position:relative;
		width:100%;
		height:100%;
	}
	#search-block-sp form::before {
		position:absolute;
		content:'';
		display:block;
		border-left:1px solid #AAA;
		height:7vw;
		margin-top:0.5vw;
		width:1px;
	}
	#searchbtn-sp {
		-webkit-appearance:none;
		-moz-appearance:none;
		appearance:none;
		padding:0;
		border:none;
		border-radius:0;
		outline:none;
		background:transparent;
		width:8vw;
		height:8vw;
		background:URL(../img/common/search.png) no-repeat;
		background-size:8vw;
		text-indent:-9999px;
	}
	#sNavi ul {
		padding:0.8rem 0;
		font-size:1rem;
		line-height:1.8;
	}
	#sNavi ul:nth-of-type(1) {
		padding-top:1.2em;
	}
	
	.func-box {
		display:-webkit-box;
		display:-webkit-flex;
		display:-ms-flexbox;
		display:flex;
		padding:1.5rem 0;
	}
	.func-box > div:nth-of-type(2) {
		margin-left:5vw;
	}
	.func-box > div:nth-of-type(3) {
		margin-left:5vw;
	}
	.func-box dl dd {
		margin-top:2vw;
	}
	.func-box dl dd ul li {
		width:6vw;
		height:6vw;
	}
	.func-box .vo dl dd ul li {
		width:10vw;
		height:6vw;
	}

	/****************************************************************************************************
	サブナビ 20201130
	****************************************************************************************************/
	#sNavi .sNavi-box ul {
		padding:0;
	}
	
	/****************************************************************************************************
	サブナビ 20201130
	****************************************************************************************************/





	/****************************************************************************************************
	全体レイアウト
	****************************************************************************************************/
	#contents-wrap {
		padding:15vw 0 10vw 0;
		background:none;
	}
	
	
	
	
	
	/****************************************************************************************************
	breadcrumblist
	****************************************************************************************************/
	#breadcrumblist {
		width:100%;
		padding:2vw 4vw;
	}
	#breadcrumblist ol li {
		font-size:0.714rem;
	}




	/****************************************************************************************************
	func-box
	****************************************************************************************************/
	#contents-wrap #func-box {
		display:none;
	}
	
	
	
	
	
	/****************************************************************************************************
	contents
	****************************************************************************************************/
	#contents {
		width:100%;
		margin:0 auto;
		padding:0 4vw 0 4vw;
	}
	
	
	
	
	
	/****************************************************************************************************
	page-link
	****************************************************************************************************/
	#page-link {
		margin-top:10vw;
	}
	#page-link ul li {
		font-size:1.428rem;
	}
	#page-link ul li.link-prev a,
	#page-link ul li.link-next a {
		padding:0 0 0 7vw;
	}
	#page-link ul li.link-next a {
		padding:0 7vw 0 0;
	}
	#page-link ul li.link-prev a::before,
	#page-link ul li.link-next a::before {
		width:6vw;
		height:6vw;
	}
	#page-link ul li.link-prev a::after,
	#page-link ul li.link-next a::after {
		width:3vw;
		height:3vw;
		left:2vw;
	}
	
	
	
	
	
	/****************************************************************************************************
	pagetop
	****************************************************************************************************/
	#pagetop {
		margin-top:10vw;
	}
	#pagetop a {
		display:inline-block;
		width:auto;
		padding:8vw 0 0 0;
	}
	#pagetop a:after {
		top:2vw;
		width:10vw;
		height:10vw;
	}

	.pagetop {
		right:2vw;
		bottom:2vw;
		width:12vw;
		height:12vw;
	}
	.pagetop a {
		width:12vw;
		height:12vw;
		padding:0;
	}
	.pagetop a:after {
		top:5vw;
		width:5vw;
		height:5vw;
	}





	/****************************************************************************************************
	footer
	****************************************************************************************************/
	#footer {
		border-top:8px solid #000066;
	}
	#footer::before {
		top:-8px;
		width:calc(50vw - 550px);
		height:8px;
	}
	#footer .inner {
		width:100%;
		padding:6vw 4vw 10vw 4vw;
	}
	#fNavi {
		display:none;
	}
	#f-logo {
		width:35vw;
		margin:0 auto;
		padding:0;
	}
	#address {
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		-webkit-flex-direction:column;
		-ms-flex-direction:column;
		flex-direction:column;
		
		margin-top:1.5em;
	}
	#address div + div {
		margin:1em 0 0 0;
	}
	#copyright {
		margin-top:1.5em;
	}
	
}

@media screen and (max-width: 767px) and (orientation: landscape) {
	
	/****************************************************************************************************
	header
	****************************************************************************************************/
	#header {
		height:8vw;
		background:URL(../img/common/header-bg-sp.png) no-repeat left top;
		background-size:auto 10vw;
	}
	#logo {
		width:16vw;
		height:8vw;
		padding-left:4.66vw;
	}
	#logo img {
		width:5.6vw;
	}
	#name img {
		width:36vw;
	}
	#search,
	#sns {
		display:none;
	}
	#menu {
		width:8vw;
		height:8vw;
	}
	#menu {
		background:URL(../img/common/menu-bg.png);
		background-size:5vw;
	}
	#menu-btn {
		width:8vw;
		height:8vw;
	}
	#menuButton span,
	#menuButton::before,
	#menuButton::after {
		width:4.8vw;
		height:0.8vw;
		border-radius:0.8vw;
	}
	#menuButton::before {
		-webkit-transform:translate(0, -1.6vw);
		transform:translate(0, -1.6vw);
	}
	#menuButton::after {
		-webkit-transform:translate(0, 1.6vw);
		transform:translate(0, 1.6vw);
	}
	#menuButton.active {
		width:6.5vw;
	}
	#menuButton.active::before {
	  -webkit-transform: rotate(45deg) translate(0.6vw,-0.6vw);
	  transform: rotate(45deg) translate(0.6vw,-0.6vw);
	}
	#menuButton.active::after {
	  -webkit-transform: rotate(-45deg) translate(0.6vw,0.6vw);
	  transform: rotate(-45deg) translate(0.6vw,0.6vw);
	}
	
	
	
	
	
	/****************************************************************************************************
	サブナビ
	****************************************************************************************************/
	#search-block-sp {
		height:8vw;
		padding:1vw 0 0 8vw;
	}
	#searchbox-sp {
		height:7vw;
	}
	#searchbtn-sp {
		height:7vw;
	}
	#search-block-sp form {
		position:relative;
		width:100%;
		height:100%;
	}
	#search-block-sp form::before {
		position:absolute;
		content:'';
		display:block;
		border-left:1px solid #AAA;
		height:5vw;
		margin-top:0.5vw;
		width:1px;
	}
	#searchbtn-sp {
		-webkit-appearance:none;
		-moz-appearance:none;
		appearance:none;
		padding:0;
		border:none;
		border-radius:0;
		outline:none;
		background:transparent;
		width:4vw;
		height:4vw;
		margin-top:-1vw;
		background:URL(../img/common/search.png) no-repeat;
		background-size:4vw;
	}
	
	
	
	
	
	/****************************************************************************************************
	pagetop
	****************************************************************************************************/

	.pagetop {
		right:2vw;
		bottom:2vw;
		width:6vw;
		height:6vw;
	}
	.pagetop a {
		width:6vw;
		height:6vw;
		padding:0;
	}
	.pagetop a:after {
		top:2.5vw;
		width:2.5vw;
		height:2.5vw;
	}
}