.@charset "utf-8";

/*
薄い青：#067fb8;
濃い青：#172a88;

JP
    font-family: yu-mincho-pr6n, sans-serif;
    font-style: normal;
    font-weight: 400;

    font-family: source-han-serif-jp-subset, sans-serif;
    font-style: normal;
    font-weight: 200;

design
    font-family: kaisei-decol, sans-serif;
    font-style: normal;
    font-weight: 400;

    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
*/

/* ------------------------------------------------ ページフェードイン */
body {
    margin: 0;
    padding: 0;
    animation: fadeIn 7s ease 0s 1 normal;
    -webkit-animation: fadeIn 7s ease 0s 1 normal;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

*::after,* {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* ------------------------------------------------ コンテンツフェードイン */
.fuwatAnime {
    -webkit-animation-fill-mode: both;
    -ms-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: 1.5s;
    -ms-animation-duration: 1.5s;
    animation-duration: 1.5s;
    -webkit-animation-name: fuwatAnime;
    -ms-animation-name: fuwatAnime;
    animation-name: fuwatAnime;
    visibility: visible !important;
}
@-webkit-keyframes fuwatAnime {
    0% {
        opacity: 0;
        -webkit-transform: translateY(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
    }
}
@keyframes fuwatAnime {
    0% {
        opacity: 0;
        -webkit-transform: translateY(50px);
        -ms-transform: translateY(50px);
        transform: translateY(50px);
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0);
    }
}

/* ------------------------------------------------ 共通 */
* {
    margin: 0;
    padding: 0;
    list-style: none;
    box-sizing: border-box;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-size: 16px;
    font-family: source-han-serif-jp-subset, sans-serif;
    font-style: normal;
    font-weight: 200;
    letter-spacing: 2.5px;
    line-height: 180%;
    z-index: -100;
}

a {
    font-size: 14px;
    color: #333;
    text-decoration: none;
    letter-spacing: 2.5px;
    line-height: 180%;
}
a:hover {
    transition: 0.5s;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}
.link_box {
    position: relative;
    cursor: pointer;
}
.link_box a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.link_box:hover {
    transition: 0.5s;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}


p,
ul {
    font-size: 14px;
    letter-spacing: 2.5px;
    line-height: 180%;
}

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.justify {
    text-align: justify;
    text-justify: distribute-all-lines;
}

/* ------------------------------------------------ マージン */
.mb15 {
    margin-bottom: 15px;
}
.mb30 {
    margin-bottom: 30px;
}
.mb60 {
    margin-bottom: 60px;
}
.mb90 {
    margin-bottom: 90px;
}
.mb120 {
    margin-bottom: 120px;
}
    @media (max-width: 767px) {
        .mb15 {
            margin-bottom: 10px;
        }
        .mb30 {
            margin-bottom: 15px;
        }
        .mb60 {
            margin-bottom: 30px;
        }
        .mb90 {
            margin-bottom: 45px;
        }
        .mb120 {
            margin-bottom: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .mb15 {
            margin-bottom: 10px;
        }
        .mb30 {
            margin-bottom: 15px;
        }
        .mb60 {
            margin-bottom: 30px;
        }
        .mb90 {
            margin-bottom: 45px;
        }
        .mb120 {
            margin-bottom: 60px;
        }
    }

/* ------------------------------------------------ フォント・配置 */
.font10 {
    font-size: 10px;
}
.font12 {
    font-size: 12px;
}
.font14 {
    font-size: 14px;
}
.font16 {
    font-size: 16px;
}

.center {
    text-align: center;
}

/* ------------------------------------------------ MOVIE */
.video {
    position: relative;
}
.video__box {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 100vh;
}
.video__box video {
    vertical-align: bottom;
}
.video__box--video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.video__overlay::after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(0, 0, 0, 0.4);
}

h3.logo_square {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    width: 237px;
    height: 300px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../images/home/logo_square.svg);
    mix-blend-mode: overlay;
}
    @media (max-width: 767px) {
        h3.logo_square {
            position: absolute;
            top: 40%;
            left: 50%;
            width: 158px;
            height: 200px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        h3.logo_square {
            width: 197.5px;
            height: 250px;
        }
    }

.main_catch_box {
    position: absolute;
    top: 50%;
    left: 75%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    font-family: source-han-serif-jp-subset, sans-serif;
    font-style: normal;
    font-weight: 200;
    color: #fff;
    min-width: 480px;
}
.main_catch {
    font-size: 32px;
    line-height: 40px;
    text-shadow: #000 1px 0 10px;
    margin-bottom: 30px;
}
.sub_catch {
    font-size: 14px;
    line-height: 35px;
    text-shadow: #000 1px 0 10px;
}
    @media (max-width: 767px) {
        .main_catch_box {
            top: 78%;
            left: 50%;
            width: 80%;
            text-align: center;
            min-width: auto;
        }
        .main_catch {
            font-size: 26px;
            line-height: 30px;
        }
        .sub_catch {
            font-size: 14px;
            line-height: 20px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .main_catch_box {
            top: 75%;
            left: 50%;
            width: 80%;
            text-align: center;
        }
        .main_catch {
            font-size: 26px;
            line-height: 30px;
        }
        .sub_catch {
            font-size: 14px;
            line-height: 20px;
        }
    }

/* ------------------------------------------------ ページヘッダ */
#page_header {
    position: relative;
    width: 100%;
    height: 150px;
    margin: 0 auto;
    background-image: linear-gradient(60deg, #067fb8, #172a88);
    z-index: -1;
}
#page_header .ttl_box {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    color: #fff;
    text-align: center;
}
    @media (max-width: 767px) {
        #page_header {
            height: 200px;
        }
        #page_header .ttl_box {
            top: 65%;
        }
    }
    @media (min-width: 768px) and (max-width: 999px) {
        #page_header {
            height: 200px;
        }
        #page_header .ttl_box {
            top: 65%;
        }
    }

