@charset "utf-8";

/*------------------------------------------------------------------------------------------------------------------------
	Universal Style
------------------------------------------------------------------------------------------------------------------------*/
body{
background:#f4f0ed;
font-size:100.01%;
color:#333;
-webkit-text-size-adjust:100%;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{
display:block;
}
html,body,div,
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section,
h1,h2,h3,h4,h5,h6,
p,dl,dt,dd,ul,ol,li,img,
table,caption,th,td,
form,fieldset,legend,input,textarea,select,
pre,code,blockquote,address{
margin:0;
padding:0;
}
h1,h2,h3,h4,h5,h6,
p,dl,dt,dd,ul,ol,li,img,
table,caption,th,td,
form,fieldset,legend,input,textarea,select,button,
div,pre,code,blockquote,address{
font-family:"メイリオ",Meiryo,"ＭＳ Ｐゴシック","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,sans-serif;
}
img{
max-width:100%;
height:auto;
border:0;
vertical-align:bottom;
}
ul{
list-style-position:outside;
list-style-type:none;
}
ol{
margin-left:2em;
list-style-position:outside;
}
dl dd{
margin-bottom:7px;
}
em{
font-style:normal;
color:#f00;
}
table{
border:medium none;
border-collapse:collapse;
}
th,td{
font-weight:normal;
vertical-align:top;
}
a:link,
a:visited{color:#004cbf;text-decoration:underline;}
a:hover,
a:active{color:#004cbf;text-decoration:none;}

fieldset{border:0;}
legend{display:none;}
input{vertical-align:middle;}
sup{vertical-align:text-top;line-height:0.6;}
sub{vertical-align:baseline;}
hr{display:none;}


/*	枠組み	*/

/*========================================================================================================================
	Base Layout
========================================================================================================================*/
#page{
position:relative;
min-width:320px;
}

#shadow01{
display:none;
position:absolute;
left:0;
top:0;
z-index:999;
width:100%;
background:#fff;
opacity:0.01;
}
#shadow01.show{display:block;}

/*------------------------------------------------------------------------------------------------------------------------
	Header Area
------------------------------------------------------------------------------------------------------------------------*/
#header{
-webkit-box-shadow:0 2px 0 0 rgba(0,0,0,.15);
box-shadow:0 2px 0 0 rgba(0,0,0,.15);
border-bottom:4px solid #246cc5;
background:#fff;
}
#header-lay{
position:relative;
margin:0 auto;
padding:10px 0;
width:950px;
}
#header #site-id{
float:left;
margin:0;
width:270px;
font-size:0.75em;
}
#header #site-id-simple{
margin:0;
font-size:0.75em;
text-align:center;
}

#header .utility{
float:right;
margin:0 0 12px;
}
#header .utility li{
position:relative;
float:left;
margin:0 0 0 15px;
padding:0 0 0 20px;
font-size:0.875em;
}
#header .utility li:before{
display:block;
content:'';
position:absolute;
top:50%;
left:0;
margin-top:-8px;
width:15px;
height:15px;
-webkit-border-radius:8px;
-moz-border-radius:8px;
border-radius:8px;
background:#226abc;
}
#header .utility li:after{
display:block;
content:'';
position:absolute;
top:50%;
left:4px;
margin-top:-3px;
border:2px solid transparent;
border-right:3px solid #fff;
border-bottom:3px solid #fff;
-moz-transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
-o-transform:rotate(-45deg);
-ms-transform:rotate(-45deg);
transform:rotate(-45deg);
}
#header .utility .la{
margin:2px 0 0 15px;
padding:0;
font-size:0.75em;
}
#header .utility .la:before,
#header .utility .la:after{display:none;}
#header .utility .la a:link,
#header .utility .la a:visited,
#header .utility .la a:hover,
#header .utility .la a:active{color:#111;}

/* top */
.top #header{background:transparent;}
.top #header-lay{
padding:0;
height:398px;
}
.top #header #site-id{
position:relative;
z-index:900;
float:none;
padding:23px 30px 27px 15px;
background:url(../images/bg/site-id.png) left top no-repeat;
font-size:0.75em;
}


/*------------------------------------------------------------------------------------------------------------------------
	GlobalNavi Area
------------------------------------------------------------------------------------------------------------------------*/
#global-nav{
float:right;
margin-left:200px;
}
#global-nav .navigation li{
float:left;
margin:0 0 0 20px;
padding:0 0 0 20px;
border-left:2px solid #e5e5e5;
font-size:0.9375em;
font-weight:bold;
}
#global-nav .navigation li:first-child{
margin:0;
padding:0;
border-left:0;
}

