@charset "utf-8";

/*
ベーススタイル設定
*/

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝

■1.background image
■2.header
■3.フッターリンクバナー
■4.footer
■5.左メニュー

＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
body {
	line-height:1.4;
	font-size:12px;
}

.pc {display: none !important;}

#ex_wrap {
	position: relative;
	padding-top: 60px;
	overflow-x:hidden;
}

#wrap {
	position:relative;
	min-height:auto!important;
}

.sb-active #wrap:before{
	content:"";
    position: absolute;
	display:block;
	width:100%;
	height:100%;
	left:0;
    top: 0px;
	background:url(../images/common/mask_white.png); 
	background-repeat: no-repeat;
	background-size: cover;
	z-index:1000;
}

.fixed {
	position: fixed !important;
	width: 100% !important;
	height: 100% !important;
}

a[class*=btn_]:active,
button[type=button]:active,
button[type=reset]:active,
button[type=submit]:active,
input[type=reset]:active,
input[type=button]:active {
	position:relative;
	top:1px;
	left:1px;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■1.background image
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*
画像置換指定
------------------------------------*/
#header .logo a,
#header h1 a,
#footer .left h5{
	overflow:hidden;display:block;text-decoration:none;border:none;	background-repeat: no-repeat;background-position: left top;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■2.header
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#header{
	width:100%;
	padding:0px 0px 0px 10px;
	height:60px;
	position: fixed !important;
	top: 0;
	left: 0;
	background-color: rgba( 0, 150, 214, 0.90 );
	z-index: 100;
}

#header h1{
	width:220px;
	margin:12px auto 0 auto;
}

#header h1 a{
	width:220px;
	margin:0;
	padding:36px 0 0;
	height /**/:36px;
	height: /*ie6*/0;
	line-height:1.5;
	background-image: url(../images/common/img_logo_sp.png);
	background-repeat: no-repeat;
	background-size: cover;
}

/*
menu btn
------------------------------------*/
#header .sb-toggle-left{
	position:absolute;
	top:15px;
	left:10px;
	width:30px;
	height:30px;
	transition: .3s;
	cursor:pointer;
}

#header .sb-toggle-left:after{
	display: block;
	content: "";
	margin: 0px 0px 0px 0px;
	position: absolute;
	top: 13px;
	left: 5px;
	width: 22px;
	height: 3px;
	background: #FFF;
	transition: .3s;
}

#header .sb-toggle-left span{
	display:block;
	width:30px;
	height:30px;
	position:relative;
}

#header .sb-toggle-left span:before,
#header .sb-toggle-left span:after{
	content: "";
	position: absolute;
	left: 5px;
	width: 22px;
	height: 3px;
	background: #FFF;
	transition: .2s;
}

#header .sb-toggle-left span:before{
	top: 6px;
}

#header .sb-toggle-left span:after{
	top: 20px;
}

.sb-active #header .sb-toggle-left:after{
	background: none;
}

.sb-active #header .sb-toggle-left span:before,
.sb-active #header .sb-toggle-left span:after{
	transition: .3s;
}

.sb-active #header .sb-toggle-left span:before{
	margin: 7px 0px 0px 0px;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}

.sb-active #header .sb-toggle-left span:after{
	margin: -7px 0px 0px 0px;
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}

.sb-active #wrap {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
	opacity: 0.3; 
	position:relative;
}

#header .gnavi_wrap{
	display: none;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■3.フッターリンクバナー
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#ft_banner{
	width:100%;
	margin: 0px auto 0px auto;
	padding:30px 10px 40px 10px;
	background-color:#EEEEEE;
	text-align:center;
	position: relative;
	overflow: hidden;
	background-image: url(../images/common/bg_footer_sp.png);
	background-repeat: repeat-x;
	background-position: center bottom;
	-webkit-background-size: 340px 20px;
	   -moz-background-size: 340px 20px;
         -o-background-size: 340px 20px;
        -ms-background-size: 340px 20px;
            background-size: 340px 20px;
}

#ft_banner .ft_banner_title{
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 20px 0;
}

x#ft_banner:before {
	content: '';
	position: absolute;
	top: calc(100% - 10px);
	right: 0%;
	width: 120%;
	height: 120px;
	margin: 0 -10% 0 0% ;
	background: #A21A42;
	-webkit-transform-origin: center top;
	-ms-transform-origin: center top;
	transform-origin: center top;
	-webkit-transform: rotate(4deg);
	-ms-transform: rotate(4deg);
	transform: rotate(4deg);
	z-index: 2;
}