/* ------------------------------------------------ パンくず */
.breadcrumbs {
    text-align: right;
    border-bottom: 1px solid #eee;
    margin-bottom: 180px;
    padding: 15px;
}
.aioseo-breadcrumbs {
    display: block;
    width: 1200px;
    font-size: 12px;
    margin: 0 auto;
}
.aioseo-breadcrumbs a {
    font-size: 12px;
    border-bottom: 1px dotted #ccc;
}
.aioseo-breadcrumb-separator {
    padding: 0 10px;
}
@media only screen and (max-width: 767px){
    .breadcrumbs {
        margin-bottom: 90px;
        padding: 5px;
    }
    .aioseo-breadcrumbs {
        font-size: 10px;
        width: 98%;
    }
    .aioseo-breadcrumbs a {
        font-size: 10px;
    }
    .aioseo-breadcrumb-separator {
        padding: 0 5px;
    }
}
@media only screen and (min-width: 768px) and (max-width: 980px) {
    .breadcrumbs {
        font-size: 10px;
        margin-bottom: 90px;
        padding: 5px;
    }
    .aioseo-breadcrumbs {
        width: 98%;
    }
    .aioseo-breadcrumbs a {
        font-size: 10px;
    }
    .aioseo-breadcrumb-separator {
        padding: 0 5px;
    }
}

/* ------------------------------------------------ エリア */
.wrapper {
    display: block;
    width: 100%;
}
.wrap {
    display: block;
    width: 1200px;
    height: auto;
    margin: 120px auto;
}

    @media (max-width: 767px) {
        .wrap {
            display: block;
            width: 85%;
            height: auto;
            margin: 60px auto;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .wrap {
            display: block;
            width: 85%;
            height: auto;
            margin: 60px auto;
        }

    }

#bgc_ble {
    position: relative;
}
#bgc_ble .wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: linear-gradient(60deg, #067fb8, #172a88);
    transform: skewY(-1.5deg);
    z-index: -1;
}
#bgc_ble .wrapper .wrap {
    display: block;
    width: 1280px;
    height: auto;
    color: #fff;
    margin: auto;
    padding: 120px 0;
}
    @media (max-width: 767px) {
        #bgc_ble .wrapper .wrap {
            width: 85%;
            padding: 60px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        #bgc_ble .wrapper .wrap {
            width: 85%;
            padding: 60px 0;
        }
    }

/* ------------------------------------------------ 見出し */
.ttl_box {
    margin-bottom: 90px;
}
h3.ttl_en {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 28px;
}
h2.ttl_jp {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
}
    @media (max-width: 767px) {
        .ttl_box {
            margin-bottom: 45px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ttl_box {
            margin-bottom: 45px;
        }
    }

/* ------------------------------------------------ ボタン */
.btn-box {
    display: inline-block;
    text-align: center;
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 12px;
    color: #000;
    text-decoration: none;
    padding: 10px 80px;
    position: relative;
    border: 1px solid #000;
    transition: .4s;
}
#bgc_ble .btn-box {
    color: #fff;
    border: 1px solid #fff;
}
.btn-box:hover {
    border: 2px solid transparent;
    color: #999;
}
.btn-box:before, .btn-box:after {
    width: 100%;
    height: 100%;
    z-index: 3;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    box-sizing: border-box;
    transform: scale(0);
    transition: .2s;
}
.btn-box:before {
    border-bottom: 2px solid #999;
    border-left: 2px solid #999;
    transform-origin: 100% 0%;
}
.btn-box:after {
    border-top: 2px solid #999;
    border-right: 2px solid #999;
    transform-origin: 0% 100%;
}
.btn-box:hover:after,
.btn-box:hover:before {
    transform: scale(1);
}

/* ------------------------------------------------ HOME：GREETING */
h2.logo_marktxt {
    width: 110.6px;
    height: 140px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    background: url(../images/common/logo_marktxt.svg);
    margin: 0 auto 60px;
}

