@charset "UTF-8";


/* 共通
------------------------------------------------------------------ */
.container{
max-width:1100px;
height:auto;
margin:0.5em auto;
padding:0.5em;
}

section,
.cont{
height:auto;
margin:1em auto;
padding:10px;
border:solid 1px #BBB;
-webkit-box-shadow:0 0 10px 0 rgba(102,102,102,0.3);
box-shadow:0 0 10px 0 rgba(102,102,102,0.3);	
}

section.noline{
border:none;
-webkit-box-shadow:none;
box-shadow:none;	
}

section.noshadow{
-webkit-box-shadow:none;
box-shadow:none;	
}


.orange{
color:#FFF !important;
background-color:#F90;
}

.dark-orange{
color:#FFF !important;
background-color:#F60;
}


mark{
font-weight:700;
}

mark a{
color:#03C !important;
}

mark a:hover{
color:#C00 !important;
}

.marker_b{ 
background: linear-gradient(transparent 30%, #D0E8FF 30%);
}

.marker_g{ 
background: linear-gradient(transparent 30%, #D1EAB7 30%);
}

.marker_bg{ 
background: linear-gradient(transparent 30%, #CBE7ED 30%);
}

.marker_p{ 
background: linear-gradient(transparent 30%, #F5DCEA 30%);
}

.marker_y{ 
background: linear-gradient(transparent 30%, #FFEEBB 30%);
}


p.top{
padding:1em;
text-align:left;
}

p.note{
margin:5px 20px;
padding-left:1em;
text-indent:-1em;
font-size:90%;
text-align:left;
}

.img-box-center{
margin:10px auto;
text-align:center;
}

.img-box-center img{
display:inline-block;
max-width:100%;
height:auto;
margin:5px;
}


.br-pc{
display:none;
}


.top-title{
padding:3px 6px;
background-color:#49C0DA;
color:#FFF;
font-weight:normal;
text-align:right;
}



/*ヘッダー
----------------------------------------------------*/
header{
position:relative;
}

#header_inner{
position:relative;
margin:0 auto;
padding:5px;
line-height:1;
}

#logo-contact{
padding:5px;
text-align:center;
}

#logo-col,
#contact-col{
padding-bottom:5px;	
}


#logo-col img,
#contact-col img{
max-width:320px;
height:auto;	
}


p#header-message{
width:auto;
margin:10px auto;
padding:10px;
line-height:1.5;
color:#422;
background-color:#FEFEF3;
border:#7FD2E5 solid 1px;
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
}

ul.support{
display:none;
}




/*グローバルナビ
----------------------------------------*/
#gnav-base.fixed,
#gnav-base-top.fixed{
position:fixed;
left:0;
top:0;
z-index:10000;
}

#gnav-base,
#gnav-base-top{
position:relative;
width:100%;
margin:0 auto;
background-color:#117BD2;
text-align:center;
}

#gnav-cont{
max-width:1100px;
height:auto;
margin:0 auto;	
}

.gnav{
list-style-type:none;
text-align:center;
z-index:50;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
display:flex;
flex-wrap:wrap;
max-width:1200px;
justify-content:space-between;
}


.gnav li{
flex:50%;
font-size:120%;
}

.gnav li a{
display:block;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
margin:0;
padding:1em 0.1em;
text-decoration:none;
color:#FFF;
background-color:rgba(255,255,255,0);
border-left:rgba(255,255,255,0.2) solid 1px;
border-bottom:rgba(255,255,255,0.2) solid 1px;
text-shadow:1px 1px 1px rgba(0,0,0,0.2);
}

.gnav li:last-child a{
border-right:rgba(255,255,255,0.2) solid 1px;
}

.gnav li a:hover{
background-color:rgba(255,255,255,0.2);
-moz-transition:0.25s linear;
-webkit-transition:0.25s linear;
-o-transition:0.25s linear;
transition:0.25s linear;
}

