@charset "utf-8";

/*------------------------------------------------------------------------------------------------------------------------
	Universal Style
------------------------------------------------------------------------------------------------------------------------*/
body{
background:#fff;
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:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",Osaka,sans-serif;
    font-feature-settings: normal;	
}

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;
table-layout:fixed;
}
th,td{
font-weight:normal;
vertical-align:top;
}
a:link,
a:visited{color:#004cbf;text-decoration:none;}
a:hover,
a:active{color:#004cbf;text-decoration:underline;}

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{

background:#fff;
}
#header-lay{
position:relative;
margin:0 auto;
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 #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{display: none;
}



/*------------------------------------------------------------------------------------------------------------------------
	Contents Area
------------------------------------------------------------------------------------------------------------------------*/
#contents{
margin:0 auto;
width: 100%;
max-width:1050px;
}
#contents.no-tp{padding-top:25px;}
.top #contents{
position:relative;
margin-top:50px;
padding:0;
}

#main-contents{
float:left;
width: 100%;    
}
.top #main-contents{width:41%;}
#sub-contents{
float:right;
width:210px;
}
.top #sub-contents{width:59%;}

/*	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;
background-color: #0950a9;	
}
#footer .footer-lay{padding:25px 0;}


.social_wrap{margin: 0 auto;
    width: 100%;}


/* 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 a{color: #fff;}

#footer .utility01 li:last-child{
border-right: 1px solid #c1bcb7!important;
    padding-right: 7px;
}

/* utility02 */
#footer .utility02{
margin:0 0 25px;
padding-bottom:10px;
}
#footer .utility02 > li{
float:left;
margin:0 4px 10px 0;
font-size:0.875em;
}
#footer .utility02 .top{width:121px;}
#footer .utility02 .corporate{width:246px;}
#footer .utility02 .character{width:246px;}
#footer .utility02 .info{width:175px;}
#footer .utility02 .safety{width:260px;margin-left: 66px;}
#footer .utility02 .service{width:246px;margin-right:0;margin-left: 117px;}
#footer .utility02 > li > a,
#footer .utility02 > li > span{
display:block;
position:relative;
padding:8px 5px 6px;
color:#fff;
font-weight:bold;
text-decoration:none;
}