x#ft_banner:after {
	content: '';
	position: absolute;
	top: calc(100% - 10px);
	left: 0%;
	width: 120%;
	height: 120px;
	margin: 0 0px 0 -10% ;
	background: #FD9D24;
	-webkit-transform-origin: center top;
	-ms-transform-origin: center top;
	transform-origin: center top;
	-webkit-transform: rotate(-4deg);
	-ms-transform: rotate(-4deg);
	transform: rotate(-4deg);
	z-index: 1;
}

#ft_banner ul {
	width:100%;
	margin: 0 auto 0px auto;
	text-align:center;
	letter-spacing:-0.4em;
}

#ft_banner ul li {
	width:calc(50% - 10px);
	display:inline-block;
	margin:0px 0px 10px 10px;
	margin:0px 5px 10px 5px;
	padding:0px 0px 0px 0;
	letter-spacing:normal;
}

#ft_banner ul li a {
	width:100%;
	display:block;
	margin:0 0px 0px 0;
	padding:0 0px 0 0;
	text-align:center;
	position:relative;
	background-color:#FFF;
	overflow:hidden;
}

#ft_banner ul li a:before {
    content:"";
    display: block;
	padding-top: 45%;
}

#ft_banner ul li a .ban {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	text-align:center;
}

#ft_banner ul li a .ban img{
	position: absolute;
    max-width: calc(100% - 22px);
    max-height: calc(100% - 14px);
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%,-50%);
    -ms-transform: translate(-50%,-50%);
    transform: translate(-50%,-50%);
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■4.footer
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
#footer_wrap{
	width:100%;
	margin: 0px auto 0px auto;
	padding:0;
	background-color:#333;
}

#footer{
	margin: 0px auto 0px auto;
	padding:30px 20px 30px 20px;
}

/*
サイト案内
------------------------------------*/
#footer .guide{
	color:#EEE;
	text-align:center;
}

#footer .guide .logo {
	margin:0px 0px 10px 0;
	padding:0;
}

#footer .guide .logo img {
	width:110px;
	height:auto;
}

#footer .guide h4 {
	margin:0px 0px 10px 0;
	padding:0;
	font-size:12px;
	font-weight:400;
}

#footer .guide p {
	margin:0px 0px 0px 0;
	padding:0;
	color:#EEE;
	font-size:12px;
	font-weight:300;
	line-height:1.5;
}

#footer .guide p a{
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
	color:#EEE;
	text-decoration:none;
}

/*
sitemap
------------------------------------*/
#footer .sitemap{
	display:none;
}

/*
copyright
------------------------------------*/
.copyright{
	width:100%;
	margin: 0px 0px 0px 0px;
	padding:15px 15px 15px 15px;
	text-align:center;
	font-size:10px;
	font-weight:300;
	color:#FFF;
	line-height:1.2;
	border-top:1px solid #5C5C5C
}

/*
PAGE UP btn
------------------------------------*/
#page-top {
    position: fixed;
	bottom: 0px;
	right: 10px;
	z-index:10000;
}

#page-top a {
	width:36px;
	margin:0;
	padding:40px 0 0;
	height /**/:40px;
	height: /*ie6*/0;
	line-height:1.4;
	background-image: url(../images/common/btn_backtop_sp.png);
	-webkit-background-size: 36px 40px;
	   -moz-background-size: 36px 40px;
         -o-background-size: 36px 40px;
        -ms-background-size: 36px 40px;
            background-size: 36px 40px;
	background-repeat: no-repeat;
	background-position: center center;
	overflow:hidden;display:block;text-decoration:none;border:none;	background-repeat: no-repeat;background-position: left top;
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
	-khtml-opacity: 0.8;
	-moz-opacity: 0.8;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
■5.左メニュー
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.sb-slidebar{
	margin-top:60px;
	padding:0px 0px 0px 0px ;
	-webkit-overflow-scrolling: touch;
	background-color:#FFF;
}

.sb-slidebar .left_inner{
	width: 100%;
	height: 100%;
	padding:0px 10px 0px 10px ;
	border-right:1px solid #CCC;
	overflow-y: auto;
	position:relative;
}

.sb-slidebar .left_inner::after {
	display: block;
	height: 30px;
	width:100%;
	background-color:transparent;
	content: '';
}

.sb-slidebar ul.gnavi{
	display:block;
	margin:5px 0 15px 0;
	padding:0;
}

.sb-slidebar ul.gnavi > li{
	display:block;
	margin:0;
	border-bottom:1px solid #DDD;
	position:relative;
}

.sb-slidebar ul.gnavi li.none{
	border-bottom:none;
}

.sb-slidebar ul.gnavi > li > a{
	padding:0px 15px 0px 8px;
	display:block;
	text-decoration:none;
	color:#222;
	font-weight:400;
	line-height:40px;
	white-space: nowrap;
	position:relative;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis; /* Opera9,10対応 */
	cursor:pointer;
	transition: .3s;
}