#global-nav .navigation li a:link,
#global-nav .navigation li a:visited{color:#22305f;text-decoration:none;}
#global-nav .navigation li a:hover,
#global-nav .navigation li a:active{color:#22305f;text-decoration:underline;}


.top #global-nav{
position:absolute;
right:0;
bottom:0;
z-index:1000;
}
#gnav-menu{display:none;}

.top #global-nav .navigation{
-webkit-box-shadow:0 0 0 2px rgba(0,0,0,.15);
box-shadow:0 0 0 2px  rgba(0,0,0,.15);
margin:0;
-webkit-border-radius:8px 8px 0 0;
-moz-border-radius:8px 8px 0 0;
border-radius:8px 8px 0 0;
overflow:hidden;
}
.top #global-nav .navigation li{
margin:0;
padding:0;
border:0;
font-size:1em;
font-weight:bold;
text-align:center;
}
.top #global-nav .navigation .corporate{width:196px;}
.top #global-nav .navigation .info{width:190px;}
.top #global-nav .navigation .safety{width:240px;}
.top #global-nav .navigation li a{
display:block;
position:relative;
padding:14px 20px 11px;
background:#27376c;
color:#fff;
text-decoration:none;
}
.top #global-nav .navigation li a:before{
display:block;
content:'';
position:absolute;
top:14px;
left:-1px;
width:2px;
height:25px;
background:#fff;
}
.top #global-nav .navigation li:first-child a:before{display:none;}
.top #global-nav .navigation li a:hover{background:#525f89;}


/*------------------------------------------------------------------------------------------------------------------------
	Contents Area
------------------------------------------------------------------------------------------------------------------------*/
#contents{
margin:0 auto;
width:950px;
min-width:716px;
}
#contents.no-tp{padding-top:25px;}
.top #contents{
position:relative;
margin-top:50px;
padding:0;
}
.top #contents:before{
display:block;
content:'';
position:absolute;
top:0;
left:670px;
width:2px;
height:100%;
background:#d8d2cd;
}

#main-contents{
float:left;
width:716px;
}
.top #main-contents{width:650px;}
#sub-contents{
float:right;
width:210px;
}
.top #sub-contents{width:260px;}

/*	local-nav
--------------------------------------*/
#sub-contents .local-nav01{
margin:0 0 20px;
padding:10px;
-webkit-box-shadow:0 1px 2px rgba(0,0,0,.15);
-moz-box-shadow:0 1px 2px rgba(0,0,0,.15);
box-shadow:0 1px 2px rgba(0,0,0,.15);
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
background:#fff;
}
#sub-contents .local-nav01 ul{margin:0;}
#sub-contents .local-nav01 ul li{
margin:-1px 0 0;
font-size:1em;
font-weight:bold;
}
#sub-contents .local-nav01 ul li a{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
display:table;
position:relative;
padding:5px 30px 5px 15px;
width:100%;
height:52px;
border:1px solid #ddd;
background-color:#fff;
background-image:-webkit-linear-gradient(bottom, rgba(36,108,197,.07), rgba(255,255,255,.07) 70%);
background-image:-moz-linear-gradient(bottom, rgba(36,108,197,.07), rgba(255,255,255,.07) 70%);
background-image:-o-linear-gradient(bottom, rgba(36,108,197,.07), rgba(255,255,255,.07) 70%);
background-image:-ms-linear-gradient(bottom, rgba(36,108,197,.07), rgba(255,255,255,.07) 70%);
background-image:linear-gradient(to top, rgba(36,108,197,.07), rgba(255,255,255,.07) 70%);
color:#111;
text-decoration:none;
}
#sub-contents .local-nav01 ul li a:hover{text-decoration:underline;}
#sub-contents .local-nav01 ul li a:before{
display:block;
content:'';
position:absolute;
top:50%;
right:15px;
margin-top:-4px;
border-top:6px solid transparent;
border-right:0 solid transparent;
border-bottom:6px solid transparent;
border-left:10px solid #91cac3;
}
#sub-contents .local-nav01 ul li a:after{
display:block;
content:'';
position:absolute;
top:50%;
right:12px;
margin-top:-4px;
border-top:6px solid transparent;
border-right:0 solid transparent;
border-bottom:6px solid transparent;
border-left:10px solid #246cc5;
}
#sub-contents .local-nav01 ul .current a{
border:1px solid #2367ad;
background-color:#2367ad;
color:#fff;
}
#sub-contents .local-nav01 ul .current a:after{border-left:10px solid #fff;}
#sub-contents .local-nav01 ul li a span{
display:table-cell;
vertical-align:middle;
}

