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


/* ----------------------------------------------------
   common setting
------------------------------------------------------- */


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


* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
}

input[type="text"],
input[type="submit"] {
	-webkit-appearance: none;
}

body {-webkit-text-size-adjust: 100%;}

.pc {display: none;}
.sp {display: block;}


#header,
#glnav,
#main,
#footer {font-size: 85%; word-break: break-all;}

/* outline setting :
--------------------------------------------*/

.outline {
    padding: 0 10px;
}




/* link color setting :
--------------------------------------------*/


a {color:#202d3d;text-decoration:none;}
a:hover {text-decoration: underline;}


#main a {text-decoration:underline;}
#main a:hover {text-decoration: none;}


/* outline setting :
--------------------------------------------*/

.outline {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	padding: 0px 10px;
}

.outline:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.pc {display: none;}
.sp {display: block;}

.modal{ display:none;}

.modal.modal_on{
	z-index:1;
	background-color: rgba(0,0,0,0.75);
	opacity:0.5;
	display:block;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:120%;
}

.break{
	word-wrap: break-word;
	word-break: break-all;
}


/*---- header setting ----*/

/*-- logo --*/

#header #logo {
	float: none;
}

#header #logo img {
	max-width: 90%;
}

#header h1{
	width:90%;
}

#header #font_size{
	display:none;
}


/*-- open bottun --*/

#header .sp{
	display:inline-block;
}

#header .sp a{
	display:inline-block;
	width:40px;
	height:40px;
	position:absolute;
	top:30px;
	right:5px;
	background:#3A3A53;
	z-index:2;
}


#header .sp a span{
	display:block;
	background:#ffffff;
	width:22px;
	height:2px;
	position:absolute;
	top:48%;
	right:23%;
}

#header .sp a span:before,
#header .sp a span:after{
	content:"";
	display:block;
	background:#ffffff;
	width:22px;
	height:2px;
	position:absolute;
	top:50%;
	right:0;
}

#header .sp a span:before{ margin-top:-10px;}
#header .sp a span:after{ margin-top:8px;}

#header .right{
	float:none;
	margin-top:-15px;
	background:#F3EEE8;
	padding:10px;
}

#header .sp a span:before,
#header .sp a span:after,
#header .sp a span{
	transition: all .6s;
}

#header .sp a.close span:before {
  -webkit-transform: translateY(20px) rotate(90deg);
  transform: translateY(10px) rotate(90deg);
}
#header .sp a.close span {
  -webkit-transform: translateY(0) rotate(-45deg);
  transform: translateY(0) rotate(-45deg);
}
#header .sp a.close span:after {
  opacity: 0;
}

#header #lang ul li a{
	padding:3px 13px 3px 29px;
}

#header #search{
	width:100%;
	margin-bottom:25px;
}

#header #search input[type="text"]{
	border:none;
	background:#FFFFFF;
	line-height:2em;
	height:30px;
	padding:3px;
	width:80%;
}

#header #search input[value="検索"]{
	padding:6px 6px 6px 28px;
	margin-top: -1px;
}

#header #search input[alt="検索オプション"]{
	margin:10px 10px 0 0;
}

/*---- nav setting ----*/

#header .right,
#glnav{
	display:none;
	width:100%;
}

#header .right{
	position:relative;
}
#header .right:after {
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

#glnav{
	position:absolute;
}

#nav #glnav{
	margin-top: 0;
	background:#ffffff;
	font-size:125%;
}

#nav li a{
	text-align:left;
	padding: 10px 5px 10px 20px;
}


#nav li a span{
	margin:15px auto;
	border-left:none;
}

#nav li a span:first-child {display: none;}
#nav li a span:last-child {display: block;}
#nav li{ display:block;}

#nav li#gl1,
#nav li#gl2,
#nav li#gl3,
#nav li#gl4,
#nav li#gl5,
#nav li#gl6{width:auto; float:none;}

#nav li ul{
	width:100%;
	font-size: 95%;
	background:#efeff4;
	position:relative;
}

#nav #glnav li li a,
#nav #glnav li li a:hover{
	color:#3b3b54;
	background:url(../img/common/arrow02_c.png) no-repeat 96% 50%;
	padding: 15px 25px 15px 28px;
}

#nav li li {
	background:none;
}


#nav li#gl2 > a,
#nav li#gl3 > a,
#nav li#gl6 > a{
	background:url(../img/common/arrow_sp_op.png) no-repeat 97% 50%;
}
#nav li#gl1 > a,
#nav li#gl4 > a,
#nav li#gl5 > a{
	background:url(../img/common/arrow_sp.png) no-repeat 96% 50%;
}


#nav ul#glnav li > a.close {
	background:rgba(59,59,84,1.0) url(../img/common/arrow_sp_cl.png) no-repeat 97% 50%;
	color:#ffffff;
}

#nav ul#glnav > li > a,
#nav #glnav li li:last-child{
	border-bottom: solid 1px #9B9BA7;
}

#nav li:last-child span{
	border-right:none;
}


/*---- footer setting ----*/

#footer #footer01{
	padding:10px 0;
}


#footer #left{
	text-align: center;
	margin-bottom:30px;
}

#footer h1 img {
	width:90%;
}

#footer #megafooter {
	font-size: 110%;
}

#footer #megafooter #footer02 #right,
#footer #megafooter #footer02 #left{
	float:none;
	margin-right:0;
	width:auto;
}

#footer #megafooter #footer02 p{
	margin-left:auto;
}



#footer #megafooter #footer02 #right>ul{
	margin-left:20px;
}

#footer #megafooter #footer02 #right>ul>li:nth-child(3),
#footer #megafooter #footer02 #right>ul>li{
	width:49%;
	margin-bottom:15px;
}

#footer #megafooter #footer02 #right>ul>li:nth-child(2n+1){
	clear:both;
	margin-left: 0!important;
}


/*-- copy --*/

#footer #copy {
	padding: 8px 5px;
	line-height: 1.4em;
}


/*== ページの先頭へ ==*/

#page_top {
	bottom: 94px;
}

#page_top img {
	width: 50px;
	height: 50px;
}



/*---- contents setting ----*/


/*-- ghost_btn --*/


.lnk01 a {
    margin: 15px auto;
    padding: 15px 20px 15px 25px;
	min-width: 10em;
	background: #3b3b54 url(../img/common/arrow02.png) no-repeat 10px 50%;
}



/*-- float --*/

.off .right,
.off .left,
.off.right,
.off.left {float: none;}


/*-- flexible image --*/

img.flex_img.left {
	float: none;
	display: block;
}

/*-- image block --*/

.sp_block {
	display: block;
}

/*-- 幅切替 --*/
.off.w20,
.off.w30,
.off.w40,
.off .w50{width: auto;}

.grid_1_2.off,
.grid_system.off .grid_1_3{ width: auto!important;}



.spmgt0 {margin-top: 0!important;}


.scroll_s,
.scroll_l {
	overflow-x:scroll;
}

.scroll_s table{min-width:400px;}

.scroll_l table{min-width:600px;}

