@charset "UTF-8";

.is-pc{
	display:none;
}


#footer{
  padding:0;
  font-size:15px;
  letter-spacing:0;
	background:url(../img/a_bg02.png) repeat center top;
}
#footer a {
	text-decoration: underline;
}
#footer .box01{
  padding:30px 8px;
}
#footer .box02{
  padding:24px 8px 24px;
	background-color:#84cdd7;
	color:#ffF;
}
#footer small{
  font-size:11px;
}
#footer .title01{
  letter-spacing:0.12em;
  color:#107283;
}
#footer .title02{
  color:#107283;
}
#footer .title02 a{
  color:#107283;
}
#footer .box01 a{
	font-weight:bold;
}
#footer .link01{
  margin:15px 0;
}
#footer .link01 a{
  padding:0 15px;
  color:#107283;
  border-right:1px solid #ccc;
}
#footer .box01 .link01 a{
	display:inline-block;
	margin-bottom:8px;
	font-weight:bold;
}
#footer .box01 .link01 a:nth-of-type(1),
#footer .box01 .link01 a:nth-of-type(4){
  border-left:1px solid #ccc;
}
#footer .box01 .link01 a:last-child{
  border-right:1px solid #ccc;
}
#footer .box02 .link01{
	margin:0 0 18px;
	font-size:12px;
}
#footer .box02 .link01 a{
	padding:0 3.4%;
  color:#fff;
  border-right:1px solid #fff;
}
#footer .box02 .link01 a:first-child{
  border-left:1px solid #fff;
}
#footer .loginName{
}
#footer .loginStatus{
  display:inline-block;
  padding:0 15px;
  border-right:1px solid #ccc;
}
#footer .loginTool{
  display:inline-block;
  padding:0 15px;
}
#footer .loginName a,
#footer .loginStatus a,
#footer .loginTool a{
  color:#107283;
  font-weight:bold;
}


/*** base ***/
body{
	position:relative;
}

img{
	border:none;
	max-width:100%;
	height:auto;
	vertical-align:top;
}

/* スマホでリンクのタップのハイライトカラーを無効化 */
a{
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	tap-highlight-color:rgba(0,0,0,0);
}

.clear{
	clear:both;
}

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


/*** areaToppage ***/
#areaToppage{
	display:none;
	position:fixed;
	bottom:0;
	right:0;
	margin-bottom:20px;
	width:46px;
	line-height:0;
	font-size:0;
	z-index:99999;
}
#areaToppage img{
	width:100%;
}
#areaToppage .btn01{
	width:46px;
	height:46px;
	margin:5px 0 0;
}
#areaToppage .btn02{
	width:46px;
	height:46px;
	background-color:#fff;
	border-top-left-radius:5px;
	border-bottom-left-radius:5px;
	overflow:hidden;
}
#areaToppage .btn02-inner{
	width:46px;
	height:200px;
}
#areaToppage .btn02 a{
	display:block;
}
#areaToppage .btn02 .btn{
	width:46px;
	height:46px;
	cursor:pointer;
}
#areaToppage .btn02 .sns01{
	display:none;
	margin:12px auto 0;
	width:32px;
}
#areaToppage .btn02 .sns02{
	display:none;
	margin:15px auto 0;
	width:32px;
}
#areaToppage .btn02 .sns03{
	display:none;
	margin:15px auto 0;
	width:32px;
}


@font-face { font-family:"Yu Gothic M"; src:local("Yu Gothic Medium"); }
@font-face { font-family:"Yu Gothic M"; src:local("Yu Gothic Bold"); font-weight:bold; }

/*** wrapper ***/
.wrapper{
	position:relative;
	min-width:320px;
	font-family:-apple-system, BlinkMacSystemFont, "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	background:url(../img/a_bg01.png) repeat center top;
	letter-spacing:0.1em;
}
.wrapper img{
	width:100%;
}


/*** header ***/
#header{
	position:absolute;
	top:0;
	left:0;
	right:0;
	width:100%;
	height:46px;
	background:#84cdd7;
	z-index:999;
}
#header.top{
	background:rgba(132,205,215,0.8);
}
#header a{
	display:block;
}
#header .headerInner{
	width:100%;
	height:46px;
	position:relative;
	overflow:hidden;
}
#header .text01{
	position:absolute;
	top:17px;
	left:20px;
	width:200px;
}
#header .logo01{
	position:absolute;
	top:15px;
	right:20px;
	width:30px;
}


/*** gnav-area ***/
#gnav-area{
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	width:100%;
	height:65px;
	background-color:rgba(255,255,255,0.8);
	z-index:99;
}
#gnav-area.floating{
	position:fixed;
	top:0;
	bottom:auto;
	background-color:rgba(255,255,255,0.9);
}
#gnav-area ul{
	margin:0 auto;
	width:100%;
	max-width:332px;
	height:100%;
	display:flex;
	position:relative;
}
#gnav-area ul::before{
	display:block;
	position:absolute;
	left:0;
	top:27%;
	content:"";
	height:46%;
	width:1px;
	background-color:#b2b2b2;
}
#gnav-area ul li{
	width:25%;
	height:100%;
	line-height:0;
	font-size:0;
	position:relative;
	transition:all 0.05s ease-out;
}
#gnav-area ul li::after{
	display:block;
	position:absolute;
	right:0;
	top:27%;
	content:"";
	height:46%;
	width:1px;
	background-color:#b2b2b2;
}
#gnav-area ul li a{
	transition:all 0.05s ease-out;
}
#gnav-area ul li a,
#gnav-area ul li span{
	display:block;
	width:100%;
	height:100%;
	padding:18.18% 18.18% 0;
}
#gnav-area ul li span{
	opacity:0.35;
}
#gnav-area ul li.current::before{
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	content:"";
	height:1vw;
	width:100%;
	background-color:#107283;
}
#gnav-area ul li.current a{
	opacity:0.35;
}


@media screen and (max-width:332px){
	#gnav-area{
		height:58px;
	}
	#gnav-area ul li a,
	#gnav-area ul li span{
		padding:14% 18.18% 0;
	}

	.xScrollSwitch.s0 .space02{
		height:58px!important;
	}

}


/*** hover ***/
.hover01{
	opacity:1;
	transition:all 0.05s ease-out;
}
.hover01:hover{
	opacity:0.6;
}
.hover01.active:hover,
.hover01.currnet:hover{
	opacity:1;
}

/** add.20200310 ***/
.xScrollSwitch.s2 .btn01{
margin:6.66% auto 0;
width:78.66%;
}
.xScrollSwitch.s2 .list01 a{
display:block;
}
.xScrollSwitch.s2 .block01 {
    padding: 6.66% 0;
}