.gnav li a{
-moz-transition:0.25s linear;
-webkit-transition:0.25s linear;
-o-transition:0.25s linear;
transition:0.25s linear;
}


#home .gnav li:nth-child(1) a,
#menu .gnav li:nth-child(2) a,
#company-overview .gnav li:nth-child(3) a,
#faq .gnav li:nth-child(4) a,
#access .gnav li:nth-child(5) a,
#contact .gnav li:nth-child(6) a{
background-color:#2992CF;
background-color:#06AEFF;
}



/*コンテンツ
----------------------------------------*/
main{
position:relative;
clear:both;
width:auto;
margin:0 auto;
padding:10px 0;
text-align:center;
background-color:#FFFFFF;
}


/*シェアボタン
----------------------------------------------------*/
#share{
padding:2px 0;
text-align:center;
margin:10px 0 3px;/*タップターゲット配慮*/
}

#share ul{
margin:0;
padding:0;
}

#share li{
margin:0;
margin:0 3px;/*タップターゲット配慮*/
padding:0;
display:inline-block;
vertical-align:top;
}



/*コンテンツ
----------------------------------------------------*/
.container{
max-width:1100px;
height:auto;
margin:0.5em auto;
padding:0.5em;
}

.container p{
text-indent:1em;
margin-bottom:0.8em;
line-height:1.8;
}


#all{
position:relative;	
max-width:1100px;
height:auto;
margin:0.5em auto;
padding:0.5em;
}

.cont{
clear:both;
padding:10px;
}

.cont h2{
margin:0 0 10px;
padding:5px 10px;
text-shadow: 0px 1px 0px #FFF;
color:#009bd7;
border:1px solid #CC0000;
background:#fcfcfc;
background:-webkit-gradient(linear, left top, left bottom, from(#fcfcfc), to(#eaeaea));
background:-moz-linear-gradient(top, #fcfcfc, #eaeaea);
background:-o-linear-gradient(top, #fcfcfc, #eaeaea);
background:-ms-linear-gradient(top, #fcfcfc, #eaeaea);
background:linear-gradient(top, #fcfcfc, #eaeaea);
filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#fcfcfc', endColorstr='#eaeaea');
-ms-filter:"progid:DXImageTransform.Microsoft.gradient(GradientType=0,startColorstr='#fcfcfc', endColorstr='#eaeaea)";
-pie-background:linear-gradient(top, #fcfcfc, #eaeaea);
behavior:url(../js/PIE.htc);
word-wrap:break-word;
word-break:keep-all;
}

.cont h3{
color:#FFF;
margin-bottom:5px;
padding:3px 0;
font-weight:normal;
}



/* フッター
---------------------------------------- */
footer{
background-color:#F6F6F6;
font-size:90%;
padding:1em 0;
border-top:#CCC solid 1px;
}

footer .container{
position:relative;
padding:10px;
}



/* フッターサイト情報
---------------------------------------- */
#foot-logo-col{
margin-bottom:2em;
}

#foot-logo-col img{
max-width:300px;
height:auto;
}

.foot-companyname{
margin-bottom:30px;
}

.foot-companyname h2{
margin-top:0;
margin-bottom:5px;
color:#4E2727;
}

.foot-companyname p{
margin-top:0;
margin-bottom:0;
font-size:14px;
}

.foot-companyname a{
text-decoration:none;
}


/* フッターナビ
---------------------------------------- */
.foot-navi div{
margin-bottom:20px;
}

.foot-navi ul{
margin:0 0 0 2px;
padding:0;
list-style:none;
}

.foot-navi ul li{
display:block;
padding:2px;
}

.foot-companyname{
padding-bottom:2em;
border-bottom:#CCC solid 1px;
}

.foot-companyname .tcol{
padding-left:1em;
}


.foot-navi a{
display:block;
width:auto;
padding:10px;
color:inherit;
text-decoration:none;
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
}


.foot-navi a:hover{
background-color:rgba(127,210,229,0.2);
-moz-transition:0.25s linear;
-webkit-transition:0.25s linear;
-o-transition:0.25s linear;
transition:0.25s linear;
}


.foot-navi ul li a:before{
display:inline-block;
font-family:FontAwesome;
font-style:normal;
font-weight:normal;
font-size:14px;
line-height:1;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
content:"\f0da";
margin-right:5px;
color:#7FD2E5;
}


/* フッターコピーライト
---------------------------------------- */
.foot-copy{
height:60px;
padding:5px;
font-size:12px;
text-align:center;
background:#49C0DA;
color:#FFF;
}


/* #sc-nav
-------------------------------------*/
#sc-nav{
position:fixed;
display:block;
z-index:10;
right:9px;
bottom:75px;
list-style-type:none;
margin:0;
padding:0;
line-height:1;
text-align:center;
}

#sc-nav li{
display:block;
margin:1px 0;
}

#sc-nav li a{
display:block;
max-width:40px;
color:#FFF;
padding:8px !important;
font-size:10px !important;
line-height:1.2;
text-decoration:none;
background:rgba(50,57,64,0.9);
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
border:rgba(255,255,255,0.8) solid 1px;
}

#sc-nav li a:hover{
text-decoration:none;
background:rgba(50,57,64,1);
}

#sc-nav li:nth-child(2) a{
background:rgba(78,173,193,0.9);
}

