/* common */
#wrap{width: 100%; position: relative; overflow: hidden;}
#content{width: 100%; position: relative;}
.w1280{width: 1280px; margin:0 auto;}
/* common */

/* header */
.m-h{display: none;}
.m-dep-wrap{display: none;}
.m-lang{display: none;}
#header{padding: 0 45px; width: 100%; position: absolute; top: 0; left: 0; z-index: 10; box-sizing:border-box;}
.h-wrap{height: 140px; padding-top: 30px; box-sizing:border-box;}
.logo{width: 378px; top: 50%; left: 50%; position: absolute; z-index: 5; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}
.logo a{height: 59px; display: block;}
.logo a img{width: 100%; display: block;}
.language{font-size: 0; float: right;}
.language a{width: 100px; height: 36px; font-size: 14px; line-height:34px; margin-right: 4px; letter-spacing:-0.075em; font-weight: 500; color: #fff; background: none; border: 1px solid #929092; display: inline-block; vertical-align: top; text-align: center;}
.language a:hover{background: rgba(255,255,255,0.19);}
.language a:last-of-type{margin-right: 0;}
/* header */

/* footer */
#footer{ width: 100%; box-sizing:border-box; position: relative;}
.f-wrap{padding: 20px 25px 35px; box-sizing:border-box; border-top: 1px solid #39333c;}
.f-logo{width: 250px; margin-right: 80px; float: left;}
.f-logo img{width: 100%; display: block;}
.f-info{width: calc(100% - 600px); float: left;}
.f-nav{margin-bottom: 20px; font-size: 0;}
.f-nav a{font-size: 13px; line-height:23px; letter-spacing:0; font-weight: 300; color: #6a6a68; display: inline-block; vertical-align: top;}
.f-nav span{margin: 0 15px; font-size: 12px; line-height:23px; letter-spacing:0; font-weight: 400; color: #6a6a68; display: inline-block; vertical-align: top;}
.f-adr{}
.f-adr p{font-size: 13px; line-height:23px; letter-spacing:0; font-weight: 300; color: #6a6a68; word-break:break-all;}
.f-adr p span{width: 15px; text-indent:-9999px; display: inline-block; vertical-align: top;}
.f-adr p br.m-block{display: none;}
.family-site{margin-top: 10px; width: 220px; float: right; position: relative;}
.family-site p{font-size: 12px; line-height:30px; padding: 0 30px 0 15px; letter-spacing:0; font-weight: 400; color: #6a6a68; box-sizing:border-box; border: 1px solid #c4c4c3; position: relative; cursor:pointer; overflow: hidden; text-overflow:ellipsis; white-space:nowrap;}
.family-site p span{top: 13px; right: 17px; width: 8px; height: 6px; display: block; position: absolute; z-index: 2;}
.family-site p span img{width: 100%; display: block;}
.family-site p span img.on{display: none;}
.family-site p.on span img.off{display: none;}
.family-site p.on span img.on{display: block;}
.family-site > ul{display: none; bottom: 32px; left: 0; width: 100%; position: absolute; z-index: 1; box-sizing:border-box; border: 1px solid #c4c4c3; border-bottom: 0;}
.family-site > ul li{box-sizing:border-box; border-bottom: 1px solid #c4c4c3;}
.family-site > ul li:last-of-type{border-bottom: 0;}
.family-site > ul li a{font-size: 12px; line-height:30px; padding: 0 15px; letter-spacing:0; font-weight: 400; color: #6a6a68; box-sizing:border-box; display: block; background: #fff;}
.family-site > ul li a:hover{background: #f5f5f5;}
/* footer  */


@media all and ( max-width: 1280px ) {
/* common */
.w1280{width: 100%;}
/* common */

/* header */
#header{padding: 0 3.515625vw;}
.h-wrap{height: 10.9375vw; padding-top: 2.34375vw;}
.logo{width: 29.53125vw;}
.logo a{height: 4.609375vw;}
.language a{width: 7.8125vw; height: 2.8125vw; font-size: 1.09375vw; line-height:2.65625vw; margin-right: 0.3125vw;}
/* header */

/* footer */
.f-wrap{padding: 1.5625vw 1.953125vw 2.734375vw;}
.f-logo{width: 19.53125vw; margin-right: 6.25vw;}
.f-info{width: calc(100% - 46.875vw);}
.f-nav{margin-bottom: 1.5625vw;}
.f-nav a{font-size: 1.015625vw; line-height:1.796875vw;}
.f-nav span{margin: 0 1.171875vw; font-size: 0.9375vw; line-height:1.796875vw;}
.f-adr p{font-size: 1.015625vw; line-height:1.796875vw;}
.f-adr p span{width: 1.171875vw; }
.family-site{margin-top: 0.78125vw; width: 17.1875vw;}
.family-site p{font-size: 0.9375vw; line-height:2.34375vw; padding: 0 2.34375vw 0 1.171875vw;}
.family-site p span{top: 1.015625vw; right: 1.328125vw; width: 0.625vw; height: 0.46875vw;}
.family-site > ul{bottom: 2.5vw;}
.family-site > ul li a{font-size: 0.9375vw; line-height:2.34375vw; padding: 0 1.171875vw;}
/* footer  */

}


@media all and ( max-width: 1000px ) {
/* header */
#header{padding: 0; width: 100%; position: relative;}
.m-lang{padding: 10px 40px; display: block; background: #222; box-sizing:border-box; font-size: 0; text-align: right;}
.m-lang a{margin-right: 10px; font-size: 20px; line-height:44px; width: 135px; height: 46px; letter-spacing:-0.075em; font-weight: 500; color: #fff; border: 1px solid #a7a7a7; background: none; text-align: center; display: inline-block; vertical-align: top;}
.m-lang a:last-of-type{margin-right: 0;}

.pc-h{display: none;}
.m-h-wrap{padding: 0 40px; height: 100px; display: block; position: relative; box-sizing:border-box;}
.m-logo{top: 50%; left: 50%; width: 251px; height: 40px; position: absolute; z-index: 1; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%);}
.m-logo a{height: 40px; display: block;}
.m-logo a img{width: 100%; display: block;}
.m-menu{width: 49px; margin-top: 29px; float: right;}
.m-menu a{height: 40px; display: block;}
.m-menu a img{width: 100%; display: block;}
.m-dep-wrap{display: block; top: 168px; right: -100%; width: 100%; position: absolute; z-index: 20;}
.m-dep-con{}
.mo-dep-in{height: 100%; float: left; width: 50%; position: relative;}
.mo-dep01-in{background: #fff;}
.mo-dep02-in{background: #2598f0;}
.mo-dep01{width: 100%; box-sizing:border-box;}
.mo-dep01 > li > a{font-size: 26px; line-height: 70px; padding: 0 50px 0 30px; letter-spacing:-0.025em; font-weight: 500; color: #272727; box-sizing:border-box; position: relative; display: block;}
.mo-dep01 > li > a span{top: 22px; right: 30px; width: 15px; height: 26px; display: block; position: absolute; z-index: 1;}
.mo-dep01 > li > a span img{width: 100%; display: block;}
.mo-dep01 > li > a span img.on{display: none;}
.mo-dep01 > li.on > a{color: #3365bc;}
.mo-dep01 > li.on > a span img.off{display: none;}
.mo-dep01 > li.on > a span img.on{display: block;}
.mo-dep02{display: none; top: 0; left: 0; width: 100%; position: absolute; z-index: 1;}
.mo-dep02 > li > a{padding: 0 30px; font-size: 26px; line-height:70px; letter-spacing:-0.025em; font-weight: 400; color: #fff; box-sizing:border-box; display: block;}
.mo-dep-close{top: 20px; right: 30px; width: 25px; position: absolute; z-index: 5;}
.mo-dep-close a{height: 25px; display: block;}
.mo-dep-close a img{width: 100%; display: block;}
/* header */

/* footer */
.f-wrap{padding: 0 0 45px; border-top: 0;}
.f-logo{display: none;}
.f-info{width: 100%; float: none;}
.f-nav{padding: 15px 0; margin-bottom: 30px; font-size: 0; background: #f2f7fb; box-sizing:border-box; text-align: center;}
.f-nav a{font-size: 20px; line-height: 1; letter-spacing:0; font-weight: 300; color: #333; display: inline-block; vertical-align: top;}
.f-nav span{margin: 0 15px; font-size: 18px; line-height:20px; letter-spacing:0; font-weight: 300; color: #bfc1c2; display: inline-block; vertical-align: top;}
.f-adr{text-align: center;}
.f-adr p{font-size: 18px; line-height:28px; letter-spacing:0; font-weight: 300; color: #666;}
.f-adr p span{width: 30px; text-indent:-9999px; display: inline-block; vertical-align: top;}
.f-adr p span.m_none{display: none;}
.f-adr p br.m-block{display: block;}
.family-site{display: none;}
/* footer  */
}


@media all and ( max-width: 760px ) {
/* header */
.m-lang{padding: 1.3157894737vw 5.2631578947vw;}
.m-lang a{margin-right: 1.3157894737vw; font-size: 2.6315789474vw; line-height:5.7894736842vw; width: 17.7631578947vw; height: 6.0526315789vw;}

.m-h-wrap{padding: 0 5.2631578947vw; height: 13.1578947368vw;}
.m-logo{width: 33.0263157895vw; height: 5.2631578947vw;}
.m-logo a{height: 5.2631578947vw;}
.m-menu{width: 6.4473684211vw; margin-top: 3.8157894737vw;}
.m-menu a{height: 5.2631578947vw;}
.m-dep-wrap{top: 22.1052631579vw;}
.mo-dep01 > li > a{font-size: 3.9473684211vw; line-height: 9.2105263158vw; padding: 0 6.5789473684vw 0 3.9473684211vw;}
.mo-dep01 > li > a span{top: 2.8947368421vw; right: 3.9473684211vw; width: 1.9736842105vw; height: 3.9473684211vw;}
.mo-dep02 > li > a{padding: 0 3.9473684211vw; font-size: 3.4210526316vw; line-height:9.2105263158vw;}
.mo-dep-close{top: 2.6315789474vw; right: 3.9473684211vw; width: 3.2894736842vw;}
.mo-dep-close a{height: 3.2894736842vw;}
/* header */

/* footer */
.f-wrap{padding: 0 0 5.9210526316vw;}
.f-nav{padding: 1.9736842105vw 0; margin-bottom: 3.9473684211vw;}
.f-nav a{font-size: 2.6315789474vw;}
.f-nav span{margin: 0 1.9736842105vw; font-size: 2.3684210526vw; line-height:2.6315789474vw;}
.f-adr p{font-size: 2.3684210526vw; line-height:3.6842105263vw;}
.f-adr p span{width: 3.9473684211vw;}
/* footer  */
}