@charset "UTF-8";

/* ==================================================
	■OWLet original style：基本的に変更しない
================================================== */
.cms_edit_caption img,
.cms_move_caption img {
    width: initial !important;
}

.cms_edit_caption a:hover,
.cms_move_caption a:hover {
    text-decoration: underline;
}

.cms_edit_caption a:before,
.cms_edit_caption a:after,
.cms_move_caption a:before,
.cms_move_caption a:after {
    display: none;
}

.ui-draggable img {
    border: 0 !important;
    margin-right: 5px !important;
}

.richtext p {
    font-family: "Arial","Microsoft YaHei","黑体","宋体",sans-serif;
    margin-top: 1em;
}
.richtext p:first-of-type {
    font-family: "Arial","Microsoft YaHei","黑体","宋体",sans-serif;
    margin-top: 0;
}

/* ==================================================
	■basic layout
================================================== */
#wrapper {
    position: relative;
    width: 100%;
    color: #000;
    font-family: "游ゴシック Medium", "Yu Gothic", YuGothic, sans-serif ;
    font-size: 14px;
    overflow-x: hidden;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #wrapper {
        min-width: 1000px;
    }
}
/* ========== end △ */
/* ==================================================
	■SEO
================================================== */
#seo_txt {
    margin-bottom: 15px;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #seo_txt {
        display: none;
    }
}
/* ========== end △ */
#seo_txt h1 {
    font-size: 11px;
    font-weight: normal;
    color: #bcbcbc;
}

/* ==================================================
	■header
================================================== */
#header {
    border-top: 4px solid #0c419a;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #header {
        padding: 3% 0;
    }
}
/* ========== end △ */
#header a {
    color: #000;
    text-decoration: none;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #header a:hover {
        text-decoration: underline;
    }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #header .h_logo {
        width: 55%;
    }
}
/* ========== end △ */
#header .h_info {
    font-size: 13px;
}
#header .h_info .h_news {
    background: url(../common_img/icon_news.png) center left no-repeat;
    padding-left: 20px;
    margin-right: 30px;
}
#header .h_info .h_dl {
    background: url(../common_img/icon_dl.png) center left no-repeat;
    padding-left: 20px;
    margin-right: 40px;
}
#header .h_info .h_tel {
    font-size: 16px;
}

/* gnav
-------------------------------------------------- */
/* メニュー開閉ボタン
-------------------------------------------------- */
.h_btn {
    width: 40px;
}

#gnav_open {
    width: 40px;
}

#gnav_close {
    width: 40px;
    margin-left: auto;
    padding: 5%;
}