#sc-nav li:nth-child(2) a:hover{
background:rgba(78,173,193,1);
}

#sc-nav li a i{
display:block;
font-size:18px;
margin-bottom:3px;
}


/* return-top
-------------------------------------- */
#return-top {
position:fixed;
display:block;
z-index:10;
right:6px;
bottom:15px;

list-style-type:none;
margin:0;
padding:0;
line-height:1;
text-align:center;
}

#return-top li{
display:block;
margin:4px;
}

#return-top a{
display:block;
color:#FFF;
padding:8px 11px;
font-size:12px;
line-height:12px;
background:rgba(50,57,64,0.5);
text-decoration:none;
-webkit-border-radius:4px;
-moz-border-radius:4px;
border-radius:4px;
}

#return-top a i{
margin-bottom:3px;
}

#return-top a:hover{
text-decoration:none;
background:rgba(50,57,64,0.7);
}





.ex-col{
margin:1em auto;
padding:1em 0.5em;
border:#CCC dashed 2px;
background-color:#F8F7F5;
font-size:90%;
line-height:1.4;
}

.ex-col h3{
font-size:100%;
margin-top:-0.5em;
border:none;
}

.ex-col h3:after{
display:none;
}


.ex-col h3:before{
display:inline-block;
margin:-20px 10px 0 -30px;
font-family:FontAwesome;
font-style:normal;
font-weight:normal;
line-height:1;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
content:"\f0c6";
color:#F90;
font-size:300%;
}

.ex-col ul{
border:#CCC solid 1px;
margin:-1em 1em 1em;
padding:1em 0.5em;
background-color:#FFF;
text-align:left;
}

.ex-col ul li{
margin-left:2em;
margin-bottom:0.5em;
text-indent:-1em;
}

.ex-col ul li:before{
display:inline-block;
margin:0 0.4em;
font-family:FontAwesome;
font-style:normal;
font-weight:normal;
line-height:1;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
content:"\F069";
color:#F60;
font-size:80%;
}


.ex-col ul li span{
color:#F96;
}


.detail-link{
margin:1em auto;
padding:0.5em;
text-align:left;
font-size:120%;	
}

.detail-link div a{
display:block;
margin:0 auto;
padding:0.5em;
max-width:400px;
height:auto;
background-color:#FC0;
text-decoration:none;
color:#000;
vertical-align:middle;
}

.detail-link div a:before{
margin-right:0.5em;
content:'\f138';
font-family:FontAwesome;
font-style:normal;
font-weight:normal;
color:#F60;
line-height:1;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
}

.detail-link div a:hover{
position:relative;
left:1px;
top:1px;
}

