@charset 'UTF-8';
body {
    -webkit-text-size-adjust:100%;
    -ms-text-size-adjust:100%;
    margin:0;
    padding:0;
    border:0;
    outline:0;
    vertical-align:baseline;
    line-height:1;
    word-break:break-all;
}
.yureru-s {
    animation: yureru-s 2s infinite;
}
@keyframes yureru-s {
    0% {
        transform: translate(2px, 0px);
    }
    5% {
        transform: translate(-2px, 0px);
    }
    10% {
        transform: translate(2px, 0px);
    }
    15% {
        transform: translate(-2px, 0px);
    }
    20% {
        transform: translate(2px, 0px);
    }
    25% {
        transform: translate(-2px, 0px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

.yureru-j {
    animation: yureru-j 2s infinite;
}
@keyframes yureru-j {
    0% {
        transform: translate(0px, 2px);
    }
    5% {
        transform: translate(0px, -2px);
    }
    10% {
        transform: translate(0px, 2px);
    }
    15% {
        transform: translate(0px, -2px);
    }
    20% {
        transform: translate(0px, 2px);
    }
    25% {
        transform: translate(0px, -2px);
    }
    30% {
        transform: translate(0px, 0px);
    }
}

.dokidoki {
    animation: dokidoki 1.5s infinite;
}
@keyframes dokidoki {
    0% {
        transform: scale(1.05)
    }
    5% {
        transform: scale(1)
    }
    95% {
        transform: scale(1)
    }
    100% {
        -webkit-transform: scale(1.05)
    }
}

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video, input, textarea {
    margin:0;
    padding:0;
    border:none;
    font-size:100%;
    font-weight:normal;
    font-style:normal;
    vertical-align:baseline;
    background:transparent;
}

img {
    vertical-align:bottom;
}

article, aside, details, figcaption, figure, footer, header, menu, nav, section, div, address, iframe, canvas, hr, textarea {
    display:block;
    line-height:1;
}

iframe {
    max-width:100% !important;
}

a, label {
    cursor:pointer;
}

blockquote {
    padding:0;
    margin:0;
    display:block;
}

address, em {
    font-style:normal;
}

hr {
    border:0;
    margin:0;
    padding:0;
}

ul, ol, li {
    list-style:none;
}

textarea {
    resize:vertical;
    overflow:hidden;
    border:none;
}

input, button, select {
    vertical-align:middle;
    border-radius:0;
    border:none;
    background:transparent;
    margin:0;
    padding:0;
    cursor:pointer;
}

table {
    border-collapse:collapse;
}

*:before, *:after {
    padding:0;
    margin:0;
    line-height:1;
}

.u-mt0 {
    margin-top:0 !important;
}

.u-mr0 {
    margin-right:0 !important;
}

.u-mb0 {
    margin-bottom:0 !important;
}

.u-ml0 {
    margin-left:0 !important;
}

.u-pt0 {
    padding-top:0 !important;
}

.u-pr0 {
    padding-right:0 !important;
}

.u-pb0 {
    padding-bottom:0 !important;
}

.u-pl0 {
    padding-left:0 !important;
}

.u-mt5 {
    margin-top:5px !important;
}

.u-mr5 {
    margin-right:5px !important;
}

.u-mb5 {
    margin-bottom:5px !important;
}

.u-ml5 {
    margin-left:5px !important;
}

.u-pt5 {
    padding-top:5px !important;
}

.u-pr5 {
    padding-right:5px !important;
}

.u-pb5 {
    padding-bottom:5px !important;
}

.u-pl5 {
    padding-left:5px !important;
}

.u-mt10 {
    margin-top:10px !important;
}

.u-mr10 {
    margin-right:10px !important;
}

.u-mb10 {
    margin-bottom:10px !important;
}

.u-ml10 {
    margin-left:10px !important;
}

.u-pt10 {
    padding-top:10px !important;
}

.u-pr10 {
    padding-right:10px !important;
}

.u-pb10 {
    padding-bottom:10px !important;
}

.u-pl10 {
    padding-left:10px !important;
}

.u-mt15 {
    margin-top:15px !important;
}

.u-mr15 {
    margin-right:15px !important;
}

.u-mb15 {
    margin-bottom:15px !important;
}

.u-ml15 {
    margin-left:15px !important;
}

.u-pt15 {
    padding-top:15px !important;
}

.u-pr15 {
    padding-right:15px !important;
}

.u-pb15 {
    padding-bottom:15px !important;
}

.u-pl15 {
    padding-left:15px !important;
}

.u-mt20 {
    margin-top:20px !important;
}

.u-mr20 {
    margin-right:20px !important;
}

.u-mb20 {
    margin-bottom:20px !important;
}

.u-ml20 {
    margin-left:20px !important;
}

.u-pt20 {
    padding-top:20px !important;
}

.u-pr20 {
    padding-right:20px !important;
}

.u-pb20 {
    padding-bottom:20px !important;
}

.u-pl20 {
    padding-left:20px !important;
}

.u-mt25 {
    margin-top:25px !important;
}

.u-mr25 {
    margin-right:25px !important;
}

.u-mb25 {
    margin-bottom:25px !important;
}

.u-ml25 {
    margin-left:25px !important;
}

.u-pt25 {
    padding-top:25px !important;
}

.u-pr25 {
    padding-right:25px !important;
}

.u-pb25 {
    padding-bottom:25px !important;
}

.u-pl25 {
    padding-left:25px !important;
}

.u-mt30 {
    margin-top:30px !important;
}

.u-mr30 {
    margin-right:30px !important;
}

.u-mb30 {
    margin-bottom:30px !important;
}

.u-ml30 {
    margin-left:30px !important;
}

.u-pt30 {
    padding-top:30px !important;
}

.u-pr30 {
    padding-right:30px !important;
}

.u-pb30 {
    padding-bottom:30px !important;
}

.u-pl30 {
    padding-left:30px !important;
}

.u-mt35 {
    margin-top:35px !important;
}

.u-mr35 {
    margin-right:35px !important;
}

.u-mb35 {
    margin-bottom:35px !important;
}

.u-ml35 {
    margin-left:35px !important;
}

.u-pt35 {
    padding-top:35px !important;
}

.u-pr35 {
    padding-right:35px !important;
}

.u-pb35 {
    padding-bottom:35px !important;
}

.u-pl35 {
    padding-left:35px !important;
}

.u-mt40 {
    margin-top:40px !important;
}

.u-mr40 {
    margin-right:40px !important;
}

.u-mb40 {
    margin-bottom:40px !important;
}

.u-ml40 {
    margin-left:40px !important;
}

.u-pt40 {
    padding-top:40px !important;
}

.u-pr40 {
    padding-right:40px !important;
}

.u-pb40 {
    padding-bottom:40px !important;
}

.u-pl40 {
    padding-left:40px !important;
}

.u-mt45 {
    margin-top:45px !important;
}

.u-mr45 {
    margin-right:45px !important;
}

.u-mb45 {
    margin-bottom:45px !important;
}

.u-ml45 {
    margin-left:45px !important;
}

.u-pt45 {
    padding-top:45px !important;
}

.u-pr45 {
    padding-right:45px !important;
}

.u-pb45 {
    padding-bottom:45px !important;
}

.u-pl45 {
    padding-left:45px !important;
}

.u-mt50 {
    margin-top:50px !important;
}

.u-mr50 {
    margin-right:50px !important;
}

.u-mb50 {
    margin-bottom:50px !important;
}

.u-ml50 {
    margin-left:50px !important;
}

.u-pt50 {
    padding-top:50px !important;
}

.u-pr50 {
    padding-right:50px !important;
}

.u-pb50 {
    padding-bottom:50px !important;
}

.u-pl50 {
    padding-left:50px !important;
}

.u-mt55 {
    margin-top:55px !important;
}

.u-mr55 {
    margin-right:55px !important;
}

.u-mb55 {
    margin-bottom:55px !important;
}

.u-ml55 {
    margin-left:55px !important;
}

.u-pt55 {
    padding-top:55px !important;
}

.u-pr55 {
    padding-right:55px !important;
}

.u-pb55 {
    padding-bottom:55px !important;
}

.u-pl55 {
    padding-left:55px !important;
}

.u-mt60 {
    margin-top:60px !important;
}

.u-mr60 {
    margin-right:60px !important;
}

.u-mb60 {
    margin-bottom:60px !important;
}

.u-ml60 {
    margin-left:60px !important;
}

.u-pt60 {
    padding-top:60px !important;
}

.u-pr60 {
    padding-right:60px !important;
}

.u-pb60 {
    padding-bottom:60px !important;
}

.u-pl60 {
    padding-left:60px !important;
}

.u-mt65 {
    margin-top:65px !important;
}

.u-mr65 {
    margin-right:65px !important;
}

.u-mb65 {
    margin-bottom:65px !important;
}

.u-ml65 {
    margin-left:65px !important;
}

.u-pt65 {
    padding-top:65px !important;
}

.u-pr65 {
    padding-right:65px !important;
}

.u-pb65 {
    padding-bottom:65px !important;
}

.u-pl65 {
    padding-left:65px !important;
}

.u-mt70 {
    margin-top:70px !important;
}

.u-mr70 {
    margin-right:70px !important;
}

.u-mb70 {
    margin-bottom:70px !important;
}

.u-ml70 {
    margin-left:70px !important;
}

.u-pt70 {
    padding-top:70px !important;
}

.u-pr70 {
    padding-right:70px !important;
}

.u-pb70 {
    padding-bottom:70px !important;
}

.u-pl70 {
    padding-left:70px !important;
}
.u-mt100 {
    margin-top:100px !important;
}

.u-mr100 {
    margin-right:100px !important;
}

.u-mb100 {
    margin-bottom:100px !important;
}

.u-ml100{
    margin-left:100px !important;
}

@font-face {
    font-family:'Yu Gothic';
    src:local('Yu Gothic Medium');
    font-weight:100;
}

@font-face {
    font-family:'Yu Gothic';
    src:local('Yu Gothic Medium');
    font-weight:200;
}

@font-face {
    font-family:'Yu Gothic';
    src:local('Yu Gothic Medium');
    font-weight:300;
}

@font-face {
    font-family:'Yu Gothic';
    src:local('Yu Gothic Medium');
    font-weight:400;
}

@font-face {
    font-family:'Yu Gothic';
    src:local('Yu Gothic Bold');
    font-weight:bold;
}

@font-face {
    font-family:'Helvetica Neue';
    src:local('Helvetica Neue Regular');
    font-weight:100;
}

@font-face {
    font-family:'Helvetica Neue';
    src:local('Helvetica Neue Regular');
    font-weight:200;
}

* {
    box-sizing:border-box;
}

html {
    font-size:62.5%;
}

body {
    color:#333;
font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif,"メイリオ",Meiryo, 'Yu Gothic', YuGothic;
    font-size:13px;
    font-size:1.3rem;
    line-height:1;
}

/* IE10以上 */

img {
    max-width:100%;
    height:auto;
}

a {
    color:inherit;
    text-decoration:none;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

a:hover {
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.text-centerd {
    text-align:center;
}

.text-right {
    text-align:right;
}

.view-pc {
    display:block;
}
.view-pcA {
    display:block;
}
.view-sp {
    display:none;
}

.slide-menu {
    width:100%;
    background-color:#fff;
    position:absolute;
    top:0;
    left:0;
    z-index:2;
}

.spNav {
    display:none;
}

.header__search {
    display:none;
    position:absolute;
    width:45px;
    height:45px;
    padding:5px;
    top:0;
    right:0px;
    text-align:center;
    vertical-align:middle;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    border-left:1px solid #ccc;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    z-index:8888;
}

.header__search img {
    width:24px;
}

.header__spnav, .header__spnav span {
    display:inline-block;
    -webkit-transition:all 0.4s;
    transition:all 0.4s;
    box-sizing:border-box;
}

.header__spnav {
    display:none;
    background-color:#c01920;
}

.header__spnav span {
    position:absolute;
    left:0;
    width:21px;
    height:2px;
    background-color:#fff;
}

.header__spnav span:nth-of-type(1) {
    top:14px;
    left:12px;
}

.header__spnav span:nth-of-type(2) {
    top:21px;
    left:12px;
}

.header__spnav span:nth-of-type(3) {
    bottom:14px;
    left:12px;
}

.header__spnav.is-active span:nth-of-type(1) {
    -webkit-transform:translateY(8px) rotate(-45deg);
    transform:translateY(8px) rotate(-45deg);
    left:11px;
}

.header__spnav.is-active span:nth-of-type(2) {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.header__spnav.is-active span:nth-of-type(3) {
    -webkit-transform:translateY(-7px) rotate(45deg);
    transform:translateY(-7px) rotate(45deg);
    left:11px;
}

.spNav__menu--lev2 {
    display:none;
}

.spNav__menu--lev3 {
    display:none;
    padding-top:10px;
}

.spNav__link {
    background:url(/images/common/ico_arrow.png) no-repeat 96% 50%;
    background-size:5px auto;
}

.spNav__link:hover {
    background-color:#dc2731;
}

.acc-menu {
    background:url(/images/common/ico_plus.png) no-repeat 96% 50%;
    background-size:10px auto;
}

.acc-menu:hover {
    background-color:#dc2731;
}

.acc-menu.is-active {
    background:#910204 url(/images/common/ico_minus.png) no-repeat 96% 50%;
    background-size:10px auto;
}

.acc-menu.is-active.acc-menu--nest.is-active {
    background-color:#dc2731;
}

.acc-menu.is-active:hover {
    background-color:#910204;
}

.acc-menu--nest.is-active {
    background-color:#dc2731;
}

.header {
    width:100%;
    position:relative;
    -webkit-transition:all 0.5s linear;
    transition:all 0.5s linear;
}

.header.is-fixed {
    top:0;
    position:fixed;
    height:70px;
    z-index:7777;
    -webkit-transition:all 0.5s linear;
    transition:all 0.5s linear;
}
.header.is-fixed .header__topBox  {
    display:none;
}
.header.is-fixed .header__topBox.contact  {
    display:block;
    border-bottom:none;
}
.header.is-fixed .header__mainBox {
    background-color:rgba(255, 255, 255, 0.9);
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.header.is-fixed .gnav__link {
    color:#333;
    text-shadow:none;
    -webkit-transition:all 0.4s linear;
    transition:all 0.4s linear;
    position:relative;
    padding-right:20px;
}

.header.is-fixed .gnav__link:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.header.is-second {
    z-index:7777;
}

.header.is-second .header__mainBox {
    padding: 0px calc(50% - 500px);
    background-color:rgba(255, 255, 255, 0.9);
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    border-bottom:1px solid #eee;
}

.header.is-second .gnav__link {
    color:#333;
    text-shadow:none;
    -webkit-transition:all 0.4s linear;
    transition:all 0.4s linear;
    position:relative;
    padding-right:20px;
}

.header.is-second .gnav__link:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.header__topBox {
    padding:0 calc(50% - 500px);
    height:44px;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    border-bottom:1px solid #d6d6d6;
    background-color:#f4f4f4;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    position:relative;
    z-index:10;
}

.header__description {
    padding:0 20px;
}

.header__menu {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    margin-left:auto;
    height:44px;
    white-space:nowrap;
    border-right:1px solid #d6d6d6;
}

.header__menu li {
    height:44px;
    line-height:43px;
    border-left:1px solid #d6d6d6;
}

.header__menu li.ico-partner a:before, .header__menu li.ico-customer a:before {
    left:98%;
}

.header__menu a {
    color:inherit;
    text-decoration:none;
    display:inline-block;
}
.header__menu .ico-partner a {
    padding: 0px 5px;
}
.header__menu a:before {
    left:100%;
    box-sizing:border-box;
    width:4px;
    height:4px;
    border:4px solid transparent;
    border-left:4px solid #333;
}

.header__en {
    width:50px;
    text-align:center;
}

.header__mainBox {
    padding: 0px calc(50% - 500px);
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    position:relative;
    z-index:10;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.header__logo {
    border-left: 1px solid #ccc;
    height: 40px;
}
.header__logo a {
    display: table-cell;
    vertical-align: middle;
    padding: 10px;
}
.header .dropdown {
    margin-top:1px;
}

.header.is-fixed .dropdown, .header.is-fixed .dropdown.is-active {
    top:51px;
}

.header.is-second .dropdown {
    top:95px;
}

.header.is-second .dropdown.l-partner, .header.is-second .dropdown.l-customer {
    top:43px;
}

.gnav {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    margin-right: 10px;
}

.gnav__tel {
    margin-left:auto;
}

.gnav__list {
    margin-left:13px;
    padding-top:10px;
    white-space:nowrap;
    cursor:pointer;
}

.gnav__list:after {
    margin-top:10px;
    content:'';
    height:0;
    width:0;
    padding-top:5px;
    background-color:#c01920;
    display:block;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.gnav__list:hover:after {
    width:100%;
    height:5px;
    padding-top:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.gnav__list.is-current:after, .gnav__list.is-active:after {
    width:100%;
    height:5px;
    padding-top:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.gnav__list:nth-child(5) .gnav__link:before {
    margin-top:-2px;
    right:2px;
    -webkit-transform:rotate(90deg);
            transform:rotate(90deg);
}

.gnav__list:nth-child(5) .gnav__link:after {
    display:none;
}

.gnav__link {
    color:inherit;
    color:#fff;
    text-decoration:none;
    text-shadow:#333 1px 1px 5px;
    font-size:15px;
    font-size:1.5rem;
    font-weight:bold;
    padding-right:20px;
    position:relative;
}

.gnav__link:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
}

.footer {
    width:100%;
    background-color:#f7f5f2;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-flow:column;
        -ms-flex-flow:column;
            flex-flow:column;
}

.footer__mainBox {
    padding:36px calc(50% - 500px);
}

.footer__mainBoxInner {
    position:relative;
}

.footer__menuGroup {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    border-bottom:2px solid #ddd;
    padding-bottom:20px;
}

.footer__menuBox {
    width:170px;
    margin-right:30px;
}

.footer__menuList {
    margin-bottom:12px;
}

.footer__menuLink {
    color:inherit;
}

.footer__menuLink:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.footer__menuTitle {
    font-size: 15px;
    font-size: 1.5rem;
    margin: 25px 0 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid #ddd;
}

.footer__menuTitle a {
    color:inherit;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.footer__menuTitle a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.footer__social {
    margin-left:auto;
    max-width:390px;
    max-height:365px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    overflow:hidden;
}

.footer__socialBox {
    width:50%;
}

.footer__socialBox iframe {
    width:100%;
}

.facebook-wrapper {
    max-width:500%;
    margin:0 auto;
}

.facebook-wrapper > .fb-page {
    width:100%;
}

.facebook-wrapper > .fb-page > span, .facebook-wrapper iframe {
    width:100% !important;
}

.footer__social--sp {
    display:none;
}

.footer__bottomBox {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    height:50px;
    padding:0 calc(50% - 500px);
    color:#fff;
    background-color:#c01920;
}

.footer__subNav {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    border-right:1px solid #fff;
}

.footer__subNav:first-child {
    border-right:none;
}

.footer__subNavList {
    border-left:1px solid #fff;
}

.footer__subNavLink {
    color:#fff;
    display:inline-block;
    padding:0 20px;
}

.footer__subNavLink:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.footer__logo {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    position:absolute;
    bottom:0;
}

.footer__logo img {
    width:140px;
    height:auto;
}

.footer__logo div {
    margin-right:35px;
    padding-right:30px;
    border-right:2px solid #ddd;
}

.footer__logo p {
    font-size:15px;
    font-size:1.5rem;
}

.footer__copyright {
    margin-left:auto;
}

.contents {
    width:100%;
    margin:0;
    background-color:#fff;
}

.contents_inner {
    width:1040px;
    margin:0 auto;
    zoom:1;
}

.contents_inner:before, .contents_inner:after {
    content:'';
    display:block;
}

.contents_inner:after {
    clear:both;
}

.contents-section, .contents-section--company, .contents-section--record, .contents-section--service {
    padding:50px calc(50% - 500px);
    background-color:#fff;
    position:relative;
    z-index:10;
}

.contents-section.l-grayBg, .l-grayBg.contents-section--company, .l-grayBg.contents-section--record, .l-grayBg.contents-section--service {
    background-color:#f7f5f2;
}

.contents-section.l-fullWide, .l-fullWide.contents-section--company, .l-fullWide.contents-section--record, .l-fullWide.contents-section--service {
    width:100%;
    padding:50px 0;
    text-align:center;
}

.contents__text {
    font-size:18px;
    font-size:1.8rem;
    line-height:1.6;
    margin-bottom:40px;
}

.section-block {
    margin-bottom:30px;
    padding-bottom:25px;
}

.section-block p {
    line-height:1.6;
    font-size:16px;
    font-size:1.6rem;
}
.txt-indent {
    text-indent: 1em;
}
.caseStudy_column {
    padding: 0px;
    display: flex;
}
.caseStudy_column .caseStudy_imgarea.download {
    position: relative;
}
.caseStudy_column .caseStudy_imgarea {
    width: 20%;
}
.caseStudy_column .caseStudy_imgarea img.alignnone {
    border: 1px solid #999;
}
.caseStudy_column .text_area {
    width: 40%;
    padding: 0 30px;
}
.caseStudy_h1 {
    font-size: 20px;
    font-size: 2.0rem;
    line-height: 2.0;
    margin-bottom: 20px;
}
.caseStudy_column .text_area p {
    font-size: 16px;
    font-size: 1.6rem;
    text-indent: 1em;
    margin-bottom: 1em;
    line-height: 1.3;
}
.caseStudy-form {
    width: 40%;
    border: 1px solid #ddd;
}
.main-contents-single p {
    width: 100%;
    font-size: 16px;
    font-size: 1.6rem;
    padding: 20px 0;
}


/*--------------新規追加-----------------*/
/*PC用文字サイズ＿20170127*/
.section-block li {
    line-height:1.6;
    font-size:16px;
    font-size:1.6rem;
}
/*スミ文字タイトル＿20170127*/
  .tit-bold{
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
  margin-bottom: 10px;
  }
/*サイズ9px＿20170130*/
.caption-01{
    font-size: 80%;
    line-height: 1.3em;
}
.caption_centr{
    font-size: 80%;
    text-align: center;
    margin-bottom: 20px;
}
.section-block p.caption_centr{
    font-size: 80%;
    text-align: center;
    margin-bottom: 20px;
}

/*テンプレート用h1＿20170130*/
.tit-heading {
    text-align: center;
    font-size:24px;
    font-size:2.4rem;
    margin-bottom:25px;
    padding-bottom:12px;
    border-bottom:3px solid #c01920;
    line-height:1.3;
}
/*テンプレート用h1＿20170131*/
.tit-heading {
    margin-bottom:0;
}
/*sp用の文字＿20170130*/
.pcnone {
  display: none;
}
/*sp時非表示＿20170131*/
.spnone {
  display: block;
}
/*ページ内リンク用＿20170201*/
.internal-link {
  margin-top: -60px;
  padding-top: 60px;
}
.internal-link2 {
  margin-top: -80px;
  padding-top: 80px;
}
/*数字を入れて一段下げる＿20170127*/
.section-block .notes li.txt-num , .section-block ol li.txt-num{
      list-style-type: decimal;
      margin-bottom: 10px;
      margin-left: 20px;
}
/*右付き＿20170127*/
.txt-right{
      text-align: right;
}
/*右付きpaddingあり＿20170127*/
.right{
      text-align: right;
      margin-left: auto;
      padding-bottom: 5px;
}
/*左付き＿20170127*/
.left{
      text-align: left;
      margin-right: auto;
      padding-bottom: 5px;
}
/*bold＿20170127*/
.bold{
        font-weight: bold;
}
/*ソリューションのアイコン＿20170202*/
.rubyBox-column3  .rubyBox.kn1:after {
  content: url(/img/next/lineup/icon-kn1.png);
}
.rubyBox-column3  .rubyBox.kn2:after {
  content: url(/img/next/lineup/icon-kn2.png);
}
.rubyBox-column3 .rubyBox.kn3:after {
  content: url(/img/next/lineup/icon-kn3.png);
}
.rubyBox-column3 .rubyBox.kn4:after {
  content: url(/img/next/lineup/icon-kn4.png);
  left: 20px;
}
.rubyBox-column3 .rubyBox.kn5:after {
  content: url(/img/next/lineup/icon-kn5.png);
}
.rubyBox-column3 .rubyBox.kn6:after {
  content: url(/img/next/lineup/icon-kn6.png);
  left: 18px;
}
.rubyBox-column3 , .rubyBox-column4{
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.rubyBox-column3 .rubyBox , .rubyBox-column4 .rubyBox{
  width: 49%;
  margin-bottom: 20px;
  position:relative;
}
.rubyBox-column3 .rubyBox2{
  width: 33%;
  margin-bottom: 20px;
  position:relative;
}
.rubyBox-column3 .rubyBox:after {
  position: absolute;
  left: 25px;
  top: 20px;
}
.rubyBox-column3  .rubyBox2 {
  border: 1px solid #ca1e07;
  padding: 15px 10px;
}
.rubyBox-column4  .rubyBox {
  border: 1px solid #ca1e07;
  padding: 15px 10px;
}
.rubyBox-column3 .rubyBox .rubyBox__title{
  text-align: center;
}
.rubyBox3 {
    width: 80%;
}
.rubyBox4 {
    width: 15%;
}
.tit-heading02.kn1 {
  background: url(/img/next/lineup/icon-kn1.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn2 {
  background: url(/img/next/lineup/icon-kn2.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn3 {
  background: url(/img/next/lineup/icon-kn3.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn4 {
  background: url(/img/next/lineup/icon-kn4.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn1 {
  background: url(/img/next/lineup/icon-kn1.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn5 {
  background: url(/img/next/lineup/icon-kn5.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.tit-heading02.kn6 {
  background: url(/img/next/lineup/icon-kn6.png) no-repeat left center;
  padding: 10px 0 10px 45px !important;
  margin-bottom: 15px;
}
.rubyBox-column4 .rubyBox.doc {
  background: url(/img/next/lineup/icon-kn-s1.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.mail {
  background: url(/img/next/lineup/icon-kn-s2.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.circle {
  background: url(/img/next/lineup/icon-kn-s3.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.check {
  background: url(/img/next/lineup/icon-kn-s4.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.lock {
  background: url(/img/next/lineup/icon-kn-s5.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.search {
  background: url(/img/next/lineup/icon-kn-s6.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.watch {
  background: url(/img/next/lineup/icon-kn-s7.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.comment {
  background: url(/img/next/lineup/icon-kn-s8.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.setting {
  background: url(/img/next/lineup/icon-kn-s9.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.file {
  background: url(/img/next/lineup/icon-kn-s10.png)no-repeat 20px center;
  padding-left: 70px;
}
.rubyBox-column4 .rubyBox.tool {
  background: url(/img/next/lineup/icon-kn-s11.png)no-repeat 20px center;
  padding-left: 70px;
}
/*文章内アイコン＿20170203*/
.icon_dropcap{
  padding: 5px 25px 0px 0px;
  float: left;
}
/*リスト横並び＿20170206*/
ul.list-box li{
list-style: none;
  vertical-align: middle;
  display: inline-block;
  padding-right: 5px;
}
/*赤枠のpadding:15px＿20170206*/
.rubyBox2 {
  border: 1px solid #ca1e07;
  padding: 15px;
}
/*赤枠のｐのpadding:0＿20170206*/
.phase .rubyBox2 p {
  padding: 0;
}
/*youtubeのレスポンシブ用＿20170206*/
.video-youtube{
  position: relative;
  height: 0;
  padding: 30px 0 56.24%;
  overflow: hidden;
}
.video-youtube object{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*テキスト右側揃え＿20170207*/
.notes .more-details {
  text-align: right;
}
/*横並びのbox＿20170207*/
.box-column{
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -ms-flex-pack:justify;
     justify-content:space-between;
    -webkit-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    margin-bottom:20px;
}
.box-column ul{
  width:100%;
}
.box-column .Box {
  width:45%;
  margin-right: 5%;
  margin-bottom:20px;
}

.box-column .Box2 {
  width:49%;
  margin-bottom:20px;
  display: inline-block;
  vertical-align: top;
}
.box-column .Box3 {
    width:32%;
    margin-bottom:20px;
    display: inline-block;
    vertical-align: top;
    padding: 10px 5px;
}
.box-column .Box4 {
  width:25%;
  margin-bottom:20px;
  display: inline-block;
  vertical-align: top;
}
.box-column .Box5{
  width:25%;
  margin-bottom:20px;
  display: inline-block;
  vertical-align: top;
}
.box-column .Box6 {
  width:70%;
  margin-right: 5%;
}
.box-column .Box4 img{
  margin-bottom:5px;
  height:auto;
}
.box-column .Box5 img{
  margin-bottom:5px;
  height:auto;
}
.box-column .Box3 img{
  margin-bottom:5px;
  height:auto;
}
.training_box .base-table th {
  width: 10%;
}
.training_box .base-table td {
  width: 90%;
}
.training_box .box-column .Box3 {
  padding: 10px 5px;
}
/*---導入事例の一覧＿20170208---*/
.case_list {
  list-style-type: none;
}
.case_list li {
  border-bottom: 1px solid #EEE;
  padding: 20px 10px;
}
.case_list li:after {
  clear: both;
  display: block;
  content: '';
}
.case_list li:first-child {
  padding-top: 0;
}
.case_list li p.img {
  width: 170px;
  float: left;
  padding-top: 10px;
  padding-bottom: 0 !important;
}
.case_list li .text {
  width: 540px;
  float: right;
  padding-top: 10px;
}
.case_list li .link {
  padding-bottom: 0 !important;
}
.comment_box:after {
  clear: both;
  display: block;
  content: '';
}
.comment_box .img {
  float: right;
  width: 27%;
  margin: 0 0 15px 15px;
}
.comment_box .text {
  width: 70%;
  float: left;
}
.comment_box .img2 {
  float: right;
  width: 37%;
  margin: 0 0 5px 0px;
}
.comment_box .text2 {
  width: 60%;
  float: left;
}
/*---導入事例のロゴ＿20170328---*/
.bnr_area {
    display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}
.bnr_area li{
  width: 25%;
    text-align: center;
}
/*---写真右＿20170208---*/
.img_right {
  float: right;
  padding: 0 0 5px 0px;
}
/*---ロゴを並べる＿20170208---*/
.d_logo_area{
  display: flex;
  flex-flow: row;
}
.d_logo_area .logo01{
   width: 30%;
}
.d_logo_area .logo02{
  margin-top: 45px;
  width: 20%;
}
.d_logo_area .logo03{
   width: 65%;
}
.comment_box .img .txt-s80{
  font-size: 80%;
  padding: 0 0 0
}
 .comment_box .img2 .txt-s80{
  font-size: 80%;
  text-align: right;
  padding: 0;
}

/*---------導入事例ここまで---------------*/

/*rubyBoxのhover__20170209*/
#hc-core .rubyBox:hover:not(.nolink) {
   background-color:#c01920;
   color: #fff;
   -webkit-transition:all 0.2s linear;
   transition:all 0.2s linear;
}

/*パートナー一覧のfloat__20170210*/
.partner_list:after {
  clear: both;
  display: block;
  content: '';
}
.partner_list ul li {
  text-align: center;
  float: left;
  margin: 10px;
}
.partner_list ul li p.img {
  width:200px;
  height:60px;
}
/*コアサービス文章内の写真の割合__20170214*/
.comment_box .img2 {
  float: right;
  width: 40%;
  margin: 0 0 15px 15px;
}
/*ソーシャルメディアの写真左付き__201702228*/
.comment_box .img3 {
  float: left;
  width: 40%;
  margin: 0 0 15px 15px;
}
.comment_box .text2 {
  width: 57%;
  float: left;
}
/*上への矢印__20170215*/
.link_up {
    position:relative;
    color:inherit;
}
.link_up:after {
    display:inline-block;
    position:relative;
    content:'';
    top:-2px;
    width:0;
    height:0;
    margin-top:-5px;
    margin-left:7px;
    border:4px solid transparent;
    border-bottom:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.link_up:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}
/*下への矢印__20170215*/
.link_down {
    position:relative;
    color:inherit;
}
.link_down:after {
    display:inline-block;
    position:relative;
    content:'';
    top:0px;
    width:0;
    height:0;
    margin-top:-5px;
    margin-left:7px;
    border:4px solid transparent;
    border-top:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.link_down:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}
/*スクロール__20170215*/
.scroll {
  width: 100%;
  text-align: center;
  height: 300px;
  overflow-y: scroll;
  -moz-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -o-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  border: 1px solid #EEE;
  margin-bottom: 30px;
  background-color: #f7f8f9;
}
/*スマートフォンポートレイト用__20170215*/
.scroll img.w480 {
  width: 320px;
  height: auto;
}
/*スマートフォンポートレイト用__20170215*/
.scroll img.w320 {
  width: 320px;
  height: auto;
}
/*HeartCoreのパフォーマンス__20170216*/

.perfomance_link_circle {
  text-align: center;
}
.perfomance_link_circle li {
  text-align: center;
  margin: 20px 1% 0;
  display: inline-block;
}
.perfomance_link_circle li a {
    display: block;
  width: 200px;
  height: 90px;
  padding-top: 20px;
  margin: 0 auto;
  text-align: center;
  color: #FFF;
  -webkit-transition: all 0.3s;
  -moz-transition: all 0.3s;
  -ms-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}
.perfomance_link_circle li a:hover {
  -ms-filter: "alpha( opacity=70 )";
  filter: alpha(opacity=70);
  opacity: 0.7;
  text-decoration: none;
}
.perfomance_link_circle li a {
  background: #c01920;
}
.link_white{
  position: relative;
}
.link_white:after {
  display: inline-block;
  position: relative;
  content: '';
  top: -2px;
  width: 0;
  height: 0;
  margin-top: -5px;
  margin-left: 7px;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

/*スクロール高さ400__20170216*/
.scroll_h400{
  height: 400px;
  overflow: scroll;
  border: 1px solid #c01920;
  position: relative;
  -moz-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -ms-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -o-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  -webkit-box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
  box-shadow: 5px 5px 0 0px rgba(0, 0, 0, 0.05);
}

/*cadeの行間__20170216*/
code{
    line-height: 1.6em;
}
 pre, code {
  white-space: pre;
  /* CSS 2.0 */
  white-space: pre-wrap;
  /* CSS 2.1 */
  white-space: pre-line;
  /* CSS 3.0 */
  white-space: -pre-wrap;
  /* Opera 4-6 */
  white-space: -o-pre-wrap;
  /* Opera 7 */
  white-space: -moz-pre-wrap;
  /* Mozilla */
  white-space: -hp-pre-wrap;
  /* HP Printers */
  word-wrap: break-word;
  /* IE 5+ */
}
.white_bk {
    background-color: #fff;
}
/*グレーボックス内のｐマージン__20170228*/
.lightGrayBox .lightGrayBox__txt {
    padding:0;
}
/*アンカーの位置を修正__20170228*/
    span.anchorlink {
       position: relative;
       top: -100px;
       display: block;
    }
/*タブのボタンのリンク範囲拡大__20170308*/
.tab a{
       display: block;
       width:100%;
       padding:20px;
    }
.name{
       margin-bottom: 20px;
}
.Annotation{
      position: absolute;
       bottom: -30px;
       left: 10px;
       font-size: 6px;
       font-size: 0.6rem;
        line-height: 1.3;
}
span.sup{
       font-size: 50%;
       vertical-align: top;
       position: relative;
}
.view-p02{
  display: block;
}
/*--ニュースリリース用__20170725*/
.footer__social{
    max-height: 385px;
}
.footer__logo{
     bottom: 10px;
}
.news_titile{
  font-size: 23px;
  font-size: 2.3rem;
  font-weight: bold;
  margin-bottom: 50px;
  text-align: center;
}
.news-section {
    font-size:16px;
    font-size:1.6rem;
    margin-bottom:50px;
      line-height: 1.5;
}
 .news_header .news_header_rr {
  font-size: 20px;
  font-size: 2.0rem;
  width: 100%;
}
.news_header .news_header_date {
  float: right;
  margin-bottom: 30px;
  width: 100%;
  text-align: right;
}
.news-section .news__txt{
  margin-bottom: 20px;
}

.video_list {
    display: flex;
}
.video_list li {
    width: 33%;
    }

/*----------------------------------------*/

.main {
    float:left;
    width:70%;
    background:#eee;
    min-height:600px;
}

.side {
    float:right;
    width:25%;
    background:#eee;
    min-height:600px;
}

/* =================================================================
* Object
================================================================= */
.dropdownBg {
    background-color:rgba(0, 0, 0, 0.8);
    width:100vw;
    height:100vh;
    position:fixed;
    top:45px;
    left:0;
    z-index:10;
}

.dropdown {
    background-color:rgba(192, 25, 32, 0.9);
    border-bottom:1px solid #dcdcdc;
    padding:0 0 29px 0;
    width:100%;
    position:absolute;
    top:129px;
    z-index:20;
    display:none;
}

.dropdown.l-partner, .dropdown.l-customer {
    top:43px;
    padding-bottom:0;
    background-color:transparent;
    z-index:100;
}

.header.is-fixed .dropdown {
    top:51px;
}

.dropdown--search {
    background-color:#fff;
    border-bottom:1px solid #dcdcdc;
    padding:0;
    width:100%;
    position:absolute;
    z-index:100;
    display:none;
}

.dropdown__search {
    padding:29px calc(50% - 500px);
}

.dropdown__search p {
    margin:20px 0 0 25px;
    font-size:15px;
    font-size:1.5rem;
}

.dropdown__product {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    padding:44px calc(50% - 500px) 0;
}

.dropdown__product > div {
    width:310px;
}

.dropdown__outline {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-flow:wrap;
        -ms-flex-flow:wrap;
            flex-flow:wrap;
    padding:44px calc(50% - 500px) 0;
}

.dropdown__outlineBox {
    width:calc(100% / 4);
    font-size:15px;
    font-size:1.5rem;
    color:#fff;
}

.dropdown__outlineBox a {
    color:#fff;
    text-decoration:none;
    display:inline-block;
}

.dropdown__outlineNav {
    padding:15px 0 20px;
    position:relative;
}

.dropdown__outlineNav:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__box {
    width:34%;
    margin-right:2%;
}

.dropdown__box:last-child {
    margin-right:0;
}

.dropdown__logo {
    margin-bottom:15px;
}

.dropdown__logo a {
    color:#fff;
}

.dropdown__logo a:hover {
    opacity:0.85;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=85)";
}

.dropdown__title {
    font-size:22px;
    font-size:2.2rem;
    color:#fff;
    margin-bottom:15px;
    padding-bottom:10px;
    border-bottom:1px solid #fff;
}

.dropdown__title a {
    color:#fff;
}

.dropdown__title a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.dropdown__list {
    margin-bottom:18px;
}

.dropdown__link {
    color:#fff;
    display:block;
    position:relative;
}

.dropdown__link:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.dropdown__link:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__outlinelink:hover {
    opacity:0.8;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
}

.acc-menu {
    background:url(/images/common/ico_plus.png) no-repeat 96% 50%;
    background-size:10px auto;
}

.acc-menu:hover {
    background-color:#dc2731;
}

.acc-menu.is-active {
    background:#910204 url(/images/common/ico_minus.png) no-repeat 96% 50%;
    background-size:10px auto;
}

.acc-menu.is-active.acc-menu--nest.is-active {
    background-color:#dc2731;
}

.acc-menu.is-active:hover {
    background-color:#910204;
}

.acc-menu--nest.is-active {
    background-color:#dc2731;
}

.dropdown__partner {
    background-color:#f4f4f4;
    padding:32px calc(50% - 500px);
}

.dropdown__partner .dropdown__flexIco {
    width:224px;
    background-color:#fff;
    border:1px solid #ddd;
    display:block;
    padding:96px 10px 20px;
    font-size:16px;
    font-size:1.6rem;
    text-align:center;
    color:#bf191f;
    position:relative;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__partner .dropdown__flexIco:hover {
    background-color:#fff5f5;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__partner .dropdown__flexIco.dropdown__flexIco01:after {
    display:none;
}

.dropdown__partner .dropdown__flexIco:after {
    display:inline-block;
    content:'';
    position:relative;
    top:50%;
    width:0;
    height:0;
    margin-top:-5px;
    margin-left:12px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__customer {
    background-color:#f4f4f4;
    padding:32px calc(50% - 500px);
}

.dropdown__customer .dropdown__flexIco {
    width:310px;
    background-color:#fff;
    border:1px solid #ddd;
    display:block;
    padding:96px 10px 20px;
    font-size:16px;
    font-size:1.6rem;
    text-align:center;
    color:#bf191f;
    position:relative;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__customer .dropdown__flexIco:hover {
    background-color:#fff5f5;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__customer .dropdown__flexIco.dropdown__flexIco01:after {
    display:none;
}

.dropdown__customer .dropdown__flexIco:after {
    display:inline-block;
    content:'';
    position:relative;
    top:50%;
    width:0;
    height:0;
    margin-top:-5px;
    margin-left:12px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.dropdown__flex {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
}

.dropdown__flexIco01 {
    background:url(/images/common/ico_partner01.png) no-repeat 50% 20px;
    background-size:54px auto;
}

.dropdown__flexIco02 {
    background:url(/images/common/ico_partner02.png) no-repeat 50% 15px;
    background-size:66px auto;
}

.dropdown__flexIco-dl {
    background:url(/images/common/ico_download.png) no-repeat 50% 20px;
    background-size:50px auto;
}

.dropdown__flexIco-note {
    background:url(/images/common/ico_note.png) no-repeat 50% 20px;
    background-size:49px auto;
}

.dropdown__flexIco03 {
    background:url(/images/common/ico_user.png) no-repeat 50% 25px;
    background-size:74px auto;
}

/*===============================================================
    effects
===============================================================*/
.fab {
    border-radius:50%;
    margin:0;
    padding:20px;
}

.material {
    position:relative;
    color:white;
    margin:20px auto;
    height:400px;
    width:500px;
    background:#f45673;
}

.ripple {
    overflow:hidden;
    position:relative;
    cursor:pointer;
    outline:none;
}

.ripple a:focus {
    outline:none;
}

.ripple-effect {
    position:absolute;
    border-radius:50%;
    width:50px;
    height:50px;
    background:white;
    -webkit-animation:ripple-animation 2s;
            animation:ripple-animation 2s;
}

@-webkit-keyframes ripple-animation {
    from {
        -webkit-transform:scale(1);
                transform:scale(1);
        opacity:0.4;
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    }
    to {
        -webkit-transform:scale(100);
                transform:scale(100);
        opacity:0;
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    }
}

@keyframes ripple-animation {
    from {
        -webkit-transform:scale(1);
                transform:scale(1);
        opacity:0.4;
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=40)";
    }
    to {
        -webkit-transform:scale(100);
                transform:scale(100);
        opacity:0;
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    }
}

/*===============================================================
    title styles
===============================================================*/
.titleGroup {
    position:relative;
}

.tit-section01 {
    font-size:30px;
    font-size:3.0rem;
    font-weight:bold;
    text-align:center;
    margin-bottom:14px;
}

.tit-section02 {
    font-size:24px;
    font-size:2.4rem;
    font-weight:bold;
    text-align:center;
    margin-bottom:30px;
    color:#c01920;
    line-height:1.4;
}

.tit-section03 {
    font-size:40px;
    font-size:4.0rem;
    font-weight:bold;
    text-align:center;
    margin-bottom:40px;
    line-height:1.4;
}

.tit-section-single {
    font-size:36px;
    font-size:3.6rem;
    line-height:1.6;
    text-align:center;
    font-weight:bold;
    margin-bottom:40px;
}

.tit-copy01 {
    font-size:30px;
    font-size:3.0rem;
    font-weight:bold;
    margin-bottom:14px;
    line-height:1.6;
}

.tit-dropdown01 {
    font-size:30px;
    font-size:3.0rem;
    margin-bottom:25px;
    line-height:1.6;
}

.tit-copy01--centered {
    font-size:30px;
    font-size:3.0rem;
    font-weight:bold;
    margin-bottom:14px;
    text-align:center;
    line-height:1.6;
}

.tit-copy02 {
    font-size:20px;
    font-size:2.0rem;
    font-weight:bold;
    margin-bottom:8px;
    line-height:1.6;
}

.tit-copy03 {
    font-size:20px;
    font-size:2.0rem;
    font-weight:bold;
    margin-bottom:8px;
    line-height:1.6;
    color:#d50010;
}

.tit-heading01 {
    font-size:24px;
    font-size:2.4rem;
    margin-bottom:25px;
    padding-bottom:12px;
    border-bottom:3px solid #c01920;
    line-height:1.3;
}
.tit-heading01_1 {
    font-size:26px;
    font-size:2.6rem;
    margin-bottom:25px;
    margin-top:20px;
    font-weight:bold;
    padding-bottom:12px;
    border-bottom:3px solid #c01920;
    line-height:1.5;
    text-align: center;
}
.tit-heading02 {
    font-size:20px;
    font-size:2.0rem;
    margin-bottom:25px;
    padding-bottom:12px;
    color:#c01920;
    border-bottom:1px solid #c01920;
    line-height:1.3;
}

.tit-heading03 {
    font-size:18px;
    font-size:1.8rem;
    margin-bottom:20px;
    padding-left:15px;
    border-left:4px solid #c01920;
    line-height:1.3;
}

.tit-heading04 {
    font-size:28px;
    font-size:2.8rem;
    margin-bottom:25px;
    padding-bottom:12px;
    border-bottom:3px solid #c01920;
    line-height:1.6;
    text-align: center;
}
.tit21 {
    font-size:21px;
    font-size:2.1rem;
}
.tit18 {
    font-size:18px;
    font-size:1.8rem;
}
.tit-red01 {
    color:#c01920;
    font-weight:bold;
    font-size:16px;
    font-size:1.6rem;
    margin-bottom:10px;
}

.title-copy {
    text-align:center;
    color:#c01920;
    font-size:24px;
    font-size:2.4rem;
    line-height:1.6;
    padding:20px 0 30px;
}

.circle-title {
    font-size:24px;
    font-size:2.4rem;
    line-height:1.4;
    text-align:center;
    margin-bottom:50px;
}

.category-title {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.6;
    margin-bottom:20px;
}

.category-title--01 {
    color:#ca1d06;
}

.category-title--02 {
    color:#e4832a;
}

.category-title--03 {
    color:#008c23;
}

.category-title--04 {
    color:#48a2df;
}

.category-title-sub {
    font-size:26px;
    font-size:2.6rem;
    line-height:1.4;
    margin-bottom:25px;
}

.band-title {
    font-size:40px;
    font-size:4.0rem;
    line-height:1.6;
    text-align:center;
    font-weight:bold;
}

.type-section-title {
    font-size:44px;
    font-size:4.4rem;
    line-height:1.6;
    margin-bottom:30px;
}

.tit-image {
    margin-bottom:30px;
}

/*===============================================================
    text styles
===============================================================*/
.typ-section01 {
    font-size:15px;
    font-size:1.5rem;
    text-align:center;
    margin-bottom:60px;
    line-height:1.5;
}

.typ-section02 {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.6;
    text-align:center;
    margin-bottom:30px;
}

.typ-section03 {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.6;
}

.typ-section04 {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.6;
    text-align:center;
    margin-bottom:80px;
}

.typ-section-heading {
    font-size:28px;
    font-size:2.8rem;
    line-height:1.8;
    text-align:center;
    margin-bottom:50px;
}

.typ-section-main {
    font-size:20px;
    font-size:2.0rem;
    text-align:center;
    line-height:1.6;
}

.txt-16 {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.5;
}
.txt-ex-small {
    font-size:8px;
    font-size:0.8rem;
    line-height:1.2;
}


.txt-red {
    color:#c01920;
}

.txt-group {
    margin-bottom:30px;
}

.link-group {
    display: relative;
    background-color: #fff;
    text-align: center;
    padding-bottom: 20px;
    font-size: 16px;
    font-size: 1.6rem;
}

.more {
    position:absolute;
    top:50%;
    right:0;
    padding-right:25px;
    font-size:15px;
    font-size:1.5rem;
}

.more a {
    color:inherit;
    text-decoration:none;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.more a:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.more a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.more a:hover:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.more2 {
    text-align: center;
     color: #b60005;
     line-height: 1.6;
}
.external {
    padding:2px 24px 2px 0;
    background:url(/images/common/ico_external.png) no-repeat 100% 50%;
}

.external--w {
    padding:2px 24px 2px 0;
    background:url(/images/common/ico_external-w.png) no-repeat 98% 50%;
    background-size:14px auto;
}

.pdf {
    padding:2px 24px 2px 0;
    background:url(/images/common/ico_pdf.png) no-repeat 100% 50%;
}

.attention {
    color:#c01920;
}

small {
    font-size:14px;
    font-size:1.4rem;
}

strong {
    font-weight:bold;
}

.red {
    color:#c01920;
}

.notes {
    margin-bottom:30px;
}

.notes p {
    padding-bottom:15px;
}

.big_img {
    text-align:center;
}

.category__text {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.6;
    margin-bottom:20px;
}

.step-number {
    font-size:34px;
    font-size:3.4rem;
    line-height:1.2;
    color:#c01920;
    padding-left:60px;
    display:inline-block;
    font-weight:bold;
}

.step-number-01 {
    background:url(/images/heartcore_cxm/ico-step-01.png) no-repeat 0 50%;
}

.step-number-02 {
    background:url(/images/heartcore_cxm/ico-step-02.png) no-repeat 0 50%;
}

.step-number-03 {
    background:url(/images/heartcore_cxm/ico-step-03.png) no-repeat 0 50%;
}

.under-bar {
    width:50px;
    height:1px;
    display:block;
    margin:25px 50.45% 35px 49.55%;
    border-top:3px solid #c01920;
}

.attention-txt {
    color:#bf191f;
    font-size:16px;
    font-size:1.6rem;
}

.contact-text {
    margin-bottom:30px;
}

.contact-text a {
    color:inherit;
}
.contents-section--btnarea {
  padding: 40px calc(50% - 500px);
  position: relative;
  z-index: 1000;
  background-color: transparent;
  text-align: center;
}
/*===============================================================
    button styles
===============================================================*/
.button {
    display:inline-block;
    font-size:16px;
    font-size:1.6rem;
    text-decoration:none;
}

.button--square {
    color:#ca1d06;
    width:340px;
    height:60px;
    line-height:56px;
    border:2px solid #c01920;
    text-align:center;
}
.contents-section--btnarea .button.button--square {
  width: 70%;
  height: 70px;
  line-height: 30px;
  border: 2px solid #c01920;
  text-align: center;
  margin-top: 20px;
  margin-bottom: 40px;
}
.contents-section--btnarea .button.button--square a {
  display: block;
  padding: 20px 68px;
  font-size: 2rem;
}
.button--square > span {
    position:relative;
    display:inline-block;
    padding-right:25px;
}

.button--square > span:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--square > span:hover:before {
    right:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--square-small {
    color:#ca1d06;
    border:2px solid #c01920;
    text-align:center;
    line-height: 56px;
    width: 80%;
}

.button--square-small > span {
    position:relative;
    display:inline-block;
    padding-right:25px;
}

.button--square-small > span:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--square-small > span:hover:before {
    right:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--square-xsmall {
    color:#ca1d06;
    padding:7px 12px;
    font-size:13px;
    font-size:1.3rem;
    border:2px solid #c01920;
    text-align:center;
}

.button--square-xsmall > span {
    position:relative;
    display:inline-block;
    padding-right:15px;
}

.button--square-xsmall > span:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:0;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact {
    color:#ca1d06;
    width:100%;
    max-width:310px;
    height:90px;
    line-height:86px;
    border:2px solid #c01920;
    border-radius:3px;
    text-align:left;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact > span {
    position:relative;
    display:block;
    padding-left:16px;
    padding-right:25px;
    font-size:18px;
    font-size:1.8rem;
    font-weight:bold;
}

.button--contact > span:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact > span:hover:after {
    right:10px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    border-left:8px solid #fff;
}

.button--contact:hover {
    color:#fff;
    background-color:#c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact.l-inquiry:before {
    content:'';
    width:43px;
    height:30px;
    display:inline-block;
    background:url(/images/common/ico_mail.png) no-repeat 0 0;
    background-size:43px auto;
    float:left;
    margin:28px 14px 0 16px;
    position:relative;
    z-index:10;
}

.button--contact.l-inquiry:hover:before {
    background-position:0 -30px;
}

.button--contact.l-demo:before {
    content:'';
    width:40px;
    height:39px;
    display:inline-block;
    background:url(/images/common/ico_monitor.png) no-repeat 0 0;
    background-size:40px auto;
    float:left;
    margin:23px 14px 0 16px;
    position:relative;
    z-index:10;
}

.button--contact.l-demo:hover:before {
    background-position:0 -39px;
}

.button--contact.l-faq:before {
    content:'';
    width:40px;
    height:39px;
    display:inline-block;
    background:url(/images/common/ico_faq.png) no-repeat 0 0;
    background-size:40px auto;
    float:left;
    margin:28px 14px 0 16px;
    position:relative;
    z-index:10;
}

.button--contact.l-faq:hover:before {
    background-position:0 -45px;
}

.button--contact.l-mv-inquiry:hover {
    background-color:#ca1d06;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact.l-mv-inquiry span {
    font-size:15px;
    font-size:1.5rem;
}

.button--contact.l-mv-inquiry span:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact.l-mv-inquiry:before {
    content:'';
    width:28px;
    height:24px;
    display:inline-block;
    background:url(/images/common/ico_mail-white.png) no-repeat 0 0;
    background-size:24px auto;
    float:left;
    margin:17px 0 0 10px;
    position:relative;
    z-index:10;
}
.button--contact.l-mv-demo {
    max-width:98%;
    height:54px;
    line-height:56px;
    color:#fff;
    border-radius:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.button--contact.l-mv-demo:hover {
    background-color:#ca1d06;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.button--contact.l-mv-demo span {
    font-size:15px;
    font-size:1.5rem;
}
.button--contact.l-mv-demo span:after, .button--contact.l-mv-sakidori span:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.button--contact.l-mv-demo:before {
    content:'';
    width:25px;
    height:22px;
    display:inline-block;
    background:url(/images/common/ico_monitor-white.png) no-repeat 0 0;
    background-size:22px auto;
    float:left;
    margin:17px 0 0 10px;
    position:relative;
    z-index:10;
}
.button--contact.l-mv-hcr, .button--contact.l-mv-career, .button--contact.l-mv-sakidori, .button--contact.l-mv-demo, .button--contact.l-mv-inquiry {
    max-width: 98%;
    height: 54px;
    line-height: 54px;
    color: #fff;
    border-radius:0;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact.l-mv-hcr:hover, .button--contact.l-mv-career:hover, .button--contact.l-mv-sakidori:hover {
    background-color:#ca1d06;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--contact.l-mv-hcr span, .button--contact.l-mv-career span, .button--contact.l-mv-sakidori span, .button--contact.l-mv-inquiry span {
    font-size:15px;
    font-size:1.5rem;
}

.button--contact.l-mv-hcr span:after, .button--contact.l-mv-career span:after, .button--contact.l-mv-mv-sakidori span:after  {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.button--contact.l-mv-hcr:before {
  content: '';
  width: 27px;
  height: 33px;
  display: inline-block;
  background: url(/images/common/ico_hce-white.png) no-repeat 0 0;
  background-size: 25px auto;
  float: left;
  margin: 13px 0 0 10px;
  position: relative;
  z-index: 10;
}
.button--contact.l-mv-career:before {
  content: '';
  width: 27px;
  height: 33px;
  display: inline-block;
  background: url(/images/common/ico_career_w.png) no-repeat 0 0;
  background-size: 25px auto;
  float: left;
  margin: 13px 0 0 10px;
  position: relative;
  z-index: 10;
}

.button--contact.l-mv-sakidori:before {
  content: '';
  width: 27px;
  height: 33px;
  display: inline-block;
  background: url(/images/common/ico_sakidori_w.png) no-repeat 0 0;
  background-size: 25px auto;
  float: left;
  margin: 13px 0 0 10px;
  position: relative;
  z-index: 10;
}

.button--contact > span.font-20 {
    font-size:20px;
    font-size:2.0rem;
}


.button--all, .button--event, .button--seminer {
    font-size:15px;
    font-size:1.5rem;
    border-radius:3px;
    background-color:#fff;
    box-shadow:1px 1px 2px 0 rgba(120, 120, 120, 0.6) inset;
    width:160px;
    height:35px;
    line-height:35px;
    display:inline-block;
    text-align:center;
    color:inherit;
}

.button--all.is-active {
    color:#fff;
    background-color:#ca1d06;
}

.button--all:hover {
    color:#fff;
    background-color:#ca1d06;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.button--event.is-active {
    color:#fff;
    background-color:#3476b8;
}

.button--event:hover {
    color:#fff;
    background-color:#3476b8;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.button--seminer.is-active {
    color:#fff;
    background-color:#e67f22;
}

.button--seminer:hover {
    color:#fff;
    background-color:#e67f22;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.button--entry {
    color:#c52b31;
    font-size:20px;
    font-size:2.0rem;
    border-radius:3px;
    background-color:#fff;
    border:2px solid #c52b31;
    width:314px;
    height:94px;
    line-height:90px;
    display:inline-block;
    text-align:center;
    position:relative;
    vertical-align:top;
}
.button--entry.width5 {
    width:500px;
}
.button--entry a {
  padding: 30px 50px;
}
.button--entry span {
    padding-right:40px;
    font-weight:bold;
}

.button--entry span:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:6px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--entry:hover, .button--entry2:hover {
    color:#fff;
    background-color:#ca1d06;
}

.button--entry:hover:after, .button--entry2:hover:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:15px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:6px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.button--entry2 {
    color:#c52b31;
    font-size:20px;
    font-size:2.0rem;
    border-radius:3px;
    background-color:#fff;
    border:2px solid #c52b31;
    width: 240px;
    height: 94px;
    line-height: 90px;
    display:inline-block;
    text-align:center;
    position:relative;
    vertical-align:top;
}
.button--entry2 a {
  padding: 30px 0px;
}

.button--end {
    color:#fff;
    font-size:20px;
    font-size:2.0rem;
    background-color:#777;
    width:314px;
    height:94px;
    line-height:90px;
    display:inline-block;
    text-align:center;
}
.mail_contact {
    float: right;
}
.mail_contact .button--square {
    border: 1px solid #c01920;
    width: 250px;
    line-height: 38px;
    height: 40px;
}
.mail_contact .button--square a {
    font-size: 1.5rem;
}
.pagetop {
    position:fixed;
    right:20px;
    bottom:-300px;
    z-index:100;
    -webkit-transition:all 0.4s linear;
    transition:all 0.4s linear;
}

.pagetop img {
    width:60px;
    height:60px;
}

.pagetop.is-active {
    -webkit-transition:all 0.4s linear;
    transition:all 0.4s linear;
    bottom:20px;
}

/*===============================================================
    label styles
===============================================================*/
/*=========================================
    NEWS label
=========================================*/
.label__news {
    border:1px solid #121212;
}

.label__topics {
    color:#e60113;
    border:1px solid #e60113;
}

/*===============================================================
    banner
===============================================================*/
.bnr {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.bnr__list {
    width:16.6%;
    text-align:center;
    margin-bottom: 1%;
}

.bnr__link {
    display:inline-block;
}

.bnr__link:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

/*===============================================================
    ico styles
===============================================================*/
.arrow {
    position:relative;
    display:inline-block;
    padding:0 26px 0 10px;
    vertical-align:middle;
    text-decoration:none;
}

.arrow:before, .arrow:after {
    position:absolute;
    top:0;
    bottom:0;
    left:0;
    margin:auto;
    content:'';
    vertical-align:middle;
}

.ico img {
    vertical-align:middle;
}

.ico-zoom {
    width:290px;
    text-align:center;
}

.ico-zoom img {
    width:17px;
    height:auto;
}

.ico-facebook {
    width:45px;
    text-align:center;
}

.ico-facebook img {
    width:10px;
    height:auto;
}

.ico-twitter {
    width:45px;
    text-align:center;
}

.ico-twitter img {
    width:19px;
    height:auto;
}

.ico-partner {
    padding:0 12px 0 30px;
    background:url(/images/common/ico_partner.png) no-repeat 12px 13px;
    background-size:17px 19px;
}

.ico-partner a:before {
    -webkit-transform:rotate(90deg);
            transform:rotate(90deg);
    top:3px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-partner.is-active {
    color:#c01920;
    border-bottom:4px solid #c01920;
    background:url(/images/common/ico_partner-red.png) no-repeat 12px 13px;
    background-size:17px 19px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-partner.is-active a:before {
    border-left-color:#c01920;
}

.ico-customer {
    padding:0 12px 0 30px;
    background:url(/images/common/ico_customer.png) no-repeat 12px 13px;
    background-size:15px 18px;
}

.ico-customer a:before {
    -webkit-transform:rotate(90deg);
            transform:rotate(90deg);
    top:3px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-customer.is-active {
    color:#c01920;
    border-bottom:4px solid #c01920;
    background:url(/images/common/ico_customer-red.png) no-repeat 12px 13px;
    background-size:15px 18px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-customer.is-active a:before {
    border-left-color:#c01920;
}

.ico-career {
    padding:0 12px 0 30px;
    background:url(/images/common/ico_career.png) no-repeat 12px 13px;
    background-size:18px 18px;
}

.ico-career a:before {
    -webkit-transform:rotate(0deg);
            transform:rotate(0deg);
    top:3px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-career.is-active {
    color:#c01920;
    border-bottom:4px solid #c01920;
    background:url(/images/common/ico_customer-red.png) no-repeat 12px 13px;
    background-size:15px 18px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.ico-career.is-active a:before {
    border-left-color:#c01920;
}

/*===============================================================
    box styles
===============================================================*/
.contactGroup {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    margin-top:60px;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}

.contactBox {
    width:31%;
    margin-right:2%;
    text-align:center;
    font-size:18px;
    font-size:1.8rem;
}

.contactBox a {
    color:#c01920;
    display:block;
}

.contactBox:nth-child(3) {
    margin-right:0;
}

.contactBox:not(:last-child) {
    margin-bottom:15px;
}

.contactBox:last-child {
    margin-right:0;
}

.contactBox__tel {
    width:100%;
    max-width:310px;
    height:90px;
    text-align:left;
    border:2px solid #c01a21;
    border-radius:5px;
    display:-webkit-inline-box;
    display:-webkit-inline-flex;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.contactBox__address {
    font-size:30px;
    font-size:3rem;
    font-weight:bold;
    margin-bottom:5px;
}

.contactBox__text {
    font-size:15px;
    font-size:1.5rem;
}

.contactBox__timeInfo {
    margin-left:16px;
    padding-left:36px;
    background:url(/images/common/ico_phone.png) no-repeat 0 50%;
    background-size:24px auto;
}

.circleGroup {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    margin-top:40px;
}

.box-circle {
    width:100%;
    height:100%;
    max-width:230px;
    max-height:230px;
    margin:0 26px;
}

.box-circle > img {
    border:3px solid #2b80b9;
    border-radius:50%;
}

.imageBox {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    margin-bottom:90px;
}

.imageBox .imageBox__textArea {
    width:400px;
}

.imageBox .imageBox__imageArea {
    margin-left:auto;
}

.imageBox .imageBox__imageArea.graphArea {
    position:relative;
}

.imageBox .imageBox__imageArea .graphArea__image {
    width:100%;
    max-width:540px;
    padding-top:220px;
    display:block;
}

.imageBox.l-reverse {
    -webkit-flex-flow:row-reverse;
        -ms-flex-flow:row-reverse;
            flex-flow:row-reverse;
}

.imageBox.l-reverse .imageBox__textArea {
    width:400px;
}

.imageBox.l-reverse .imageBox__imageArea {
    margin-left:0;
    margin-right:auto;
}

.imageBox__textArea {
    width:400px;
}

.imageBox__imageArea {
    margin-left:auto;
}
.imageBox.top {
    margin-bottom: 0px;
    padding: 0 30px;
    background-color: #fff;
}

.imageBox.top_total {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 90px;
    justify-content: space-around;
}
.imageBox .imageBox__imageArea.company_logo {
    width: 58%;
    background-color: #fff;
    margin: 0;
    padding: 30px 10px 10px;
}
.imageBox__imageArea.company_logo .bnr li.bnr__list {
    width: 33%;
}
.imageBox .imageBox__imageArea.Companies {
    width: 40%;
    position: relative;
}
.imageBox .imageBox__imageArea.Companies img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}
.centerBox {
    margin-bottom:90px;
}

.centerBox .contents__text {
    text-align:center;
}

.eventBoxGroup {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}

.eventBox {
    width:100%;
    max-width:320px;
    min-height:230px;
    margin:0 10px;
    background-color:#fff;
    border-radius:5px;
    position:relative;
    border:2px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.eventBox a {
    padding:40px 30px;
}

.eventBox:hover {
    cursor:pointer;
    border:2px solid #ca1e07;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.eventBox__date {
    /*font-size:23px;
    font-size:2.3rem; トップページ下部のイベント情報日付調整_20170221*/
　　　　font-size:16px;
        font-size:1.6rem;
    display:inline-block;
    margin-bottom:18px;
}

.eventBox__date > span {
    font-size:16px;
    font-size:1.6rem;
}

.eventBox__title {
    margin-bottom:20px;
    font-size:15px;
    font-size:1.5rem;
    line-height:1.6;
}

.eventBox__wppen {
    position:absolute;
    bottom:30px;
    left:30px;
}

.eventBox__link {
    color:inherit;
    text-decoration:none;
    display:inline-block;
}
.eventBox2 {
    width:100%;
    display: flex;
    justify-content: space-between;
    background-color: #f4f4f4;
    padding: 20px;
    margin-top: 20px;
}
.eventBox2 .eventBox2__img {
    width: 15%;
    margin-right: 15px;
}
.eventBox2 .eventBox2__txt {
    width: 85%;
}
.eventBox2 .eventBox2__txt span {
    font-weight: bold;
    line-height: 3;
    font-size: 2.0rem;
}

.event__txt {
    word-break: normal;
}
.rubyBox {
    border:1px solid #ca1e07;
    padding:32px 26px;
}

.rubyBox__title {
    font-size:18px;
    font-size:1.8rem;
    font-weight:bold;
    margin-bottom:1em;
}

.rubyBox__lists {
    line-height:1.5;
}

.rubyBox-column2 {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
    margin-bottom:20px;
}

.rubyBox-column2 .rubyBox {
    width:49%;
    margin-bottom:20px;
}

.lightGrayBox {
    font-size:16px;
    font-size:1.6rem;
    color:#333;
    border:10px solid #f4f4f4;
    padding:32px 26px;
    margin-bottom:20px;
}

.lightGrayBox__title {
    font-size:18px;
    font-size:1.8rem;
    font-weight:bold;
    margin-bottom:1em;
}

.lightGrayBox__txt {
    line-height:1.5;
}
.lightGrayBox__txtGroup {
    margin:30px 0 20px;
    line-height:1.5;
}

.definitionBox__title {
    font-size:18px;
    font-size:1.8rem;
    text-align:center;
    font-weight:bold;
    color:#fff;
    background-color:#c01920;
    padding:20px;
}

.definitionBox__wrap {
    border:2px solid #c01920;
    padding:35px;
}

.definitionBox__group {
    margin-top:30px;
}

.definitionBox__group:first-child {
    margin-top:0;
}

.phase {
    margin-bottom:20px;
}

.phase p {
    padding-bottom:10px;
    font-size:16px;
    font-size:1.6rem;
}

.phase .more-details {
    text-align:right;
}

.phase .more-details--soft a {
    width:41%;
}

.phase .more-details--manual a {
    width:51%;
}

.phase .more-details--online a {
    width:41%;
}

.box {
    width:100%;
    padding:30px;
    margin-bottom:30px;
}

.circle-area {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-justify-content:space-around;
        -ms-flex-pack:distribute;
            justify-content:space-around;
}
.circle-area.new {
    margin-bottom: 0;
}
.circle__block {
    text-align:center;
    padding:0 15px;
    width: 100%
}
.circle-area.new .circle__block {
    width: 40%;
}
.circle {
    margin-bottom:30px;
}

.circle-step-01 {
    padding-right:60px;
    background:url(/images/heartcore_cxm/ico_triangle.png) no-repeat 100% 40%;
}

.circle-step-03 {
    padding-left:60px;
    background:url(/images/heartcore_cxm/ico_triangle.png) no-repeat 0 40%;
}

.circle-area--around {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-justify-content:space-around;
        -ms-flex-pack:distribute;
            justify-content:space-around;
}

.circle-area--around .circle__block--tool {
    text-align:center;
    padding:0;
}

.available {
    position:relative;
}

.available .button--square-xsmall {
    position:absolute;
}

.available .available_btn1 {
    top:120px;
    left:140px;
}

.available .available_btn2 {
    top:225px;
    left:580px;
}

.available .available_btn3 {
    top:320px;
    left:100px;
}

/*===============================================================
    wappen styles
===============================================================*/
.wappen {
    color:#fff;
    padding:5px 26px;
    text-align:center;
    display:inline-block;
}

.wappen--blue {
    background-color:#3476b8;
}
.wappen--orange {
    background-color:#e67f22;
}
.wappen--brown {
    background-color:#6a3906;
}

.wappen--pink {
    background-color:#F27398;
}
.wappen--green {
    background-color:#65C6BB;
}
.wappen--purple {
    background-color:#9b59b6;
}
.wappen--skyblue {
    background-color:#87cefa;
}
.wappen--red {
    display:inline-block;
    background-color:#ca1d06;
    padding:5px 10px;
}
.wappen--yellowgreen {
    background-color: #65c66d;
}
.wappen--red-line {
    display:inline-block;
    color:#ca1d06;
    border:1px solid #ca1d06;
    padding:5px 10px;
}

.wappen--gray {
    display:inline-block;
    color:#fff;
    background-color:#777;
    padding:5px 10px;
}

.wappen--news {
    background-color:#1abc9c;
}

.wappen--topics {
    background-color:#c01920;
}

/* START 20181101 added */
.event__data.anchor-area {
      display: flex;
      font-size:14px;
      font-size:1.4rem;
}
.anchor {
    width: 50%;
    color: #fff;
    height: 50px;
    text-align: center;
}
.line2 {
    line-height: 1.3;
    padding: 5px 0;
}
.anchor > span {
    position: relative;
  display: inline-block;
  padding-right: 25px;
}
.anchor > span {
    position: relative;
  display: inline-block;
  padding-right: 15px;
}
.anchor.button--square {
    border: none;
    height: 50px;

}
.anchor.button--square > span:before {
  display: block;
  content: '';
  position: absolute;
  top: 60%;
  right: -4px;
  width: 0;
  height: 0;
  margin-top: -8px;
  border: 4px solid transparent;
  border-top: 4px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.anchor.button--square span:hover{
    opacity: 0.8;
}
.anchor.button--square > span:hover:before {
    top: 65%;
  transition: all 0.2s linear;
}


/*===============================================================
    form
===============================================================*/
.search-input {
    background-color:#eee;
    border-radius:5px;
    font-size:18px;
    font-size:1.8rem;
    width:100%;
    max-width:calc(100% - 100px);
    margin-left:20px;
    padding:10px 20px;
}

.button-search {
    width:60px;
    height:60px;
    border-radius:5px;
    background:#e60012 url(/images/common/ico_zoom-white.png) no-repeat 50% 50%;
    background-size:32px auto;
    margin-left:10px;
}
.search_area {
    padding: 5px 10px;
}
.search_area .search-input {
    background-color: #fff;
    border-radius: 2px;
    font-size: 13px;
    font-size: 1.3rem;
    width: 85%;
    max-width: 100%;
    padding: 8px;
    margin: 0;
}
.search_area .button-search {
    width: 30px;
    height: 30px;
    border-radius: 2px;
    background: #333 url(/images/common/ico_zoom-white.png) no-repeat 50% 50%;
    background-size: 15px auto;
    margin-left: 5px;
}

/*===============================================================
    link styles
===============================================================*/
.link {
    position:relative;
    color:inherit;
}

.link:after {
    display:inline-block;
    position:relative;
    content:'';
    width:0;
    height:0;
    margin-top:-5px;
    margin-left:7px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.link:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.link--same {
    padding-right:26px;
    position:relative;
    color:inherit;
    background:url(/images/common/ico_same.png) no-repeat 100% 50%;
}

.link--same:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.link--external {
    padding-right:23px;
    position:relative;
    color:inherit;
    background:url(/images/common/ico_external.png) no-repeat 100% 50%;
}

.link--external:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.link--mail {
    margin-right:3px;
    padding-right:18px;
    position:relative;
    color:inherit;
    background:url(/images/common/ico_mail-s.png) no-repeat 100% 50%;
}

.link--mail:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

/*===============================================================
    is (state)
===============================================================*/
.is-active {
    display:block !important;
}

.is-relative {
    position:relative;
}

.is-absolute {
    position:absolute;
}

/*===============================================================
    news ticker
===============================================================*/
.news_event_top_area {
	padding-top: 50px;
}

.news-ticker__group {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 0 calc(50% - 500px) 0;
}
.news-ticker {
	background-color: #333;
}
.news-ticker__title {
    color:#fff;
    background-color:#333;
    padding:10px 25px;
    font-size:15px;
	font-size:1.5rem;
	width: 50%;
}
.news-ticker__title:first-child {
	border-right: 2px solid #fff;
}

.news-ticker__title a {
    color:#fff;
}

.news-ticker__text {
    padding:16px 20px 16px 25px;
    background:url(/images/index/bg_news-arrow.gif) no-repeat 0 50%;
    line-height:1.5;
}

.news-ticker__text a {
    color:#333;
    text-decoration:none;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    padding-bottom: 3px;
}

.news-ticker__text a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
.news_event_top_area{
}

.news-ticker__text2 {
	width: 50%;
    padding:10px 20px 16px 15px;
    line-height:1.6;
}
.news-ticker__text2 p {
     overflow: hidden;
     text-overflow: ellipsis;
     white-space: nowrap;
}
.news-ticker__text2 a {
    color:#333;
    text-decoration:none;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    font-size:15px;
    font-size:1.5rem;
}

.news-ticker__text2 a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

/*===============================================================
    news topics
===============================================================*/
.news-topics {
    position: relative;
    background-color:#f7f5f2;
    padding:0 calc(50% - 500px) 0;
    top: -10px;
}

.news-topics__group {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    padding:0;
}

.news-topics__title {
    color:#fff;
    background-color:#c01920;
    padding:20px 25px;
    font-size:15px;
    font-size:1.5rem;
}

.news-topics__title a {
    color:#fff;
}

.news-topics__text {
    padding:16px 20px 16px 25px;
    background:url(/images/index/bg_news-arrow.gif) no-repeat 0 50%;
    line-height:1.5;
}

.news-topics__text a {
    color:#333;
    text-decoration:none;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.news-topics__text a:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}
/*===============================================================
    shortcut menu
===============================================================*/
.shortcut-menu {
    width:460px;
    background-color:rgba(255, 255, 255, 0.7);
    padding:12px 10px 12px 20px;
    display:inline-block;
    position:relative;
    left:0;
    top:0;
}

.shortcut-menu__list {
    position:relative;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.shortcut-menu__list.n01 {
    background:url(/images/index/ico_menu01.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n02 {
    background:url(/images/index/ico_menu02.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n03 {
    background:url(/images/index/ico_menu03.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n04 {
    background:url(/images/index/ico_menu04.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n05 {
    background:url(/images/index/ico_menu05.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n06 {
    background:url(/images/index/ico_menu06.png) no-repeat 0 50%;
    background-size:40px 40px;
}

.shortcut-menu__list.n07 {
    background:url(/images/index/ico_menu07.png) no-repeat 0 50%;
    background-size:40px 40px;
}
/*--------------新規追加 20170515-----------------*/
.shortcut-menu__list.mysql {
    background:url(/images/index/ico_mysqitop.png) no-repeat 0 50%;
    background-size:40px 40px;
}
.shortcut-menu__list.mariadb {
    background:url(/images/index/ico_mariadbtop.png) no-repeat 0 50%;
    background-size:40px 40px;
}
/*-------------------------------*/
.shortcut-menu__list:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:10px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:6px solid #999;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.shortcut-menu__list:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.shortcut-menu__list:hover:after {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:6px solid #999;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.shortcut-menu__link {
    color:#333;
    text-decoration:none;
    font-size:15px;
    font-size:1.5rem;
    padding:18px 40px 18px 50px;
    display:block;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.shortcut-menu__link:hover {
    text-decoration:none;
}

/*===============================================================
    news styles
===============================================================*/

.news__list {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    margin-bottom:36px;
}

.news__link {
    color:inherit;
}

.news__link:hover {
    opacity:0.5;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
}

.news__date {
    margin-right:1.5em;
    width:95px;
    white-space:nowrap;
}

.news__label {
    display:inline-block;
    text-align:center;
    width:102px;
    height:25px;
    display:-webkit-inline-box;
    display:-webkit-inline-flex;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    margin-right:0.75em;
}

.news__text {
    line-height:1.6;
}

.news-wrap {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-flow:column;
        -ms-flex-flow:column;
            flex-flow:column;
    margin-top:-40px;
}

.news-item {
    border-bottom:1px solid #d9d9d9;
    position:relative;
    display:inline-block;
}

.news-item:after {
    content:'';
    width:20px;
    height:20px;
    border:0;
    border-top:solid 2px #cecece;
    border-right:solid 2px #cecece;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    position:absolute;
    top:50%;
    right:20px;
    margin-top:-10px;
}

.news__title {
    font-size:22px;
    font-size:2.2rem;
    line-height:1.4;
    color:#c01920;
    margin-bottom:28px;
}

/*===============================================================
    main visual
===============================================================*/
.main-visual {
    width:100%;
    height:100%;
    position:relative;
}
.main-visual__inner {
    position:relative;
    padding:130px calc(50% - 500px) 0;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    z-index: 1;
    position: absolute;

}

.main-visual__image {
    width:100%;
    padding-bottom:58px;
}

.main-visual__btnGroup {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
}

.main-visual__btnGroup2 {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    margin-top: 10px;
}
.main-visual__contactBox {
    width:48%;
    margin-right:2%;
}
.main-visual__contactBox2 {
    width:100%;
    margin-right:2%;
}
.main-visual__copy {
    color:#fff;
    font-size:37px;
    font-size:3.7rem;
    font-weight:bold;
    margin-top:75px;
    margin-bottom:20px;
    text-shadow:#333 1px 1px 5px;
}

.main-visual__text {
    color:#fff;
    font-size:22px;
    font-size:2.2rem;
    margin-bottom:45px;
    text-shadow:#333 1px 1px 5px;
}

.main-copy {
    padding:0 40px;
    width:100%;
}
.main-copy .bnr_area {
    margin-bottom: 45px;
}

/*===============================================================
    pagination styles
===============================================================*/
.pagination {
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    margin:20px 0;
    padding:5px 12px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
}

.pagination__list {
    margin:0 5px;
    width:36px;
    height:36px;
    text-align:center;
}

.pagination__list:first-child {
    margin-right:15px;
}

.pagination__list:first-child .pagination__link {
    border:none;
}

.pagination__list:first-child .pagination__link:hover {
    border:none;
    color:#d75544;
    background:#fff;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.pagination__list:last-child {
    margin-left:15px;
}

.pagination__list:last-child .pagination__link {
    border:none;
}

.pagination__list:last-child .pagination__link:hover {
    border:none;
    color:#d75544;
    background:#fff;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.pagination__list > span {
    color:inherit;
    text-align:center;
    line-height:36px;
    display:block;
}

.pagination__list > span:hover {
    opacity:1;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.pagination__link {
    color:#d75544;
    background-color:#fff;
    text-align:center;
    width:36px;
    height:36px;
    line-height:36px;
    display:block;
    border:1px solid #ddd;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.pagination__link.is-active {
    color:#fff;
    background-color:#c01920;
    border:1px solid #c01920;
}

.pagination__link:hover {
    color:#fff;
    background-color:#c01920;
    border:1px solid #c01920;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

/*===============================================================
    separate
===============================================================*/
.separate {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    margin-bottom:120px;
    padding:0 15px;
    box-sizing:border-box;
}

.separate__body {
    width:36%;
}
.separate__body, .tool__img {
  width: 50%;
}
.separate__body li {
    font-size:18px;
    font-size:1.8rem;
    line-height: 1.6;
    padding-left:42px;
    padding-bottom:30px;
}
.separate__body ul.elected li {
    padding-left: 0;
}
.separate__img {
    width:52.6%;
}

.separate__body--left {
    margin-top:150px;
}

.separate__body--right {
    margin-top:45px;
}

.separate__title {
    font-size:18px;
    font-size:1.8rem;
    font-weight:bold;
    background-color:#f7f5f2;
    text-align:center;
    padding:10px 0;
    margin-bottom:36px;
}

.dm-list li:first-child {
    background:url(/images/heartcore/ico_01.png) no-repeat 0 0;
}

.dm-list li:nth-child(2) {
    background:url(/images/heartcore/ico_02.png) no-repeat 0 0;
}

.dm-list li:nth-child(3) {
    background:url(/images/heartcore/ico_03.png) no-repeat 0 0;
}

.cm-list li:first-child {
    background:url(/images/heartcore/ico_04.png) no-repeat 0 0;
}

.cm-list li:nth-child(2) {
    background:url(/images/heartcore/ico_05.png) no-repeat 0 0;
}

.cm-list li:nth-child(3) {
    background:url(/images/heartcore/ico_06.png) no-repeat 0 0;
}

.cm-list li:nth-child(4) {
    background:url(/images/heartcore/ico_07.png) no-repeat 0 0;
}

.cm-list li:nth-child(5) {
    background:url(/images/heartcore/ico_08.png) no-repeat 0 0;
}
.elected li {
    
}
.elected li h3 {
    position: relative;
    margin-bottom: 10px;
    border-bottom: 4px solid #ccc;
    font-size: 2.5rem;
}
.elected li h3:after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
  background-color: #b60005;
}
.elected li p {
    font-size: 1.6rem;
}

.separate--tool {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.separate--tool .separate__body {
    width:50%;
}

.separate--step {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.separate--step .separate__body-01 {
    width:53%;
}

.separate--step .separate__body-02 {
    width:58%;
}

/*===============================================================
    section-contents
===============================================================*/
.section-contents-01 {
    margin-bottom:60px;
}

.section-contents-02 {
    margin-bottom:140px;
}

.section-contents-03 {
    margin-bottom:80px;
}

.section-bg--gray {
    background-color:#f4f4f4;
}

.section-bg--gray-02 {
    background:#fbfbfb;
}

.section-bg--gray-03 {
    background:url(/images/heartcore/ai_campaign/bg_gray.gif);
}

.section {
    padding:60px 0;
}

.section-space--bottom {
    margin-bottom:136px;
}

.section-space--bottom-02 {
    margin-bottom:100px;
}

.section-space--bottom-03 {
    margin-bottom:80px;
}

.section-space--bottom-04 {
    margin-bottom:110px;
}

.section-space--bottom-05 {
    margin-bottom:60px;
}

/* =================================================================
* second
================================================================= */
/*===============================================================
    breadcrumb
===============================================================*/
.breadcrumb {
    padding:20px calc(50% - 500px) 20px;
}

.breadcrumb--bg-glay {
    padding:30px calc(50% - 500px) 20px;
}

.breadcrumb__lists {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    font-size:14px;
    font-size:1.4rem;
    -webkit-flex-wrap:wrap;
        -ms-flex-wrap:wrap;
            flex-wrap:wrap;
}

.breadcrumb__list {
    padding:2px 0;
}

.breadcrumb__list:after {
    content:'>';
    padding:0 12px;
}

.breadcrumb__list:first-child {
    background:url(/images/common/ico_breadcrumb.png) no-repeat 0 50%;
    padding-left:20px;
}

.breadcrumb__list:last-child:after {
    display:none;
}

.breadcrumb__link {
    color:#bf191f;
}

/*===============================================================
    category visual
===============================================================*/
.category-visual_top {
    position: relative;
}
.category-visual_top .category-visual--title img.first {
	max-width: 80%;
    padding-top: 50px;
    padding-bottom: 5px;
}
.category-visual_top .category-visual--title img.first:hover {
    opacity: 0.5;
}
.category-visual_top .category-visual--title .mariadb img {
    width: 100%;
    padding: 0;
}
.category-visual {
    background:#7a7a7a url(/images/lineup/category-visual.jpg) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    height:200px;
    position:relative;
    text-align:center;
    color:#fff;
    font-size:40px;
    font-size:4.0rem;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}
.comingsoon {
    font-size: 3.0rem;
    padding-top: 30px;
}
.comingsoon p {
    justify-content: center;
    display: flex;
}
.comingsoon p span.c1 {
    border-bottom: 3px solid rgb(229, 255, 0);
    margin:0 3px;
    font-size: 2.0rem;
}
.comingsoon p span.c2 {
    font-size: 2.0rem;
    vertical-align: bottom;
    padding-top: 8px;
}
.category-visual_top.cxm {
    background: #7a7a7a url(/images/heartcore_cxm/main-visual.jpg) no-repeat 50% 0;
    background-size: cover;
    width: 100%;
    height: 460px;
}
.category-visual--company {
    background:#7a7a7a url(/images/lineup/corporate-visual.jpg) no-repeat 50% 0;
    background-size:cover;
}
.category-visual_top .category-visual__image.cxm {
    background: none;
}

.category-visual--heartcore {
    background:#7a7a7a url(/images/heartcore/heartcore-visual.jpg) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    height:420px;
    position:relative;
    color:#fff;
    margin-bottom:30px;
    padding: 0 calc(50% - 500px);
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
            overflow: hidden;
}
.category-visual--heartcore .category_images {
    width: 28%;
    padding-right: 20px;
}
.category-visual--heartcore .category_textarea {
    width: 70%;
}
.category-visual--heartcore .typ-section-main {
    text-align: left;

}
.category-visual--heartcore h2 {
    font-size: 3.0rem;
    line-height: 2.0;

}

.category-visual--heartcore .category-visual--title {
    line-height:1.2;
    font-size: 6.0rem;
    font-size: 60px;
    margin-bottom: 10px;
}

.category-visual--heartcore .category-visual--title span {
    border:1px solid #fff;
    padding:5px 10px;
}

.category-visual--heartcore .category-visual--title span:first-child {
    margin-left: 10px;
}

.category-visual-heartcore-sub-title {
    text-align: center;
    font-size: 40px;
    font-size: 4.0rem;
    font-weight: bold;
    margin-bottom: 0px;
}
.titleArea {
    margin-bottom: 50px;
}
.typ-section01.heartcore {
    width: 70%;
    text-align: left;
    margin: 0 auto 60px;
}

.category-visual--ai {
    -webkit-flex-wrap:nowrap;
        -ms-flex-wrap:nowrap;
            flex-wrap:nowrap;
    background:#7a7a7a url(/images/heartcore/ai_campaign/main-visual.jpg) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    overflow:hidden;
    padding:0 calc(50% - 500px);
    position:relative;
    color:#fff;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}

.category-visual--ai .category-visual--title {
    text-align:left;
    line-height:1.2;
    font-size:60px;
    padding:1vw;
    width:63%;
    margin:0;
}

.category-visual--ai .category-visual--title span {
    font-size:26px;
    border-top:1px solid #fff;
    border-bottom:1px solid #fff;
    margin-bottom:10px;
    padding:10px;
    display:inline-block;
    line-height:1.2;
}

.category-visual--ai .category-visual--head {
    width:37%;
}

.category-visual--ai .category-visual--head img {
    max-width:100%;
    height:auto;
    vertical-align:bottom;
    position:relative;
    bottom:-30px;
    right:0;
}

.category-visual--digital {
    background:#7a7a7a url(/images/heartcore_cxm/main-visual.jpg) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    height:420px;
    position:relative;
    text-align:center;
    color:#fff;
    margin-bottom:30px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -webkit-flex-direction:column;
        -ms-flex-direction:column;
            flex-direction:column;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.category-visual--digital .category-visual--heading {
    font-size:28px;
    font-size:2.8rem;
    line-height:1.2;
    margin-bottom:25px;
}

.category-visual--digital .category-visual--title {
    font-size:64px;
    font-size:6.4rem;
    font-weight:bold;
    line-height:1.3;
    padding:0 20px;
}

.category-visual--digital .category-visual--sub-title {
    font-size:22px;
    font-size:2.2rem;
    line-height:1.6;
    padding:10px 35px;
    border-top:2px solid #afafad;
    border-bottom:2px solid #afafad;
}

.intro-bdash-mock{
    display: inline-block;
    width: 130px;
    position: absolute;
    transform: translate(30px, -55px);
    z-index: 2;
}
.intro-btn{
    margin: 35px 0 ;
    position: relative;
}
.intro-btn a {
    display: block;
    margin: 0 auto;
    height: 70px;
    max-height: 70px;
    width: 570px;
    padding-right: 30px;
    line-height: 70px;
    font-size: 22px;
    font-size: 2.2rem;
    color: #fff;
    text-align: center;
    text-indent: -4vw;
    background-size: 20px;
    border: 3px solid #27a727;
    background-color: #289113;
    border-radius: 10px;
    font-weight: bold;
    letter-spacing: 0.05em;
    position: relative;
    z-index: 1;
    font-family: 'Noto Sans JP', sans-serif;
}
.intro-title {
    text-align: center;
}
.intro-btn a:hover {
  opacity: 0.8;
}
.category-visual__image-inner .btn_area {
    display: flex;
    justify-content: center;
}
.category-visual__image-inner .btn_area .intro-btn {
    text-align: center;
    margin-top: 20px;
    margin-right: 25px;
}
.category-visual__image-inner .btn_area .intro-btn.last {
    margin-right: 0px;
}
.category-visual__image-inner .btn_area .intro-btn a{
    background: none;
    color: #b60005;
    border: 2px solid #b60005;
    padding: 0 15px;
    text-align: center;
    text-indent: 0;
 width: 100%;
}
.category-visual__image-inner .btn_area .intro-btn.seminar a{
}
.intro-btn.demo a:hover, .intro-btn.seminar a:hover {
    background-color: #B60005;
    color: #fff;
}
.section-block .notes .txt-ex-small2 {
    font-size: 12px;
    font-size: 1.2rem;
    line-height:1.2;
}
.section-visual--digital {
    background:#7a7a7a url(/images/heartcore_cxm/section-visual.jpg) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    height:100%;
    padding: 30px 0;
    position:relative;
    text-align:center;
    color:#fff;
    margin-bottom:30px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -webkit-flex-direction:column;
        -ms-flex-direction:column;
            flex-direction:column;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.section-visual {
    width:100%;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}

.section-visual--01 {
    background:#7a7a7a url(/images/heartcore/ph_section-01.jpg) no-repeat 50% 0;
    background-size:cover;
    height:300px;
    margin-bottom:70px;
}

.section-visual--01 .category-visual-inner {
    background:url(/images/heartcore/img_number-01.png) no-repeat 0 0;
}

.section-visual--02 {
    background:#7a7a7a url(/images/heartcore/ph_section-02.jpg) no-repeat 50% 0;
    background-size:cover;
    height:300px;
    margin-bottom:20px;
}

.section-visual--02 .category-visual-inner {
    background:url(/images/heartcore/img_number-02.png) no-repeat 0 0;
}

.section-visual--03 {
    background:#7a7a7a url(/images/heartcore/ph_section-03.jpg) no-repeat 50% 0;
    background-size:cover;
    height:300px;
    margin-bottom:70px;
}

.section-visual--03 .category-visual-inner {
    background:url(/images/heartcore/img_number-03.png) no-repeat 0 0;
}

.section-visual--04 {
    background:#7a7a7a url(/images/heartcore/ph_section-04.jpg) no-repeat 50% 0;
    background-size:cover;
    height:300px;
    margin-bottom:70px;
}

.section-visual--04 .category-visual-inner {
    background:url(/images/heartcore/img_number-04.png) no-repeat 0 0;
}

.category-visual--title {
    text-align:left;
    font-size:50px;
    font-size:5.0rem;
    margin-bottom:20px;
}

.category-visual--sub-title {
    text-align:left;
    font-size:50px;
    font-size:5.0rem;
    margin-bottom:20px;
}

.category-visual-inner {
    padding:10px 0 10px 150px;
    color:#fff;
    margin:0 15px;
}

.category-visual-inner .typ-section01 {
    text-align:left;
    margin-bottom:0;
}

/*===============================================================
    faq styles
===============================================================*/
.faq {
    border:1px solid #ca1e07;
    border-radius:4px;
    margin-bottom:20px;
}

.faq__heading {
    padding:20px 25px;
    cursor:pointer;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    position:relative;
}

.faq__heading > p {
    line-height:1;
}

.faq__heading.is-flex {
    color:#fff;
    background-color:#ca1e07;
}

.faq__heading:hover {
    color:#fff;
    background-color:#ca1e07;
    opacity:0.8;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.faq__state {
    width:26px;
    height:26px;
    background-color:#ca1e07;
    border-radius:3px;
    text-align:center;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    position:absolute;
    top:0;
    right:14px;
    bottom:0;
    margin-top:auto;
    margin-bottom:auto;
}

.faq__state.is-flex {
    background-color:#fff;
}

.faq__ico--plus {
    display:inline-block;
    width:2px;
    height:10px;
    background-color:#fff;
    position:relative;
}

.faq__ico--plus:before {
    position:absolute;
    left:-4px;
    top:4px;
    content:'';
    width:10px;
    height:2px;
    background-color:#fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.faq__ico--minus {
    display:inline-block;
    width:10px;
    height:2px;
    background-color:#ca1e07;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    position:relative;
}

.faq__note {
    padding:20px 25px;
    border:1px solid #ca1e07;
    background-color:#fafafa;
    display:none;
}

.faq__text {
    line-height:1.4;
}

.faq-tel {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
}

.faq-tel p {
    width:49%;
}

/*===============================================================
    list styles
===============================================================*/
.list {
    margin-bottom:40px;
}

.list--disc > li {
    line-height:1.6;
    margin-left:1em;
    margin-bottom:10px;
    text-indent:-1em;
}

.list--disc > li:before {
    content:'';
    width:4px;
    height:4px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    vertical-align:middle;
}

.list--disc .sub-list > li {
    margin-left:0.7em;
    margin-top:10px;
    text-indent:-0.7em;
}

.list--disc .sub-list > li:before {
    content:'';
    width:3px;
    height:3px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    vertical-align:middle;
}
.list--disc .sub-sub-list > li {
    margin-left:2.0em;
    margin-top:10px;
    text-indent:-0.7em;
}

.list--disc .sub-sub-list > li:before {
    content:'';
    width:3px;
    height:3px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    vertical-align:middle;
}
.list--decimal > li {
  margin-left: 1em;
  margin-bottom: 10px;
  list-style-type: decimal;
}
.list--down > li {
  padding-left:2em;
  text-indent:-2em;
  margin-bottom: 10px;
}
.download-list li {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
    padding:30px;
}

.download-list li:not(:last-child) {
    border-bottom:1px solid #eee;
}

.contents-list {
    padding:30px 0;
}

.contents-list .list--disc > li:before {
    content:'';
    width:4px;
    height:4px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    position:relative;
    top:-3px;
}

.contents-list .sub-list > li {
    margin-left:0.7em;
    text-indent:-0.7em;
}

.contents-list .sub-list > li:before {
    content:'';
    width:3px;
    height:3px;
    border-radius:50%;
    background-color:#666;
    display:inline-block;
    margin-right:8px;
    position:relative;
    top:-2px;
}

.contents-list .link-list {
    color:#333;
    font-size:16px;
    font-size:1.6rem;
}

.contents-list .link-list:hover {
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.contents-btn {
    text-align:right;
    padding-top:15px;
}

.input-list li {
    margin:0 0 10px;
    padding:0;
}

.input-list li:last-child {
    margin:0;
}

/*===============================================================
    table styles
===============================================================*/
.base-table th, .base-table td {
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    line-height:1.5;
}

.base-table td:not(.product-table__head) {
    text-align:center;
}

.base-table thead th {
    color:#fff;
    text-align:center;
    background-color:#c01920;
    border:1px solid #d05358;
}

.base-table tbody td {
    width:23%;
}

.base-table.table--seopanel thead th {
    text-align:left;
}

.base-table.table--seopanel tbody td {
    width:33.3333%;
    text-align:left;
}

.base-table__subHeading {
    background-color:#fdf0f0;
    text-align:center;
}

.base-table__head {
    text-align:left;
}

/*--------------新規追加-----------------*/
/*テキスト左＿20170127*/
.base-table th.base-table__head2 , .base-table  td.base-table__left{
    text-align:left;
}
/*背景薄ピンク01＿20170127*/
.base-table th.base-table__head3{
    text-align:left;
    background-color: #fff8ff;
}
/*背景薄ピンク02＿20170127*/
.base-table th.base-table__head4{
    text-align:left;
    background-color: #ffe8f8;
}
/*背景薄ピンク03＿20170127*/
.base-table th.base-table__head5{
    text-align:left;
    background-color: #fdf0f0;
}

/*col4背景#e6e6e6＿20170130*/
td.col4 {
  padding-top: 6px;
  padding-bottom: 6px;
  background-color: #e6e6e6;
}
/*左付き75%＿20170130*/
.base-table tbody .lay01 {
    width: 75%;
    text-align: left;
}
/*左付き＿20170131*/
.base-table tbody  .table__left {
    text-align:left;
}
/*左付き65%＿20170130*/
.base-table tbody .lay02{
    width: 65%;
    text-align: left;
}
/*左付き55%＿20170203*/
.base-table tbody .lay03{
    width: 55%;
    text-align: left;
}
/*左付き20%＿20170203*/
.base-table tbody .lay04 ,  tbody .lay04{
    width: 20%;
    text-align: left;
}
/*左付き30%＿20170203*/
.base-table tbody .lay05 , tbody .lay05{
    width: 30%;
    text-align: left;
}
/*左付き35%＿20170203*/
.base-table tbody .lay06{
    width: 35%;
    text-align: left;
}
/*左付き35%＿20170203*/
.base-table tbody .lay07{
    width: 10%;
    text-align: left;
    padding: 0px;
}
/*td幅10%＿20170203*/
.base-table tbody td.w10 {
    width:10%;
}
/*線を上に入れる＿20170130*/
.btop{
    border-top:1px solid #eee;
}

/*表のバックを青＿20170201*/
.base-table th.blue-bk{
    background-color: #3476b8;
    border: 1px solid #4e97e0;
}
.base-table.table--download tbody .lay03{
    width: 50%;
    text-align: left;
}
.base-table th, .base-table td , .base-table2 th , .base-table2 td{
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    line-height:1.5;
}
.base-table2{
    width:100%;
}
.base-table2 td {
    text-align:center;
}

.base-table2 thead th {
    color:#fff;
    text-align:center;
    background-color:#c01920;
    border:1px solid #d05358;
}

.base-table2 tbody td.w10 {
    width:10%;
}
.base-table2 tbody td.w15 {
    width:15%;
}
.base-table2  tbody td.w20 {
    width:20%;
}
.base-table2  tbody td.w30 {
    width:30%;
}
.base-table2  tbody td.w70 {
    width:70%;
}
.base-table2  tbody td.w80 {
    width:80%;
}
.base-table2  tbody td.w85 {
    width:85%;
}
.base-table2 tbody th {
    text-align:left;
}
.base-table2 tbody td.left {
    text-align:left;
}
/*導入事例ロゴスペース__202112*/
.bnr__list {
  width: 16.6%;
  margin-bottom: 1%;
}
/*テキストセンター揃え＿20170207*/
.txt-center{
  text-align: center;
}
/*CXMのバックピンク＿20170330*/
.section-bg--pink {
  background-color: #ffebec;
}
/*CXMの２カラムテキストポックス＿20170331*/
.separate--tool .separate__body {
    width:45%;
}
/*CXMの例えばのオレンジ枠＿20170331*/
.rei{
  font-size: 1.6rem;
  line-height: 1.6;
  background-color: #e4832a;
  color: #fff;
  padding: 5px 15px;
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  vertical-align: middle;
  width: 80px;
  text-align: center;
  margin-right: 10px;
}
/*CXMのアニメーション用＿20170401*/
#ltr {
    display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}
#ltr img.ltr_sp{
    display: none;
}
ul.fade‐in{
    margin: 0;
    float: left;
}
ul.fade‐in li{
    overflow: hidden;
    display: inline-block;
}
ul.fade‐in li .scr_img{
    position: relative;
    left: -100px;
    display:block;
    opacity: 0;
}
#ltr:after {
  clear: both;
  display: block;
  content: '';
}
.effect li{
    margin: 0;
    float: left;
}
.effect img {
    transition: .8s;
}
#ltr .effect #img01 {
    transition: .8s;
}
#ltr .effect #img02 {
transition: .8s;
    transition-delay: .8s;
}
#ltr .effect #img03 {
    transition: 1.6s;
    transition-delay: 1.6s;
}
.category-visual--digital{
  height: 380px;
}
/*Topのアニメーション用＿20190628*/
.effect .top_img01 {
    transition: .8s;
}
.effect .top_img02 {
transition: .8s;
    transition-delay: .8s;
}
.effect .top_img03 {
    transition: 1.6s;
    transition-delay: 1.6s;
}
.effect .top_img04 {
    transition: 2.4s;
    transition-delay: 2.4s;
}
/*--------キービジュアル出し分け__20170410 --*/
.main-visual__image_mysql {
    background:url(/images/index/mainimg_database.png) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    margin-top:-158px;
    padding-bottom:58px;
    height: 600px;
}
.main-visual__image_mariadb {
    background:url(/images/index/mainimg_mariaDB.png) no-repeat 50% 0;
    background-size:cover;
    width:100%;
    margin-top:-158px;
    padding-bottom:58px;
    height: 600px;
}

/*--------cookie_res用_キービジュアル出し分け__20190202 --*/
.main-visual__image_cookie01 {
  background: url(/images/index/mainimg_01.png) no-repeat 50% 0;
  background-size: cover;
  width: 100%;
  margin-top: -158px;
  padding-bottom: 58px;
  height: 600px;
}
.main-visual__image_cookie02 {
  background: url(/images/index/mainimg_02.png) no-repeat 50% 0;
  background-size: cover;
  width: 100%;
  margin-top: -158px;
  padding-bottom: 58px;
  height: 600px;
}
.main-visual__image_cookie03 {
  background: url(/images/index/mainimg_03.png) no-repeat 50% 0;
  background-size: cover;
  width: 100%;
  margin-top: -158px;
  padding-bottom: 58px;
  height: 600px;
}
.main-visual__image_cookie04 {
  background: url(/images/index/mainimg_04.png) no-repeat 50% 0;
  background-size: cover;
  width: 100%;
  margin-top: -158px;
  padding-bottom: 58px;
  height: 600px;
}
.main-visual__image_cookie05 {
  background: url(/images/index/mainimg_05.png) no-repeat 50% 0;
  background-size: cover;
  width: 100%;
  margin-top: -158px;
  padding-bottom: 58px;
  height: 600px;
}


/*----TOPアニメ動かす_SP用__170417 --*/
 .view-sp02 {
    display:none;
}

/*----プルダウンメニュー__170524 --*/
.dropdown__outlineNav:before {
  display: block;
  content: '';
  position: absolute;
  top: 50%;
  right: -20px;
  width: 0;
  height: 0;
  margin-top: -8px;
  border: 4px solid transparent;
  border-left: 4px solid #fff;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}
.dropdown__outlineNav {
  padding: 10px 0 10px;
  position: relative;
}
.dropdown__outline{
  padding: 20px calc(50% - 500px) 0;
}
.dropdown__product {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 24px calc(50% - 500px) 0;
}




/*-----------------新規_終了-----------------------*/

.table-x {
    width:100%;
    border-top:1px solid #eee;
}

.table-x th {
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    min-width:116px;
    word-wrap:break-word;
    word-break:break-all;
    text-align:left;
}

.table-x td {
    padding:10px;
    border-bottom:1px solid #eee;
    background-color:#fff;
    vertical-align:middle;
    word-wrap:break-word;
    word-break:break-all;
    text-align:left;
    line-height:1.6;
}

.table-x .sub_title {
    min-width:150px;
}

/*--table-xの装飾追加ここから--------------*/

/*th背景色を赤に＿20170214*/
.table-x th.table-x__head {
    color:#fff;
    text-align:center;
    background-color:#c01920;
    border:1px solid #d05358;
}
.table-x th.col4 {
    text-align:center;
    background-color:#e6e6e6;
    border:1px solid #fff;
}

/*--ここまで-------------------------------*/

.table-support {
    width:100%;
    border-top:1px solid #eee;
}

.table-support th {
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    min-width:100px;
    word-wrap:break-word;
    word-break:break-all;
    text-align:left;
}

.table-support td {
    padding:10px;
    border-bottom:1px solid #eee;
    background-color:#fff;
    vertical-align:middle;
    word-wrap:break-word;
    word-break:break-all;
    text-align:left;
    line-height:1.6;
}

.table-support .sub_title {
    min-width:150px;
}

.table-contact {
    width:100%;
    margin:10px 0 30px;
    font-size:16px;
    font-size:1.6rem;
    border-top:1px solid #eee;
}

.table-contact th {
    padding:15px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    text-align:left;
    width:300px;
}

.table-contact th span {
    font-size:10px;
    font-size:1.0rem;
    color:#c01920;
}
.table-contact th span.required {
    font-size:9px;
    font-size:0.9rem;
    background-color: #c01920;
    color: #fff;
    padding: 2px 5px;
    margin-left:5px;
    line-height: 1;
}
.table-contact td {
    padding:15px;
    border-bottom:1px solid #eee;
    background-color:#fff;
    vertical-align:middle;
    text-align:left;
}

.table-contact input[type=text], .table-contact input[type=email], .table-contact input[type=tel], .table-contact textarea, .table-contact input[type= number], .table-contact input[type=phone] {
    width:100%;
    border:1px solid #ddd;
    padding:8px;
    outline:none;
}

.table-contact input[type=text]:focus, .table-contact input[type=email]:focus, .table-contact input[type=tel]:focus, .table-contact textarea:focus, .table-contact input[type= number]:focus, .table-contact input[type= phone]:focus {
    border:1px solid #c01920;
}

.table-contact input[type=checkbox], .table-contact input[type=radio] {

    background:#fff;
    border:1px solid #ddd;
}

.table-contact select {
    width:100%;
    height:3em;
    border:1px solid #ddd;
    font-size:16px;
    font-size:1.6rem;
    outline:none;
    padding:5px 10px;
}

.table-contact select:focus {
    border:1px solid #c01920;
}
.event-table {
    width:100%;
    font-size:16px;
    font-size:1.6rem;
    margin-bottom:50px;
}

.event-table th, .event-table td {
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    line-height:1.5;
}
.event-table th {
    width:20%;
}
.event-table td {
    width:80%;
}
.event-table thead th {
    color:#fff;
    text-align:center;
    background-color:#c01920;
}

.event__access-table {
    font-size:16px;
    font-size:1.6rem;
    border-top:1px solid #eee;
}

.event__access-table th, .event__access-table td {
    padding:10px;
    border-bottom:1px solid #eee;
    vertical-align:middle;
    line-height:1.5;
}

.event__access-table th {
    width:100px;
}
.event-table p.speaker {
    font-size: 10pt; 
    margin-bottom: 10px;
}
.table1 {
    width:100%;
    margin-bottom:30px;
}

.table1 th {
    text-align:center;
    background-color:#c01920;
    color:#fff;
    font-size:18px;
    font-size:1.8rem;
    font-weight:bold;
    padding:20px;
}

.table1 td {
    text-align:center;
    padding:20px 10px;
    border-bottom:1px solid #eee;
}

.table2 {
    width:100%;
    margin-bottom:30px;
}

.table2 th {
    text-align:center;
    background-color:#c01920;
    color:#fff;
    font-size:14px;
    font-size:1.4rem;
    font-weight:bold;
    padding:20px 10px;
    vertical-align:middle;
}

.table2 th.sub_title {
    font-size:14px;
    font-size:1.4rem;
    min-width:100px;
}

.table2 th.sub_title1 {
    font-size:12px;
    font-size:1.2rem;
    line-height:1.2;
}

.table2 td {
    text-align:center;
    padding:20px 10px;
    border-bottom:1px solid #eee;
}

.table2 td.sub_title5 {
    vertical-align:middle;
    font-size:12px;
    font-size:1.2rem;
}

.table2 td.sub_title6 {
    vertical-align:middle;
    font-size:12px;
    font-size:1.2rem;
    text-align:left;
}

/*===============================================================
    tab styles
===============================================================*/
.tabs {
    margin-bottom:30px;
}

.tab {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    border-bottom:4px solid #c01920;
}

.tab__list {
    width:50%;
    margin-right:10px;
    border:1px solid #d6d6d6;
    text-align:center;
    cursor:pointer;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.tab__list:hover {
    color:#fff;
    background-color:#c01920;
    border:1px solid #c01920;
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.tab__list.is-active {
    color:#fff;
    background-color:#c01920;
    border:1px solid #c01920;
}

.tab__list.is-active:hover {
    opacity:1;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}

.tab__list:last-child {
    margin-right:0;
}

.tab-content {
    padding:20px;
    display:none;
}

/*===============================================================
    sub menu
===============================================================*/
.sub-menu {
    background-color:#c01920;
}

.sub-menu ul {
    margin:0;
    padding:20px calc(50% - 500px);
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    font-size:16px;
    font-size:1.6rem;
}

.sub-menu li {
    margin-right:35px;
}

.sub-menu li.is-active a:after {
    content:'';
    height:3px;
    width:100%;
    display:block;
    background-color:#fff;
    margin-top:4px;
}

.sub-menu a {
    color:#fff;
}

.sub-menu a:after {
    content:'';
    height:3px;
    width:0;
    display:block;
    background-color:#fff;
    margin-top:4px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.sub-menu a:hover:after {
    content:'';
    height:3px;
    width:100%;
    display:block;
    background-color:#fff;
    margin-top:4px;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.sub-menu span {
    position:relative;
    display:block;
    padding-right:15px;
}

.sub-menu span:after {
    display:block;
    content:'';
    position:absolute;
    top:calc(50% - 4px);
    right:0;
    width:0;
    height:0;
    margin-top:-2px;
    border:3px solid transparent;
    border-left:5px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.sub-menu__category {
    display:none;
    color:#fff;
    padding:20px;
    position:relative;
}

.sub-menu__category:after {
    display:block;
    content:'';
    position:absolute;
    top:28px;
    right:20px;
    width:0;
    height:0;
    margin-top:-5px;
    border:5px solid transparent;
    border-left:8px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    -webkit-transform:rotate(90deg);
            transform:rotate(90deg);
}

/*===============================================================
    event / seminer styles
===============================================================*/
.event-group {
    position:relative;
    margin-bottom:40px;
}

.event-group__year {
    position:absolute;
    top:-4px;
    right:0;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.event-categoryBox {
    background-color:#f4f4f4;
    margin-top:-25px;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    padding:18px;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.event-category {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.event-category__list {
    margin-right:10px;
}

.event-category__check {
    margin-left:auto;
    border-left:1px solid #ddd;
    padding:8px 10px 8px 30px;
}

.event-category__check input {
    -webkit-appearance:checkbox;
    -moz-appearance:checkbox;
         appearance:checkbox;
    border:1px solid #ddd;
    vertical-align:top;
}

.event-group__selectGroup {
    position:relative;
}

.event-group__view {
    min-width:178px;
    border:1px solid #ddd;
    border-radius:2px;
    margin-left:20px;
    padding:12px 40px 12px 12px;
    position:relative;
}

.event-group__view:after {
    display:block;
    content:'';
    position:absolute;
    top:18px;
    right:8px;
    width:0;
    height:0;
    margin-top:-3px;
    border:4px solid transparent;
    border-left:5px solid #c01920;
    -webkit-transform:rotate(90deg);
            transform:rotate(90deg);
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.event-group__select {
    display:none;
    border:1px solid #ddd;
    width:178px;
    position:absolute;
    right:0;
    top:38px;
    z-index:100;
}

.select__year {
    padding:12px 60px 12px 12px;
    background-color:#fff;
}

.select__year:first-child {
    display:block;
}

.select__year:hover, .select__year.is-active {
    background-color:#f4f4f4;
}

.events {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-flow:column;
        -ms-flex-flow:column;
            flex-flow:column;
    border-top:1px solid #d9d9d9;
}

.event {
    border-bottom:1px solid #d9d9d9;
    position:relative;
    display:none;
}

.event.is-none {
    padding:60px 0;
    display:block;
    font-size:18px;
    font-size:1.8rem;
}

.event.is-none:after {
    display:none;
}

.event__link {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    padding:35px 10px;
    color:#333;
    border-bottom:1px solid #d9d9d9;
    position:relative;
}

.event__link:hover {
    background-color:#f9f9f9;
}

.event__link:after {
    content:'';
    width:20px;
    height:20px;
    border:0;
    border-top:solid 2px #cecece;
    border-right:solid 2px #cecece;
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
    position:absolute;
    top:50%;
    right:20px;
    margin-top:-10px;
}

.event__date {
    width:202px;
    margin-right:40px;
    font-size:26px;
    font-size:2.6rem;
    padding-left:20px;
    min-width:210px;
}

.event__date > span {
    font-size:16px;
    font-size:1.6rem;
}

.event__wappen {
    font-size:13px;
    font-size:1.3rem;
    margin-top:15px;
}

.event__wappen .wappen {
    margin-right:10px;
}

.event__wappen .wappen:last-child {
    margin-right:0;
}

.event__content {
    padding-right:40px;
}

.event__title {
    font-size:22px;
    font-size:2.2rem;
    color:#ca1d06;
    margin-bottom:28px;
    position:relative;
}

.event__title:after {
    display:inline-block;
    content:'';
    width:0;
    height:0;
    margin-top:6px;
    margin-left:10px;
    border:5px solid transparent;
    border-left:6px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    vertical-align:top;
}

.event__title.link--same:after, .event__title.external:after {
    display:none;
}

.event__data {
    font-size:16px;
    font-size:1.6rem;
    line-height:1.5;
}

.event__data dl {
    overflow:hidden;
}

.event__data dt {
    float:left;
}

.event-group__back {
    min-width:130px;
    border:1px solid #ddd;
    border-radius:2px;
    padding:12px 12px 12px 30px;
    display:block;
    position:relative;
    color:inherit;
}

.event-group__back:after {
    display:block;
    content:'';
    position:absolute;
    top:16px;
    left:8px;
    width:0;
    height:0;
    margin-top:-3px;
    border:4px solid transparent;
    border-right:5px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.event-group__back:hover {
    opacity:0.7;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
}

.event-section {
    font-size:16px;
    font-size:1.6rem;
    margin-bottom:50px;
    line-height:1.5;
}
.event__wappen--detail {
    font-size:13px;
    font-size:1.3rem;
    display:inline-block;
    margin-left:20px;
}

.event-detail__header {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    margin-bottom:30px;
}

.event-detail__date {
    font-size:26px;
    font-size:2.6rem;
}

.event-detail__date > span {
    font-size:16px;
    font-size:1.6rem;
}
.event__title-sub {
  font-weight: bold;
  font-size: 2.6rem;
  margin-bottom: 30px;
}
.event__title-main {
  text-align: center;
  font-size: 3.5rem;
  margin-bottom: 40px;
  line-height: 1.3;
}
.event__title-main span {
  font-size: 1.9rem;
  font-weight: bold;
}
.event__title--detail {
    font-size:32px;
    font-size:3.2rem;
    margin-bottom:30px;
}

.event__accessMap {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
}

.event__map {
    margin-right:45px;
}

.event__maplink {
    margin:40px 0 20px;
}

.event__maplink a {
    display:inline-block;
    margin-right:30px;
}

.event-button {
    margin:40px 0;
    text-align:center;
}
.event-button2 {
    margin:40px 0;
    text-align:center;
    line-height: 1.6;
}
.event-inquiry {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
     align-items: center; /* 縦方向中央揃え */
    line-height: 2.0;
}

.event-inquiry a {
    color:inherit;
}

.event-inquiry .lightGrayBox__title {
    margin-bottom:0;
    margin-right:45px;
    line-height: 2.0;
}

.event-inquiry > address {
    margin-right:45px;
    line-height: 2.0;
}

.event-table p, .event-table ul {
    margin-bottom:20px;
    word-break: normal;
}
.flex {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}

.partner_list2 {

}
.partner_list2 ul {
    display: flex;
    justify-content: space-between;
}
.partner_list2 ul li {
    text-align: center;
    margin: 0;
}
.partner_list2 ul li p.img {
  width: 300px;
  height: 120px;
}
.partner_list2 ul li p.img02 {
  width: 130px;
}

/* =================================================================
* pages
================================================================= */
.main_visual {
    width:100%;
    margin-top:30px;
}

.main_visual_inner {
    width:1000px;
    margin:0 auto;
}

.main_visual_inner > img {
    width:100%;
    height:auto;
}

#cup {
    text-align:right;
    position:absolute;
    width:120px;
    left:212px;
    top:-5px;
    font-size:106px;
    font-family:arial;
    font-weight:bold;
    color:#e67f22;
    z-index:99;
}

.countUp__txt {
    font-size:26px;
    font-size:2.6rem;
    color:#666;
    position:absolute;
    /*left:60px; 文言スペース調整_20170227*/
        left:80px;
    top:30px;
}

.countUp__percent {
    position:absolute;
    color:#e67f22;
    left:340px;
    top:5px;
    font-size:34px;
    font-size:34px;
    font-size:3.4rem;
}

.countUp__percent span {
    font-size:46px;
    font-size:4.6rem;
}

#cup2 {
    text-align:right;
    position:absolute;
    width:130px;
    left:60px;
    top:20px;
    font-size:110px;
    font-family:arial;
    font-weight:bold;
    color:#e67f22;
    z-index:99;
}

#cup3 {
    text-align:right;
    width:120px;
    font-size:106px;
    font-family:arial;
    font-weight:bold;
    color:#e67f22;
    z-index:99;
}

.imageBox__graph {
    position:relative;
    top:196px;
    left:10px;
}

.imageBox__graph img:not(:first-child) {
    position:absolute;
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.imageBox__graph01 {
    position:absolute;
    bottom:0;
}

.imageBox__graph02 {
    bottom:8px;
    left:15px;
    width:131px;
}

.imageBox__graph03 {
    bottom:43px;
    left:143px;
    width:131px;
}

.imageBox__graph04 {
    bottom:54px;
    width:129px;
    left:272px;
}

.imageBox__graph05 {
    bottom:99px;
    left:398px;
    width:132px;
}

.chart {
    position:relative;
    display:inline-block;
    color:#999;
    font-size:20px;
    text-align:center;
}

.chart figcaption {
    padding:50px 25px;
    width:100px;
    height:50px;
    border:20px solid #f0f0f0;
    border-radius:100px;
    line-height:50px;
}

/* END Container styles */
/* Colors for the circles and positions for the graphics */
.css {
    top:55px;
    left:48px;
}

.css + svg .outer {
    stroke:#0d84ce;
}

.javascript {
    max-width:90px;
    max-height:90px;
    top:45px;
    left:45px;
}

.javascript + svg .outer {
    stroke:#f0e040;
}

.node {
    width:200px;
    height:200px;
    top:45px;
    left:45px;
}

.node + svg .outer {
    stroke:#83cd29;
}

.chart svg {
    position:absolute;
    top:0;
    left:0;
}

.outer {
    fill:transparent;
    stroke:#333;
    stroke-width:20;
    stroke-dasharray:534;
    -webkit-transition:stroke-dashoffset 1s;
    transition:stroke-dashoffset 1s;
    -webkit-animation-play-state:running;
    /* firefox bug fix - won't rotate at 90deg angles */
    -moz-transform:rotate(-89deg) translateX(-190px);
}

.chart:hover .outer {
    stroke-dashoffset:534 !important;
    -webkit-animation-play-state:paused;
}

/* END Circle colors and graphic positions */
/* Set the initial values for the animation */
.chart[data-percent='100'] .outer {
    stroke-dashoffset:0;
    -webkit-animation:show100 2s;
    animation:show100 2s;
}

.chart[data-percent='75'] .outer {
    stroke-dashoffset:133;
    -webkit-animation:show75 2s;
    animation:show75 2s;
}

.chart[data-percent='50'] .outer {
    stroke-dashoffset:267;
    -webkit-animation:show50 2s;
    animation:show50 2s;
}

.chart[data-percent='25'] .outer {
    stroke-dashoffset:401;
    -webkit-animation:show25 2s;
    animation:show25 2s;
}

/* END set initial animation values */
/* Keyframes for the initial animation */
@-webkit-keyframes show100 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:0;
    }
}

@keyframes show100 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:0;
    }
}

@-webkit-keyframes show75 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:134;
    }
}

@keyframes show75 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:124;
    }
}

@-webkit-keyframes show50 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:267;
    }
}

@keyframes show50 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:267;
    }
}

@-webkit-keyframes show25 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:401;
    }
}

@keyframes show25 {
    from {
        stroke-dashoffset:537;
    }
    to {
        stroke-dashoffset:401;
    }
}

/* END Keyframes for the initial animation */
.cxm__list {
    position:absolute;
    width:65px;
    height:65px;
}

.cxm__list img {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.cxm__list.n01 {
    left:387px;
    top:331px;
    width:65px;
    height:65px;
}

.cxm__list.n02 {
    left:434px;
    top:193px;
    width:65px;
    height:65px;
}

.cxm__list.n03 {
    left:233px;
    top:0;
    width:65px;
    height:65px;
}

.cxm__list.n04 {
    left:75px;
    top:340px;
    /*background: url(/images/index/ico_menu04.png) no-repeat 0 0;
        background-size: 65px 65px;*/
    width:65px;
    height:65px;
}

.cxm__list.n05 {
    left:75px;
    top:52px;
    width:65px;
    height:65px;
}

.cxm__list.n06 {
    left:32px;
    top:193px;
    width:65px;
    height:65px;
}

.cxm__list.n07 {
    left:232px;
    top:404px;
    width:65px;
    height:65px;
}

.cxm__list.n08 {
    left:372px;
    top:60px;
    width:65px;
    height:65px;
}

.six-panel {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    margin-bottom:40px;
}

.six-panel > li {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    height:70px;
    line-height:70px;
    color:#fff;
    text-align:center;
    font-size:17px;
    font-size:1.7rem;
    font-weight:bold;
    position:relative;
}

.six-panel span {
    padding-left:16px;
}

.six-panel__list01 {
    background:#85add4;
    width:16.666%;
}

.six-panel__list01:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel01.png) no-repeat 100% 50%;
}

.six-panel__list02 {
    width:16.666%;
    background:#719fcd;
}

.six-panel__list02:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel02.png) no-repeat 100% 50%;
}

.six-panel__list03 {
    width:16.666%;
    background:#5d91c6;
}

.six-panel__list03:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel03.png) no-repeat 100% 50%;
}

.six-panel__list04 {
    width:16.666%;
    background:#4f88c1;
}

.six-panel__list04:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel04.png) no-repeat 100% 50%;
}

.six-panel__list05 {
    width:16.666%;
    background:#3d7ab8;
}

.six-panel__list05:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel05.png) no-repeat 100% 50%;
}

.six-panel__list06 {
    width:16.666%;
    background:#2f6aa6;
}

.six-panel__list06:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
}

.two-panel {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
}

.two-panel > li {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    height:70px;
    line-height:70px;
    color:#fff;
    text-align:center;
    font-size:17px;
    font-size:1.7rem;
    font-weight:bold;
    position:relative;
}

.two-panel span {
    padding-left:16px;
}

.two-panel__list01 {
    background:#e2505a;
    width:16.666%;
}

.two-panel__list01:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel06.png) no-repeat 100% 50%;
}

.two-panel__list02 {
    width:16.666%;
    background:#d50010;
}

.two-panel__list02:after {
    content:'';
    display:inline-block;
    width:16px;
    height:70px;
    position:absolute;
    right:-16px;
    z-index:2;
    background:transparent url(/images/index/bg_panel07.png) no-repeat 100% 50%;
}

.pdca-cnt {
    position:absolute;
    right:170px;
    bottom:0;
    vertical-align:middle;
}

.pdca-cnt__txt1 {
    font-size:26px;
    font-size:2.6rem;
    font-weight:bold;
    position:relative;
    top:-20px;
    padding-right:1em;
    display:none;
}

.pdca-cnt__txt2 {
    font-size:30px;
    font-size:3.0rem;
    color:#e57f21;
    font-weight:bold;
    display:none;
}

.lineup {
    width:100%;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
        -ms-flex-pack:justify;
            justify-content:space-between;
}

.lineup__group {
    width:calc(100% / 3);
    height:214px;
    margin-right:8px;
}

.lineup__group:last-child {
    margin-right:0;
}

.lineup__item > a {
    display:block;
}

.lineup__text {
    font-size:1.0vw;
    text-align:left;
    color:#fff;
    line-height:1.3;
}

.lineup__text:after {
    display:inline-block;
    content:'';
    position:relative;
    top:-2px;
    width:0;
    height:0;
    margin-left:10px;
    border:4px solid transparent;
    border-left:6px solid #fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.lineup01 {
    background:url(/images/index/bg_lineup01.png) no-repeat center center;
    background-size:100% 100%;
    width:calc(100% / 3);
    margin-right:8px;
}

.lineup02 {
    background:url(/images/index/bg_lineup02.png) no-repeat center center;
    background-size:100% 100%;
    width:100%;
    height:130px;
    margin-bottom:10px;
}

.lineup03 {
    background:url(/images/index/bg_lineup03.png) no-repeat center center;
    background-size:100% 100%;
    width:100%;
    height:75px;
    position:relative;
}

.lineup03:after {
    content:'';
    background:url(/images/index/ico-html-lint.png) no-repeat 0 0;
    background-size:26px 26px;
    width:26px;
    height:26px;
    position:absolute;
    top:6px;
    right:8px;
}

.lineup04 {
    background:url(/images/index/bg_lineup04.png) no-repeat center center;
    background-size:100% 100%;
    width:100%;
    height:102px;
    margin-bottom:10px;
}

.lineup05 {
    background:url(/images/index/bg_lineup05.png) no-repeat center center;
    background-size:100% 100%;
    width:100%;
    height:101px;
}

.lineup05 .lineup__text {
    color:#111;
}

.lineup05 .lineup__text:after {
    border-left:6px solid #000;
}

.lineup__inner {
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    height:100%;
}

.lineup__img {
    margin-right:20px;
    height:auto;
}

.lineup__img--hc {
    width:180px;
}

.lineup__img--maria {
    width:106px;
}

.lineup__img--lint {
    width:140px;
}

.lineup__img--sql {
    width:122px;
}
.lineup__img--fire {
    width:90px;
}
.chart {
    margin:10px;
    width:230px;
    height:230px;
    float:left;
    background-color:#ddd;
    border-radius:50%;
}
.chart .in {
    width:224px;
    height:224px;
    border-radius:50%;
    background-color:#f7f5f2;
    margin:3px;
    display:-webkit-inline-box;
    display:-webkit-inline-flex;
    display:-ms-inline-flexbox;
    display:inline-flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}
.chart .in > div {
    width:100%;
    height:100%;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-flow:column;
        -ms-flex-flow:column;
            flex-flow:column;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
}
.chart__title {
    font-size:20px;
    font-size:2.0rem;
    font-weight:bold;
    color:#555;
}
.chart__num {
    font-size:56px;
    font-size:5.6rem;
    font-weight:bold;
    color:#e67f22;
    margin:8px 0;
}
.chart__num span {
    font-size:26px;
    font-size:2.6rem;
}
#chart-num3 {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.chart__txt {
    font-size:15px;
    font-size:1.5rem;
}
#progressive-circleCMS {
    position:absolute;
    left:130px;
    top:80px;
}
.progressive-circleCMS__txt1 {
    position:absolute;
    top:-80px;
    left:200px;
    white-space:nowrap;
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.progressive-circleCMS__txt2 {
    position:absolute;
    top:337px;
    left:210px;
    white-space:nowrap;
    font-size:20px;
    font-size:2.0rem;
    color:#d50010;
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.progressive-circleCMS__txt3 {
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position:relative;
    top:-70px;
    text-align:center;
    font-size:26px;
    font-size:2.6rem;
    font-weight:bold;
}
.progressive-circleCMS__percent {
    display:none;
    position:absolute;
    color:#e67f22;
    left:200px;
    top:120px;
    font-size:34px;
    font-size:3.4rem;
}

.progressive-circleCMS__percent span {
    font-size:46px;
    font-size:4.6rem;
}
.chart--large {
    margin:0;
    width:288px;
    height:288px;
}
.chart--large .in {
    width:260px;
    height:260px;
    border-radius:50%;
    background-color:#fff;
    margin:14px;
}
.chart--large .in ul {
    position:relative;
    top:-232px;
    left:-319px;
}
.progressive-circle01__bg {
    background:url(/images/index/bg_progressive01.svg) no-repeat 50% 90%;
    background-size:82% 82%;
}

.progressive-circle02__bg {
    background:url(/images/index/bg_progressive02.svg) no-repeat 50% 80%;
    background-size:88% 88%;
}

.progressive-circle03__bg {
    background:url(/images/index/bg_progressive03.svg) no-repeat 50% 50%;
    background-size:75% 75%;
}
.contents--second {
    padding:0 calc(50% - 500px);
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-flex-basis:auto;
        -ms-flex-preferred-size:auto;
            flex-basis:auto;
    width:100%;
}
.side-column {
    -webkit-flex-basis:220px;
        -ms-flex-preferred-size:220px;
            flex-basis:220px;
    -webkit-box-ordinal-group:1;
    -webkit-order:0;
        -ms-flex-order:0;
            order:0;
    margin-right:40px;
}
.side-column__title {
    background-color:#c01920;
    text-align:center;
    color:#fff;
    font-size:20px;
    font-size:2.0rem;
    padding:50px 10px;
}
.side-column__title > h3 {
    position:relative;
}
.side-column__list {
    position:relative;
    margin-bottom:1px;
}

.side-column__list:before {
    display:block;
    content:'';
    position:absolute;
    top:50%;
    right:5px;
    width:0;
    height:0;
    margin-top:-4px;
    border:4px solid transparent;
    border-left:4px solid #c01920;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.side-column__list:hover:before {
    right:2px;
}

.side-column__link {
    color:inherit;
    display:block;
    padding:18px 10px;
}

.side-column__link.is-active {
    color:#c01920;
    background-color:#f4f4f4;
}

.side-column__link:hover {
    color:#c01920;
    background-color:#f4f4f4;
}

.side-ico--plus {
    display:inline-block;
    width:2px;
    height:10px;
    background-color:#fff;
    position:relative;
}

.side-ico--minus {
    display:inline-block;
    width:10px;
    height:2px;
    background-color:#ca1e07;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    position:relative;
}

.main-contents {
    -webkit-box-ordinal-group:2;
    -webkit-order:1;
        -ms-flex-order:1;
            order:1;
    width:calc(100% - 260px);
    font-size:16px;
    font-size:1.6rem;
}

.main-contents--single {
    width:100%;
    padding:0 calc(50% - 500px);
}

.side-column__title .side__state {
    width:26px;
    height:26px;
    border-radius:3px;
    text-align:center;
    display:-webkit-box;
    display:-webkit-flex;
    display:-ms-flexbox;
    display:flex;
    -webkit-box-align:center;
    -webkit-align-items:center;
        -ms-flex-align:center;
            align-items:center;
    -webkit-box-pack:center;
    -webkit-justify-content:center;
        -ms-flex-pack:center;
            justify-content:center;
    position:absolute;
    top:0;
    right:-10px;
    bottom:0;
    margin-top:auto;
    margin-bottom:auto;
}

.side-column__title .side__ico {
    display:inline-block;
    width:2px;
    height:10px;
    background-color:#ca1e07;
    position:relative;
}

.side-column__title .side__ico:before {
    position:absolute;
    left:-4px;
    top:4px;
    content:'';
    width:10px;
    height:2px;
    background-color:#ca1e07;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
}

.side-column__title.is-active .side__ico {
    display:inline-block;
    width:2px;
    height:10px;
    background-color:#ca1e07;
    position:relative;
}

.side-column__title.is-active .side__ico:before {
    position:absolute;
    left:-4px;
    top:4px;
    content:'';
    width:10px;
    height:2px;
    background-color:#fff;
    -webkit-transition:all 0.2s linear;
    transition:all 0.2s linear;
    -webkit-transform:rotate(180deg);
            transform:rotate(180deg);
}

.main-monitor {
    position:relative;
    width:790px;
    max-width:100%;
    height:55vw;
    max-height:452px;
    margin:0 auto;
    background:url(/images/heartcore/img-pc-note.jpg) no-repeat 50% 0;
    background-size:contain;
}

.main-monitor .dispImg {
    position:relative;
    z-index:1;
    overflow:visible;
    top:6.5%;
}

.main-monitor .dispImg .slideImg {
    position:absolute;
    z-index:2;
    top:5%;
    left:17.5%;
    width:65%;
    height:auto;
}

.separate__img {
    position:relative;
    width:52.6%;
    height:0;
    padding-bottom:59%;
    background:url(/images/heartcore/img-pc-desk-right.jpg) no-repeat 0 0;
    background-size:contain;
}
@-moz-document url-prefix() {
     .separate__img {
        height:600px;
     }
}
.separate__img .dispScreenImg {
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position:absolute;
    z-index:2;
    top:5.5%;
    left:3%;
    width:89%;
}
.separate__img .dispScreenImg img {
    width:100%;
}

.separate__img.l-disp {
    position:relative;
    width:52.6%;
    height:0;
    padding-bottom:59%;
    background:url(/images/heartcore/img-pc-desk-left.jpg) no-repeat 0 0;
    background-size:contain;
}
@-moz-document url-prefix() {
     .separate__img.l-disp {
        height:600px;
     }
}

.separate__img.l-disp .dispScreenImg {
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    position:absolute;
    z-index:2;
    top:5.5%;
    left:7%;
    width:89%;
}

.separate__img.l-disp .dispScreenImg img {
    width:100%;
}

.graph-area {
    margin-bottom:40px;
}

.graph {
    position:relative;
}

.graph > div:not(.graph_n08):not(.graph_arrow):not(.arrow_wrap) {
    width:6%;
    height:0;
    position:absolute;
    bottom:10.4%;
    z-index:100;
}

.bg_graph {
    max-width:100%;
    height:auto;
}

.arrow_wrap {
    overflow:hidden;
    position:absolute;
    width:89%;
    max-width:100%;
    height:77%;
    top:0;
    right:0;
}

.graph1 {
    left:12%;
    background-color:#f9e8e8;
}

.graph2 {
    left:22.8%;
    background-color:#f2d1d2;
}

.graph3 {
    left:33.7%;
    background-color:#ecbabc;
}

.graph4 {
    left:44.5%;
    background-color:#e6a3a6;
}

.graph5 {
    left:55.4%;
    background-color:#df8c8f;
}

.graph6 {
    left:66.2%;
    background-color:#d97579;
}

.graph7 {
    left:77%;
    background-color:#cd474d;
}

.graph8 {
    left:88%;
    background-color:#c01920;
}

.graph_n01, .graph_n02, .graph_n03, .graph_n04, .graph_n05, .graph_n06, .graph_n07, .graph_n08 {
    position:absolute;
    opacity:0;
    -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}

.graph_n01 {
    left:12%;
    top:73%;
}

.graph_n02 {
    left:22.8%;
    top:65%;
}

.graph_n03 {
    left:33.7%;
    top:56%;
}

.graph_n04 {
    left:44.5%;
    top:46%;
}

.graph_n05 {
    left:55.4%;
    top:37%;
}

.graph_n06 {
    left:66.2%;
    top:28%;
}

.graph_n07 {
    left:77%;
    top:18.5%;
}

.graph_n08 {
    width:13%;
    left:84.5%;
    top:0;
    z-index:20;
}

.graph_arrow {
    position:absolute;
    left:-700px;
    top:350px;
    width:80%;
    height:auto;
    z-index:10;
}
video {
  width: 100%;
  height: auto;

}
.video-hero {
    position: relative;
    width: 100%;
    height: auto;
    margin-bottom:  -158px;
}
/*_________新規作成_20170621____________*/
.dropdown{
  top: 100px;
}
.main-visual__contactBox.long{
  width: 100%;
  margin: 20px 5px 0 0;
}
.video-hero:before {
  background-color: rgba(0,0,0,0.3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: ' ';
}
.button--contact.l-mv-inquiry.lp:before {
  content: '';
  display: inline-block;
  background: url(/images/common/ico-white.png) no-repeat 0 0;
  background-size: 22px auto;
  float: left;
  margin: 19px 0 0 10px;
  position: relative;
  z-index: 10;
}


@media (max-width: 1040px){
    .contents-section, .contents-section--company, .contents-section--record, .contents-section--service{
        padding:50px 20px;
    }
    .available .available_btn1{
        top:32%;
        left:14%;
    }
    .available .available_btn2{
        top:64%;
        left:80%;
    }
    .available .available_btn3{
        top:90%;
        left:7%;
    }
    .category-visual--ai .category-visual--title {
        padding:1vw 20px;
        font-size:5.9vw;
        white-space:nowrap;
    }
    .category-visual--ai .category-visual--title span{
        font-size:2.4vw;
        white-space:nowrap;
    }
    .category-visual--ai .category-visual--head img{
        right:-20px;
        bottom:-15px;
        max-width:80%;
    }
    .category-visual--heartcore .category_images {
        padding: 0 10px;
    }
    .category-visual--heartcore h2 {
        font-size: 3.0vw;
        line-height: 2.0;
    }
    .category-visual--heartcore .category_textarea {
        padding: 0 10px;
    }

}

/*_____________________*/

@media all and (-ms-high-contrast: none){
    body{
        font-family:Verdana, Meiryo, sans-serif;
    }
}

@media (max-width: 768px){
    html {
    font-size:70%;
    }
    .view-pc{
        display:none;
    }
    .view-sp{
        display:block;
    }
    .gnav, .gnav__tel{
        display:none;
    }

    /*  sp サイドナビ
    ----------------------------*/
    .spNav{
        background-color:#c01920;
        position:fixed;
        display:block;
        overflow:scroll;
        top:0;
        right:100%;
        z-index:-1;
        width:70%;
        height:100%;
        -webkit-overflow-scrolling:touch;
        -webkit-transform:translateZ(0px);
    }
    .spNav.is-active{
        right:0;
    }
    .spNav a{
        text-decoration:none;
    }
    .spNav__inner{
        position:static;
        height:100%;
        padding:8% 5%;
    }
    .spNav__en{
        border:1px solid #fff;
        margin: 20px 0;
        font-size:1.2rem;
        text-align:center;
    }
    .spNav__en a{
        display:block;
        color:#fff;
        padding:10px 0;
    }
    .spNav__title{
        color:#fff;
        font-size:1.2rem;
        font-weight:bold;
        border-bottom:2px solid #e08c90;
        padding-bottom:15px;
    }
    .spNav__menu{
        margin-bottom:15px;
    }
    .spNav__list{
        font-size:1.2rem;
        border-bottom:1px solid #e08c90;
    }
    .spNav__list a{
        color:#fff;
        display:block;
    }
    .spNav__list > a{
        padding:13px 5px;
    }
    .spNav__menu--lev2 li{
        font-size:1.1rem;
    }
    .spNav__menu--lev2 li > a{
        padding:12px 0 12px 15px;
    }
    .spNav__menu--lev2 > ul li:last-child{
        border-bottom:none;
    }
    .spNav__menu--lev3{
        padding:0;
    }
    .spNav__menu--lev3 li{
        font-size:1.1rem;
    }
    .spNav__menu--lev3 li > a{
        padding:8px 0 8px 25px;
    }
    .sidebar .spNav__tel, .sidebar .spNav__contact {
        margin:15px 0;
    }
    .sidebar .spNav__tel a, .sidebar .spNav__contact a {
        color:#c01920;
        display:block;
        padding:14px 0;
        background-color:#fff;
        font-weight:bold;
        font-size:2.0rem;
        text-align:center;
    }
    .sidebar .spNav__tel a span{
        background:url(/images/common/ico_tel.png) no-repeat 0 50%;
        background-size:15px auto;
        padding-left:20px;
        color: #333;
    }
    .spNav__contact a span {
        background: url(/images/common/ico_mail.png) no-repeat 0 50%;
        background-size: 15px auto;
        padding-left: 20px;
        color: #333;
    }
    .spNav__ico01{
        background:url(/images/common/ico_partner-w.png) no-repeat 0 50%;
        background-size:15px auto;
        padding-left:20px;
    }
    .spNav__ico02{
        background:url(/images/common/ico_customer-w.png) no-repeat 0 50%;
        background-size:15px auto;
        padding-left:20px;
    }
    .spNav__ico03{
        background:url(/images/common/ico_career_w.png) no-repeat 0 50%;
        background-size:15px auto;
        padding-left:20px;
    }
    .btn__sns{
        display:-webkit-flex;
        display:-webkit-box;
        display:-ms-flexbox;
        display:flex;
        font-size:1.1rem;
    }
    .btn__sns a{
        color:#fff;
    }
    .btn__sns > div{
        width:50%;
        padding:13px 0;
    }
    .btn__sns--fb{
        background-color:#4267b2;
        text-align:center;
    }
    .btn__sns--fb a span{
        background:url(/images/common/ico_facebook-w.png) no-repeat 0 50%;
        background-size:8px auto;
        padding-left:15px;
    }
    .btn__sns--tw{
        background-color:#1b95e0;
        text-align:center;
    }
    .btn__sns--tw a span{
        background:url(/images/common/ico_twitter-w.png) no-repeat 0 50%;
        background-size:16px auto;
        padding-left:24px;
    }
    .header__search{
        display:-webkit-box;
        display:-webkit-flex;
        display:-ms-flexbox;
        display:flex;
    }
    .header__spnav{
        display:block;
        position:absolute;
        width:45px;
        height:45px;
        padding:5px;
        top:0;
        right:0;
        z-index:8888;
    }
    .header{
        position:fixed;
        height:54px;
        border-bottom:1px solid #ccc;
        z-index:7777;
        background-color: #fff;
        opacity: 0.95;
    }
    .header.is-fixed{
        height:46px;
        border-bottom:1px solid #ccc;
    }
    .header.is-second{
        height:46px;
        border-bottom:1px solid #ccc;
    }
    .header__topBox {
        display:none;
    }
    .header__topBox.contact {
        display:block;
        border-bottom:none;
    }
   .header__topBox.contact ul.logo_area {
          padding: 7px;
    }
    .header__mainBox {
        height:54px;
        background-color:rgba(255, 255, 255, 0.9);
    }
    .header__logo {
        border: none;
    }
    .header__logo a {
        padding: 0 0 0 10px;
    }
    .footer{
        display:block;
    }
    .footer__mainBox{
        padding:30px 0;
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .footer__menuGroup{
        display:none;
    }
    .footer__social{
        display:none;
    }
    .footer__social--sp{
        display:-webkit-box;
        display:-webkit-flex;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-pack:center;
        -webkit-justify-content:center;
            -ms-flex-pack:center;
                justify-content:center;
    }
    .footer__social--sp li{
        margin:0 9px;
        width:100%;
        max-width:60px;
    }
    .footer__bottomBox{
        display:block;
        background-color:#fff;
        height:auto;
        padding:5px 0 0 0;
    }
    .footer__subNav{
        padding:0 10px;
        -webkit-flex-wrap:wrap;
            -ms-flex-wrap:wrap;
                flex-wrap:wrap;
        -webkit-box-pack:center;
        -webkit-justify-content:center;
            -ms-flex-pack:center;
                justify-content:center;
    }
    .footer__subNavList{
        border-right:1px solid #333;
        margin:10px 0;
    }
    .footer__subNavList:first-child{
        border-left:1px solid #333;
    }
    .footer__subNavLink{
        color:#333;
    }
    .footer__logo{
        display:block;
        position:static;
        text-align:center;
        width:100%;
    }
    .footer__logo div{
        margin-right:0;
    }
    .footer__logo p{
        font-size:1.2rem;
        margin:15px 0;
    }
    .footer__copyright{
        width:100%;
        margin:0;
        padding:10px;
        text-align:center;
        background-color:#c01920;
        display:block;
        vertical-align:bottom;
    }
    .contents{
        margin:0;
        padding-top:46px;
    }
    .contents-section, .contents-section--company, .contents-section--record, .contents-section--service{
        padding:30px 20px;
    }
    .contents-section--company{
        padding:35px 20px;
    }
    .contents-section--record{
        padding:30px 20px;
    }
    .contents-section--service{
        padding:30px 0 0;
    }
    .section-block{
        margin-bottom:10px;
        padding-bottom:5px;
    }
    .section-block p{
        font-size:1.2rem;
    }

    /*--------------新規追加-----------------*/
     /*注釈の文字修正＿201701725*/
    .footer__mainBox{
        padding:30px 0 70px;
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    /*sp用fontサイズ＿20170127*/
    .section-block li{
        font-size:1.3rem;
    }
    /*sp用に出す＿20170131*/
    .pcnone {
      display: block;
    }
    /*sp時非表示＿20170131*/
    .spnone {
      display: none;
    }
    /*sp用h1 marginボトム＿20170131*/
    .tit-heading {
    text-align: center;
    font-size:24px;
    font-size:2.4rem;
    margin-bottom:12px;
    padding-bottom:12px;
    border-bottom:3px solid #c01920;
    line-height:1.3;
    }
    .case_list li p.img {
    width: 100%;
    float: inherit;
    text-align: center;
    }
    .case_list li p.img img{
    min-width: 70%;
    }
    .case_list li .text {
    width: 100%;
    float: inherit;
    }
    /*sp用横100%＿20170301*/
    .rubyBox-column3{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .rubyBox-column3 .rubyBox{
        width:100%;
        margin-bottom:10px;
    }
    .rubyBox-column4{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .rubyBox-column4 .rubyBox{
        width:100%;
        margin-bottom:10px;
    }
    /*sp用横100%＿20170306*/
    .box-column {
      display: block;
    }
    .box-column .Box3{
        width:100%;
        margin-bottom:10px;
            height: 135px;
    }
    .training .tit-bold {
      line-height: 1.6;
    }
    .training .tit-red01 {
      line-height: 1.6;
    }
    /*sp用横100%＿20170306*/
    .box-column .Box4{
        width:100%;
        margin-bottom:10px;
    }
    .box-column .Box5{
        width:100%;
    }
    .box-column .Box6{
        width:100%;
        margin-bottom:10px;
    }
    .training_box .box-column .Box3 {
        height: 80px;
    }
    .training_box .box-column .Box3 > span{
        padding-right: 25px;
        display: block;
    }
    .training_box .box-column .Box3 span .tit-bold {
        margin-bottom: 0;
        line-height: 1.3;
    }
    .rubyBox3 {
    width: 100%;
    }
    .rubyBox4 {
        width: 100%;
    }
    /*sp用アイコンの位置調整＿20170301*/
    .rubyBox-column3 .rubyBox:after {
      position: absolute;
      left: 10px;
      top: 5px;
    }
    /*sp用thのpadding調整＿20170308*/
    .base-table th, .base-table td, .base-table2 th, .base-table2 td {
    padding: 5px;
    }
    /*sp用画像100%調整＿20170308*/
    .comment_box .img2 {
      text-align: center;
      width: 100%;
    }
    .comment_box .img3 {
      text-align: center;
      width: 100%;
    }
    /*sp用テキスト100%調整＿20170308*/
    .comment_box .text2 {
      width: 100%;
    }
    /*---導入事例写真100%＿20170427---*/
    .img_right {
      padding: 0 0 15px 0;
      float: none;
    }
    .comment_box .text{
        width: 100%;
        float: none;
    }
    .comment_box .img {
        width: 100%;
    }


/*---------------------------------------*/

    .dropdown--search{
        top:46px;
    }
    .tit-section01{
        font-size:2.4rem;
        line-height:1.4;
    }
    .tit-section02{
        font-size:2rem;
    }
    .tit-section03{
        font-size:2.4rem;
        margin-bottom:20px;
    }
    .tit-section-single{
        font-size:6vw;
        margin-bottom:20px;
    }
    .tit-copy01{
        font-size:2.4rem;
        text-align:center;
        line-height:1.4;
    }
    .tit-dropdown01{
        text-align:center;
        line-height:1.4;
    }
    .tit-copy01--centered{
        font-size:2.4rem;
        line-height:1.4;
    }
    .tit-heading01{
        font-size:1.5rem;
        padding-bottom:7px;
        margin-bottom:16px;
        border-bottom:2px solid #c01920;
        line-height:1.2;
    }
    .tit-heading01.contact {
      line-height: 2.0;
    }
    .tit-heading02{
        font-size:1.4rem;
        line-height:1.2;
        padding-bottom:9px;
        margin-bottom:16px;
    }
    .tit-heading03{
        font-size:1.4rem;
    }
    .title-copy{
        font-size:5.7vw;
        padding:0 0 15px;
    }
    .circle-title{
        font-size:1.6rem;
        margin-bottom:20px;
    }
    .category-title{
        margin-bottom:10px;
        text-align:center;
    }
    .category-title-sub{
        font-size:2.0rem;
        margin-bottom:15px;
        text-align: center;
    }
    .band-title{
        font-size:4.9vw;
        padding:0 10px;
    }
    .type-section-title{
        font-size:5vw;
        margin-bottom:20px;
    }
    .typ-section01{
        margin-bottom:32px;
        font-size:1.3rem;
    }
    .typ-section02{
        font-size:1.4rem;
        margin-bottom:20px;
    }
    .typ-section03{
        font-size:1.4rem;
        margin-bottom:20px;
    }
    .typ-section04{
        font-size:1.4rem;
        margin-bottom:20px;
    }
    .typ-section-heading{
        font-size:1.8rem;
        margin-bottom:20px;
    }
    .typ-section-main{
        font-size:1.4rem;
    }
    .txt-16{
        font-size:1.3rem;
    }
    .more{
        display:none;
    }
    .notes{
        margin-bottom:15px;
    }
    .notes p{
        margin-bottom:5px;
    }
    .category__text{
        font-size:1.4rem;
        margin-bottom:15px;
    }
    .step-number{
        font-size:1.7rem;
        padding-left:30px;
    }
    .step-number-01{
        background-size:22px 17px;
    }
    .step-number-02{
        background-size:24px 18px;
    }
    .step-number-03{
        background-size:20px 18px;
    }
    .under-bar{
        width:25px;
        border-top:2px solid #c01920;
        margin:10px 52.5% 15px 47.5%;
    }
    .attention-txt{
        font-size:1.3rem;
    }
    .mail_contact {
      margin-top: 15px;
    }
    .mail_contact .button--square {
      border: 1px solid #c01920;
      width: 100%;
      line-height: 10px;
        height: 35px;
    }
    small {
    font-size:8px;
    font-size:0.8rem;
    }
    .mail_contact .button--square a {
      font-size: 1.0rem;
      padding-left: 5px;
    }
    .button--square{
        width:100%;
        background-color:#fff;
    }
    .button--square-small{
        width:100%;
        background-color:#fff;
        height: 60px;
    }
    .button--square-xsmall{
        background-color:#fff;
        padding:7px 10px;
    }
    .button--contact{
        max-width:100%;
        height:80px;
        line-height:76px;
    }
    .button--contact > span{
        line-height:40px;
    }
    .button--contact.l-inquiry:before{
        margin:25px 12px 0 14px;
    }
    .button--contact.l-demo:before{
        margin:20px 15px 0 18px;
    }
    .button--contact.l-faq:before{
        margin:22px 15px 0 18px;
    }
    .button--contact.l-mv-inquiry, .button--contact.l-mv-career, .button--contact.l-mv-sakidori{
        height:40px;
        margin-bottom: 5px;
    }
    .button--contact.l-mv-inquiry span, .button--contact.l-mv-career span, .button--contact.l-mv-sakidori span{
        font-size:3vw;
    }
    .button--contact.l-mv-inquiry span:after, .button--contact.l-mv-career span:after, .button--contact.l-mv-sakidori span:after {
        right:9px;
    }
    .button--contact.l-mv-inquiry:before ,.button--contact.l-mv-inquiry.lp:before {
        margin:10px 0 0 7px;
    }
    .button--contact.l-mv-career:before {
        margin: 5px 2px 0 7px;
    }
    .button--contact.l-mv-demo{
        height:40px;
        margin-bottom: 5px;
    }
    .button--contact.l-mv-demo span{
        font-size:3vw;
    }
    .button--contact.l-mv-demo span:after{
        right:9px;
    }
    .button--contact.l-mv-demo:before {
        margin:9px 0 0 7px;
    }
    .button--contact.l-mv-hcr {
        height:40px;
        margin-bottom: 5px;
    }
    .button--contact.l-mv-hcr:before {
        margin: 4px 0 0 7px;
    }
    .button--contact.l-mv-sakidori {
        height: 40px;
    }
    .button--contact.l-mv-sakidori:before {
        margin: 5px 2px 0 7px;;
    }
    .button--contact > span.font-20 {
        font-size: 16px;
        font-size: 1.6rem;
    }
    .main-visual__contactBox2 {
        width: 98%;
        margin-right: 2%;
    }
    .button--all, .button--event, .button--seminer{
        width:100%;
        font-size:1.1rem;
    }
    .button--entry, .button--entry2 {
        width:100%;
        height:60px;
        line-height:56px;
        font-size:1.6rem;
        margin-bottom: 5px;
    }
    .button--end{
        width:100%;
        height:60px;
        line-height:56px;
        font-size:1.6rem;
    }
    .bnr__list{
        width:50%;
    }
    .bnr__list.slick-slide{
        min-height:65px;
        text-align:center;
    }
    .contactGroup{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        margin-top:30px;
    }
    .contactBox{
        width:100%;
        margin-right:0;
        margin-bottom:10px;
        height:80px;
    }
    .contactBox .button--contact > span{
        line-height:80px;
    }
    .contactBox__tel{
        height:80px;
        max-width:100%;
        margin-right:0;
    }
    .circleGroup{
        position: relative;

        display: block;
    }
    .circle-box {
        padding-bottom: 30px;
    }
    .box-circle{
        width:47.5%;
        height:auto;
        max-width:100%;
        max-height:100%;
        text-align:center;
    }
    .box-circle:first-child{
        margin:0 2.5% 0 0;
    }
    .box-circle:nth-child(2){
        margin:0 0 0 2.5%;
    }
    .box-circle img{
        width:100%;
        height:auto;
    }
    .imageBox{
        display:block;
        margin-bottom:50px;
    }
    .imageBox .imageBox__textArea{
        width:100%;
    }
    .imageBox .imageBox__imageArea{
        text-align:center;
    }
    .imageBox.l-reverse .imageBox__textArea{
        width:100%;
    }
    .centerBox{
        margin-bottom:30px;
    }
    .centerBox .contents__text{
        text-align:left;
    }
    .eventBoxGroup{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        margin-bottom:40px;
    }
    .eventBox a{
        padding:0;
    }
    .eventBox{
        max-width:100%;
        min-height:auto;
        margin:0 0 10px;
        padding:20px;
    }
    .eventBox__date{
        font-size:1.6rem;
        font-weight:bold;
        margin-bottom:20px;
    }
    .eventBox__date > span{
        font-size:1.2rem;
        font-weight:normal;
    }
    .eventBox__title{
        margin-bottom:0;
        font-size:1.8rem;
    }
    .eventBox__wppen{
        position:static;
        margin-top:15px;
    }
    .eventBox__wppen.view-sp{
        position:static;
        display:inline-block;
    }
    .eventBox__link.wappen:first-of-type{
        margin-right:10px;
    }
    .rubyBox{
        padding:16px 12px;
    }
    .rubyBox__title{
        font-size:1.4rem;
    }
    .rubyBox__list{
        font-size:1.3rem;
    }
    .rubyBox-column2{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .rubyBox-column2 .rubyBox{
        width:100%;
        margin-bottom:10px;
    }
    .definitionBox__title{
        padding:15px;
    }
    .definitionBox__wrap{
        padding:20px;
    }
    .definitionBox__group{
        margin-top:15px;
    }
    .phase p{
        font-size:1.3rem;
    }
    .phase .more-details--soft a{
        width:100%;
    }
    .phase .more-details--manual a{
        width:100%;
    }
    .phase .more-details--online a{
        width:100%;
    }
    .box{
        padding:0;
        margin-bottom:10px;
    }
    .contents-section.l-grayBg.titleArea {
        margin-bottom: 10px;
        padding: 30px 10px;
    }
    .circle-area{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
        margin-bottom:0;
    }
    .circle-area.new {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: space-around;
        -ms-flex-pack: distribute;
        justify-content: space-around;
          flex-direction: unset;
        margin-bottom: 0;
    }
    .circle__block {
        margin-bottom:50px;
        padding: 0 5px;
    }
    .circle-area.new .circle__block {
        width: 50%;
        margin-bottom: 0;
    }
    .circle-area.new img {

    }
    .typ-section01.heartcore {
        width: 100%;
        margin-bottom: 0;
    }
    .circle__block--step{
        margin-bottom:30px;
        text-align:center;
    }
    .circle {
        width:45vw;
        height:auto;
        margin:0 auto 15px;
    }
    .circle-area.new .circle__block .circle {
        width: 100%;
    }
    .circle-area.existing {
        margin: 0
    }
    .circle-area.existing .circle {
        width: 100%;
    }
    .circle img{
        width:100%;
    }
    .circle-step-01{
        padding:0 0 35px 0;
        background:url(/images/heartcore_cxm/ico_triangle-row.png) no-repeat 50% 100%;
    }
    .circle-step-03{
        padding:45px 0 0 0;
        background:url(/images/heartcore_cxm/ico_triangle-row.png) no-repeat 50% 0;
    }
    .circle-area--around{
        -webkit-flex-wrap:wrap;
            -ms-flex-wrap:wrap;
                flex-wrap:wrap;
        -webkit-box-pack:center;
        -webkit-justify-content:center;
            -ms-flex-pack:center;
                justify-content:center;
    }
    .circle-area--around .circle__block--tool{
        margin-bottom:20px;
        width:48%;
        padding:0 1%;
    }
    .circle-area--around .circle__block--tool .circle{
        padding:0 10px;
    }
    .circle-area--around .circle{
        width:100%;
    }
    .circle-area--around--step{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
    }
    .wappen{
        padding:5px 12px;
        margin-top: 2px;
    }
    .news-ticker__text a {
      padding-bottom: 0;
      line-height: 1.6;
      font-size: 15px;
      font-size: 1.5rem;
	}
	.news-ticker{
        display: none;
    }
	.news-ticker__text2 a {
      padding-bottom: 0;
      line-height: 1.6;
      font-size: 15px;
      font-size: 1.5rem;
    }
    .news-ticker__group{
		display: block;
    }
    .news-ticker__title{
        text-align:center;
        padding:10px;
        width:100%;
        font-size:1.8rem;
    }
    .news-ticker__text{
        padding:18px 0px;
        background:none;
    }
    .news-ticker__text2{
        padding:18px 10px;
		background:none;
		width: 100%;
    }
    .news-topics {
        display: none;
    }
    .shortcut-menu{
        display:none;
    }
    .news{
        border-top:1px solid #ccc;
        padding-top:20px;
    }
    .news__list{
        display:block;
        border-bottom:1px solid #ccc;
        margin-bottom:20px;
        padding-bottom:20px;
    }
    .news__date{
        font-size:1.4rem;
    }
    .news__label{
        font-size:1.2rem;
    }
    .news__text{
        font-size:1.4rem;
        margin-top:5px;
    }
    .news-wrap{
        margin-top:-15px;
    }
    .news__title{
        font-size:1.7rem;
        line-height:1.6;
    }
    .main-visual{
        min-height:100%;
        height:auto;
        background:none;
        margin-top:0;
    }
    .main-visual__inner{
        padding:0;
        height:100%;
        display:-webkit-box;
        display:-webkit-flex;
        display:-ms-flexbox;
        display:flex;
        -webkit-box-align:center;
        -webkit-align-items:center;
            -ms-flex-align:center;
                align-items:center;
    }
    .main-visual__image{
        margin-top:0;
        height:75vw;
        min-height:auto;
        background:url(/images/index/main_visual_sp.jpg) no-repeat 50% 0;
        background-size:cover;
    }
    .main-visual__contactBox:last-child{
        margin-right:0;
    }
    .main-visual__contactBox.long {
    width: 100%;
    margin: 20px 5px 0 0;
    }
    .main-visual__copy{
        text-align:center;
        line-height:1.3;
        margin-top:0;
        font-size:6vw;
    }
    .main-visual__text{
        font-size:1.6rem;
        text-align:center;
    }
    .main-visual__btnGroup ,.main-visual__btnGroup2 {
        display: block;
        margin: 0;
    }
    .main-visual__contactBox {
        width: 100%;
    }
    .pagination{
        -webkit-flex-wrap:wrap;
            -ms-flex-wrap:wrap;
                flex-wrap:wrap;
        padding:5px 0;
    }
    .button--contact.l-mv-demo:before {
        margin: 10px 0 0 10px;
    }
    .pagination__list{
        margin:5px;
        width:30px;
        height:30px;
    }
    .pagination__list:first-child{
        margin-right:0;
        width:auto;
    }
    .pagination__list:last-child{
        margin-left:0;
        width:auto;
    }
    .pagination__list > span{
        line-height:30px;
    }
    .pagination__link{
        width:30px;
        height:30px;
        line-height:30px;
    }
    .separate{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
        margin-bottom:50px;
    }
    .separate__body{
        width:100%;
    }
    .separate__body li{
        font-size:1.4rem;
        padding-bottom:15px;
        padding-left:20px;
    }
    .separate__body--left{
        margin:30px 0;
    }
    .separate__body--left + .separate__img{
        text-align:right;
    }
    .separate__body--right{
        margin:30px 0;
    }
    .separate__body--right + .separate__img{
        text-align:left;
    }
    .separate__title{
        font-size:1.5rem;
        margin-bottom:15px;
    }
    .dm-list{
        width:202px;
        margin:0 auto 15px;
    }
    .dm-list li:first-child{
        background-size:13px 11px;
    }
    .dm-list li:nth-child(2){
        background-size:11px 13px;
    }
    .dm-list li:nth-child(3){
        background-size:15px 11px;
    }
    .cm-list{
        width:197px;
        margin:0 auto 15px;
    }
    .cm-list li:first-child{
        background-size:14px 11px;
    }
    .cm-list li:nth-child(2){
        background-size:12px 10px;
    }
    .cm-list li:nth-child(3){
        background-size:10px 10px;
    }
    .cm-list li:nth-child(4){
        background-size:8px 11px;
    }
    .cm-list li:nth-child(5){
        background-size:11px 11px;
    }
    .separate--tool{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
    }
    .separate--tool .separate__body{
        width:100%;
        margin-bottom:30px;
        -webkit-box-ordinal-group:2;
        -webkit-order:1;
            -ms-flex-order:1;
                order:1;
    }
    .separate--tool .tool__img{
        width:100%;
        margin-bottom:30px;
        -webkit-box-ordinal-group:3;
        -webkit-order:2;
            -ms-flex-order:2;
                order:2;
    }
    .separate--step{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
    }
    .separate--step .separate__body-01{
        width:100%;
    }
    .separate--step .separate__body-02{
        width:100%;
    }
    .separate--step__body{
        -webkit-box-ordinal-group:2;
        -webkit-order:1;
            -ms-flex-order:1;
                order:1;
    }
    .separate--step__img{
        margin-bottom:20px;
        -webkit-box-ordinal-group:3;
        -webkit-order:2;
            -ms-flex-order:2;
                order:2;
    }
    .section-contents-01{
        margin-bottom:30px;
    }
    .section-contents-01 .typ-section01{
        font-size:1.3rem;
    }
    .section-contents-02{
        margin-bottom:60px;
    }
    .section-contents-02 .typ-section01{
        font-size:1.3rem;
    }
    .contents-section--company.section-contents-02 {
        margin-bottom: 10px;
    }
    .section-contents-03{
        margin-bottom:40px;
    }
    .section-contents-03 .typ-section01{
        font-size:1.3rem;
    }
    .section{
        padding:30px 0;
    }
    .section-space--bottom{
        margin-bottom:60px;
    }
    .section-space--bottom-02{
        margin-bottom:20px;
    }
    .section-space--bottom-03{
        margin-bottom:40px;
    }
    .section-space--bottom-04{
        margin-bottom:50px;
    }
    .section-space--bottom-05{
        margin-bottom:30px;
    }
    .breadcrumb__lists {
       display: none;
    }
    .category-visual{
        min-height:100%;
        height:auto;
        background:none;
        margin-top:0;
        display:none;
    }
    .category-visual--heartcore {
        min-height:100%;
        height:200px;
        margin-bottom:0px;
    }
    .category-visual--heartcore .category-visual--title {
        font-size: 5vw;
    }
    .category-visual--heartcore .category-visual--title span{
        border:1px solid #fff;
        padding:2px 5px;
        margin: 0px;
    }
    .category-visual--heartcore h2 {
      font-size: 3.2vw;
      line-height: 2.0;
    }
    .category-visual--heartcore .typ-section-main {
      text-align: left;
      line-height: 1.2;
      font-size: 2.0vw;
    }
    .category-visual--digital{
        min-height:100%;
        height:300px;
        margin-bottom:10px;
    }
    .category-visual--digital .category-visual--heading{
        font-size:4vw;
        margin-bottom:10px;
    }
    .category-visual--digital .category-visual--title{
        font-size:6vw;
        padding:0 10px;
    }
    .category-visual--digital .category-visual--sub-title{
        font-size:3vw;
        padding:5px 10px;
        border-top:1px solid #afafad;
        border-bottom:1px solid #afafad;
    }
    .category-visual-heartcore-sub-title {
        font-size: 5.5vw;
        line-height: 1.2;
    }
    .section-visual--digital{
        min-height:100%;
        height:350px;
        margin-bottom:10px;
    }
    .section-visual{
        min-height:100%;
        margin-bottom:50px;
    }
    .section-visual--01{
        height:240px;
    }
    .section-visual--01 .category-visual-inner{
        background:url(/images/heartcore/img_number-01.png) no-repeat 50% 0;
        background-size:55px 55px;
    }
    .section-visual--02{
        height:240px;
    }
    .section-visual--02 .category-visual-inner{
        background:url(/images/heartcore/img_number-02.png) no-repeat 50% 0;
        background-size:55px 55px;
    }
    .section-visual--02{
        margin-bottom:0;
    }
    .section-visual--03{
        height:240px;
    }
    .section-visual--03 .category-visual-inner{
        background:url(/images/heartcore/img_number-03.png) no-repeat 50% 0;
        background-size:55px 55px;
    }
    .section-visual--04{
        height:240px;
    }
    .section-visual--04 .category-visual-inner{
        background:url(/images/heartcore/img_number-04.png) no-repeat 50% 0;
        background-size:55px 55px;
    }
    .category-visual--title{
        font-size:7vw;
        margin-bottom:0;
    }
    .category-visual--sub-title{
        font-size:6vw;
        margin-bottom:10px;
        line-height:1.2;
        text-align:center;
    }
    .category-visual-inner{
        padding:70px 0 0 0;
    }
    .category-visual-inner .typ-section01{
        text-align:center;
    }
    .category-visual__image-inner .btn_area {
        display: block;
    }
    .category-visual_top .category-visual__image {
        padding: 20px 10px;
        background-size: 100% 100%;
        height: 100%;
    }
    .category-visual_top .category-visual--title img.first, .category-visual_top .category-visual--title img.second {
        max-width: 100%;
    }
    .category-visual__image-inner .btn_area .intro-btn {
           margin: 20px 0;
    }
    .category-visual_top .category-visual--title img.first {
        padding-top: 10px;
    }
    .category-visual_top .category-visual--title .mariadb img {
        width: 100%;
        padding: 52px;
    }
    .intro-util {
          margin: 30px 0;
    }
    .intro-bdash-mock {
        transform: translate(20px, -20px);
        width: 18vw;
    }
    .intro-btn a {
        height: 15vw;
        padding-right: 20px;
        text-indent: -12vw;
        font-size: 5vw;
        max-width: 90%;
    }
   .category-visual__image-inner .btn_area .intro-btn a {
       line-height: 15vw;

   }
  .intro-btn.yureru-s a {
        height: 16vw;
        border: 2px solid #27a727;
        padding-right: 0;
        line-height: 16vw;
        font-size: 4vw;
   }
   .news_event_top_area {
         padding-top: 0;
   }
    .faq__heading > p{
        padding-right:6%;
        line-height:1.3;
    }
    .list li{
        font-size:1.3rem;
    }
    .download-list li{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
        padding:20px 0;
    }
    .download-list li .img{
        text-align:center;
        margin-bottom:15px;
    }
    .download-list li .text{
        width:100%;
        margin:0 auto;
    }
    .contents-list .link-list{
        font-size:1.3rem;
    }
    .base-table.table--seopanel thead th{
        font-size:1.5rem;
    }
    .base-table.table--seopanel tbody{
        font-size:1.3rem;
    }
    .base-table.table--download tbody td.lay03 {
        width:24%;
    }
    .table--download .base-table__head {
        width: 35%;
    }
    .table-x{
        font-size:1.3rem;
    }
    .table-x .sub_title{
        min-width:100px;
        display:block;
    }
    .table-support{
        font-size:1.3rem;
    }
    .table-support td{
        display:block;
    }
    .table-support .sub_title{
        min-width:100px;
    }
    .table-contact{
        font-size:1.3rem;
    }
    .table-contact thead th, .table-contact thead td, .table-contact tbody th, .table-contact tbody td{
        width:100%;
        display:block;
    }
    .event-table{
        width:100%;
        font-size:1.3rem;
    }
    .event-table tbody th{
        width:30%;
    }
    .event__access-table{
        width:100%;
        font-size:1.3rem;
    }
    .event__access-table th, .event__access-table td{
        width:100%;
        display:block;
    }
    .eventBox2 {
      display: block;
      text-align: center;
    }
    .eventBox2 .eventBox2__img {
      width: 100%;
      margin-right: 0;
      margin-bottom: 10px;
    }
    .eventBox2 .eventBox2__txt {
      width: 100%;
    }
    .eventBox2 .eventBox2__txt span {
      line-height: 1.6;
      font-size: 1.6rem;
    }
    .event__title-main {
      font-size: 2.0rem;
    }
    .event__title-main span {
      font-size: 1.6rem;
    }
    .table1 td{
        padding:15px 3px;
        display:block;
    }
    .table2 th{
        padding:15px 5px;
        font-size:1.4rem;
    }
    .table2 td{
        padding:15px 5px;
        font-size:1.3rem;
        line-height:1.6;
    }
    .sub-menu{
        font-size:1.2rem;
    }
    .sub-menu ul{
        display:none;
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        padding:0 20px 20px;
        font-size:1.2rem;
    }
    .sub-menu li{
        margin-right:0;
    }
    .sub-menu li{
        padding:10px 10px 10px 20px;
    }
    .sub-menu li:hover{
        background-color:#910204;
    }
    .sub-menu li:hover:after{
        visibility:hidden;
    }
    .sub-menu li.is-active{
        background-color:#910204;
    }
    .sub-menu li.is-active:after{
        visibility:hidden;
    }
    .sub-menu a:after{
        visibility:hidden;
        display:none;
    }
    .sub-menu a:hover:after{
        visibility:hidden;
        display:none;
    }
    .sub-menu span:after{
        margin-top:0;
    }
    .sub-menu__category{
        display:block;
    }
    .event-group{
        font-size:1.2rem;
        margin-bottom:0;
    }
    .event-group .tit-heading01{
        padding-bottom:18px;
        font-size:1.3rem;
    }
    .event-group__year{
        font-size:0.7rem;
        position:relative;
        top:0;
        left:0;
        margin-bottom:15px;
    }
    .event-categoryBox{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        -webkit-box-pack:start;
        -webkit-justify-content:flex-start;
            -ms-flex-pack:start;
                justify-content:flex-start;
        background-color:transparent;
        padding:0;
        margin-top:0;
    }
    .event-category{
        width:100%;
        background-color:#f4f4f4;
        padding:18px;
    }
    .event-category__list{
        width:32%;
        margin-right:2%;
    }
    .event-category__list:last-child{
        margin-right:0;
    }
    .event-category__check{
        width:100%;
        border-left:none;
        padding:18px 0;
        margin:0;
    }
    .event-category__check input{
        -webkit-appearance:checkbox;
           -moz-appearance:checkbox;
                appearance:checkbox;
        border:1px solid #ddd;
        vertical-align:top;
        background:#fff;
        box-shadow:none;
        vertical-align:middle;
    }
    .event-group__view{
        width:35%;
        max-width:40%;
        padding:8px 25px 8px 8px;
        margin-top:3px;
    }
    .event-group__view:after{
        top:13px;
    }
    .event-group__select{
        top:30px;
        left:20px;
    }
    .event.is-none{
        font-size:1.3rem;
        text-align:center;
    }
    .event__link{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        padding:20px 10px;
    }
    .event__date{
        width:100%;
        margin-right:0;
        margin-bottom:20px;
        padding-left:0;
        font-size:1.6rem;
        font-weight:bold;
    }
    .event__date > span{
        font-size:1.2rem;
    }
    .event__wappen{
        display:inline-block;
        font-size:1.0rem;
    }
    .event__content{
        font-size:1.1rem;
        line-height:1.6;
    }
    .event__title{
        font-size:1.7rem;
        line-height:1.6;
    }
    .event__data{
        font-size:1.3rem;
    }
    .event-group__back{
        padding:8px 8px 8px 30px;
    }
    .event-section{
        font-size:1.3rem;
    }
    .event-detail__date{
        font-size:1.6rem;
    }
    .event-detail__date > span{
        font-size:1.1rem;
    }
    .event__title--detail{
        font-size:2.0rem;
        margin-bottom:20px;
    }
    .event__accessMap{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .event__map{
        margin-right:0;
    }
    .event__map iframe{
        width:100%;
    }
    .event__maplink{
        margin:20px 0 10px;
    }
    .event__maplink a{
        margin-bottom:5px;
        line-height:1.5;
    }
    .event-inquiry{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .event-inquiry .lightGrayBox__title{
        margin-right:0;
        font-size:1.3rem;
        line-height:1.4;
    }
    .event-inquiry > address{
        margin-right:0;
        margin-top:10px;
        font-size:1.3rem;
    }
    /*--- 新規作成 20170725葉狩　news用------------*/
    .new-section{
        font-size:1.3rem;
    }
    .news__txt{
      margin-bottom: 20px;
    }
    .news_titile{
    margin-bottom: 10px;
    }
    /*----------------------------------------------------*/
    .pdca-img{
        text-align:center;
    }
    .lineup__item{
        margin:0;
        position:relative;
    }
    .lineup__text:after{
        top:0;
        margin-left:4px;
    }
    .lineup__text{
        font-size:3vw;
    }
    .lineup__img{
        margin:3.6vw 0 1.5vw 0;
    }
    .lineup__img--hc{
        width:140px;
        margin-bottom:10px;
    }
    .lineup__img--maria{
        width:68px;
    }
    .lineup__img--lint{
        width:124px;
        margin:11.8vw 0 3.5vw 0;
    }
    .lineup__img--sql{
        width:78px;
    }
    .lineup__img--fire{
        width:60px;
        margin:3vw 0 3.5vw 0;
    }
    .contents--second{
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
        padding:0;
        display:block;
    }
    .side-column{
        -webkit-flex-basis:100%;
            -ms-flex-preferred-size:100%;
                flex-basis:100%;
        -webkit-box-ordinal-group:2;
        -webkit-order:1;
            -ms-flex-order:1;
                order:1;
        margin:0 20px 20px;
        border:1px solid #c01920;
    }
    .side-column__menu{
        margin:10px;
        display:none;
    }
    .side-column__title{
        font-size:1.6rem;
        padding:10px 20px;
        color:#c01920;
        background-color:#fff;
        cursor:pointer;
    }
    .side-column__title.is-active{
        background-color:#c01920;
        border-bottom:1px solid #c01920;
        color:#fff;
    }
    .side-column__link{
        padding:10px;
    }
    .main-contents{
        width:100%;
        -webkit-box-ordinal-group:1;
        -webkit-order:0;
            -ms-flex-order:0;
                order:0;
        padding:0 20px;
    }
    .main-contents--single{
        width:100%;
        padding:0px 10px;
    }
    .separate__img{
        width:100%;
        padding-bottom:112%;
    }
    .separate__img.l-disp{
        width:100%;
        padding-bottom:112%;
    }
    .graph-area{
        margin-bottom:20px;
    }
    .search_area .search-input {
        width: 80%;
    }
    .search_area {
      padding: 10px 0;
      border-bottom: 1px solid #e08c90;
      margin: 0 10px;
    }
}

@media (min-width: 769px) and (max-width: 1040px){
    .header.is-fixed .header__mainBox{
        padding:10px;
    }
    .header.is-second .header__mainBox{
        padding:10px;
    }
    .header__mainBox{
        padding:44px 20px;
    }
    .main-visual__inner{
        padding:160px 20px 0;
    }
    .contents--second{
        padding:0 20px;
    }
}

@media (max-width: 930px) and (min-width: 601px){
    .gnav__tel{
        width:18vw;
    }
    .gnav__link{
        font-size:1.4vw;
    }
    .button--contact > span:after{
        right:5px;
    }
    .contactBox .button--contact > span{
        font-size:1.5vw;
        line-height:1.4;
        margin-top:34px;
    }
    .contactBox__address{
        font-size:3vw;
    }
    .contactBox__text{
        padding-right:5px;
        font-size:2vw;
    }
    .contactBox__text span{
        display:block;
    }
    .news__text{
        width:77%;
        -webkit-box-align:start;
        -webkit-align-items:flex-start;
            -ms-flex-align:start;
                align-items:flex-start;
    }
}

@media (min-width: 970px){
    .footer__mainBox{
        display:-webkit-box;
        display:-webkit-flex;
        display:-ms-flexbox;
        display:flex;
    }
}

@media (max-width: 970px) and (min-width: 601px){
    .footer__mainBox{
        padding:36px 20px;
    }
    .footer__menuGroup{
        margin-bottom:150px;
    }
    .footer__menuBox{
        width:30%;
    }
    .footer__social{
        max-width:100%;
    }
    .footer__bottomBox{
        -webkit-flex-wrap:wrap;
            -ms-flex-wrap:wrap;
                flex-wrap:wrap;
        -webkit-box-pack:center;
        -webkit-justify-content:center;
            -ms-flex-pack:center;
                justify-content:center;
    }
    .footer__logo{
        bottom:-100px;
    }
    .footer__copyright{
        margin-left:0;
    }
}


@media (max-width: 800px){
    .box-circle{
        margin:0 auto;
    }
}

@media (max-width: 768px) and (max-width: 768px){
    .circle-area--around--step .circle{
        width:200px;
        margin:0 auto;
    }
}

@media (max-width: 800px) and (min-width: 601px){
    .news-ticker__text{
        width:62%;
    }
}

@media (max-width: 321px){
    .main-visual__image{
        margin-top:0;
        height:auto;
        min-height:100%;
        background:url(/images/index/main_visual_sp.jpg) no-repeat 50% 0;
        background-size:cover;
    }
}

@media (max-width: 320px){
    .main-copy{
        padding:40px 10px;
    }
}

@media (max-width: 600px){
    .faq-tel{
        width:100%;
        -webkit-flex-flow:column;
            -ms-flex-flow:column;
                flex-flow:column;
    }
    .faq-tel p{
        width:100%;
        margin:5px 0;
    }
}

@media (max-width: 1090px){
    .lineup{
        display:block;
    }
    .lineup__group{
        display:-webkit-box;
        display:-webkit-flex;
        display:-ms-flexbox;
        display:flex;
        height:32vw;
        width:100%;
        margin:0;
    }
    .lineup01{
        margin:0;
        width:100%;
        height:40vw;
        background:url(/images/index/bg_lineup01-sp.png) no-repeat center center;
        background-size:100% auto;
    }
    .lineup02{
        margin-bottom:0;
        width:50%;
        height:32vw;
        background:url(/images/index/bg_lineup02-sp.png) no-repeat center center;
        background-size:100% auto;
    }
    .lineup03{
        width:50%;
        height:32vw;
        background:url(/images/index/bg_lineup03-sp.png) no-repeat center center;
        background-size:100% auto;
    }
    .lineup03:after{
        background:url(/images/index/ico-html-lint.png) no-repeat 0 0;
        background-size:22px 22px;
        width:22px;
        height:22px;
    }
    .lineup04{
        margin-bottom:0;
        width:50%;
        height:32vw;
        background:url(/images/index/bg_lineup04-sp.png) no-repeat center center;
        background-size:100% auto;
    }
    .lineup05{
        width:50%;
        height:32vw;
        background:url(/images/index/bg_lineup05-sp.png) no-repeat center center;
        background-size:100% auto;
    }
    .lineup__inner{
        -webkit-box-orient:vertical;
        -webkit-box-direction:normal;
        -webkit-flex-direction:column;
            -ms-flex-direction:column;
                flex-direction:column;
    }
}

@media (min-width: 1090px){
    .lineup__item{
        padding:10px;
        display:-webkit-inline-box;
        display:-webkit-inline-flex;
        display:-ms-inline-flexbox;
        display:inline-flex;
        -webkit-box-align:center;
        -webkit-align-items:center;
            -ms-flex-align:center;
                align-items:center;
        -webkit-box-pack:center;
        -webkit-justify-content:center;
            -ms-flex-pack:center;
                justify-content:center;
        -webkit-transition:all 0.2s linear;
        transition:all 0.2s linear;
    }
    .lineup__item:hover{
        cursor:pointer;
        background-size:110% 110%;
        -webkit-transition:all 0.2s linear;
        transition:all 0.2s linear;
        opacity:0.88;
        -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=88)";
    }
}

@media (min-width: 769px) and (max-width: 1090px){
    .lineup__text:after{
        top:-1px;
    }
    .lineup__text{
        font-size:1.6vw;
    }
}

@media (max-width: 1090px) and (min-width: 601px){
    .lineup__img{
        margin:3.6vw 0 3.5vw 0;
    }
    .lineup__img--lint{
        margin:12.7vw 0 3.5vw 0;
    }
    .lineup__img--fire{
        margin:8vw 0 3.5vw 0;
    }
}

@media (min-width: 1000px){
    .graph_n01{
        left:120px;
        top:384px;
    }
    .graph_n02{
        left:228px;
        top:343px;
    }
    .graph_n03{
        left:337px;
        top:295px;
    }
    .graph_n04{
        left:445px;
        top:241px;
    }
    .graph_n05{
        left:554px;
        top:193px;
    }
    .graph_n06{
        left:662px;
        top:147px;
    }
    .graph_n07{
        left:770px;
        top:98px;
    }
    .graph_n08{
        width:130px;
        left:845px;
        top:0;
        z-index:20;
    }
}
.effect i {
  height: 120px;
  padding: 20px;
  font-size: 100px;
  transition: .8s;
}
.effect div {
  margin: auto;
  transition: .8s;
  transition-delay: .8s;
}
.img_left {
  float: left;
  padding: 0 15px 15px 0;
}
/*---------------------- 新規作成 ------------------------------*/
/*--------サンクスページのリンクエリア__20170527 --*/
.section-block .sakidori_lisit li.cf {
    margin: 30px 0 0;
    padding: 0;
    border: 1px solid #ca1e07;
}
.sakidori_lisit .eyecatch {
    width: 20%;
    float: left;
    margin-right: 10px;
    margin-bottom: 10px;
}
.sakidori_lisit .date {
      border: 0;
  display: block;
  float: right;
  color: #ca1e07;
}
.sakidori_lisit .cf a:after{
    color: #ca1e07;
    position: absolute;
    border: 0px;
    width: 10px;
    height: 10px;
    top: 80px;
    right: 10px;
    border-top: 1px solid #ca1e07;
    border-right: 1px solid #ca1e07;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    content: "";
    margin: auto;
}
.sakidori_lisit .cf a:hover {
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
  opacity: 0.8;
}
.sakidori_lisit .cf a:hover:after {
  right: 8px;
}
.sakidori_lisit li {
    line-height: 1.6;
    font-size: 16px;
    font-size: 1.6rem;
}
.sakidori_lisit .no-icon{
    display: block;
    padding: 22px;
    position: relative;
    line-height: 1.6;
}
.sakidori_lisit .tit-heading04 {
      font-size: 2.0rem;
  color: #ca1e07;
  margin: 10px;
}
@media (max-width: 768px){
    .sakidori_lisit .eyecatch {
        width: 100%;
    }
}
/*--------メインビジュアル動画SP用__20170317 --*/
@media (max-width: 1150px) and (min-width: 1040px){
     .main-visual__inner {
        padding: 120px 0px 10px 40px;
        }
        .video-hero{
            margin: 0;
        }
}
@media (max-width: 1040px) and (min-width: 769px){
        .header__mainBox {
        padding: 10px 20px 20px 20px;
        }
     .main-visual__inner {
        padding: 76px 0px 10px 20px;
        }
        .main-visual__image{
          padding: 0;
            margin-top: -70px;
        }
        .video-hero{
            margin: 0;
        }
        .shortcut-menu{
                padding: 2px 10px 2px 20px;
        }

        }
@media (max-width: 768px){
            .video-hero{
            margin-bottom: 0;
                }
            video{
            display: none;
    }
    .main-visual__inner{
        position: relative;
        padding: 20px calc(30% - 300px) 30px;
        }
    .main-visual__image {
        background:url(/images/index/main_visual_mv_sp.png) no-repeat 50% 0;
        background-size: cover;
        min-height: 100%;
        }
    .main-visual__text {
          font-size: 1.6rem;
          text-align: center;
          margin-bottom: 20px;
        }
    .main-visual__copy{
        margin-top: 20px;
        }
    .main-copy{
        padding: 0 100px;
    }
    .main-copy .bnr_area {
        margin-bottom: 10px;
    }
}
@media (max-width: 500px){
        .main-visual__inner{
              padding: 30px 20px;
            }
            .main-visual__text {
            margin-bottom:10px;
            }
        .main-copy {
        padding: 0px 10px;
            }
        .main-visual__image {
        background:url(/images/index/main_visual_mv_sp.png) no-repeat 50% 0;
        background-size: cover;
        height: auto;
        min-height: 100%;
        }
}
/*--------CXM_SP用__20170317 --*/
@media (max-width: 1090px){
        #ltr{
                  width: auto;
                  height: auto;
                  display: block;
         }
        #ltr img.ltr_sp{
                  max-width: 100%;
                  height: auto;
                  display: block;
                  margin: 20px auto 0;
        }
        #ltr ul {
                  display: none;
        }
}
@media (max-width: 500px){
.category-visual--digital{
        height:200px;
    }
}

/*--------キービジュアル_SP用__20170410 --*/
@media (max-width: 1040px) and (min-width: 769px){
        .main-visual__image_mysql {
                  margin-top: -80px;
        }
        .main-visual__image_mariadb {
                  margin-top: -80px;
        }
}
@media (max-width: 768px){
    .main-visual__image_mysql {
        background:url(/images/index/mainimg_database_sp.png) no-repeat 50% 0;
        background-size: cover;
        min-height: 100%;
        }
    .main-visual__image_mariadb {
        background:url(/images/index/mainimg_mariaDB_sp.png) no-repeat 50% 0;
        background-size: cover;
        min-height: 100%;
        }
    .sliderr.lineup {
          margin-top: 50px;
    }
}
@media (max-width: 500px){
    .main-visual__image_mysql {
        margin-top:0;
        height:auto;
        min-height:100%;
        background:url(/images/index/mainimg_database_sp.png) no-repeat 50% 0;
        background-size:cover;
          padding-bottom: 58px;
    }
    .main-visual__image_mariadb {
        margin-top:0;
        height:auto;
        min-height:100%;
        background:url(/images/index/mainimg_mariaDB_sp.png) no-repeat 50% 0;
        background-size:cover;
        padding-bottom: 38px;
    }
    .Annotation{
        bottom: -60px;
        font-size: 7px;
        font-size: 0.7rem;
        padding: 0 10px;
    }
       .view-p02{
         display: none;
    }
}
@media (max-width: 320px){
    .main-visual__image_mariadb {
        padding-bottom: 0px;
        }
    .main-visual__image_mysql {
        padding-bottom: 25px;
        }
}
@media (max-width: 768px){
        .view-sp02 {
            display: block;
        }
        .view-pcA {
            display:none;
        }
        .box-circle:first-child {
          margin: 0;
        }
        .imageBox{
            margin-bottom: 100px;
        }
        .imageBox .imageBox__imageArea .graphArea__image {
           width: 100%;
           max-width: 100%;
            display: block;
       }
        .imageBox.l-reverse .imageBox__textArea {
          position: relative;
        }
        .imageBox__textArea .button01 {
            position: absolute;
            top: 850px;
            width: 95%;
        }
        .buttonA .button--square{
            position: absolute;
            top: 700px;
            width: 100%;
        }
        .contents-section--btnarea .button.button--square {
          width: 100%;
        }
        .contents-section--btnarea .button.button--square a {
          padding: 20px 0;
          font-size: 1.3rem;
        }
        .caseStudy_column {
            display: block;
            padding: 20px;
        }
        .caseStudy_column .caseStudy_imgarea {
            margin-bottom: 20px;
        }
        .caseStudy_column .caseStudy_imgarea.download {
            width: 100%;
            text-align: center;
        }
        .caseStudy_column .caseStudy_imgarea.download img {
            margin-top: 30px;
        }
        .caseStudy_column .text_area {
            width: 100%;
            padding: 0px;
            margin-bottom: 10px;
        }
        .caseStudy-form, .caseStudy-form2 {
            width: 100%;
        }
        .centerBox .buttonB{
            position: relative;
            top: 300px;
            width: 100%;
        }
        .imageBox__graph01 {
          left: 106px;
        }
        .imageBox__graph02 {
          left: 123px;
        }
        .imageBox__graph03 {
          left: 253px;
        }
        .imageBox__graph04 {
          left: 382px;
        }
        .imageBox__graph05 {
          left: 510px;
        }
        .countUp__txt {
        left: 130px;
        }
        #cup {
          left: 252px;
        }
        .countUp__percent{
        left: 380px;
        }
        .view-pc01{
        height: 500px;
        }
        .view-pc02{
        height: 500px;
        }
        #progressive-circleCMS {
        left: 200px;
        }
       .six-panel{
         display: flex;
        }
        .six-panel > li{
            font-size: 12px;
            font-size: 1.2rem;
        }
        .pdca-img {
            top: -100px;
        }
        .six-panel__list01:after , .six-panel__list02:after , .six-panel__list03:after , .six-panel__list04:after , .six-panel__list05:after{
        top: 0px;
        right: -14px;
        }
       .two-panel{
         display: flex;
        }
        .two-panel > li{
            font-size: 12px;
            font-size: 1.2rem;
        }
        .two-panel__list01:after , .two-panel__list02:after {
        top: 0px;
        right: -14px;
        }
        .six-panel__list01 {
          width: 14.666%;
        }
        .six-panel__list02 {
          width: 18.666%;
        }
        .six-panel__list03 {
          width: 18.666%;
        }
        .six-panel__list04 {
          width: 14.666%;
        }
        .six-panel__list04 {
          width: 14.666%;
        }
        .six-panel__list05 {
          width: 14.666%;
        }
        .six-panel__list06 {
          width: 20.666%;
        }
        .pdca-cnt {
          right: 0px;
        }
        .tit-copy02 ,  .tit-copy03{
        text-align: left;
        margin-bottom: 0;
        }
        .anchor-area {
            display:none;
        }
        .footer__socialBox {
          display: none;
        }
}
@media (max-width: 600px) and (min-width: 501px){
        .box-circle:first-child {
          position: relative;
          top: -50px;
          left: 100px;
        }
        .box-circle:nth-child(2) {
          top: -50px;
          position: relative;
          left: 150px;
        }
        .box-circle {
          position: relative;
          top: 150px;
          left: -255px;
        }
        .contents-section.l-grayBg {
          background-color: #f7f5f2;
        }
        .imageBox__graph {
          left: -100px;
        }
        #progressive-circleCMS {
          left: 140px;
        }
        .pdca-cnt__txt1 {
            font-size: 26px;
            font-size: 2.6rem;
        }
        .pdca-img {
          top: -130px;
        }
        .pdca-cnt {
          right: 0px;
          top: 220px;
        }
        .buttonA .button--square{
        position: absolute;
        top: 730px;
        width: 100%;
        }
        .pdca-cnt__txt2 {
          font-size: 25px;
          font-size: 2.5rem;
          font-weight: normal;
          position: relative;
          top: -25px;
        }
        .two-panel > li {
          font-size: 8px;
          font-size: 0.8rem;
        }
        .six-panel > li {
          font-size: 8px;
          font-size: 0.8rem;
        }
}
@media (max-width: 500px){
            .centerBox {
            margin-bottom: 0px;
            }
            .box-circle:first-child {
              margin: 0 2.5% 0 0;
              position: absolute;
              top: -35px;
              left: 10px;
            }
            .box-circle:nth-child(2) {
            margin: 0 2.5% 0 0;
              position: absolute;
              top: -35px;
              left: 210px;
            }
            .box-circle:nth-child(3) {
              margin: 0 auto;
              position: absolute;
              top: 120px;
              left: 110px;
            }
            .chart {
            margin: 0px;
            width:170px;
            height:170px;
            float:left;
            background-color:#ddd;
            border-radius:50%;
            }
            .chart .in {
            width:164px;
            height:164px;
            border-radius:50%;
            background-color:#f7f5f2;
            margin:3px;
            display:-webkit-inline-box;
            display:-webkit-inline-flex;
            display:-ms-inline-flexbox;
            display:inline-flex;
            -webkit-box-align:center;
            -webkit-align-items:center;
                -ms-flex-align:center;
                    align-items:center;
            -webkit-box-pack:center;
            -webkit-justify-content:center;
                -ms-flex-pack:center;
                    justify-content:center;
            }
            .chart .in > div {
            width:100%;
            height:100%;
            display:-webkit-box;
            display:-webkit-flex;
            display:-ms-flexbox;
            display:flex;
            -webkit-flex-flow:column;
                -ms-flex-flow:column;
                    flex-flow:column;
            -webkit-box-align:center;
            -webkit-align-items:center;
                -ms-flex-align:center;
                    align-items:center;
            -webkit-box-pack:center;
            -webkit-justify-content:center;
                -ms-flex-pack:center;
                    justify-content:center;
            }
            .chart__title {
            font-size:11px;
            font-size:1.1rem;
            font-weight:bold;
            color:#555;
            }
            .chart__num {
            font-size:36px;
            font-size:3.6rem;
            }
            .chart__num span {
            font-size:16px;
            font-size:1.6rem;            
            }
            #chart-num3 {
            opacity:0;
            -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
            }
            .chart__txt {
            font-size:13px;
            font-size:1.3rem;
            }
            .chart--large .in ul {
                left:-325px;
            }
             .cxm__list.n01 {
              left: 360px;
              top: 300px;
            }
            .cxm__list.n02 {
              left: 386px;
              top: 200px;
            }
            .cxm__list.n03 {
              top: 50px;
              left: 240px;
            }
            .cxm__list.n04 {
            left: 115px;
            top: 300px;
            }
            .cxm__list.n05 {
            left: 130px;
            top: 95px;
            }
            .cxm__list.n06 {
               left: 98px;
              top: 200px;
            }
            .cxm__list.n07 {
              top: 350px;
              left: 240px;
            }
            .cxm__list.n08 {
              top: 95px;
              left: 360px;
            }
            .countUp__txt {
              left: 0;
            }
            #cup {
              left: 120px;
              font-size: 90px;
              font-size: 9rem;
            }
            .countUp__percent {
              left: 250px;
            }
            .imageBox .imageBox__imageArea.graphArea{
              top: -30px;
            }
            .imageBox{
              margin-bottom: 100px;
            }
            .imageBox__graph{
              left: 0;
            }
            .imageBox__graph01 {
              left: 0;
              width: 13px;
            }
            .imageBox__graph02 {
              left: 12px;
              width: 90px;
            }
            .imageBox__graph03 {
                left: 102px;
                width: 90px;
                bottom: 32px;
            }
            .imageBox__graph04 {
              left: 190px;
              bottom: 40px;
              width: 90px;
            }
            .imageBox__graph05 {
              left: 278px;
              width: 90px;
              bottom: 72px;
            }
            .l-grayBg.contents-section--record {
              position: relative;
              height: 450px;
              padding: 10px;
            }
            .l-grayBg.contents-section--record.title {
              height: 60px;
            }
            .l-grayBg.contents-section--record.top {
              position: relative;
              padding: 10px;
              height: 100%;
              background-color: #fff;
            }
            .l-grayBg.contents-section--record.top .link.red {
                font-size: 1.3rem;
            }
            #progressive-circleCMS {
              top: 70px;
              left: 110px;
            }
            #cup2{
            width: 130px;
              left: 5px;
              top: 13px;
              font-size: 70px;
            }
            .progressive-circleCMS__txt1 {
            top: -90px;
            left: 140px;
            }
            .progressive-circleCMS__txt2{
              top: 250px;
              left: 120px;
           }
            .progressive-circleCMS__txt3{
              top: -32px;
              font-size: 22px;
              font-size: 2.2rem;
            }
            .progressive-circleCMS__percent {
              left: 110px;
              top: 65px;
              font-size: 2px;
              font-size: 2rem;
            }
            .progressive-circleCMS__percent span {
              font-size: 40px;
              font-size: 4rem;
            }
            .view-pc01 {
              height: 400px;
            }
            .imageBox__textArea .button01  {
              top: 780px;
              width: 90%;
            }
             .buttonA .button--square{
              width: 100%;
            }
            .imageBox.l-reverse{
            margin-bottom: 100px;
            }
            .tit-copy02 {
            margin: 10px 0 0px 0;
            }
            .six-panel > li {
              font-size: 7px;
              font-size: 0.7rem;
              height: 45px;
              line-height: 45px;
            }
            .six-panel span{
            padding-left: 8px;
            margin-bottom: 10px;
            }
            .two-panel > li {
              height: 45px;
              line-height: 45px;
              font-size: 7px;
              font-size: 0.7rem;
            }
            .two-panel  span{
            padding-left: 8px;
            }
            .six-panel {
            margin-bottom: 10px;
            }
            .six-panel__list01:after, .six-panel__list02:after, .six-panel__list03:after, .six-panel__list04:after, .six-panel__list05:after {
            top: 0px;
            right: -10px;
            width: 12px;
            height: 45px;
            }
            .two-panel__list01:after, .two-panel__list02:after {
              width: 16.666%;
              top: 0px;
              right: -10px;
              width: 12px;
              height: 45px;
            }
            .pdca-img {
            top: -30px;
            margin-bottom: 40px;
            }
            .pdca-cnt {
              position: relative;
              margin-top: 10px;
            }
            .pdca-cnt__txt1 {
              font-size: 2px;
              font-size: 2rem;
              top: -25px;
            }
            .pdca-cnt__txt2 {
              font-size: 24px;
              font-size: 2.4rem;
              font-weight: normal;
            position: relative;
              top: -25px;
            }
            .centerBox .buttonB {
            position: absolute;
            top: 300px;
            width: 100%;
            left: 0;
            }
}
@media (max-width: 400px){
            .imageBox .imageBox__imageArea.graphArea {
              height: 400px;
              top: -20px;
            }
            .imageBox .imageBox__imageArea .graphArea__image {
              padding-top: 200px;
            }
            .box-circle:first-child {
              left: 0px;
              top: -35px;
            }
            .box-circle:nth-child(2) {
              left: 185px;
            }
            .box-circle:nth-child(3) {
            left: 95px;
              top: 125px;
            }
            .chart__num {
              font-size: 40px;
              font-size: 4rem;
            }
            .chart__title {
              font-size: 17px;
              font-size: 1.7rem;
            }
            .chart__txt {
              font-size: 16px;
              font-size: 1.6rem;
            }
            .imageBox__textArea .button01 {
              top: 805px;
              width: 90%;
            }
            .buttonA a.button--square{
              top: 735px;
            }
            .imageBox__graph01 {
              left: 0;
              width: 12px;
            }
            .imageBox__graph02 {
              left: 11px;
              width: 80px;
              bottom: 6px;
            }
            .imageBox__graph03 {
              left: 89px;
              width: 80px;
              bottom: 27px;
            }
            .imageBox__graph04 {
              left: 168px;
              bottom: 34px;
              width: 80px;
            }
            .imageBox__graph05 {
              left: 247px;
              width: 80px;
              bottom: 62px;
            }
            .progressive-circleCMS__txt2 {
              top: 230px;
              left: 120px;
              font-size: 18px;
              font-size: 1.8rem;
            }
            .progressive-circleCMS__txt1 {
              top: -90px;
              left: 125px;
              font-size: 18px;
              font-size: 1.8rem;
            }
            #progressive-circleCMS {
              top: 70px;
              left: 85px;
          }
          .chart--large .in ul {
              left: -320px;
            }
            #cup2 {
              left: 0px;
              top: 13px;
              font-size: 65px;
            }
            #cup3 {
            font-size: 90px;
            font-size: 9rem;
          }
            .cxm__list.n01 {
              left: 360px;
              top: 300px;
            }
            .cxm__list.n02 {
              left: 386px;
              top: 200px;
            }
            .cxm__list.n03 {
              top: 50px;
              left: 240px;
            }
            .cxm__list.n04 {
            left: 115px;
            top: 300px;
            }
            .cxm__list.n05 {
            left: 130px;
            top: 95px;
            }
            .cxm__list.n06 {
               left: 98px;
              top: 200px;
            }
            .cxm__list.n07 {
              top: 350px;
              left: 240px;
            }
            .cxm__list.n08 {
              top: 95px;
              left: 360px;
            }
            .centerBox .buttonB {
              top: 250px;
            }
            .six-panel > li {
              position: relative;
              height: 45px;
              font-size: 7px;
              font-size: 0.7rem;
            }
            .six-panel span {
              padding-left: 7px;
              display: block;
              line-height: 13px;
              padding: 10px 0 5px 8px;
            }
            .two-panel > li {
            height: 45px;
            font-size: 7px;
            font-size: 0.7rem;
            }
            .two-panel span {
            padding-left: 7px;
            display: block;
            line-height: 13px;
            padding: 10px 5px 5px 8px;
            }
}
@media (max-width: 360px){
        .progressive-circleCMS__txt2 {
              font-size: 16px;
              font-size: 1.6rem;
            }
            #progressive-circleCMS {
              left: 77px;
            }
            .box-circle:first-child {
              left: -5px;
              top: -35px;
            }
            .box-circle:nth-child(2) {
              left: 175px;
            }.box-circle:nth-child(3) {
              left: 85px;
              top: 125px;
            }
}
@media (max-width: 320px){
             .l-grayBg.contents-section--record {
              height: 400px;
            }
            #cup {
              left: 110px;
            }
            .countUp__percent {
              left: 235px;
              top: 9px;
              font-size: 26px;
              font-size: 26px;
              font-size: 2.6rem;
            }
            .imageBox__graph01 {
            left: 0;
            width: 10px;
            }
            .imageBox__graph02 {
            left: 8px;
            width: 70px;
            bottom: 6px;
            }
            .imageBox__graph03 {
            left: 77px;
            width: 70px;
            bottom: 25px;
            }
            .imageBox__graph04 {
              left: 145px;
              bottom: 32px;
            }
            .imageBox__graph04 {
              left: 145px;
              bottom: 32px;
              width: 70px;
            }
            .imageBox__graph05 {
              left: 213px;
              width: 70px;
              bottom: 56px;
            }
            .imageBox__graph{
                  top: 176px;
            }
            .imageBox .imageBox__imageArea .graphArea__image{
                padding-top:  180px
            }
            .imageBox .imageBox__imageArea .graphArea{
                height: 350px;
            }
            .imageBox.l-reverse .imageBox__imageArea{
                height: 380px;
            }
            .imageBox .imageBox__imageArea.graphArea {
              height: 320px;
              top: -30px;
            }
            .chart {
            margin: 0px;
            width:150px;
            height:150px;
            }
            .chart .in {
            width:144px;
            height:144px;
            }
            .box-circle:first-child {
              top: -35px;
              left: -3px;
            }
            .box-circle:nth-child(2) {
              left: 153px;
            }
            .box-circle:nth-child(3) {
            left: 75px;
            top:100px;
            }
            #progressive-circleCMS {
            top: 70px;
            left: 67px;
            }
            #cup2 {
            left: 0px;
            top: 13px;
            font-size: 65px;
          }
        .chart--large .in ul {
          position: relative;
          top: -232px;
          left: -318px;
        }
        .progressive-circleCMS__percent {
          left: 100px;
          top: 60px;
          font-size: 20px;
          font-size: 2rem;
        }
        .progressive-circleCMS__percent span {
          font-size: 30px;
          font-size: 3rem;
        }
        .progressive-circleCMS__txt2 {
          top: 240px;
          left: 80px;
          font-size: 15px;
          font-size: 1.5rem;
        }
        .progressive-circleCMS__txt1 {
          top: -80px;
          left: 120px;
          font-size: 15px;
          font-size: 1.5rem;
        }
        .progressive-circleCMS__txt3 {
          top: -28px;
          font-size: 17px;
          font-size: 1.7rem;
        }
        .cxm__list.n01 {
          left: 340px;
          top: 290px;
        }
        .cxm__list.n02 {
          left: 375px;
          top: 200px;
        }
        .cxm__list.n03 {
          top: 70px;
          left: 250px;
        }
        .cxm__list.n04 {
          left: 155px;
          top: 290px;
        }
        .cxm__list.n05 {
          left: 155px;
          top: 110px;
        }
        .cxm__list.n06 {
          left: 124px;
          top: 200px;
        }
        .cxm__list.n07 {
          top: 330px;
          left: 243px;
        }
        .cxm__list.n08 {
          top: 110px;
          left: 340px;
        }
        .pdca-cnt__txt1 {
          font-size: 16px;
          font-size: 1.6rem;
          padding: 0px;
        }
        #cup3 {
            font-size: 85px;
            left: 40px;
        }
        .pdca-cnt__txt2 {
          font-size: 22px;
          font-size: 2.2rem;
        }
        .tit-copy01 {
          font-size: 2.1rem;
        }
        .imageBox__textArea .button01  {
          top: 780px;
          width: 90%;
        }
        .buttonA a.button--square {
          top: 750px;
        }
         .centerBox .buttonB{
              top: 260px;
        }
        .six-panel> li {
              font-size: 5px;
              font-size: 0.5rem;
        }
        .two-panel > li {
              font-size: 5px;
              font-size: 0.5rem;
        }
        .lineup__img--hc{
              width: 50px;
              margin:5px 0;
        }
}
/*----TOPバナーエリア__180221 --*/
.banner_area {
      display: flex;
      height: 150px;
}
.banner_area2 {
    display: flex;
  margin: 10px;
}
.banner_area3 {
    display: block;
    height: 150px;
    text-align: right;
    padding-top: 20px;
}
@media (max-width: 768px){
    .banner_area3 {
        text-align: center;
    }
    
}
.gnavBox {
  width: 100%;
}
@media screen and (max-width: 768px) { 
    .gnavBox {
        display: none;
    }
  }
.menu {
    position: relative;
    width: 100%;
    height: 40px;
    max-width: 1000px;
    margin: 0 auto;
}
.menu > li {
    float: left;
    width: 16%;
    height: 40px;
    line-height: 40px;
    border-right: 1px solid #ccc;
}
.menu > li.menu__single{
    position: relative;
}
.menu li.is-current {
    background-color: #f3f3f3;
}
.menu > li:first-child {
    border-left: 1px solid #ccc; 
}
.menu li.width_l {
  width: 18%;
}
.menu > li a {
    display: block;
    color: #333;
    text-align: center;
    font-size: 1.5rem;
}
.menu > li a:hover {
    background: #f3f3f3;
}
ul.menu__second-level {
    visibility: hidden;
    opacity: 0;
    z-index: 1;
}
ul.menu__third-level {
    visibility: hidden;
    opacity: 0;
}
ul.menu__fourth-level {
    visibility: hidden;
    opacity: 0;
}
.menu > li:hover {
    background: #fff;
    -webkit-transition: all .5s;
    transition: all .5s;
}
.menu__second-level li {
    border-top: 1px solid #9a0206;
}
.menu__second-level li a {
  color: #fff;
}
.menu__second-level li a:hover {
    background-color: #fff5f5;
    color:#333;
}

.menu__third-level li a:hover {
    background-color: #fff5f5;
    color:#333;
}

.menu__fourth-level li a:hover {
    background-color: #fff5f5;
    color:#333;
}

/* 下矢印 */

.init-bottom:after {
  content: '';
  display: inline-block;
  margin: 0px 0 0px 5px;
  position: absolute;
  top: 45%;
  border: 5px solid transparent;
  border-left: 8px solid #b60005;
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.init-bottom.is-current:after, .init-bottom.is-active:after {
  width: 100%;
  height: 5px;
  padding-top: 0;
  -webkit-transition: all 0.2s linear;
  transition: all 0.2s linear;
}

/* floatクリア */
.menu:before,
.menu:after {
    content: " ";
    display: table;
}

.menu:after {
    clear: both;
}

.menu {
    *zoom: 1;
}

li.menu__single ul.menu__second-level {
    position: absolute;
    top: 40px;
    width: 100%;
    background: #b60005;
    opacity: 0.8;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
li.menu__single:hover ul.menu__second-level {
    top: 40px;
    visibility: visible;
    opacity: 1;
}
li.menu__mega ul.menu__second-level {
    position: absolute;
    top: 40px;
    left: 0;
    box-sizing: border-box;
    width: 100%;
    padding: 20px 2%;
    background: #b60005;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
}
li.menu__mega:hover ul.menu__second-level {
    top: 40px;
    visibility: visible;
    opacity: 1;
}
li.menu__mega ul.menu__second-level > li {
    float: left;
    width: 32%;
    border: none;
}
.menu .is-current {
    background-color: #f3f3f3;
}
.menu li.is-current > a {
    color: #c01920;
}
/* 下矢印 */
ul.menu__second-level > li a:after {
    content: '';
    display: inline-block;
    width: 6px;
    height: 6px;
    margin: 0 0 3px 10px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

li.menu__mega ul.menu__second-level > li:nth-child(4n+3) {
    margin: 0 1%;
}
.flex-box {
    display: flex;
    margin-bottom: 50px;
}
.evenly_empty {
    justify-content: space-between;
}
.product li.product_list {
    border: none;
    width: 48%;
    padding: 0;
    border: 1px solid #999;
    border-radius: 10px;
}
.product li.cms {
    background: url(/images/index/product_cms.png) no-repeat 0 0 /480px 50px;
}
.product li.cxm {
    background: url(/images/index/product_cxm.png) no-repeat 0 0 /480px 50px;
}
.product li.rpa {
    background: url(/images/index/product_rpa.png) no-repeat 0 0 /480px 50px;
}
.product li.pro_mi {
    background: url(/images/index/product_pm.png) no-repeat 0 0 /480px 50px;
}
.product_list .productlink {
    padding: 0px 15px 10px;
    margin-top: 50px;
    display: block;
    border-radius: 0 0 10px 10px;
    position: relative;
    height: auto;
    background-color: #fff;
}
.product_list .productlink .btn_area {
  text-align: center;
}
.product_list .productlink .btn_area img {
  padding: 10px;
}
.product_list .productlink .btn_area2 img {
  padding: 15px 0;
}
.product_list .productlink:hover, .case_studylink:hover {
    background-color: #eee;
}
.product_list .productlink .offer_txt, .case_studylink .offer_txt {
    font-size: 1.6rem;
    text-align: left;
    margin-bottom: 30px;
    color: #333;
    line-height: 1.6;
}
.productlink .btn2 {
    text-align: right;
    padding-right: 15px;
    position: relative;
    font-size: 1.5rem;
}
.productlink .btn2:after,.case_studylink .btn2:after {
    display: block;
    content: '';
    position: absolute;
    top: 45%;
    right: 0;
    width: 0;
    height: 0;
    margin-top: -5px;
    border: 5px solid transparent;
    border-left: 8px solid #c01920;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
.product li.case_study {
    border: none;
    width: 30%;
    padding: 0;
    border: 1px solid #999;
    background-size: 93%;
}
.product li.case_study:hover {
     opacity: 0.8;
}
li.case_study .case_studylink {
    padding: 0px 15px 10px;
    margin-top: 150px;
    display: block;
    border-radius: 10px;
    position: relative;
    height: auto;
    background-color: #fff;
}
li.case_study .case_studylink .btn_area {
    position: relative;
    height: 160px;
}
li.case_study .case_studylink .btn2 {
    padding-right: 15px;
    position: absolute;
    font-size: 1.5rem;
    right: 0;
    bottom: 0;
}
.product li.case_study.case01 {
    background: url(/images/index/caseStudy_abc.png) no-repeat 10px 0/93%;
}
.product li.case_study.case02 {
    background: url(/images/index/caseStudy_idom.png) no-repeat 10px 0/93%;
}
.product li.case_study.case03 {
    background: url(/images/index/caseStudy_advance.png) no-repeat 10px 0/93%;
}

.circle-box {
    width: 100%;
    height: 100%;
    text-align: center;
}
.circle-box p {
  margin-top: 10px;
}
.contact_header {
    background-color: #279112;
    color: #fff;
    position: relative;
}
.contact_header a {
    padding: 4px 16px;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2;
}
.contact_header a:after {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 0 2px 6px;
    border-right: 1px solid #fff;
    border-top: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
/*------text----------*/
.tit-section01.line {
  position: relative;
  display: inline-block;
  width: 100%;
  line-height: 1.6;
}
.tit-section01.line:before {
    content: '';
    position: absolute;
    left: 50%;
    display: inline-block;
    width: 200px;
    height: 2px;
    bottom: 0;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #b60005;
}
h3.red_bold {
    text-align: center;
    color: #b60005;
    font-weight: bold;
    font-size: 1.7rem;
    margin-bottom: 10px;
}
ul.logo_area {
    display: flex;
    line-height: 1.6;
}
ul.logo_area li.companyName {
    font-size: 16px;
    font-size: 1.6rem;
    margin-left: 5px;
    font-weight: bold;
}
ul.logo_area li.vr360_logo {
    font-size: 16px;
    font-size: 1.6rem;
    margin-left: 10px;
}
.lead-wrap {
    border-left: 1px solid #999;
    padding-left: 10px;
}
.lead-wrap .lead-name {
  font-family: -apple-system,BlinkMacSystemFont,'Helvetica Neue','Yu Gothic',YuGothic,Verdana,'M+ 1p',"Hiragino Sans W3","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
  font-weight: bold;
}
.lead-name span {
  font-weight: bold;
  color: #b60005;
}


@media (max-width: 768px){
    .flex-box.evenly_empty.top {
      display:  block;
      margin-bottom: 10px;
    }
    .product li.product_list {
      width: 100%;
      margin-bottom: 10px;
    }
    .product li.cms, .product li.cxm, .product li.rpa, .product li.pro_mi {
      background-size: 100%
    }
    .product_list .productlink {
      margin-top: 45px;
    }
    .header__logo {
      border: none;
    }
    .product li.case_study {
      width: 100%;
      margin-bottom: 20px;
    }
    ul.logo_area li.companyName {
    font-size: 13px;
    font-size: 1.3rem;
    margin-left: 5px;
    font-weight: bold;
}
    li.case_study .case_studylink {
      margin-top: 180px;
    }
    li.case_study .case_studylink .btn_area {
      padding-top: 10px;
    }
    .imageBox .imageBox__imageArea.company_logo {
      width: 100%;
    }

    .imageBox.top {
      position: relative;
      margin-bottom: 10px;
    }
    .imageBox.top .imageBox__imageArea.company_logo {
      width: 100%;
      margin-top: 300px;
      padding: 0;
    }
    .imageBox.top .imageBox__imageArea.Companies{
      width: 85%;
      position: absolute;
      top: 0;
      margin-top: -150px;
    }
  #nav-drawer {
    position: relative;
  }

  /*チェックボックス等は非表示に*/
  .nav-unshown {
    display:none;
  }

  /*アイコンのスペース*/
  #nav-open {
    display: inline-block;
    width: 30px;
    margin-left: 10px;
  }

  /*ハンバーガーの形をCSSで表現*/
  #nav-open span, #nav-open span:before, #nav-open span:after {
    position: absolute;
    height: 3px;/*線の太さ*/
    width: 25px;/*長さ*/
    border-radius: 3px;
    background: #555;
    display: block;
    content: '';
    cursor: pointer;
  }
  #nav-open span:before {
    bottom: -8px;
  }
  #nav-open span:after {
    bottom: -16px;
  }

  /*閉じる用の薄黒箇所*/
  #nav-close {
    display: none;
    position: fixed;
    z-index: 99;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: black;
    opacity: 0;
    transition: .3s ease-in-out;
  }

  /*メニューの中身*/
  #nav-content {
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 90%;
    max-width: 250px;/*最大幅（お好みで調整を）*/
    height: 100%;
    transition: .3s ease-in-out;
    -webkit-transform: translateX(-105%);
    transform: translateX(-105%);
    background-color: #9b0f0f;
  }

  /*チェックがついたら表示させる*/
  #nav-input:checked ~ #nav-close {
    display: block;
    opacity: .5;
  }

  #nav-input:checked ~ #nav-content {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
    box-shadow: 6px 0 25px rgba(0,0,0,.15);
  }
  .header-logo-menu{
    height: 45px;
    display: flex;
    display: -moz-flex;
    display: -o-flex;
    display: -webkit-flex;
    display: -ms-flex;
    flex-direction: row;
    -moz-flex-direction: row;
    -o-flex-direction: row;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
  }
  #sidebar1 {
      background: none
  }
  .sidebar {
    padding: 10px;
    margin-top: 1px;
    background-color: #9b0f0f
  }
  .sidebar>li {
    list-style: none;
    margin-bottom: 0px;
    font-size: 1.2rem;
    border-bottom: 1px solid #e08c90;
  }
  .sidebar a {
    color: #fff
  }
  ul li.m_single {
  }
  ul li.m_single a {
    display: block;
    margin: 20px 0;
    font-size: 1.2rem;
  }
  ul li.m_none {
    padding: 20px 10px;
  }
  ul li.m_none:hover {
    background-color: #d50010;
  }
  ul li.m_none a{
   position: relative;
  }
  ul.m_second {
  }
  ul.m_second li {
    border-top: 1px solid #e08c90;
  }
  ul.m_second li a {
    padding: 15px;
    margin: 0;
  }
  ul.m_second li a:after{
      display: inline-block;
      content: '';
      top: 45%;
      margin: 0 0 0px 10px;
      border: 3px solid transparent;
      border-left: 5px solid #fff;
      -webkit-transition: rotate(90deg);
      transition: rotate(90deg);
  }
  /*ラベル*/
  .accbox label {
      display: block;
      cursor :pointer;
      position: relative;
      color: #fff;
      padding: 15px 10px;
  }

  .accbox label:after {
      content: '';
      display: inline-block;
      margin: 0px 0 0px 5px;
      position: absolute;
      top: 45%;
      border: 5px solid transparent;
      border-left: 8px solid #fff;
      -webkit-transform: rotate(90deg);
      -ms-transform: rotate(90deg);
      transform: rotate(90deg);
  }
  /*ラベルホバー時*/
  .accbox label:hover {
      background-color: #d50010;
  }

  /*チェックは隠す*/
  .accbox input {
      display: none;
  }
  /*中身を非表示にしておく*/
  .accbox .accshow, .accbox .accshow2, .accbox .accshow3, .accbox .accshow4{
      height: 0;
      padding: 0;
      overflow: hidden;
      opacity: 0;
      transition: 0.8s;
  }
  /*クリックで中身表示*/
  .cssacc:checked + .accshow, .cssacc2:checked + .accshow2, .cssacc3:checked + .accshow3, .cssacc4:checked + .accshow4 {
      height: auto;
      padding: 0px;
      opacity: 1;
       margin: 0;
  }
  ul li.m_none:after{
      display: inline-block;
      content: '';
      top: 45%;
      margin: 0 0 0 10px;
      border: 5px solid transparent;
      border-left: 5px solid #fff;
      -webkit-transition: rotate(90deg);
      transition: rotate(90deg);
  }
}

/*---------新規作成 20220420Apromore日笠山　news用---------------*/

img.bookinfoimg {
    padding-top: 8px;
}

img.Aporomore-img {
    width: 80%;
}
.Apromore-product　dl {
    padding: 15px 25px;
    font-size: 13px;
}

.Apromore-product dd::before {
      content: ":"; 
}

.Apromore-product dt {
    display: flex;
    justify-content: space-between;
    clear: both;
    float: left;
    padding-top: 20px;
    font-size: 15px;
}

.Apromore-product  dd {
    padding-top: 20px;
    padding-left: 91px;
    font-size: 15px;
    margin: 0 auto;
}
.bookinfo-top {
    display: flex;
    margin: 0 auto;
}
p.news__comment {
    padding-bottom: 55px;
    text-align: center;
    margin: 5px;
}

@media (max-width: 768px){
     h1.tit-heading01_1 {
           font-size: 17px;
}
    span.tit21 {
           font-size: 13px;
}
   .bookinfo-top {
           display: block;
}
    p.news__comment {
         font-size: 10px;
}
  .Apromore-product {
         width: 100%;
}
}
 /*----------------------------------------------------*/
/*---------新規作成 20220704NASDAQ日笠山　news用---------------*/

.book-product {
    margin: 0 auto;
}
.book-product dd::before {
      content: ":"; 
}

.book-product dt {
    display: flex;
    justify-content: space-between;
    clear: both;
    float: left;
    padding-top: 20px;
    font-size: 15px;
}

.book-product  dd {
    padding-top: 20px;
    padding-left: 91px;
    font-size: 15px;
    margin: 0 auto;
}
.book-product　dl {
    padding: 15px 25px;
    font-size: 13px;
}

img.bookimg {
    width: 25%;
    margin: 0 auto;
}
/*----------------------------------------------------*/
/*------callcenternews追加-----*/
ul .calllist li {
      list-style: square;
}
 /*----------------------------------------------------*/
/*--------HeartCore DX人材育成サービス-----------*/

.news__txt_right {
    text-align: right;
}

 /*----------------------------------------------------*/

/*---------Go IPO日笠山　news用---------------*/
span.txt_small {
    font-size: 10px;
}
 /*----------------------------------------------------*/
 /*---------------NASDAQに上場セミナー--------------------*/
.display_flex_in {
    display: flex;
    flex-wrap: wrap;
    margin: 30px 0;
}
.book_img {
  margin: 0 auto;
   width: 13%;
}

@media (max-width: 768px){
img.book_img {
    width: 30%;
}
}
/*------------------------*/
 /*-----------------HeartCore CMS、SEO・マーケティング-----------------------------------*/
.display_flex_img {
  display: flex;
  margin: 45px 0;
}
.news_txt_img {
    width: 47%;
    max-width: 560px;
    margin-right: 3%;
}
.width_img_50{
   width:25%;
   margin: 0 auto;
}

/*-----------------20220615newsロボットストア-----------------------------------*/
dd.pl_122px {
    padding-left: 122px;
}
.content_dd {
    line-height: 40px;
}
.content_dd dd::before {
      content: "："; 
}


@media (max-width: 768px){
 span.tit18 {
     font-size: 18px;
}
}

/*-----------------20220624news「truRes-12K」---------------------------------*/
ul.news_flex_img {
    display: flex;
    text-align: center;
}
p.center {
    padding: 43px 0;
    line-height: 26px;
}

@media (max-width: 768px){
    img.img_100 {
        width: 100%;
    }
    }
    
    @media screen and (min-width: 768px){
    .br-sp {
    display: none;
     }
    }