/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #gnav_open, #gnav_close {
        display: none;
    }
}
/* ========== end △ */
/* メニューOPEN時背景
-------------------------------------------------- */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    .nav_shade {
        position: fixed;
        z-index: 10;
        top: 0;
        width: 100%;
        height: 100%;
        cursor: pointer;
        background-color: #333;
        background-color: rgba(0, 0, 0, 0.7);
    }
}
/* ========== end △ */
/* gnav本体 */
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #gnav {
        position: relative;
        margin-top: 15px;
    }
    #gnav .gnav_list {
        display: flex;
        position: relative;
    }
    #gnav .gnav_list li.main {
        width: 135px;
        font-size: 15px;
        text-align: center;
        cursor: pointer;
    }
    #gnav .gnav_list li.main:hover {
        color: #fff;
        background-color: #0c419a;
    }
    #gnav .gnav_list li.main a {
        color: #000;
        text-decoration: none;
        padding: 10px 20px 25px;
        display: block;
    }
    #gnav .gnav_list li.main a:hover {
        color: #fff;
    }
    #gnav .gnav_list .dd_wrap {
        background: url(../common_img/gnav_arrow.png) center bottom 10px no-repeat;
        padding: 10px 0 25px;
    }
    #gnav .gnav_list .dd_wrap:hover {
        background: url(../common_img/gnav_arrow_on.png) center bottom 10px no-repeat #0c419a;
    }
    #gnav .gnav_list li.contact {
        width: 186px;
        background: none;
        padding-bottom: 10px;
    }
    #gnav .gnav_list li.contact a {
        display: block;
        padding: 15px 0 10px 20px;
        border-radius: 30px;
        background: url(../common_img/icon_mail.png) center left 15% no-repeat #c1ab05;
        text-align: center;
    }
    #gnav .gnav_list li.contact a:hover {
        background: url(../common_img/icon_mail.png) center left 15% no-repeat #0c419a;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    #gnav .menu {
        position: absolute;
        left: 0;
        top: 57px;
        width: 100%;
        background-color: #0c419a;
        z-index: 1;
    }
    #gnav .menu .sub_menu {
        width: 900px;
        background-color: #0c419a;
        margin: 0;
        padding-bottom: 0;
    }
    #gnav .menu .type02 {
        width: 600px;
    }
    #gnav .menu .sub_menu div a {
        color: #fff;
        text-decoration: none;
    }
    #gnav .menu .sub_menu li.sub {
        float: left;
        width: 30%;
        font-size: 15px;
        text-align: left;
    }
    #gnav .menu .type02 li.sub {
        width: 45%;
    }
    #gnav .menu .sub_menu li.sub a {
        display: block;
        background: url(../common_img/angle_r_gld.png) 100% 50% no-repeat;
        color: #fff;
        text-decoration: underline;
    }
    #gnav .menu .sub_menu li.sub a:hover {
        text-decoration: none;
    }
}
/* ========== end △ */
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #gnav .gnav_list .sub_menu {
        padding: 30px 50px;
    }
    #gnav .gnav_list .type02 {
        padding: 30px 350px 30px 50px;
    }
    #gnav .gnav_list .sub_menu li.sub {
        position: relative;
        padding-left: 30px;
        margin-bottom: 20px;
    }
    #gnav .gnav_list .sub_menu li.sub:nth-child(n+4) {
        margin-bottom: 0;
    }
    #gnav .gnav_list .type02 li.sub:nth-child(n+3) {
        margin-bottom: 0;
    }
    #gnav .gnav_list .sub_menu li.sub::before {
        content: "";
        position: absolute;
        top: 30%;
        right: 18%;
        margin: auto;
        width: 6px;
        height: 6px;
        border-top: 2px solid #c1ab05;
        border-right: 2px solid #c1ab05;
        transform: rotate(45deg);
    }
    #gnav .gnav_list .sub_menu li.sub a {
        padding: 5px 0;
    }
    #gnav .gnav_list .sub_menu .sub {
        background: url(/static/common_img/ico_car.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .mame {
        background: url(../common_img/ico_mame.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .company {
        background: url(../common_img/icon_company.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .ofice {
        background: url(../common_img/icon_ofice.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .history {
        background: url(../common_img/icon_history.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .policy {
        background: url(../common_img/icon_policy.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .partner {
        background: url(../common_img/icon_partner.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .relation {
        background: url(../common_img/icon_relation.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .shin {
        background: url(../common_img/ico_recruit.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .carrier {
        background: url(../common_img/ico_apply.png) center left no-repeat;
    }
    #gnav .gnav_list .sub_menu .recruit {
        background: url(../common_img/ico_mushi.png) center left no-repeat;
    }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #gnav {
        position: absolute;
        z-index: 11;
        top: 0;
        right: -100%;
        width: 100%;
        background-color: #0c419a;
        overflow-y: auto;
        transition: all 0.2s ease;
    }
    #gnav.openMenu {
        right: 0;
    }
    #gnav #gnav.openMenu #gnav_open {
        display: none;
    }
    #gnav #gnav.openMenu #gnav_close {
        display: block;
    }
    #gnav .gnav_list li {
        border-top: 1px solid #fff;
    }
    #gnav .gnav_list li.first, #gnav .gnav_list li.dd_wrap {
        border-top: none;
    }
    #gnav .gnav_list li .inner {
        display: none;
    }
    #gnav .gnav_list li a {
        display: block;
        padding: 5% 3%;
        background: url(../common_img/angle_r_wh.png) 97% 50% no-repeat;
        color: #FFF;
        text-decoration: none;
    }
    #gnav .gnav_list li .small_link {
        display: none;
    }
}
/* ========== end △ */
/* ==================================================
	■cont_box
================================================== */
#cont_box {
    background: url(../common_img/contact_bg.jpg) center center no-repeat;
    padding: 60px 0;
    margin-top: 80px;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #cont_box {
        background: url(../common_img/contact_bg.jpg) left center no-repeat;
        background-size: cover;
        padding: 15% 0;
        margin-top: 10%;
    }
}
/* ========== end △ */
#cont_box .contact_ttl {
    text-align: center;
}
#cont_box .contact_ttl p {
    font-size: 16px;
    color: #fff;
    font-weight: normal;
    margin-top: 10px;
}
#cont_box .inner {
    width: 815px;
    margin: 70px auto 0;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #cont_box .inner {
        width: 100%;
        margin-top: 10%;
    }
}
/* ========== end △ */
#cont_box .inner .box {
    width: 45%;
    text-align: center;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #cont_box .inner .box {
        width: 100%;
        margin-bottom: 15%;
    }
}
/* ========== end △ */
#cont_box .inner .box p {
    color: #fff;
    font-size: 20px;
    border-bottom: 1px solid #adb2b9;
    padding-bottom: 5px;
}
#cont_box .inner .box .tel {
    margin-top: 35px;
    color: #fff;
    font-size: 16px;
}
#cont_box .inner .box .tel img {
    vertical-align: baseline;
    padding-left: 5px;
}
#cont_box .inner .box .mail {
    width: 278px;
    margin: 20px auto 0;
}
#cont_box .inner .box .mail a {
    display: block;
    padding: 20px 0 20px 20px;
    border-radius: 30px;
    background: url(../common_img/icon_mail.png) center left 15% no-repeat #c1ab05;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #cont_box .inner .box .mail a:hover {
        background: url(../common_img/icon_mail.png) center left 15% no-repeat #0c419a;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
}
/* ========== end △ */
/* ==================================================
	■footer
================================================== */
#footer {
    background: #000;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #footer {
        padding: 70px;
    }
    #footer .f_wrap {
        width: 1000px;
        margin: 0 auto;
    }
}
/* ========== end △ */
#footer .f_info .address {
    margin-top: 25px;
    font-size: 13px;
    color: #fff;
}