/*------------------------------------------------------------------------------------------------------------------------
	Footer Area
------------------------------------------------------------------------------------------------------------------------*/
#footer .footer-lay{
position:relative;
margin:0 auto;
padding:10px 0;
width:950px;
}
.top #footer .footer-lay{padding:25px 0;}

/* utility01 */
#footer .utility01{
margin:0;
text-align:center;
letter-spacing:-0.4em;
}
#footer .utility01 li{
display:inline-block;
margin:0 7px 7px 0;
padding-left:7px;
border-left:1px solid #c1bcb7;
font-size:0.875em;
letter-spacing:normal;
line-height:1.2;
}
#footer .utility01 li:first-child{
padding-left:0;
border-left:0;
}

/* utility02 */
#footer .utility02{
margin:0 0 25px;
padding-bottom:10px;
background:url(../images/bg/line-dashed01.png) left bottom repeat-x;
}
#footer .utility02 > li{
float:left;
margin:0 4px 10px 0;
font-size:0.875em;
}
#footer .utility02 .top{width:121px;}
#footer .utility02 .corporate{width:176px;}
#footer .utility02 .info{width:175px;}
#footer .utility02 .safety{width:216px;}
#footer .utility02 .service{width:246px;margin-right:0;}
#footer .utility02 > li > a,
#footer .utility02 > li > span{
display:block;
position:relative;
padding:8px 5px 6px;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
background:#6d6b69;
color:#fff;
font-weight:bold;
text-decoration:none;
text-align:center;
}
#footer .utility02 > li > a:after,
#footer .utility02 > li > span:after{
display:block;
content:'';
position:absolute;
right:4px;
bottom:4px;
border:5px solid transparent;
border-right:5px solid #fff;
border-bottom:5px solid #fff;
}
#footer .utility02 > li ul{margin:15px 0 10px 10px;}
#footer .utility02 > li ul li{
margin:0 0 10px;
font-size:0.857em;
}
#footer .utility02 > li ul li a{color:#111;}

/* footer-bnr-area */
#footer .footer-bnr-area{
padding:5px 0 0;
background:#e5dfd9;
-webkit-box-shadow:inset 0 3px 2px 0 rgba(0,0,0,.1);
box-shadow:inset 0 3px 2px 0 rgba(0,0,0,.1);
}
#footer .footer-bnr-area .foot-bnr01{
margin:0 0 15px;
text-align:center;
letter-spacing:-0.4em;
}
#footer .footer-bnr-area .foot-bnr01 li{
display:inline-block;
margin:0 8px 15px 7px;
width:250px;
font-size:0.875em;
font-weight:bold;
letter-spacing:normal;
vertical-align:middle;
line-height:1.4;
}
#footer .footer-bnr-area .foot-bnr01 li a{
display:block;
position:relative;
padding:10px 5px 9px;
border:1px solid #bbb7b4;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
background:#fff;
color:#333;
text-decoration:none;
}
#footer .footer-bnr-area .foot-bnr01 li a:hover{opacity:0.7;}
#footer .footer-bnr-area .foot-bnr01 li a:after{
display:block;
content:'';
position:absolute;
right:4px;
bottom:4px;
border:5px solid transparent;
border-right:5px solid #226abc;
border-bottom:5px solid #226abc;
}
#footer .footer-bnr-area .foot-bnr01 .facebook a{
padding:15px 5px 14px;
border:0;
background:#344f86;
color:#fff;
}
#footer .footer-bnr-area .foot-bnr01 .facebook a:before{
display:inline-block;
content:'';
margin-right:10px;
width:32px;
height:31px;
background:url(../images/bg/icon-facebook01.png) left top no-repeat;
vertical-align:middle;
}
#footer .footer-bnr-area .foot-bnr01 .twitter a{
padding:15px 5px 14px;
border:0;
background:#55acee;
color:#fff;
}
#footer .footer-bnr-area .foot-bnr01 .twitter a:before{
display:inline-block;
content:'';
margin-right:10px;
width:34px;
height:31px;
background:url(../images/bg/icon-twitter01.png) left top no-repeat;
vertical-align:middle;
}
#footer .footer-bnr-area .foot-bnr01 .facebook a:after,
#footer .footer-bnr-area .foot-bnr01 .twitter a:after{
border-right:5px solid #fff;
border-bottom:5px solid #fff;
}