#footer .utility02 > li ul{margin:15px 0 10px 4px;}
#footer .utility02 > li ul li{
margin:0 0 10px;
font-size:0.857em;
}
#footer .utility02 > li ul li a{color:#fff;}
#footer .utility02 > li > a:hover{text-decoration: underline;}
.gray_bor{border-bottom: 1px solid #fff;}

/* footer-bnr-area */

.footer-bnr-area .foot-bnr01{
margin:0 auto;
text-align:center;
letter-spacing:-0.4em;
}

.foot-bnr01{ border-left: 1px solid #ebebeb;display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    box-sizing: border-box;letter-spacing: 0.05em!important;max-width: 950px;}

.foot-bnr01 li{
       border-right: 1px solid #ebebeb;width: 33.33333333%;
}
.foot-bnr01 li a{
display:block;
position:relative;
padding:38px 5px 38px;
color:#333;
text-decoration:none;
}
.foot-bnr01 li a:hover{opacity:0.7;}

.social_link{color: #246cc5!important;}

.facebook .face_link:hover{background-color: #99a7c2;}
.twitter .footer_twitter:hover{background-color: #f0f0f0;}
.info .social_link:hover{background-color: #91b5e2;}



.face_link,.footer_twitter,.social_link{font-weight: 600;}

#footer .footer-bnr-area .foot-bnr01 .facebook a{
padding:44px 5px 44px;
color:#344f86;
}

#footer .footer-bnr-area .foot-bnr01 .facebook a:before{
display:inline-block;
content:'';
margin-right:10px;
width:34px;
height:34px;
background:url("../images/footer/Facebook_icon_pc.png") left top no-repeat;
vertical-align:middle;
}

#footer .footer-bnr-area .foot-bnr01 .twitter a{
padding:44px 5px 44px;
border:0;
}
#footer .footer-bnr-area .foot-bnr01 .twitter a:before{
display:inline-block;
content:'';
margin-right:10px;
width:35px;
height:34px;
background:url("../images/footer/x_icon_pc.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{
margin: 0 auto;
}


.grar_b_bor{border-bottom: 1px solid #f2f2f2;}


.foot-bnr02{margin: 50px auto;
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: 35px 0;
    min-height: 20px;
    margin-right: 3%;
}
#footer #pagetop a:after{
display:block;
content:'';
position:absolute;
width:62px;
height:62px;
top:0;
right:0;
background:url( "../images/footer/page_top.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;}

.footer_bg{background-color: #246cc5;padding: 30px 0;}

.footer_con{width: 100%; max-width: 950px; margin: 0 auto;}

/* 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;
}

.gakusyu_logo{padding: 4px 0px 8px!important;}

	.red_info{width: 76%;
	max-width: 608px;
	color: #f00!important;
	text-align: center;
	font-size: 1.1rem;
	padding: 1rem;
	margin: 2rem auto 0;
	border: #f00 1px solid;
	display: block;}

.red_info a:link, a:visited {
    color: #f00;
    text-decoration: none;
}

/*------------------------------------------------------------------------------------------------------------------------
	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;
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;
}
	
	.hdg-topics{font-size: 100%;}	

/*------------------------------------------------------------------------------------------------------------------------
	GlobalNavi Area
------------------------------------------------------------------------------------------------------------------------*/
#global-nav{
display: block;	
float:none;
position:absolute;
top:50px;
left:0;
bottom:auto;
z-index:3000;
margin:0;
width:100%;
background:#ffffff;
}
.top #global-nav{bottom:auto;}
#global-nav .gnav-cont{
display:none;
padding:50px 30px 30px 30px;z-index:9999;transform : scale(1);
}
#global-nav .gnav-cont.open{display:block !important;}
#gnav-menu{
display:block;
overflow:hidden;
position:absolute;
top: -52px;
right: 0;
z-index: 5000;
margin: 0;
width: 65px;
height: 50px;
background:url(../images/bg/sp/gnav-menu_new.gif) left top no-repeat;
background-size:65px auto;
cursor:pointer;
text-indent:100%;
}
#gnav-menu.open{background-position:left -91px;}
#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;
}
	
	
	
	
	.gnav-cont a{color: #246cc5;text-decoration: none;width: 86%;
    font-size: 0.8rem;}
	.gnav-cont a:hover{text-decoration: underline;}
	.sp_menu_box{display: flex;flex-wrap: wrap;width: 100%;}
	.sp_menu_box li{margin-bottom: 30px;width: 50%}
	.sub_btn li{display: block;padding: 0;width: 100%; margin-bottom: 5px;}
	
	.kigyo_tt{display: inline-block;margin-right: 116px;}
	
	.font_b{font-weight: bold;width: 111px;
    display: inline-block;margin-bottom: 18px;font-size: 0.9rem!important;}
	
	.bule_bor{border-top: 1px solid #246cc5;padding-top: 30px;}
	



	
	
	#footer .footer-bnr-area .foot-bnr01 .facebook a,#footer .footer-bnr-area .foot-bnr01 .twitter a{padding: 25px 5px 25px;}
	
	
	#footer .footer-bnr-area .foot-bnr01 .info a{padding: 33px 5px 34px;}
	
	#footer .footer-bnr-area .foot-bnr01 .facebook a:before{width: 50px;
    height: 51px;background: url("../images/footer/Facebook_icon_sp.png") left top no-repeat;}
	
	#footer .footer-bnr-area .foot-bnr01 .twitter a:before{width: 51px;
    height: 50px;background: url(../images/footer/x_icon_sp.png) left top no-repeat;}

	#footer .footer-bnr-area .foot-bnr01 .facebook a:before,#footer .footer-bnr-area .foot-bnr01 .twitter a:before{margin-right: 0px;}	
	
/*------------------------------------------------------------------------------------------------------------------------
	Contents Area
------------------------------------------------------------------------------------------------------------------------*/
/*#contents{
padding:0 5px;
min-width:0;
}*/
#contents.no-tp{padding-top:0;}
.top #contents{
margin-top:15px;
padding:0px;
}

#main-contents{
float:none;
width:auto;
margin-left:0;
padding-bottom:0;
}
.top #main-contents{
float:none;
width:auto;
margin-left:0;
}
#sub-contents,
.top #sub-contents{
float:none;
margin-left:0;
padding-top:0;
padding-left:0px;
padding-right:0px;
width:auto;
}

/*	local-nav
--------------------------------------*/
#sub-contents .local-nav01 ul li{font-size:0.9375em;}


/*------------------------------------------------------------------------------------------------------------------------
	Footer Area
------------------------------------------------------------------------------------------------------------------------*/
#footer .footer-lay{
width:auto;
}

/* utility01 */

.top #footer .utility01{margin:0;}
#footer .utility01 li{
font-size:0.875em;
}
#footer .utility01 li:last-child{border-bottom:0;}
#footer .utility01 li a{
display:block;
position:relative;
text-decoration:none;
}


/* utility02 */
#footer .utility02{display:none;}

/* footer-bnr-area */
#footer .footer-bnr-area .foot-bnr01{
margin:0px;
text-align:center;
letter-spacing:normal;
}
#footer .footer-bnr-area .foot-bnr01 li{
display:block;
margin:0px;
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:33%;
padding-right:0px;
}
#footer .footer-bnr-area .foot-bnr01 .twitter{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
float:left;
width:34%;
padding-left:0px;
}
	
	
#footer .footer-bnr-area .foot-bnr01 .info{
-webkit-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;
float:left;
width:33%;
font-size: 0.8rem;		
padding-left:0px;
}
	

	.footer_btn {
    width: 95%;}
	
.infobtn2, a.infobtn2 {
    padding: 11.3px 0px;
}

#footer .footer-bnr-area .foot-bnr02{
margin:32px 0 32px;
width:auto;
    display: flex;
    flex-wrap: wrap;	
}
#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;}


}
