@charset "utf-8";

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サイド固定お問い合わせバナー
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */

#side_fixed_zone{
	right:0;
}
.side_contact{
    position:relative;
}
.side_contact .en{
    font-family: 'Barlow Condensed', sans-serif;
    position: absolute;
    display: block;
    width: calc(100% - 6px);
    text-align: center;
    background: #001930;
    color: #fff;
    padding: 20px 0;
    z-index: 99;
    margin: 3px;
}
.side_contact .btn a{
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-size: 24px;
    letter-spacing: -5px;
    color: #001930;
    background: #ffffff;
    display: block;
    padding: 75px 15px 25px 15px;
    font-weight: bold;
}/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
サイド固定お問い合わせバナー[英語表記の見た目修正]2021-02-04hiro
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.side_contact .btn a:after{
    content: '\f1d8';
    margin-top: 12px;
    font-size: 20px;
    font-family: FontAwesome;
    font-weight: normal;
}
body.en .side_contact .en {
    display: none;
}

body.en .side_contact .btn a {
    padding-top: 30px;
    letter-spacing: .01em;
}
/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
グローバルナビ　＞「事業内容」子ナビのみ、見た目をカスタマイズ(2020-02-28)mk
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
li#kotei_navi {
    width: auto!important;
    max-width: none!important;
}

li#kotei_navi .wrap {
    display: flex;
}

li#kotei_navi .ttl {
    font-size: 18px;
    font-weight: bold;
    width: 20%;
    padding: 35px 0;
}

li#kotei_navi .ul {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% - 20%);
}

li#kotei_navi .li {
    width: 50%;
}

li#kotei_navi .li > a {
    display: block;
    min-width: 85%!important;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
デフォルト変更 header_fixed_zoneの制御のため
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
body{
	position:relative;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ヘッダー(インフォメーション)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*---ロゴをナビと同揃えにする---*/
div#header_frame {
    display: none;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トップページ　＞　グローバルナビの固定
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
/*--ナビの高さが固定ナビのtop:-100pxより高いため---*/
body.home #header_fixed_zone.fix_target {
    top: -120px;
}

#header_fixed_zone.fix_target {
    background: rgb(0, 107, 194);
}

body.home #header_fixed_zone.fix_exe {
    top: 0;
}

body.logged-in #header_fixed_zone.fix_exe{
	top:32px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
グローバルナビ（下段／親のスタイル）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#header_fixed_zone:not(.fix_target) {
    background: transparent;
    position: absolute;
    top: 0px;
}

#header_fixed_zone:not(.fix_exe) #h_navi_main {
    background: transparent;
    position: relative;
    transition: .3s;
}

#header_fixed_zone:not(.fix_exe) #h_navi_main:hover {
    background: rgba(0, 25, 48, .9);
}

#header_fixed_zone.fix_exe {
    background: none;
}

#header_fixed_zone.fix_exe #h_navi_main {
    background: rgba(0, 25, 48, .9);
}

#h_navi_main .pc_base_width {
    width: 100%;
    padding: 0 50px;
}

#h_navi_main ul:not(.sub-menu) {
    min-width: 1200px;
    padding-left: 100px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

#h_navi_main ul:not(.sub-menu) > li:not(.home) {
    min-height: 110px;
    flex: none;
    min-width: 135px;
}

#h_navi_main ul:not(.sub-menu) > li {
    position: static;
}

#header_fixed_zone.fix_target #h_navi_main ul:not(.sub-menu) > li {
    min-height: 75px;
}

#h_navi_main ul:not(.sub-menu) > li.home {
    width: 83px;
    background: url(https://iac-corp.co.jp/wordpress/wp-content/themes/cyber-child/images/logo.png) no-repeat 50% / contain;
    position: absolute;
    top: 0;
    left: 50px;
    display: flex;
    align-items: center;
    height: 110px;
}

[id*="header_fixed_zone"].fix_target #h_navi_main ul:not(.sub-menu) > li.home {
    height: 75px;
}

#h_navi_main ul:not(.sub-menu) > li.home > a {
    display: block;
    width: 100%;
    height: 100%;
}

#h_navi_main ul:not(.sub-menu) > li.home > a:after {
    display: none!important;
}

/*---ナビhomeアイコンの代わりにロゴ使用のため---*/
#h_navi_main .icon-home:before {
    display: none;
}

#header_fixed_zone:not(.fix_target) #h_navi_main ul:not(.sub-menu) >*:not(.home) > a {
    position: relative;
}

/*---修正追加ここから（2019-06-24）---*/
[id="header_fixed_zone"] #h_navi_main ul:not(.sub-menu) > li a {
    font-weight: bold;
    position: relative;
}

[id="header_fixed_zone"] #h_navi_main ul:not(.sub-menu) > li.translation {
    display: flex;
    justify-content: center;
    align-items: center;
}

[id="header_fixed_zone"] #h_navi_main ul:not(.sub-menu) > li.translation a {
    font-family: 'Barlow Condensed', sans-serif;
    color: #003057;
    background-color: #fff;
    width: 115px;
    height: 35px;
}

[id="header_fixed_zone"] #h_navi_main ul:not(.sub-menu) > li.translation a:hover {
    color: #6a8da8;
}

[id="header_fixed_zone"] #h_navi_main ul:not(.sub-menu) > li.translation a:after {
    display: none;
}

/*---修正追加ここまで---*/
/*---ナビhover用---*/
#h_navi_main ul:not(.sub-menu) > li:not([class*='current']) > a:after {
    content: '';
    width: 0px;
    height: 1px;
    background: #fff;
    position: absolute;
    top: calc(50% + 20px);
    left: 50%;
    transition: width 250ms cubic-bezier(.25,.46,.45,.94);
    transform: translateX(-50%);
}