.greeting_top_box {
    width: 100%;
    margin: 0 auto 60px;
}
h3.greeting_top_ttl {
    font-weight: bold;
    font-size: 30px;
    margin-bottom: 30px;
}
.greeting_top_txt {
    font-size: 14px;
    line-height: 230%;
}
/*
.greeting_top_box {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    width: 915px;
    min-width: 915px;
    height: 370px;
    margin: 0 auto 60px;
}
h3.greeting_top_ttl {
    text-align: center;
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 30px;
    letter-spacing: 3px;
    line-height: 40px;
    margin-bottom: 60px;
}
.greeting_top_txt {
    font-family: source-han-serif-jp-subset, sans-serif;
    font-style: normal;
    font-weight: 200;
    font-size: 16px;
    letter-spacing: 3px;
    line-height: 230%;
    text-align: justify;
    text-justify: inter-ideograph;
}
    @media (max-width: 767px) {
        h2.logo_marktxt {
            margin: 0 auto 30px;
        }
        .greeting_top_box {
            -ms-writing-mode: inherit;
            writing-mode: inherit;
            width: auto;
            min-width: auto;
            height: auto;
            margin: 0 auto 30px;
        }
        h3.greeting_top_ttl {
            font-size: 24px;
            margin-bottom: 30px;
        }
        .greeting_top_txt {
            font-size: 13px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        h2.logo_marktxt {
            margin: 0 auto 30px;
        }
        .greeting_top_box {
            -ms-writing-mode: inherit;
            writing-mode: inherit;
            width: auto;
            min-width: auto;
            height: auto;
            margin: 0 auto 30px;
        }
        h3.greeting_top_ttl {
            font-size: 23px;
            margin-bottom: 30px;
        }
        .greeting_top_txt {
            font-size: 13px;
        }
    }
*/
/*
.flexbox_greeting {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto 60px;
}
.f_item_greeting {
    width: 48%;
    font-size: 13px;
    background-color: #f5f5f5;
    padding: 30px;
    border-radius: 30px;
}
.f_item_greeting p {
    display: block;
    width: 100%;
}
.f_item_greeting p span {
    display: block;
    width: 100%;
    font-size: 16px;
    border-bottom: 1px solid #999;
    padding-bottom: 15px;
}
    @media (max-width: 767px) {
        .flexbox_greeting {
            margin: 0 auto 30px;
        }
        .f_item_greeting {
            width: 100%;
            font-size: 12px;
            padding: 15px;
        }
        .f_item_greeting:nth-child(1) {
            margin-bottom: 30px;
        }
        .f_item_greeting p span {
            font-size: 15px;
            padding-bottom: 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_greeting {
            margin: 0 auto 30px;
        }
        .f_item_greeting {
            width: 100%;
            font-size: 12px;
            padding: 15px;
        }
        .f_item_greeting:nth-child(1) {
            margin-bottom: 30px;
        }
        .f_item_greeting p span {
            font-size: 15px;
            padding-bottom: 10px;
        }
    }
*/