#footer .footer-bnr-area .foot-bnr02{
margin:0 -3px 20px -2px;
width:980px;
}
#footer .footer-bnr-area .foot-bnr02 li{
float:left;
margin:0 3px 5px 2px;
background:#fff;
text-align:center;
}
#footer .footer-bnr-area .foot-bnr02 li img{width:100%;}

/* pagetop */
#footer #pagetop{
margin:0;
font-size:0.875em;
text-align:right;
}
#footer #pagetop a{
display:inline-block;
position:relative;
padding:10px 50px 10px 0;
min-height:20px;
}
#footer #pagetop a:after{
display:block;
content:'';
position:absolute;
width:40px;
height:40px;
top:0;
right:0;
background:url(../images/bg/pagetop.png) right center no-repeat;
}
#footer #pagetop a:hover:after{opacity:0.7;}
#footer #pagetop a:link,
#footer #pagetop a:visited{color:#333;text-decoration:none;}
#footer #pagetop a:hover,
#footer #pagetop a:active{color:#333;text-decoration:underline;}

/* copyright */
#footer #copyright{
margin:0;
font-size:0.625em;
text-align:center;
}
#footer #copyright-simple{
margin:0;
padding:35px 0 10px;
background:url(../images/bg/line-dashed01.png) left top repeat-x;
font-size:0.625em;
text-align:center;
}

/*------------------------------------------------------------------------------------------------------------------------
	clearFix
------------------------------------------------------------------------------------------------------------------------*/
#header:after,
#header-lay:after,
#header .utility:after,
#global-nav .navigation:after,
#contents:after,
#footer .utility02:after,
#footer .footer-bnr-area .foot-bnr01:after,
#footer .footer-bnr-area .foot-bnr02:after{
display:block;
clear:both;
visibility:hidden;
content:".";
height:0;
font-size:0;
line-height:0;
}


/*------------------------------------------------------------------------------------------------------------------------
	screen
------------------------------------------------------------------------------------------------------------------------*/
/*	980px以下
------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:980px){

#header-lay{
width:auto;
}

#contents{
margin:0 auto;
width:auto;
}
#main-contents{
margin-left:10px;
}
#sub-contents{
float:left;
margin-left:10px;
padding-top:20px;
width:650px;
}

}

/*	640px以下
------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:640px){

/*------------------------------------------------------------------------------------------------------------------------
	Header Area
------------------------------------------------------------------------------------------------------------------------*/
#header{
-webkit-box-shadow:0;
box-shadow:0;
border-bottom:3px solid #246cc5;
background:#fbfbfb;
}
#header .utility{display:none;}
#header #site-id-simple img{
padding:5px 0 0 10px;
width:180px;
}

/* top */
#header-lay,
.top #header-lay{
padding:0;
height:50px;
}
#header #site-id,
.top #header #site-id{
padding:5px 0 0 10px;
background:none;
width:180px;
}

/*------------------------------------------------------------------------------------------------------------------------
	GlobalNavi Area
------------------------------------------------------------------------------------------------------------------------*/
#global-nav{
float:none;
position:absolute;
top:50px;
left:0;
bottom:auto;
z-index:3000;
margin:0;
width:100%;
background:#27376c;
}
.top #global-nav{bottom:auto;}
#global-nav .gnav-cont{
display:none;
padding:10px;
background:#27376c;
border-bottom:3px solid #246cc5;
}
#global-nav .gnav-cont.open{display:block !important;}
#gnav-menu{
display:block;
overflow:hidden;
position:absolute;
top:-50px;
right:0;
z-index:5000;
margin:0;
width:65px;
height:50px;
background:url(../images/bg/sp/gnav-menu.gif) left top no-repeat;
background-size:65px auto;
cursor:pointer;
text-indent:100%;
}
#gnav-menu.open{background-position:left -50px;}
#global-nav .navigation,
.top #global-nav .navigation{
overflow:hidden;
-webkit-box-shadow:0;
box-shadow:0;
margin:0;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
}
#global-nav .navigation li{
float:none;
margin:0;
padding:0;
border-bottom:2px solid #ddd !important;
border-left:0;
font-size:1em;
text-align:left !important;
}
#global-nav .navigation li:last-child{border-bottom:0 !important;}
.top #global-nav .navigation .corporate,
.top #global-nav .navigation .info,
.top #global-nav .navigation .safety{width:auto;}
#global-nav .navigation li a,
.top #global-nav .navigation li a{
display:block;
position:relative;
padding:12px 20px 10px;
background:#fff;
color:#111 !important;
text-decoration:none !important;
}
.top #global-nav .navigation li a:before{display:none;}
.top #global-nav .navigation li a:hover{background:#fff;}
#global-nav .navigation li a:after,
.top #global-nav .navigation li a:after{
display:block;
content:'';
position:absolute;
right:4px;
bottom:4px;
border:5px solid transparent;
border-right:5px solid #246cc5;
border-bottom:5px solid #246cc5;
}