#h_navi_main ul:not(.sub-menu) > li > a:hover:after {
    width: 52px;
}

#h_navi_main ul >*:last-child:after {
    /* content: 'ENGLISH'; */
    font-family: 'Barlow Condensed', sans-serif;
    font-size: 16px;
    font-weight: 500;
    background: #000;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 30px;
    min-width: 110px;
    position: absolute;
    top: calc(50% - 15px);
    right: -120px;
    transition: .25s;
    z-index: 1;
}





#h_navi_main ul >*:last-child:hover:after {
    color: #000;
    background: #fff;
}

#h_navi_main ul:not(.sub-menu) > li > a:hover {
    background: transparent;
}

#h_navi_main ul:not(.sub-menu) > li[class*='current'] > a {
    background: transparent;
    width: 100%;
    height: 100%;
    position: relative;
}

#h_navi_main ul:not(.sub-menu) > li[class*='current'] > a:after {
    content: '';
    width: 50px;
    height: 1px;
    background: #fff;
    position: absolute;
    top: calc(50% + 20px);
    left: calc(50% - 25px);
    display: inline-block;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
グローバルナビ（下段／子のスタイル）
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#h_navi_main ul:not(.sub-menu) > li > ul.sub-menu {
    background-color: rgba(255, 255, 255, .95);
    white-space: nowrap;
    text-align: left;
    min-height: 272px;
    padding: 30px calc((100vw - 1230px) / 2) 50px;
    flex-wrap: wrap;
    position: absolute;
    width: 0%;
    display: flex;
    left: -100%;
    opacity:0;
    transition:.5s;
}

#h_navi_main ul:not(.sub-menu) > li:hover > ul.sub-menu {
    left:0;
    opacity:1;
}

#h_navi_main ul.sub-menu > li {
    margin: 0 40px;
    width: calc((100% - 40px) * .333);
    max-width: 320px;
}

#h_navi_main ul.sub-menu a {
    color: #000;
    font-size: 18px;
    font-weight: bold;
    border-bottom: 1px solid #d6d6d6;
    padding: 35px 20px;
    display: inline-block;
    min-width: 320px;
    position: relative;
}

#h_navi_main ul.sub-menu a:hover {
    text-decoration: none;
    color: #003057;
}

#h_navi_main ul.sub-menu a:after {
    font-family: "fontello";
    content: '\E80F';
    font-weight: normal;
    font-size: 35px;
    position: absolute;
    top: calc(50% - 26px);
    right: 0;
    color: #000000;
}

/*---▼サブメニューの為の橋渡し---*/
#h_navi_main ul:not(.sub-menu) > li > ul.sub-menu:after {
    content: '';
    display: inline-block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: -35px;
    left: 0;
    z-index: -1;
    /* background: #f00; */
}

/*---▼固定ヘッダーサブメニューの為の橋渡し---*/
[id="header_fixed_zone"].fix_target #h_navi_main ul:not(.sub-menu) > li > ul.sub-menu:after {
    top: -15px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
ローカルナビ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#header .child_navi_wrap {
    margin-top: 50px;
}

ul.child_navi {
    width: 1200px;
    flex-wrap: wrap;
    line-height: 1.8;
}

ul.child_navi li:not(:last-child) {
    margin-right: 1.5em;
    margin-bottom: 1.5em;
}

ul.child_navi a {
    padding: 10px;
    font-size: 16px;
    background: #fff;
    font-weight: bold;
    display: inline-block;
    padding: 3px 5px;
    position: relative;
    margin-left: 35px;
    transition: 1s;
    background: -webkit-linear-gradient(left, #bcd1ff 50%, transparent 50%) 100% bottom / 200% 50% no-repeat;
    background: linear-gradient(to right, #bcd1ff 50%, transparent 50%) 100% bottom / 200% 45% no-repeat;
    -webkit-transition: background-position .2s ease-out;
    transition: background-position .2s ease-out;
    min-width: auto;
}

ul.child_navi a:hover, ul.child_navi li[class*="current"] a {
    text-decoration: none;
    background-position: 0% bottom;
}

ul.child_navi a:before {
    content: '\E818';
    font-family: "fontello";
    color: #003057;
    position: absolute;
    left: -25px;
    top: calc(50% - 15px);
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
メインカラム
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
#main_area .article_inner {
    background-color: #ececec;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フレームデザイン
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
.pc_base_width {
    width: 1200px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
フッター(ナビ)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
div#f_navi_wrap {
    background-color: #001930;
    padding: 40px 0 20px;
}

div#f_navi_wrap ul:not(.sub-menu) {
    padding-left: 100px;
}

div#f_navi_wrap ul:not(.sub-menu) > li:not(.home) {
    margin-left: 40px;
}

div#f_navi_wrap ul:not(.sub-menu) > li.home {
    left: 35px;
}

div#f_navi_wrap ul:not(.sub-menu) > li > a {
    font-size: 16px;
}

div#f_navi_wrap ul:not(.sub-menu) > li > a .icon-home:before {
    content: 'TOP';
    width: auto;
    font-weight: bold;
    font-family: my_gothic;
}

div#f_navi_wrap ul:not(.sub-menu) > li:not(.home) > a:before {
    display: none;
}

div#f_navi_wrap ul.sub-menu {
    margin: 20px 0 0;
    font-size: 14px;
    list-style: none;
}

#f_navi_sub {
    margin-top: 20px;
}

div#f_navi_wrap a {
    color: #fff;
}

div#f_navi_other > .pc_base_width {
    margin-top: 40px;
    border-color: rgba(255, 255, 255, .3);
}
