@charset "utf-8";
/* ===========================================================

レスポンシブ化　2019

============================================================ */



body .sp {
    display: none!important;
}
body .pc {
    display: inherit!important;
}
body #wrapper {
    overflow: hidden;
}
body .opa_50 {
    opacity: 0.2!important;
    transition: all 0.5s;
}

@media print {
ul#gnv li.nv02 a,ul#gnv li.nv02 a.act,
ul#gnv li.nv02 a.act:hover {
	background:none!important;
    display: none;
}
}

@media screen and (max-width: 896px) {
body .pc {
    display: none!important;
}
body .sp {
    display: inherit!important;
}
body * {
    width: auto!important;
    font-size: 16px;
}
body img {
    width: auto!important;
    max-width: 100%;
    height: auto!important;
    vertical-align: bottom;
}
body #leftbox {
    display: none!important;
}
    
/* ---- 画像をテキストに置き換え ---- */
.alt-txt:after {
    content:attr(data-label);
}
.alt-txt img {
    display:none;
}
/* ---- header ---- */
div#header {
    height: auto!important;
    margin: 0 auto;
    background: #fff;
    position: relative;
    width: 100%!important;
    overflow: hidden;
    z-index: 10;
}
.logo {
    position: inherit;
    top: 0;
    height: 1.2em;
    padding: 2%;
    padding-top: 21px;
    padding-left: 14px;
    float: left;
    max-width:  calc(100% - 100px)!important;
}
.logo img {
    height: 1.0em!important;
}
#menu_btn img {
    float: right;
    height: 74px!important;
}
#header .lang {
    display: none;
}
#header #menu {
    border-top: #1980e0 solid 3px;
    clear: both;
}
/* -- 検索ボックス -- */
.search {
    position: inherit;
    top: 0px;
    left: 0px;
    background: #d9e6f1;
    padding: 10px;
    clear: both;
    height: 2em;
    text-align: center;
    display: none;
}
.search .search_box {
    max-width: 80%!important;
    height: 1.2em!important;
    padding: 4px!important;
}
/* -- otoiawase -- */
#header .otoiawase {
    display: none;
}
#header #menu div.otoiawase {
	position:inherit;
    top: 0px;
    left: 0px;
    background: #fff;
    padding: 10px;
    clear: both;
    height: 2em;
    text-align: center;
}

/* -- gvn,　#gnv_2(下部のナビ)    -- */

ul#gnv {
    height: auto;
    padding-top: 0px;
    display: none;
}
ul#gnv li, ul#gnv_2 li {
    float: none;
    text-indent: 0px;
    margin-right: 0px;
    width: 100%;
    height: auto!important;
    line-height: 1.2!important;
}
ul#gnv li a, ul#gnv_2 li a {
    display: block;
    color: #FFFFFF;
    text-decoration: none;
    padding: 1.2em;
    padding-left: 2.6em;
    background: #1980e0 url(../img/arr04.png) no-repeat 0.6em center!important;
    background-size: 1.4em!important;
    border-bottom: #FFFFFF solid 1px;
    height: auto!important;
}
ul#gnv li a.act, ul#gnv_2 li a.act {
    background: #005aac url(../img/arr04.png) no-repeat 0.6em center!important;
    background-size: 1.4em!important;
}
/* gvnの下層について */
    
ul#gnv li li a, ul#gnv_2 li li a {
    color: #333333;
    text-decoration: none;
    padding: 1.2em;
    padding-left: 2.6em;
    background: #ffffff url(../img/arr03.png) no-repeat 1.6em center!important;
    background-size: 0.4em!important;
    border-bottom: #cccccc solid 1px;
}
ul#gnv li li a.act, ul#gnv_2 li li a.act {
    background: #e0e0e0 url(../img/arr03.png) no-repeat 1.6em center!important;
    background-size: 0.4em!important;
}
/* gvnの3階層目について */

ul#gnv li li.open a, ul#gnv_2 li li.open a {
    border-bottom: none!important;
}
ul#gnv li li a.act,ul#gnv_2 li li a.act,
    ul#gnv li li a.open,ul#gnv_2 li li a.open {
    border-bottom: none!important;
}   
ul#gnv li li li a,ul#gnv_2 li li li a,
    ul#gnv li li li a,ul#gnv_2 li li li a{
    border-bottom: none!important;
    border-top: #cccccc solid 1px;
}   
ul#gnv li li ul,ul#gnv_2 li li ul {
    padding-left: 1em;
    background: #e0e0e0!important;
    /*display: none;  見えてもいい？（企業方針は見せたい）*/
    border-bottom: #cccccc solid 1px;
}      
ul#gnv li li ul.open,ul#gnv_2 li li ul.open {
    background: #fff!important;
}     
ul#gnv li li ul.open.act,ul#gnv_2 li li ul.open.act {
    background: #e0e0e0!important;
}   
ul#gnv li li ul.act,ul#gnv_2 li li ul.act,
    ul#gnv li li ul.open,ul#gnv_2 li li ul.open{
    display: inherit;
} 
ul#gnv li li ul li,ul#gnv_2 li li ul li {
    border-left:  #cccccc solid 1px;
}
/* ---- bread ---- */
#bread {
    margin: 0;
    padding: 2% 2% 1%;
    background: none;
}
#bread * {
    font-size: 90%;
}
#bread a {
    color: #555555;
}
/* ---- contents ---- */

#conts {
}
/* ---- main area ---- */
#rightbox {
    float: none;
    margin: 1%;
    padding: 0 2%;
}
#rightbox .boxhead {
    margin: 0;
}
#rightbox #m1boxhead h2 {
    background: none;
}
#rightbox .boxhead h2 {
    height: auto!important;
    border-top: solid 4px #1c82e0;
    border-bottom: solid 4px #cccccc;
    margin-bottom: 20px;
    text-indent: 0;
    font-size: 1.2em;
    font-weight: normal;
    padding: 0.7em 0.2em;
}
/* ---- footer ---- */

div#footer {
}
div#footer .sitemap {
    display: none;
}
div#footer ul.ft_links {
    height: auto!important;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 0.5em 0;
}
div#footer ul.ft_links li {
    position: inherit;
    top: auto!important;
    left: auto!important;
    right: auto!important;
    font-size: 12px!important;
    padding: 0.2em 1em;
}
div#footer ul.ft_links li a {
    font-size: 12px!important;
}
div#footer ul.ft_links.external {
    background: #FFFFFF;
    padding-top: 0.8em;
}
div#footer ul.ft_links.external li {
    margin-bottom: 0.8em;
}
div#footer ul.ft_links.external li a {
    background: url(../img/arr03.png) left 0.3em no-repeat;
}
/* ---- google map ---- */
.gmap {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}
.gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%!important;
}
}

@media screen and (min-width: 897px) {
body .pc, #gnv, .search, #header #menu div.otoiawase {
    display: inherit!important;
}
/* gvnの下層について */
ul#gnv li ul, ul#gnv_2 li ul {
    display: none;
}
}