.sb-slidebar ul.gnavi > li > a:after {
	margin:-20px 0px 0 0;
	content: "\e817";
	font-family: "fontello";
	font-size:22px;
	font-weight:normal;
	position: absolute;
	display:block;
	color:#15AACA;
	right:10px;
	top:50%;
}

.sb-slidebar ul.gnavi > li > span{
	padding:0px 15px 0px 8px;
	display:block;
	text-decoration:none;
	color:#222;
	font-weight:400;
	line-height:40px;
	white-space: nowrap;
	position:relative;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis; /* Opera9,10対応 */
	cursor:pointer;
	transition: .3s;
}

.sb-slidebar ul.gnavi > li > span:after{
	margin:-20px 0px 0 0;
	content: "\e817";
	font-family: "fontello";
	font-size:22px;
	font-weight:normal;
	position: absolute;
	display:block;
	color:#15AACA;
	right:10px;
	top:50%;
	transition: .4s;
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}

.sb-slidebar ul.gnavi > li > span.open:after {
	transform: rotate(270deg);
	-webkit-transform: rotate(270deg);
}

.sb-slidebar ul.gnavi > li > .ldd_submenu{
	padding:0px 0px 5px 10px;
	display:none;
}

.sb-slidebar ul.gnavi > li > .ldd_submenu > ul{
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
}

.sb-slidebar ul.gnavi > li > .ldd_submenu > ul > li{
	margin:0px 0px 0px 0px;
	padding:0px 0px 0px 0px;
	border-top:1px dotted #DDD;
}

.sb-slidebar ul.gnavi > li > .ldd_submenu > ul > li > a{
	margin:0px 0px 0px 0px;
	padding:8px 20px 8px 4px;
	text-decoration: none;
	color:#222;
	font-weight:300;
	display:block;
	transition: .3s;
	white-space: nowrap;
	position:relative;
	overflow: hidden;
	text-overflow: ellipsis;
	-o-text-overflow: ellipsis; /* Opera9,10対応 */
}

.sb-slidebar ul.gnavi > li > .ldd_submenu > ul > li > a:after {
	margin:-14px 0px 0 0;
	content: "\e817";
	font-family: "fontello";
	font-size:20px;
	font-weight:normal;
	position: absolute;
	display:block;
	color:#999;
	right:10px;
	top:50%;
}

.sb-slidebar ul.sub {
	margin:0px 0px 10px 10px;
	padding:0px 0px 0px 0px;
	line-height:1.2;
}

.sb-slidebar ul.sub li {
	margin:0px 0px 9px 0px;
	padding:0px 0px 0px 8px;
	-webkit-background-size: 5px auto;
	   -moz-background-size: 5px auto;
         -o-background-size: 5px auto;
        -ms-background-size: 5px auto;
            background-size: 5px auto;
	background-image: url(../images/common/icon_gnavi02.png);
	background-repeat: no-repeat;
	background-position: left 4px;
	font-size:12px;
}

.sb-slidebar ul.sub li a{
	color: #333;
	text-decoration: none;
}

.sb-slidebar ul.sub li a:hover{
	text-decoration: underline;
}

/*
Login btn
------------------------------------*/
.sb-slidebar a.btn_login{
	margin:20px 0px 0px 0px;
	padding:0px 10px 0px 0px;
	display:block;
	text-align:center;
	background-color:#526476;
	color:#FFF;
	font-size:13px;
	font-weight:500;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	border-radius:4px;
	letter-spacing:0.05em;
	text-decoration:none;
	height:50px;
	line-height:46px;
	position:relative;
}

.sb-slidebar a.btn_login:before {
	margin:0px 8px 0 0px;
	content: "\e8a7";
	font-family: "fontello";
	font-size:18px;
	font-weight:normal;
	position: relative;
	display:inline-block;
	color:#FFF;
	top:2px;
}

.sb-slidebar a.btn_logout{
	margin:15px 0px 0px 0px;
	padding:0px 10px 0px 0px;
	display:block;
	text-align:center;
	background-color:#666;
	color:#FFF;
	font-size:13px;
	font-weight:500;
	-moz-border-radius:4px;
	-webkit-border-radius:4px;
	border-radius:4px;
	letter-spacing:0.07em;
	text-decoration:none;
	height:50px;
	line-height:46px;
	position:relative;
}

.sb-slidebar a.btn_logout:before {
	margin:0px 10px 0 0px;
	content: "\e87e";
	font-family: "fontello";
	font-size:20px;
	font-weight:normal;
	position: relative;
	display:inline-block;
	color:#FFF;
	top:3px;
}