/*メディアクエリ
-----------------------------------------------------------------*/
@media all and  (min-width:700px) {
	
.br-sp{
display:none;
}

.br-pc{
display:block;
}

/*ヘッダー
----------------------------------------------------*/
#header-bar{
background:none;
color:#400000;
}

#header_inner{
max-width:1000px;
margin:10px auto;	
}

#logo-contact{
position:relative;
height:90px;
}

#logo-col{
position:absolute;
top:30px;
left:10px;
}

#contact-col{
position:absolute;
top:20px;
right:10px;
}


/* ul.support
-------------------------------------- */
ul.support{
display:block;
position:absolute;
top:0;
right:0;
}

ul.support{
margin:0 0 4px;
padding:4px;
text-align:center;
font-size:80%;
word-spacing:normal;
}

ul.support li{
margin:0;
padding:0 0.5em;
border-right:1px #CCC solid;
display:inline;
}

ul.support li.end{
margin:0;
border-right:none;
}

ul.support li a{
color:#333;
text-decoration:none;
}

ul.support li a:link {
text-decoration:none;
}

ul.support li a:visited {
text-decoration:none;
}

ul.support li a:hover {
color:#333;
border-bottom:1px dotted #333;
}

ul.support li a:active {
color:#333;
border-bottom:1px dotted #333;
}



/*グローバルナビ
----------------------------------------*/
.gnav li{
flex:1;
}



/* #share
---------------------------------------------------*/
#share{
position:static;
}

#share li{
position:static;
}

#share{
position:absolute;
bottom:10px;
right:5px;

margin:0;/*タップターゲット配慮戻し*/
}



/*コンテンツ
----------------------------------------*/
#content{
clear:both;
padding:0 20px;
}

/* nav-bottom
-----------------------------------------------*/
#nav-bottom ul{
display:none;
}



/* フッター
---------------------------------------- */
.group-sites .container div{
flex:1;
}

footer .container{
display:flex;
flex-wrap:wrap;
max-width:1000px;
margin-left:auto;
margin-right:auto;
}


#foot-logo-col img,
#foot-logo-col div{
display:inline-block;
vertical-align:middle;
}

#foot-logo-col img{
max-width:360px;
height:auto;

}

.foot-companyname{
flex:0 0 100%;
}

.foot-navi{
display:flex;
flex:0 0 100%;
}

.foot-navi div{
flex:1;
}

.foot-navi div:not(:first-child){
margin-left:10px;
}

.foot-copy{
flex:0 0 100%;
}


/* #sc-nav
-------------------------------------*/
#sc-nav{
top:43%;
}


}




@media all and (min-width:800px) {
	
#logo-col{
position:absolute;
top:-10px;
left:10px;
}

#logo-col img,
#contact-col img{
max-width:360px;
height:auto;	
}

p#header-message{
position:absolute;
top:50px;
left:20px;
max-width:380px;
padding:5px;
line-height:1.2;
}

#foot-logo-col img{
max-width:300px;
height:auto;
}


#header_inner{
min-height:150px;
}



}

@media all and (min-width:980px) {
	
	
#header_inner{
min-height:140px;
}
	
	
p#header-message{
position:absolute;
top:50px;
left:20px;
max-width:570px;
padding:5px 8px;
line-height:1.5;
}
	
/*グローバルナビゲーション
----------------------------------------*/
#gnav ul{
width:100%;
margin:0 auto;
}

#gnav ul li a{
padding:12px 4px;
font-size:14px;
}


/* foot
-------------------------------------- */
.foot-companyname{
flex:0 0 30%;
border:none;
padding-bottom:0;
}

.foot-navi{
flex:0 0 60%;
padding-top:50px;
padding-left:80px;
}

.foot-navi li a{
padding:3px;
font-size:12px;
}


/* p.copyright
-------------------------------------- */
p.copyright{
position:absolute;
left:0;
bottom:0;
margin:0;
padding:0	
}


}