/* ------------------------------------------------ HOME：コンテンツ */
.flexbox_content_top {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    width: 100%;
}
.f_item_content_top {
    width: 50%;
}
.f_item_content_top img {
    width: 100%;
}
    @media (max-width: 767px) {
        .f_item_content_top {
            width: 100%;
        }
        .f_item_content_top:nth-child(1) {
            margin-bottom: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {

    }

.content_box_top {
    position: relative;
    width: 80%;
    background-color: rgba(255,255,255,.9);
    margin: -30px auto 0;
    padding: 30px;
    transition: 1s;
}
.content_box_top:hover {
    margin: -40px auto 0;
    cursor: pointer;
    transition: 1s;
}
.content_box_top a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
    @media (max-width: 767px) {
        .content_box_top {
            width: 90%;
            padding: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .content_box_top {
            width: 90%;
            padding: 15px;
        }
    }

.content_ttl_top {
    position: relative;
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 22px;
    margin-bottom: 30px;
}
.content_ttl_top::after {
    position: absolute;
    bottom: -15px;
    left: 0;
    content: "";
    display: inline-block;
    width: 50px;
    height: 4px;
    background-image: linear-gradient(60deg, #067fb8, #172a88);
    border-radius: 2px;
    transition: 1s;
}
.content_box_top:hover .content_ttl_top::after {
    left: -15px;
}
.content_txt_top {
    font-size: 14px;
    margin-bottom: 30px;
}
    @media (max-width: 767px) {
        .content_ttl_top {
            font-size: 18px;/*22px*/
            margin-bottom: 15px;
        }
        .content_ttl_top::after {
            bottom: -10px;
        }
        .content_txt_top {
            font-size: 12px;
            margin-bottom: 0px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .content_ttl_top {
            font-size: 18px;/*22px*/
            margin-bottom: 15px;
        }
        .content_ttl_top::after {
            bottom: -10px;
        }
        .content_txt_top {
            font-size: 12px;
            margin-bottom: 0px;
        }
    }

.link_arrow_right {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
    letter-spacing: normal;
    line-height: normal;
    position: absolute;
    bottom: 0;
    right: 60px;
    transition: 1s;
}
.link_arrow_right::after {
    position: absolute;
    display: inline-block;
    content: url(../images/common/arrow_right_more.svg);
    width: 40px;
    height: 40px;
    margin: -8px 0 0 10px;
    transition: 1s;
}
.content_box_top:hover .link_arrow_right::after {
    margin: -8px 0 0 20px;
}
    @media (max-width: 767px) {
        .link_arrow_right {
            font-size: 14px;
        }
        .link_arrow_right::after {
            width: 35px;
            height: 35px;
            margin: -6px 0 0 10px;
        }
        .content_box_top:hover .link_arrow_right::after {
            margin: -6px 0 0 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .link_arrow_right {
            font-size: 14px;
        }
        .link_arrow_right::after {
            width: 35px;
            height: 35px;
            margin: -6px 0 0 10px;
        }
        .content_box_top:hover .link_arrow_right::after {
            margin: -6px 0 0 10px;
        }
    }

/* ------------------------------------------------ HOME：PHILOSOPHY */
.flexbox_philosophy {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin-bottom: 60px;
}
.f_item_philosophy_ttl {
    width: 18%;
    margin: 1% auto;
}
.f_item_philosophy_content {
    position: relative;
    width: 18%;
    margin: 1% auto;
}
    @media (max-width: 767px) {
        .flexbox_philosophy {
            text-align: center;
            margin-bottom: 0px;
        }
        .f_item_philosophy_ttl {
            position: relative;
            width: 100%;
            margin: 0 auto 60px;
        }
        .f_item_philosophy_content {
            position: relative;
            width: 48%;
            margin: 1% auto 180px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_philosophy {
            text-align: center;
            margin-bottom: 30px;
        }
        .f_item_philosophy_ttl {
            position: relative;
            width: 100%;
            margin: 0 auto 60px;
        }
        .f_item_philosophy_content {
            position: relative;
            width: 25%;
            margin: 0 auto 120px;
        }
    }

.icon_challenge,
.icon_connect,
.icon_create,
.icon_care {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    width: 105px;
    height: 105px;
    border-radius: 50%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}
.icon_challenge {
    background: url(../images/aboutus/icon_challenge.jpg);
}
.icon_connect {
    background: url(../images/aboutus/icon_connect.jpg);
}
.icon_create {
    background: url(../images/aboutus/icon_create.jpg);
}
.icon_care {
    background: url(../images/aboutus/icon_care.jpg);
}
    @media (max-width: 767px) {
        .icon_challenge,
        .icon_connect,
        .icon_create,
        .icon_care {
            top: 15px;
            width: 105px;
            height: 105px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .icon_challenge,
        .icon_connect,
        .icon_create,
        .icon_care {
            top: 15px;
            width: 105px;
            height: 105px;
        }
    }

.philosophy_ttl {
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    text-align: center;
    font-size: 15px;
    line-height: 120%;
}
.philosophy_ttl span {
    font-size: 12px;
}
.philosophy_ttl span::before {
    display: inline-block;
    content: 'ー ';
}
.philosophy_ttl span::after {
    display: inline-block;
    content: ' ー';
}
    @media (max-width: 767px) {
        .philosophy_ttl span::before {
            content: '';
        }
        .philosophy_ttl span::after {
            content: '';
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .philosophy_ttl span::before {
            content: '';
        }
        .philosophy_ttl span::after {
            content: '';
        }
    }

.annotation_c {
    text-align: center;
    margin-bottom: 60px;
}
.annotation_c span {
    background:linear-gradient(transparent 60%, #f6c 60%);
}
    @media (max-width: 767px) {

    }
    @media (min-width: 768px) and (max-width: 980px) {

    }

/* ------------------------------------------------ 事業内容 */
.flexbox_services {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    margin-bottom: 90px;
}
.f_item_services_img {
    width: 18%;
}
.f_item_services_content {
    position: relative;
    width: 80%;
}
    @media (max-width: 767px) {
        .f_item_services_img {
            width: 100%;
            margin-bottom: 30px;
        }
        .f_item_services_content {
            position: relative;
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_services {
            margin-bottom: 60px;
        }
        .f_item_services_img {
            width: 28%;
            margin-bottom: 30px;
        }
        .f_item_services_content {
            position: relative;
            width: 70%;
        }
    }

h2.services_ttl {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #ccc;
}
h2.services_ttl span {
    font-size: 18px;
    margin-right: 10px;
}
    @media (max-width: 767px) {
        h2.services_ttl {
            font-size: 20px;/*24px*/
            margin-bottom: 10px;
            padding-bottom: 10px;
        }
        h2.services_ttl span {
            font-size: 15px;
            margin-right: 5px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        h2.services_ttl {
            font-size: 20px;/*24px*/
            margin-bottom: 10px;
            padding-bottom: 10px;
        }
        h2.services_ttl span {
            font-size: 15px;
            margin-right: 5px;
        }
    }

.flexbox_services .link_page,
.flexbox_services .link_contact {
    position: absolute;
    bottom: 0;
    right: 60px;
}
.flexbox_services .link_page::after,
.flexbox_services .link_contact::after {
    position: absolute;
    display: inline-block;
    content: url(../images/common/arrow_right_more.svg);
    width: 40px;
    height: 40px;
    margin: -8px 0 0 10px;
    transition: 1s;
}
.flexbox_services:hover .link_page::after,
.flexbox_services:hover .link_contact::after {
    margin: -8px 0 0 20px;
}
    @media (max-width: 767px) {
        .flexbox_services .link_page,
        .flexbox_services .link_contact {
            bottom: -45px;
            right: 50px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_services .link_page,
        .flexbox_services .link_contact {
            right: 50px;
        }
    }

/* ------------------------------------------------ 事業内容：サインキャッチ */
.service_copy {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 28px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 30px;
    padding-bottom: 30px;
}
    @media (max-width: 767px) {
        .service_copy {
            font-size: 23px;
            margin-bottom: 15px;
            padding-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .service_copy {
            font-size: 23px;
            margin-bottom: 15px;
            padding-bottom: 15px;
        }
    }

.services_content_ttl {
    font-family: yu-mincho-pr6n, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
}
.services_content_ttl::before {
    position: relative;
    top: 2px;
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    background-image: url('../images/common/icon_check.svg');
    background-position: center;
    background-size: contain;
    margin-right: 5px;
}
.services_content_subttl {
    font-family: yu-mincho-pr6n, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 16px;
}
.services_content_subttl span {
    color: #fff;
    background-color: #172a88;
    padding: 7px 10px;
    border-radius: 15px;
    margin-right: 10px;
}
    @media (max-width: 767px) {
        .services_content_ttl {
            font-size: 19px;/*22px*/
        }
        .services_content_subttl {
            font-size: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .services_content_ttl {
            font-size: 19px;/*22px*/
        }
        .services_content_subttl {
            font-size: 14px;
        }
    }

.table-wrap {
    overflow-x: scroll;
}
table.services {
    border-collapse: collapse;
    white-space: nowrap;
    width: 100%;
    font-size: 14px;
    border: 1px solid #999;
}
table.services th {
    background: #ccc;
    padding: 15px;
    border: 1px solid #999;
}
table.services td {
    padding: 15px;
    border: 1px solid #999;
}
table.services tr:nth-child(odd) td {
    background: #f5f5f5;
}
table.services td a {
    border-bottom: 1px dotted #999;
    padding-bottom: 3px;
}
    @media (max-width: 767px) {
        table.services {
            font-size: 12px;
        }
        table.services th {
            padding: 10px;
        }
        table.services td {
            padding: 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        table.services {
            font-size: 12px;
        }
        table.services th {
            padding: 10px;
        }
        table.services td {
            padding: 10px;
        }
    }

.services_anker_ttl {
    font-size: 18px;
    font-size: bold;
    margin-bottom: 10px;
}
.services_anker ul li {
    position: relative;
    margin-left: 20px;
}
.services_anker ul li::before {
    position: absolute;
    top: 8px;
    left: -20px;
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    background-position: center;
    background-size: contain;
}
.services_anker ul.org li::before {
    background-image: url('../images/common/icon_dot_org.svg');
}
.services_anker ul.ble li::before {
    background-image: url('../images/common/icon_dot_ble.svg');
}
    @media (max-width: 767px) {
        .services_anker_ttl {
            font-size: 15px;
            margin-bottom: 7px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .services_anker_ttl {
            font-size: 15px;
            margin-bottom: 7px;
        }
    }

.anno_right {
    text-align: right;
    font-size: 12px;
}
    @media (max-width: 767px) {
        .anno_right {
            text-align: left;
            font-size: 10px;
            line-height: normal;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .services_anker_ttl {
            text-align: left;
            font-size: 10px;
            line-height: normal;
        }
    }

/* ------------------------------------------------ 一覧：お知らせ */
.flexbox_post_list {
    position: relative;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    border-top: 1px solid #ccc;
    padding: 30px 0;
    cursor: pointer;
}
.flexbox_post_list:last-of-type {
    border-bottom: 1px solid #ccc;
}
.flexbox_post_list a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.flexbox_post_list:hover {
    transition: 0.5s;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}
.flexbox_post_list::after {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: '';
    display: inline-block;
    width: 40px;
    height: 40px;
    background-image: url(../images/common/arrow_right_more.svg);
    background-size: contain;
    background-repeat: no-repeat;
    transition: 1s;
}
.flexbox_post_list:hover::after {
    right: 0px;
}
    @media (max-width: 767px) {
        .flexbox_post_list {
            padding: 15px 0;
        }
        .flexbox_post_list::after {
            top: inherit;
            bottom: 0;
            right: 0;
            width: 30px;
            height: 30px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_post_list {
            padding: 15px 0;
        }
        .flexbox_post_list::after {
            right: 0;
            width: 30px;
            height: 30px;
        }
    }

.f_item_post_date_list {
    align-self: center;
    width: 15%;
}
.f_item_post_date_list .post_year_list {
    display: block;
    text-align: center;
    font-size: 12px;
}
.f_item_post_date_list .post_day_list {
    display: block;
    text-align: center;
    font-size: 45px;
    line-height: normal;
    margin-top: -10px;
}
    @media (max-width: 767px) {
        .f_item_post_date_list {
            width: 100%;
        }
        .f_item_post_date_list .post_day_list {
            font-size: 38px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_post_date_list {
            width: 15%;
        }
        .f_item_post_date_list .post_day_list {
            font-size: 38px;
        }
    }

.f_item_post_txt_list {
    position: relative;
    width: 85%;
    padding-right: 90px;
}
.f_item_post_txt_list .post_ttl_list {
    font-size: 20px;
    margin-bottom: 15px;
}
.f_item_post_txt_list .post_content_list {
    text-align: justify;
    text-justify: inter-ideograph;
}
    @media (max-width: 767px) {
        .f_item_post_txt_list {
            width: 100%;
            padding-right: 40px;
        }
        .f_item_post_txt_list .post_ttl_list {
            font-size: 17px;
            margin-bottom: 10px;
        }
        .f_item_post_txt_list .post_content_list {
            font-size: 12px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_post_txt_list {
            width: 60%;
            padding-right: 40px;
        }
        .f_item_post_txt_list .post_ttl_list {
            font-size: 17px;
            margin-bottom: 10px;
        }
        .f_item_post_txt_list .post_content_list {
            font-size: 12px;
        }
    }

/* ページング */
.wp-pagenavi {
    width: 100%;
    text-align: center;
    margin: 60px auto 0;
}
.wp-pagenavi span.pages,
.first,
.extend,
.last {
    display: none;
}
.wp-pagenavi span,
.wp-pagenavi a {
    font-size: 12px;
    padding: 5px 7px 7px;
}
.wp-pagenavi a {
    text-decoration: none;
    background-color: #333;
    color: #fff;
}
    @media (max-width: 767px) {
        .wp-pagenavi {
            margin: 30px auto 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .wp-pagenavi {
            margin: 30px auto 0;
        }
    }

/* ------------------------------------------------ 個別：お知らせ */
.ttl_blog_single_box {
    margin-bottom: 30px;
}
.ttl_blog_single {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 24px;
}
    @media (max-width: 767px) {
        .ttl_box {
            margin-bottom: 15px;
        }
        .ttl_blog_single {
            font-size: 25px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ttl_box {
            margin-bottom: 15px;
        }
        .ttl_blog_single {
            font-size: 25px;
        }
    }

.post_date {
    display: inline-block;
    font-size: 12px;
}
.post_box_single .right {
    width: 100%;
    border-bottom: 1px solid #ccc;
    margin-bottom: 120px;
}
.right {
    text-align: right;
}
.post_content_single {
    display: block;
    margin-bottom: 120px;
}
    @media (max-width: 767px) {
        .post_date {
            font-size: 10px;
        }
        .post_box_single .right {
            margin-bottom: 60px;
        }
        .post_content_single {
            margin-bottom: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .post_date {
            font-size: 10px;
        }
        .post_box_single .right {
            margin-bottom: 60px;
        }
        .post_content_single {
            margin-bottom: 60px;
        }
    }

/* ページング */
.paging_single {
    display: inline-block;
    width: 100%;
    margin-bottom: 60px;
}
.previous_post {
    float: left;
    text-align: left;
    width: 50%;
    height: 50px;
    line-height: 50px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    border-right: 1px solid #ccc;
}
.previous_post a {
    font-size: 12px;
    padding-left: 15px;
}
.next_post {
    float: right;
    text-align: right;
    width: 50%;
    height: 50px;
    line-height: 50px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.next_post a {
    font-size: 12px;
    padding-right: 15px;
}
.paging_single a {
    transition: 1s;
}
.paging_single a:hover {
    color: #f00;
}
    @media (max-width: 767px) {
        .previous_post a {
            padding-left: 10px;
        }
        .next_post a {
            padding-right: 10px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .previous_post a {
            padding-left: 10px;
        }
        .next_post a {
            padding-right: 10px;
        }
    }

/* ------------------------------------------------ 会社概要 */
.ttl_und_lead {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 18px;
    margin-bottom: 60px;
}
    @media (max-width: 767px) {
        .ttl_und_lead {
            font-size: 15px;
            margin-bottom: 30px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .ttl_und_lead {
            font-size: 15px;
            margin-bottom: 30px;
        }
    }

.flexbox_4c {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ccc;
}
.flexbox_4c:last-of-type {
    margin-bottom: 0px;
    padding-bottom: 60px;
    border-bottom: none;
}
    @media (max-width: 767px) {
        .flexbox_4c {
            display: flex;
            flex-flow: row wrap;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30px;
            padding-bottom: 30px;
            border-bottom: 1px solid #ccc;
        }
        .flexbox_4c:last-of-type {
            margin-bottom: 0px;
            padding-bottom: 60px;
            border-bottom: none;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .flexbox_4c {
            display: flex;
            flex-flow: row wrap;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 30px;
            padding-bottom: 30px;
            border-bottom: 1px solid #ccc;
        }
        .flexbox_4c:last-of-type {
            margin-bottom: 0px;
            padding-bottom: 60px;
            border-bottom: none;
        }
    }

.f_item_4c_icon {
    position: relative;
    width: 15%;
    padding: 15px;
}
.icon_4c_challenge,
.icon_4c_connect,
.icon_4c_create,
.icon_4c_care {
    width: 105px;
    height: 105px;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    border-radius:50%;
}
.icon_4c_challenge {
    background: url(../images/aboutus/icon_challenge.jpg);
}
.icon_4c_connect {
    background: url(../images/aboutus/icon_connect.jpg);
}
.icon_4c_create {
    background: url(../images/aboutus/icon_create.jpg);
}
.icon_4c_care {
    background: url(../images/aboutus/icon_care.jpg);
}
    @media (max-width: 767px) {
        .f_item_4c_icon {
            width: 100%;
        }
        .icon_4c_challenge,
        .icon_4c_connect,
        .icon_4c_create,
        .icon_4c_care {
            margin: 0 auto;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_4c_icon {
            width: 20%;
        }
    }

.f_item_4c_txt {
    width: 20%;
    padding: 15px;
}
.o4cp_ttl_box {
    position: relative;
}
.o4cp_ttl_box::after {
    position: absolute;
    top: 60%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    content: '';
    display: block;
    width: 30px;
    height: 4px;
    border-radius: 2px;
    background-color: #067fb8;
}
.o4cp_ttl_jp {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    text-align: center;
    font-size: 22px;
    margin-bottom: 10px;
}
.o4cp_ttl_en {
    text-align: center;
    font-size: 12px;
}
    @media (max-width: 767px) {
        .f_item_4c_txt {
            width: 100%;
        }
        .o4cp_ttl_box {
            width: 85vw;
        }
        .o4cp_ttl_jp {
            font-size: 18px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_4c_txt {
            width: 25%;
        }
        .o4cp_ttl_jp {
            font-size: 18px;
        }
    }

.f_item_4c_content {
    width: 65%;
    padding: 15px;
}
    @media (max-width: 767px) {
        .f_item_4c_content {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .f_item_4c_content {
            width: 55%;
        }
    }

/* 会社概要 */
table.company {
    border-collapse: collapse;
    width: 100%;
}
table.company tr th {
    text-align: left;
    font-weight: normal;
    width: 25%;
    padding: 20px;
    border-bottom: 1px solid #ccc;
}
table.company tr td {
    width: 75%;
    padding: 20px;
    border-bottom: 1px solid #ccc;
}
table.company tr:last-of-type th,
table.company tr:last-of-type td {
    border-bottom: none;
}
    @media (max-width: 767px) {
        table.company tr th {
            display: block;
            width: 100%;
            padding: 15px 0 0 0;
            border-bottom: none;
            font-family: kaisei-opti, sans-serif;
            font-style: normal;
            font-weight: 400;
            color: #172a88;
        }
        table.company tr td {
            display: block;
            width: 100%;
            padding: 5px 0 15px 0;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {

    }





















/* ------------------------------------------------ CONTACT */
/* フォーム */
table.contact {
    border-collapse: collapse;
    width: 100%;
}
table.contact tr th {
    width: 25%;
    text-align: left;
    font-weight: normal;
    padding: 15px;
}
table.contact tr th span {
    color: #fff;
    font-size: 12px;
    background-color: #f00;
    margin-left: 10px;
    padding: 2px 7px 4px 7px;
    border-radius: 5px;
}
table.contact tr td {
    width: 75%;
    padding: 15px;
}
table.contact tr td input[type="text"],
table.contact tr td input[type="tel"],
table.contact tr td input[type="fax"],
table.contact tr td input[type="email"],
table.contact tr td select {
    width: 100%;
    height: 3em;
    font-size: 14px;
    border: 1px solid #ccc;
    padding: 0 15px;
}
table.contact td.sales {
    display: block;
    width: 100%;
}
table.contact td.sales input[type="checkbox"] {
    border: 1px solid #ccc;
}
table.contact tr td.sales input[type="text"] {
    width: 50%;
    height: 3em;
    border: 1px solid #ccc;
    margin-bottom: 10px;
}
table.contact td textarea {
    width: 100%;
    border: 1px solid #ccc;
    padding: 15px;
}
    @media (max-width: 767px) {
        table.contact tr th {
            display: block;
            width: 100%;
            padding: 0 0 5px 0;
        }
        table.contact tr td {
            display: block;
            width: 100%;
            padding: 0 0 15px 0;
        }
        table.contact tr td.sales input[type="text"] {
            width: 100%;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        table.contact tr th {
            width: 30%;
            padding: 15px;
        }
        table.contact tr td {
            width: 70%;
        }
    }
/* ContactForm7 */
/* ボタン */
.wpcf7-submit {
    color: #fff;
    background-color: #f00;
    border: none;
    padding: 10px 50px;
}
/* エラーメッセージ */
.screen-reader-response,
.screen-reader-response ul li {
    display: none;
}
.wpcf7-not-valid-tip {
    display: block;
    width: 100%;
    color: #f00;
    margin-top: 10px
}
.wpcf7-validation-errors,
.wpcf7-mail-sent-ok {
    text-align: center;
    color: #f00;
}
/* 必須 */
span.must {
    font-size: 10px;
    color: #fff;
    margin: 0px 5px;
    padding: 2px 5px;
    background-color: #f00;
    border: solid 2px #f00;
}

/* プライバシーポリシー */
.accordion {
    width: 100%;
    margin: 30px auto;
}
.accordion_title {
    position: relative;
    text-align: center;
    border: none;
    display: block;
    list-style: none;
    cursor: pointer;
    background: #f5f5f5;
    padding: 1.4em 1.6em 1.4em;
    line-height: 1.6em;
}
summary.accordion_title::-webkit-details-marker {
    display:none;
}
.accordion_title:after {
    content: "+";
    position: absolute;
    top: calc(50% - 0.5em);
    right: 20px;
    line-height: 1;
    padding: 0;
    pointer-events: none;
}
.accordion::details-content {
    opacity: 0;
    block-size: 0;
    transition: .3s;
    transition-property: display, opacity, block-size, padding;
    transition-behavior: allow-discrete;
    line-height: 1.6em;
    background: #ffffff;
    padding: 30px;
}
.accordion[open]::details-content {
    opacity: 1;
    block-size: auto;
    block-size: calc-size(auto, size);
}
.accordion[open] .accordion_content {
    padding: 1.4em;
}
.accordion[open] .accordion_title:after {
    content: "-";
}
.privacy_ttl {
    font-size: 18px;
    border-bottom: 1px solid #ccc;
    margin-bottom: 10px;
    padding-bottom: 10px;
}
    @media (max-width: 767px) {
        .accordion {
            width: 100%;
            margin: 30px auto;
        }
        .privacy_ttl {
            font-size: 16px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .accordion {
            width: 100%;
            margin: 30px auto;
        }
        .privacy_ttl {
            font-size: 16px;
        }
    }

/* ------------------------------------------------ 送信完了画面 */
.thanks_ttl {
    font-family: kaisei-opti, sans-serif;
    font-style: normal;
    font-weight: 400;
    font-size: 30px;
    text-align: center;
    margin-bottom: 30px;
}
.thanks_txt {
    text-align: center;
    margin-bottom: 120px;
}

/* ------------------------------------------------ FOOTER CONTACT */
#contact {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(../images/contact/footer_contact.svg) no-repeat center center;
    background-size: cover;
    text-align: center;
    padding: 120px 0;
}
    @media (max-width: 767px) {
        #contact {
            padding: 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        #contact {
            padding: 60px;
        }
    }

.contact_box {
    position: relative;
    width: 50%;
    color: #d7d7d7;
    background-color: rgba(0, 0, 0, .7);/*gba(23, 42, 136, .7)*/
    margin: 0 auto;
    padding: 60px;
    border-radius: 0 150px 150px 0;
}
.contact_box::after {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    content: "";
    display: block;
    width: 50px;
    height: 50px;
    background: url(../images/common/arrow_link_btn_wht.svg) no-repeat center center;
    transition: all 1s;
}
.contact_box:hover::after {
    right: 15px;
}
.contact_box a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.contact_box:hover {
    transition: all 0.5s;
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha(opacity=50)";
}
.contact_ttl_en {
    font-family: neulis-sans, sans-serif;
    font-style: normal;
    font-weight: 600;
    font-size: 36px;
    margin-bottom: 5px;
}
.contact_ttl_jp {
    font-size: 16px;
    margin-bottom: 30px;
}
    @media (max-width: 767px) {
        .contact_box {
            width: 100%;
            padding: 30px 30px 75px 30px;
            border-radius: 0;
        }
        .contact_box::after {
            position: absolute;
            top: inherit;
            bottom: 15px;
            right: 40%;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            transform: inherit;
            -webkit-transform: inherit;
            -ms-transform: inherit;
        }
        .contact_ttl_en {
            font-size: 29px;
        }
        .contact_ttl_jp {
            font-size: 14px;
            margin-bottom: 15px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .contact_box {
            width: 100%;
            padding: 30px 120px;
            border-radius: 0;
        }
        .contact_ttl_en {
            font-size: 29px;
        }
        .contact_ttl_jp {
            font-size: 14px;
            margin-bottom: 15px;
        }
    }

/* ------------------------------------------------ FOOTER */
footer {
    position: relative;
    background-image: linear-gradient(60deg, #067fb8, #172a88);
}
footer .wrap {
    margin: 0 auto;
    padding: 60px 0;
}
    @media (max-width: 767px) {
        footer .wrap {
            padding: 30px 0 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        footer .wrap {
            padding: 30px 0 60px;
        }
    }
/* 斜めのBG
footer {
    position: relative;
}
footer::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-image: linear-gradient(60deg, #067fb8, #172a88);
    transform: skewY(-1.5deg);
    z-index: -1;
}

footer .wrap {
    margin: 0 auto;
    padding: 60px 0;
}
    @media (max-width: 767px) {
        footer .wrap {
            padding: 30px 0 60px;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        footer .wrap {
            padding: 30px 0;
        }
    }
*/

h2.logo {
    width: 168px;
    height: 30px;
    margin: 0 auto;
}
h2.logo a {
    float: left;
    width: 168px;
    height: 30px;
    background-image: url(../images/common/logo_wht.svg);
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
}

p.copy {
    position: absolute;
    bottom: 15px;
    right: 120px;
    text-align: right;
    color: #fff;
    font-size: 10px;
}
    @media (max-width: 767px) {
        p.copy {
            left: 50%;
            bottom: 30px;
            right: 0;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            text-align: center;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        p.copy {
            left: 50%;
            bottom: 30px;
            right: 0;
            transform: translateX(-50%);
            -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
            text-align: center;
        }
    }

    @media (max-width: 767px) {
        .pconly {
            display: none;
        }
    }
    @media (min-width: 768px) and (max-width: 980px) {
        .sponly {
            display: none;
        }
    }
    @media (min-width: 981px) {
        .sponly {
            display: none;
        }
        .pconly {
            display: none;
        }
    }