/* fnav
-------------------------------------------------- */
#fnav .sitemap_ttl {
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    color: #fff;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #fnav .sitemap_ttl {
        padding: 5% 0;
    }
}
/* ========== end △ */
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #fnav {
        width: 48%;
        opacity: 0.8;
    }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #fnav {
        width: 100%;
    }
}
/* ========== end △ */
#fnav .fnav_list {
    color: #fff;
}
#fnav .fnav_list .home_link a {
    color: #fff;
    font-weight: bold;
    text-decoration: none;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #fnav .fnav_list .home_link a:hover {
        text-decoration: underline;
    }
}
/* ========== end △ */
#fnav .fnav_list ul {
    margin-top: 50px;
}
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #fnav .fnav_list .home_link a {
        display: block;
    }

    #fnav .fnav_list ul {
        margin-top: 0;
    }
}
/* ========== end △ */
#fnav .fnav_list ul li .sub {
    padding-left: 10px;
}
#fnav .fnav_list ul li a {
    color: #fff;
    text-decoration: none;
}
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #fnav .fnav_list ul li a:hover {
        text-decoration: underline;
    }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #fnav {
        width: 100%;
    }
    #fnav .fnav_list {
        color: #fff;
    }
    #fnav .fnav_list .home_link {
        padding: 5%;
    }
    #fnav .fnav_list .home_link a {
        color: #fff;
        font-weight: bold;
        text-decoration: none;
    }
    #fnav .fnav_list .f_nav_link {
        width: 100%;
    }
    #fnav .fnav_list ul {
        margin-top: 0;
    }
    #fnav .fnav_list ul li {
        border-top: 1px solid #fff;
    }
    #fnav .fnav_list ul li .sub {
        padding-left: 10px;
    }
    #fnav .fnav_list ul li a {
        display: block;
        padding: 5%;
        color: #fff;
        text-decoration: none;
    }
    #fnav .fnav_list ul .b_blue {
        background: #0c419a;
    }
    #fnav .fnav_list ul .b_blue a,
    #fnav .fnav_list ul .b_blue.no_link {
        padding: 5%;
    }
}
/* ========== end △ */
/* ==================================================
	■PAGE TOP
================================================== */
/* ▽ PC layout ========== */
@media print, screen and (min-width: 641px) {
    #pagetop_btn_f {
        display: none;
        position: fixed;
        z-index: 20;
        right: 5%;
        bottom: 5%;
    }
}
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 640px) {
    #pagetop_btn_f {
        background-color: #0c419a;
    }
    #pagetop_btn_f a {
        display: block;
        padding: 5%;
        color: #FFF;
        font-size: 18px;
        font-weight: bold;
        text-decoration: none;
        text-align: center;
    }
}
/* ========== end △ */