/*------------------------------------------------------------------------------------------------------------------------
	Contents Area
------------------------------------------------------------------------------------------------------------------------*/
#contents{
padding:0 5px;
min-width:0;
}
#contents.no-tp{padding-top:0;}
.top #contents{
margin-top:15px;
padding:0 5px;
}
.top #contents:before{display:none;}

#main-contents{
float:none;
width:auto;
margin-left:0;
padding-bottom:0;
}
.top #main-contents{
float:none;
width:auto;
margin-left:0;
padding-bottom:20px;
}
#sub-contents,
.top #sub-contents{
float:none;
margin-left:0;
margin-bottom:30px;
padding-top:0;
padding-left:5px;
padding-right:5px;
width:auto;
}

/*	local-nav
--------------------------------------*/
#sub-contents .local-nav01 ul li{font-size:0.9375em;}


/*------------------------------------------------------------------------------------------------------------------------
	Footer Area
------------------------------------------------------------------------------------------------------------------------*/
#footer .footer-lay{
margin:0 10px;
width:auto;
}

/* utility01 */
#footer .utility01{
-webkit-box-shadow:0 2px 3px 0 rgba(0,0,0,.15);
box-shadow:0 2px 3px 0 rgba(0,0,0,.15);
margin:-25px 0 0;
-webkit-border-radius:5px;
-moz-border-radius:5px;
border-radius:5px;
background:#fff;
text-align:left;
letter-spacing:normal;
}
.top #footer .utility01{margin:0;}
#footer .utility01 li{
display:block;
margin:0 0 1px;
padding-left:0;
border-left:0;
border-bottom:1px solid #f4f0ed;
font-size:0.875em;
}
#footer .utility01 li:last-child{border-bottom:0;}
#footer .utility01 li a{
display:block;
position:relative;
padding:14px 15px 13px;
color:#333;
text-decoration:none;
}
#footer .utility01 li a:after{
display:block;
content:'';
position:absolute;
right:4px;
bottom:4px;
border:5px solid transparent;
border-right:5px solid #226abc;
border-bottom:5px solid #226abc;
}

/* utility02 */
#footer .utility02{display:none;}

/* footer-bnr-area */
#footer .footer-bnr-area .foot-bnr01{
margin:0 0 15px;
text-align:center;
letter-spacing:normal;
}
#footer .footer-bnr-area .foot-bnr01 li{
display:block;
margin:0 0 10px;
width:auto;
}
#footer .footer-bnr-area .foot-bnr01 .facebook{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
float:left;
width:50%;
padding-right:5px;
}
#footer .footer-bnr-area .foot-bnr01 .twitter{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
float:left;
width:50%;
padding-left:5px;
}
#footer .footer-bnr-area .foot-bnr01 .info{clear:both;}
#footer .footer-bnr-area .foot-bnr01 .facebook span,
#footer .footer-bnr-area .foot-bnr01 .twitter span{display:none;}
#footer .footer-bnr-area .foot-bnr01 .facebook a:before{
margin-right:-5px;
width:32px;
height:32px;
background:url(../images/bg/sp/icon-facebook01.png) left top no-repeat;
background-size:32px auto;
}
#footer .footer-bnr-area .foot-bnr01 .twitter a:before{
margin-right:-5px;
width:34px;
height:32px;
background:url(../images/bg/sp/icon-twitter01.png) left top no-repeat;
background-size:34px auto;
}

#footer .footer-bnr-area .foot-bnr02{
margin:0 0 15px;
width:auto;
}
#footer .footer-bnr-area .foot-bnr02 li{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
float:left;
width:50%;
padding-right:5px;
margin:0 0 10px;
background:transparent;
}
#footer .footer-bnr-area .foot-bnr02 li:nth-child(2n){
padding:0 0 0 5px;
}

/* pagetop */
#footer #pagetop{
margin:0;
font-size:0.875em;
}
#footer #pagetop a{
position:relative;
padding:5px 40px 5px 0;
}
#footer #pagetop a:after{
width:30px;
height:30px;
background:url(../images/bg/sp/pagetop.png) right center no-repeat;
background-size:30px auto;
}

/* copyright */
#footer #copyright{text-align:left;}
#footer #copyright-simple{padding-top:20px;}


}
