/* =========================================
Add
========================================= */
html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -webkit-touch-callout: none;
    word-wrap: break-word;
}

@media screen and (max-width: 640px) {
    html {
        font-size: 50%;
    }
}

body {
    font-size: 14px;
    font-size: 1.4rem;
    border-left: solid 5px rgba(208, 17, 39, 0.95);
    /*min-width: 1340px;*/
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/* only_ */
.only_PC {
    display: inherit;
}

.only_SP {
    display: none;
}

/*@media screen and (max-width: 1024px) {
  .only_PC {
    display: none; }
  .only_SP {
    display: inherit; }
}*/
@media screen and (max-width: 640px) {
    .only_PC {
        display: none;
    }

    .only_SP {
        display: inherit;
    }
}

a, a:link, a:visited {
    color: #333;
    transition: all 0.3s ease;
    text-decoration: none;
}

a:hover {
    color: #d01027;
}

/* colBox */
.colBox {
    margin-left: -5px;
    margin-right: -5px;
    min-height: 1px;
}

.colBox:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

.colBox > .col {
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 5px;
    margin-bottom: 10px;
}

.colBox > .col1 {
    width: 100%;
    width: -webkit-calc(100% / 1);
    width: -moz-calc(100% / 1);
    width: calc(100% / 1);
}

.colBox > .col2 {
    width: 50%;
    width: -webkit-calc(100% / 2);
    width: -moz-calc(100% / 2);
    width: calc(100% / 2);
}

.colBox > .col3 {
    width: 33.33%;
    width: -webkit-calc(100% / 3);
    width: -moz-calc(100% / 3);
    width: calc(100% / 3);
}

.colBox > .col3-2 {
    width: 66.66%;
    width: -webkit-calc(100% / 3 * 2);
    width: -moz-calc(100% / 3 * 2);
    width: calc(100% / 3 * 2);
}

.colBox > .col4 {
    width: 25%;
    width: -webkit-calc(100% / 4);
    width: -moz-calc(100% / 4);
    width: calc(100% / 4);
}

.colBox > .col4-3 {
    width: 75%;
    width: -webkit-calc(100% / 4 + 3);
    width: -moz-calc(100% / 4 + 3);
    width: calc(100% / 4 + 3);
}

.colBox > .col5 {
    width: 20%;
    width: -webkit-calc(100% / 5);
    width: -moz-calc(100% / 5);
    width: calc(100% / 5);
}

.colBox > .col5-2 {
    width: 40%;
    width: -webkit-calc(100% / 5 * 2);
    width: -moz-calc(100% / 5 * 2);
    width: calc(100% / 5 * 2);
}

.colBox > .col5-3 {
    width: 60%;
    width: -webkit-calc(100% / 5 * 3);
    width: -moz-calc(100% / 5 * 3);
    width: calc(100% / 5 * 3);
}

.colBox > .col6 {
    width: 16.66%;
    width: -webkit-calc(100% / 6);
    width: -moz-calc(100% / 6);
    width: calc(100% / 6);
}

.colBox > .col6-5 {
    width: 83.34%;
    width: -webkit-calc(100% / 6 * 5);
    width: -moz-calc(100% / 6 * 5);
    width: calc(100% / 6 * 5);
}

.colBox.m_2 {
    margin: 0;
}

.colBox.m_2 > .col {
    margin: 0 1%;
    padding: 0;
    margin-bottom: 2%;
}

.colBox.m_2 > .col2 {
    width: 45%;
    width: -webkit-calc(49%);
    width: -moz-calc(49%);
    width: calc(49%);
}

.colBox.m_2 > .col2:nth-child(2n+1) {
    margin-left: 0 !important;
}

.colBox.m_2 > .col2:nth-child(2n) {
    margin-right: 0 !important;
}

.colBox.m_2 > .col3 {
    width: 45%;
    width: -webkit-calc(32%);
    width: -moz-calc(32%);
    width: calc(32%);
}

.colBox.m_2 > .col3:nth-child(3n+1) {
    margin-left: 0 !important;
}

.colBox.m_2 > .col3:nth-child(3n) {
    margin-right: 0 !important;
}

.colBox.m_2 > .col4 {
    width: 45%;
    width: -webkit-calc(23.5%);
    width: -moz-calc(23.5%);
    width: calc(23.5%);
}

.colBox.m_2 > .col4:nth-child(4n+1) {
    margin-left: 0 !important;
}

.colBox.m_2 > .col4:nth-child(4n) {
    margin-right: 0 !important;
}

.colBox.m_2 > .col5 {
    width: 45%;
    width: -webkit-calc(18.4%);
    width: -moz-calc(18.4%);
    width: calc(18.4%);
}

.colBox.m_2 > .col5:nth-child(5n+1) {
    margin-left: 0 !important;
}

.colBox.m_2 > .col5:nth-child(5n) {
    margin-right: 0 !important;
}

.colBox.m_2 > .col6 {
    width: 45%;
    width: -webkit-calc(15%);
    width: -moz-calc(15%);
    width: calc(15%);
}

.colBox.m_2 > .col6:nth-child(6n+1) {
    margin-left: 0 !important;
}

.colBox.m_2 > .col6:nth-child(6n) {
    margin-right: 0 !important;
}

.colBox.m_3 {
    margin: 0;
}

.colBox.m_3 > .col {
    margin: 0 1.5%;
    padding: 0;
    margin-bottom: 3%;
}

.colBox.m_3 > .col2 {
    width: 45%;
    width: -webkit-calc(48.5%);
    width: -moz-calc(48.5%);
    width: calc(48.5%);
}

.colBox.m_3 .col2:nth-child(2n+1) {
    margin-left: 0 !important;
}

.colBox.m_3 .col2:nth-child(2n) {
    margin-right: 0 !important;
}

.colBox.m_3 > .col3 {
    width: 45%;
    width: -webkit-calc(31.33333%);
    width: -moz-calc(31.33333%);
    width: calc(31.33333%);
}

.colBox.m_3 > .col3:nth-child(3n+1) {
    margin-left: 0 !important;
}

.colBox.m_3 > .col3:nth-child(3n) {
    margin-right: 0 !important;
}

.colBox.m_3 > .col4 {
    width: 45%;
    width: -webkit-calc(22.75%);
    width: -moz-calc(22.75%);
    width: calc(22.75%);
}

.colBox.m_3 > .col4:nth-child(4n+1) {
    margin-left: 0 !important;
}

.colBox.m_3 > .col4:nth-child(4n) {
    margin-right: 0 !important;
}

.colBox.m_3 > .col5 {
    width: 45%;
    width: -webkit-calc(17.6%);
    width: -moz-calc(17.6%);
    width: calc(17.6%);
}

.colBox.m_3 > .col5:nth-child(5n+1) {
    margin-left: 0 !important;
}

.colBox.m_3 > .col5:nth-child(5n) {
    margin-right: 0 !important;
}

.colBox.m_3 > .col6 {
    width: 45%;
    width: -webkit-calc(14.16667%);
    width: -moz-calc(14.16667%);
    width: calc(14.16667%);
}

.colBox.m_3 > .col6:nth-child(6n+1) {
    margin-left: 0 !important;
}

.colBox.m_3 > .col6:nth-child(6n) {
    margin-right: 0 !important;
}

.colBox.m_5 {
    margin: 0;
}

.colBox.m_5 > .col {
    margin: 0 2.5%;
    padding: 0;
    margin-bottom: 5%;
}

.colBox.m_5 > .col2 {
    width: 45%;
    width: -webkit-calc(47.5%);
    width: -moz-calc(47.5%);
    width: calc(47.5%);
}

.colBox.m_5 > .col2:nth-child(2n+1) {
    margin-left: 0 !important;
}

.colBox.m_5 > .col2:nth-child(2n) {
    margin-right: 0 !important;
}

.colBox.m_5 > .col3 {
    width: 45%;
    width: -webkit-calc(30%);
    width: -moz-calc(30%);
    width: calc(30%);
}

.colBox.m_5 > .col3:nth-child(3n+1) {
    margin-left: 0 !important;
}

.colBox.m_5 > .col3:nth-child(3n) {
    margin-right: 0 !important;
}

.colBox.m_5 > .col4 {
    width: 45%;
    width: -webkit-calc(21.25%);
    width: -moz-calc(21.25%);
    width: calc(21.25%);
}

.colBox.m_5 > .col4:nth-child(4n+1) {
    margin-left: 0 !important;
}

.colBox.m_5 > .col4:nth-child(4n) {
    margin-right: 0 !important;
}

.colBox.m_5 > .col5 {
    width: 45%;
    width: -webkit-calc(16%);
    width: -moz-calc(16%);
    width: calc(16%);
}

.colBox.m_5 > .col5:nth-child(5n+1) {
    margin-left: 0 !important;
}

.colBox.m_5 > .col5:nth-child(5n) {
    margin-right: 0 !important;
}

.colBox.m_5 > .col6 {
    width: 45%;
    width: -webkit-calc(12.5%);
    width: -moz-calc(12.5%);
    width: calc(12.5%);
}

.colBox.m_5 > .col6:nth-child(6n+1) {
    margin-left: 0 !important;
}

.colBox.m_5 > .col6:nth-child(6n) {
    margin-right: 0 !important;
}

.colBox.m_10 {
    margin: 0;
}

.colBox.m_10 > .col {
    margin: 0 5%;
    padding: 0;
    margin-bottom: 10%;
}

.colBox.m_10 > .col2 {
    width: 45%;
    width: -webkit-calc(45%);
    width: -moz-calc(45%);
    width: calc(45%);
}

.colBox.m_10 > .col2:nth-child(2n+1) {
    margin-left: 0 !important;
}

.colBox.m_10 > .col2:nth-child(2n) {
    margin-right: 0 !important;
}

.colBox.m_10 > .col3 {
    width: 45%;
    width: -webkit-calc(26.66667%);
    width: -moz-calc(26.66667%);
    width: calc(26.66667%);
}

.colBox.m_10 > .col3:nth-child(3n+1) {
    margin-left: 0 !important;
}

.colBox.m_10 > .col3:nth-child(3n) {
    margin-right: 0 !important;
}

.colBox.m_10 > .col4 {
    width: 45%;
    width: -webkit-calc(17.5%);
    width: -moz-calc(17.5%);
    width: calc(17.5%);
}

.colBox.m_10 > .col4:nth-child(4n+1) {
    margin-left: 0 !important;
}

.colBox.m_10 > .col4:nth-child(4n) {
    margin-right: 0 !important;
}

.colBox.m_10 > .col5 {
    width: 45%;
    width: -webkit-calc(12%);
    width: -moz-calc(12%);
    width: calc(12%);
}

.colBox.m_10 > .col5:nth-child(5n+1) {
    margin-left: 0 !important;
}

.colBox.m_10 > .col5:nth-child(5n) {
    margin-right: 0 !important;
}

.colBox.m_10 > .col6 {
    width: 45%;
    width: -webkit-calc(8.33333%);
    width: -moz-calc(8.33333%);
    width: calc(8.33333%);
}

.colBox.m_10 > .col6:nth-child(6n+1) {
    margin-left: 0 !important;
}

.colBox.m_10 > .col6:nth-child(6n) {
    margin-right: 0 !important;
}

@media screen and (max-width: 640px) {
    .colBox:not(.noVertical) {
        margin-left: 0;
        margin-right: 0;
    }

    .colBox:not(.noVertical) > .col {
        float: none;
        padding: 0;
        width: auto;
        margin-left: 0;
        margin-right: 0;
    }
}

@supports (-ms-ime-align: auto) {
    .colBox > .col6 {
        width: 16%;
        width: -webkit-calc(100% / 6);
        width: -moz-calc(100% / 6);
        width: calc(100% / 6);
        width: 16%;
    }
}

.disnon {
    display: none;
}

.grayBox {
    background: #f7f7f7;
    padding: 40px 60px;
}

@media screen and (max-width: 640px) {
    .grayBox {
        padding: 20px;
    }
}

/* vwBox */
.vwBox {
    /*margin-left: calc(((100vw - 100%) / 2) * -1 + 11px);
	margin-right: calc(((100vw - 100%) / 2) * -1 + 11px);*/
}

.vwBox > iframe {
    width: 100%;
    box-sizing: border-box;
    border: none;
}

/* fancybox */
.fancybox-inner * {
    text-align: left;
}

.fancybox-inner .contents,
.fancybox-inner .contents_m {
    width: auto;
    padding: 20px;
}

.fancybox-inner h4 {
    width: 100%;
}

/* =========================================
mv
========================================= */
#mv {
    text-align: center;
    position: relative;
    height: calc(100vh - 152px);
    height: -webkit-calc(100vh - 152px);
}

#mv .mv-content {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column nowrap;
    height: 100%;
    min-height: 500px;
    position: relative;
    overflow-y: hidden;
}

/* IE11対策 */
@media all and (-ms-high-contrast: none) {
    *::-ms-backdrop, #mv .mv-content {
        flex-flow: nowrap;
    }

    /* IE11 */
}

#mv .mv-btn {
    display: block;
    position: absolute;
    margin: 0 auto;
    bottom: 40px;
    right: 0;
    left: 0;
}

.mv-cover {
    /*background-image: url(../img/mv_cover.png);*/
    background-position: top center;
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -2;
}

.mv-cover-black {
    background-image: url(../img/top/bg_mv-cover.png);
    background-color: #FFF;
    background-position: top center;
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -1;
}

#player {
    position: fixed;
    right: 0;
    bottom: 0;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -3;
    overflow-y: hidden;
    background-color: #000;
}

header {
    background: rgba(255, 255, 255, 0.8);
}

#g_navi {
    background: rgba(255, 255, 255, 0.8);
    /*position: relative;*/
}

#mv + header {
}

header.fixed,
header.fixed + #g_navi {
    position: fixed;
    margin-left: -2px;
    top: 0;
    width: 100%;
    z-index: 10000;
    border: none;
}

header.fixed {
    z-index: 10001;
}

@media screen and (max-width: 640px) {
    #mv {
        display: none;
    }

    header.fixed,
    header.fixed + #g_navi {
        position: inherit;
        margin-left: inherit;
        top: inherit;
        width: inherit;
        z-index: inherit;
        border: none;
    }
}

@media screen and (max-width: 640px) {
    .mainImage {
        margin-bottom: -20px;
    }
}

/* =========================================
header
========================================= */

/* hd_banner */
.hd_banner .hd_banner_current {
    letter-spacing: 0.1em;
}

@media screen and (min-width: 641px) {
    .hd_banner_wrap {
        overflow: hidden;
        width: 100%;
    }

    .hd_banner {
        margin: 0 auto;
        overflow: visible !important;
    }

    .hd_banner .hd_banner_current {
        right: 500px;
        width: 100%;
    }

    .hd_banner .hd_background {
        left: 0;
        background-size: cover;
        width: 100%;
    }
}

@media screen and (max-width: 640px) {
    .hd_banner .hd_banner_current {
        height: inherit;
        bottom: 0;
        top: inherit;
        padding: 10px;
        box-sizing: border-box;
    }

    .hd_banner_current h2.hd_banner_cate,
    .hd_banner_current .hd_banner_title {
        transform: inherit;
        top: inherit;
        right: inherit;
        float: inherit;
        left: 50%;
        text-align: center;
    }

    .hd_banner_current h2.hd_banner_cate {
        line-height: 1.2;
    }

    .hd_banner_current .hd_banner_title {
        font-size: 18px;
        font-size: 1.8rem;
    }

    .hd_banner .hd_background {
        background-position: center;
    }
}

/* small */
.hd_banner.small {

}

.hd_banner.small .hd_banner_current {
    top: 0;
}

.hd_banner.small .hd_background {
    height: 100px;
}

@media screen and (max-width: 640px) {
    .hd_banner.small .hd_banner_current {
        width: 100% !important;
        top: 0;
        height: 100%;
        position: inherit;
    }

    .hd_banner.small .hd_background {
        display: none;
    }
}

/* textOnly */
.hd_banner.textOnly .hd_banner_title {
    font-size: 28px;
}

/* =========================================
Content
========================================= */
#content {
    background: #fff;
    /*overflow: hidden;*/
    letter-spacing: 0.1em;
}

section {
    padding: 20px;
    box-sizing: border-box;
}

.site-content h2,
.site-content h2.title_l {
    margin: 0 0 25px 0;
    font-size: 30px;
    padding: 0 0 7px 0;
    text-align: center;
    color: #d01027;
    position: relative;
    margin-top: 10px;
    border-bottom: none;
}

.site-content h2:after,
.site-content h2.title_l:after {
    border-bottom: 2px solid #bfbfbf;
    width: 50px;
    display: block;
    content: "";
    position: absolute;
    left: 50%;
    margin-left: -25px;
}

.site-content h2 > span {
    color: #333;
    display: block;
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 10px;
}

.site-content h2.title_l {
    margin-top: 25px;
}

.site-content h3,
.site-content h4,
.site-content h5,
.site-content h6 {
    margin-bottom: 10px;
}

.site-content h3 {
    font-size: 24px;
    color: #333333 !important;
}

.site-content h3:first-letter {
    color: #d01027 !important;
}

.site-content h4 {
    font-size: 18px;
    display: inline-block;
    border-bottom: 2px solid #d01027;
    padding-bottom: 5px;
    margin-bottom: 15px;
}

.site-content h5 {
    font-size: 16px;
    color: #d01027;
}

.site-content h5.color_b {
    color: #333;
}

.site-content h6 {
    font-size: 14px;
    vertical-align: middle;
    position: relative;
    padding-left: 20px;
}

.site-content h6:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 14px;
    height: 2px;
    background: #d01027;
    left: 0;
    top: 50%;
    margin-top: -1px;
}

.site-content hr {
    color: #ccc;
    background-color: #ccc;
    border: none;
    height: 1px;
    margin: 40px 0;
}

.site-content p {
    line-height: 1.8;
    margin-bottom: 20px;
}

.site-content p a {
    color: #333;
}

.site-content p a:hover {
    color: #999;
}

.site-content p a, .site-content p a:link, .site-content p a:visited {
    color: #d21d32;
}

.site-content p a:hover {
    color: #E14356;
    opacity: 0.75;
}

.site-content ul {
    margin: 10px 0 20px;
}

.site-content ul li {
    position: relative;
    padding-left: 1.1em;
    margin-bottom: 5px;
}

.site-content ul li:before {
    display: block;
    content: '';
    position: absolute;
    top: .4em;
    left: 0;
    width: 8px;
    height: 8px;
    background-color: #d01027;
    border-radius: 100%;
}

.site-content table {
    width: 100%;
    border: #cccccc solid 1px;
    border-collapse: collapse;
}

.site-content table thead th {
    background: #a1a1a1;
    color: #FFF;
    padding: 10px 15px;
    border: #cccccc solid 1px;
    font-size: 16px;
    border-collapse: collapse;
}

.site-content table tbody th {
    background: #f7f7f7;
    padding: 10px 15px;
    border: #cccccc solid 1px;
    vertical-align: top;
    font-size: 16px;
    text-align: center;
    border-collapse: collapse;
}

.site-content table tbody td {
    background: #FFF;
    padding: 10px 15px;
    border: #cccccc solid 1px;
    vertical-align: top;
    border-collapse: collapse;
}

@media screen and (max-width: 640px) {
    .site-content table {
        border: none;
    }

    .site-content table thead {
        display: none;
    }

    .site-content table tbody th {
        display: block;
        background: #a1a1a1;
        color: #fff;
        border: none;
    }

    .site-content table tbody td {
        display: block;
        position: relative;
        border-top: none;
    }

    .site-content table tbody td::before {
        content: attr(label);
        float: left;
        clear: both;
        font-weight: bold;
        position: absolute;
        height: 100%;
        top: 0;
        padding: 10px 15px;
        box-sizing: border-box;
        left: 0;
        width: 14em;
        text-align: center;
        background: #f7f7f7;
        border-right: #cccccc solid 1px;
    }

    .site-content table tbody td p {
        padding-left: 10em;
    }
}

.site-content table p {
    margin-bottom: 0;
}

.site-content .tabBox {
    margin: 10px 0 20px;
}

.site-content .tabBox .tab {
}

.site-content .tabBox .tab ul {
    margin: 0;
    border-bottom: solid 3px #d01027;
}

.site-content .tabBox .tab ul li {
    min-width: 100px;
    /*max-width: 33.33%;*/
    margin: 0 1px;
    margin-top: 2px;
    text-align: center;
    float: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    background: #a1a1a1;
    color: #fff;
    padding: 0;
}

.site-content .tabBox .tab ul li:first-child {
    margin-left: 0;
}

.site-content .tabBox .tab ul li:last-child {
    margin-right: 0;
}

.site-content .tabBox .tab ul li.active {
    background: #d01027;
}

.site-content .tabBox .tab ul li:before {
    display: none;
}

.site-content .tabBox .tab ul li a {
    color: #fff;
    padding: 10px 20px;
    display: block;
    text-align: center;
    text-decoration: none;
}

.site-content .tabBox .tab_contant {
    background: #f7f7f7;
    padding: 40px 60px;
}

@media screen and (max-width: 640px) {
    .site-content .tabBox .tab_contant {
        padding: 20px;
    }
}

.page_contents .title_border_l {
    border-left: none !important;
}

/* design02 */
.site-content .tabBox.design02 {
}

.site-content .tabBox.design02 .tab ul li {
    min-width: 130px;
    margin: 0 3px;
    margin-top: 3px;
    margin-bottom: -1px;
    font-size: 13px;
    font-size: 1.3rem;
    border: solid 1px #d01027;
    border-radius: 2px 2px 0 0 / 2px 2px 0 0;
    -webkit-border-radius: 2px 2px 0 0 / 2px 2px 0 0;
    -moz-border-radius: 2px 2px 0 0 / 2px 2px 0 0;
}

.site-content .tabBox.design02 .tab ul li:first-child {
    margin-left: 0;
}

.site-content .tabBox.design02 .tab ul li:last-child {
    margin-right: 0;
}

.site-content .tabBox.design02 .tab ul li:not(.active) {
    background: none;
}

.site-content .tabBox.design02 .tab ul li a {
}

.site-content .tabBox.design02 .tab ul li:not(.active) a {
    color: #d01027;
}

@media screen and (max-width: 640px) {
    .site-content .tabBox.design02 .tab ul li {
        min-width: inherit;
    }
}


/* =========================================
TOP
========================================= */
.conceptItem {
    padding: 40px 0 20px;
    letter-spacing: 0.1em;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    position: relative;
    margin-top: 100px;
}

.conceptItem:before {
    background: #d0111b;
    position: absolute;
    bottom: 100%;
    left: 80px;
    height: 100px;
    width: 1px;
    content: "";
}

.conceptItem .title_sub {
    font-size: 36px;
    font-size: 3.6rem;
    color: #d01027;
    margin-top: 10px;
    letter-spacing: 0.5;
    line-height: 1.2;
}

.conceptItem .title {
    font-size: 40px;
    font-size: 4rem;
    text-align: left;
    font-weight: normal;
    color: #000;
}

.conceptItem:not(.message) .title {
    font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.conceptItem .title:after {
    display: none;
}

.conceptItem p {
    line-height: 2.3;
    padding-left: 40px;
    font-size: 15px;
    font-size: 1.5rem;
    /*margin-top: 10px;*/
}

.conceptItem .colBox .col {
    margin-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
    .conceptItem {
        margin-top: 0;
    }

    .conceptItem:before {
        display: none;
    }

    .conceptItem p {
        border-left: solid 1px #d0111b;
        padding-left: 20px;
        margin-left: 20px;
    }
}

/* message */
.conceptItem.message {
    padding-left: 80px;
    padding-right: 50%;
    position: relative;
    padding-bottom: 160px;
}

.conceptItem.message:after {
    position: absolute;
    right: 0;
    top: 0;
    width: 50%;
    height: 100%;
    padding-top: 100px;
    margin-top: -100px;
    content: "";
    background: url(../img/top/bg_manager.png) no-repeat center;
    background-size: contain;
    /*background-position: left 20px center;*/
}

.conceptItem.message .title_sub {
    font-size: 26px;
    font-size: 2.6rem;
}

.conceptItem.message .title {
    font-size: 15px;
    font-size: 1.5rem;
}

.conceptItem.message p {
    padding-left: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2;
}

@media screen and (max-width: 640px) {
    .conceptItem.message {
        border-left: solid 1px #d0111b;
        padding-left: 20px;
        margin-left: 20px;
        padding-right: 40%;
        padding-bottom: 40px;
    }

    .conceptItem.message:after {
        width: 40%;
        background-image: url(../img/top/bg_manager_min.png);
        background-position: center;
        padding-top: 0;
        margin-top: 0;
        top: 30px;
    }

    .conceptItem.message p {
        border-left: none;
        padding-left: 0;
        margin-left: 0;
    }
}

/**/
section.message {
    background-image: url(../img/top/bg_message.png);
    background-attachment: fixed;
    background-size: cover;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    letter-spacing: 0.1em;
}

section.message .messageDetail {
    padding: 40px;
    padding: 4rem;
    color: #fff;
    line-height: 2.3;
}

section.message .messageDetail h3 {
    font-size: 36px;
    font-size: 3.6rem;
    color: #fff !important;
    text-align: center;
    margin-bottom: 40px;
    font-weight: normal;
    font-style: italic;
}

section.message .messageDetail h3:first-letter {
    color: #fff !important;
}

section.message .messageDetail h3 > span {
    display: block;
    font-size: 0.6em;
    line-height: 1.2;
}

section.message .messageDetail p {
    font-size: 15px;
    font-size: 1.5rem;
    margin-top: 10px;
    line-height: 2.3;
    text-align: center !important;
}

@media screen and (max-width: 640px) {
    section.message .messageDetail {
        padding: 0;
    }

    section.message .messageDetail p {
        text-align: left !important;
    }
}

/**/
.postListSection {
    letter-spacing: 0.1em;
}

.postListSection h3 {
    font-size: 36px;
    font-size: 3.6rem;
    color: #d01027;
    margin-top: 10px;
    letter-spacing: 0.5;
    line-height: 1.2;
    text-align: center;
    position: relative;
    margin-bottom: 20px;
}

.postListSection h3:before {
    content: "";
    display: block;
    left: 50%;
    bottom: 100%;
    margin-left: -1px;
    width: 2px;
    height: 120px;
    background: #d01027;
    position: absolute;
    margin-bottom: 10px;
}

.postListSection h3 span {
    font-size: 15px;
    font-size: 1.5rem;
    color: #000;
    display: block;
}

.postListSection ul.postList {
}

.postListSection ul.postList li {
    width: 50%;
    float: left;
    padding-left: 0;
    box-sizing: border-box;
    position: relative;
    padding-left: 100px;
}

.postListSection ul.postList li:before {
    display: none;
}

.postListSection ul.postList li:nth-child(odd) {
    padding-right: 40px;
}

.postListSection ul.postList li:nth-child(even) {
    padding-left: 140px;
}

.postListSection ul.postList p {
    width: 100px;
    position: absolute;
    left: 0;
    top: 0;
}

.postListSection ul.postList li:nth-child(even) p {
    left: 40px;
}

.postListSection ul.postList h4 {
    border-bottom: none;
    padding-bottom: 0;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
}

.postListSection ul.postList h4 a {
    display: block;
}

.postListSection .btnArea {
    margin: 20px 0 40px;
    text-align: center;
}

.postListSection .moreBtn {
    display: inline-block;
    margin: auto;
    padding: 3px 15px;
    background: #d01027;
    color: #fff;
    font-size: 13px;
    font-size: 1.3rem;
}

.postListSection .moreBtn:hover {
    opacity: 0.7;
}

@media screen and (max-width: 640px) {
    .postListSection ul.postList li {
        width: 100%;
        float: none;
        padding: 0 !important;
    }

    .postListSection ul.postList li p {
        position: inherit;
        width: inherit;
    }
}

.postListBox {
}

.postListBox li {
    width: 33.33%;
    float: left;
    /*box-sizing: border-box;
	padding: 0 10px!important;*/
    margin-bottom: 0;
}

.postListBox li:before {
    display: none !important;
}

.postListBox li .bannerImage {
    width: 100%;
    height: auto;
}

.flexslider_c {
    padding-bottom: 0 !important;
}

@media screen and (max-width: 640px) {
    .flexslider_c {
        max-width: 90% !important;
    }
}


/* =========================================
products
========================================= */
.products_ac h4 {
    border-bottom: #ddd solid 1px;
    width: 100%;
}

.products_ac ul {
    padding: 25px 25px 35px;
    display: block;
}

.products_ac ul li {
    padding-left: 0;
}

.products_ac ul li:before {
    content: inherit;
    display: none;
}

.products_ac ul.noImage {
    padding-top: 10px;
}

.products_ac ul.noImage li {
    margin-top: 10px;
}

.products_ac ul.noImage li a {
    margin-right: 10px;
    border: solid 1px #ddd;
    border-radius: 5px;
    padding: 15px 10px;
    text-align: center;
    background: #fbfbfb;
}

.products_ac ul.noImage li a > img {
    display: none;
}

.products_ac ul.noImage li a span {
    margin: 0;
}

#product_news > h3 {
    margin-left: 0 !important;
    margin-top: 20px !important;
}

@media screen and (max-width: 640px) {
    .products_ac ul.noImage li {
        border-top: none;
        margin-top: 0px;
    }

    .products_ac ul.noImage li a {
        margin-right: 0;
    }
}

/* =========================================
single_products
========================================= */
.single_products {
    border-top: none !important;
}

.single_products_title h2 {
    text-align: left;
}

.single_products_title h2:after {
    display: none;
}

.single_products_title h2 small {
    font-size: 15px;
    font-size: 1.5rem;
    margin-left: 10px;
}

.single_products .single_products_image_list {
    text-align: center;
}

.single_products .single_products_image_list li {
    float: none;
    display: inline-block;
    padding-left: 0;
}

.single_products .single_products_image_list li a {
    border: solid 1px #fff;
    padding: 0;
}

.single_products .single_products_image_list li a.active {
    border-bottom-width: 1px;
    border-color: #D01126;
}

@media screen and (min-width: 641px) {
    .single_products_photos,
    .single_products_information {
        width: 48% !important;
    }
}

.single_products_description h3 {
    margin: 20px 0;
    font-weight: normal;
}

.single_products_description h3:first-letter {
    color: inherit;
}

.single_products_description h4 {
    border-bottom: none;
    color: #d01027;
    font-size: 16px;
    margin-bottom: 5px;
}

.single_products .single_products_data {
    background: none;
    margin: 0;
    padding: 0;
}

.single_products .single_products_data dl {
    font-size: 14px;
}

.single_products .single_products_data dl dt {
    font-size: 14px;
}

.single_products ul li:before {
    display: none;
}

.single_products ul.imgList li {
    margin-right: 20px;
    width: 186px;
    padding: 15px;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: top;
}

.single_products ul.imgList li:nth-child(4n) {
    margin-right: 0px;
}

.single_products ul.imgList li p {
    height: 200px;
}

.single_products ul.imgList li p img {
    max-height: 200px;
    width: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.single_products ul.imgList li p {
    height: 200px;
    border-bottom: #ddd solid 1px;
    padding-bottom: 10px;
    margin-bottom: 5px;
    position: relative;
}

.single_products ul.imgList li:last-child {
    margin-right: 0px;
}

.single_products .imgList img {
    margin: 0 auto;
    display: block;
}

.single_products .imgList a {
    color: #333;
    text-decoration: none;
}

.single_products ul.imgList li .img {
    display: block;
    padding-top: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.single_products ul.imgList li .name,
.single_products ul.imgList li .detail {
    display: block;
    text-align: center;
}

.single_products ul.imgList li .name {
    font-weight: bold;
    font-size: 1.1em;
    margin: 10px 0 0 0;
    line-height: 1.2;
}

@media screen and (max-width: 640px) {
    .single_products ul.imgList li {
        margin-right: 0;
        width: 47%;
        padding: 10px;
        margin-bottom: 20px;
        box-sizing: border-box;
    }

    .single_products ul.imgList li p {
        max-height: 100%;
    }
}

.single_products_same_category h2 {
    border: none !important;
}


/* =========================================
seminar
========================================= */
.seminar_box02_r .seminar_box_title {
}

.seminar_box02_r .seminar_box_title h3 {
    background: #999;
    color: #fff !important;
    font-size: 20px;
    font-size: 2.0rem;
    padding: 10px 20px;
    margin-bottom: 0;
}

.seminar_box02_r .seminar_box_title h3:first-letter {
    color: #fff !important;
}

.seminar_box02_r h3 .linkIcon {
    display: inline-block;
    margin-left: 5px;
}

.seminar_box02_r h3 .linkIcon a:hover {
    opacity: 0.7;
}

.seminar_box02_r h3 .linkIcon img {
    width: 20px;
    margin: 3px 0;
}

.seminar_box02_r .seminar_box_title .date {
    background: #898989;
    color: #fff;
    padding: 10px 20px;
}

/* =========================================
g21
========================================= */
.g21_bg00 {
    background: none !important;
}

h2.grp_top_log:after {
    display: none;
}

.g21_tabBox {
    padding-top: 50px !important;
    position: relative;
}

.g21_tabBox .tabBox .tab ul {
    padding-right: 350px;
}

.g21_tabBox .contactBtnArea {
    position: absolute;
    right: 0;
    top: 44px;
    max-width: 330px;
    text-align: center;
}

.g21_tabBox .contactBtnArea .contactBtn {
    display: block;
    background: #fff;
    border: solid 1px #d01027;
    padding: 9px 20px;
    color: #d01027;
    border-radius: 3px;
    text-align: center;
}

.g21_tabBox .contactBtnArea .contactBtn > span {
}

.g21_tabBox .contactBtnArea .contactBtn > span:after {
    display: inline-block;
    margin-left: 10px;
    content: ">";
}

@media screen and (max-width: 640px) {
    .g21_tabBox .tabBox .tab ul {
        padding-right: 0;
    }

    .g21_tabBox .contactBtnArea {
        position: inherit;
        max-width: inherit;
        width: 100%;
        top: inherit;
    }

    .g21_tabBox .contactBtnArea .contactBtn {
        margin: 0 20px;
    }
}

.g21_step {
}

.g21_step .contents {
    padding-bottom: 20px;
}

.g21_step h4 {
    border: none;
    margin-bottom: 30px;
}

.g21_step .g21_meyasu_l {
    padding: 15px;
    width: 310px;
    position: relative;
    box-sizing: border-box;
}

.g21_step .g21_meyasu_l:not(.noArrow):after {
    border-top: 20px solid #006699;
    border-left: 155px solid transparent;
    border-right: 155px solid transparent;
    content: "";
    position: absolute;
    left: 0;
    top: 100%;
}

.g21_step .g21_meyasu_l.bg_water:after {
    border-top-color: #65aadd;
}

.g21_step .g21_meyasu_l.bg_hai:after {
    border-top-color: #dcdcdc;
}

.g21_step .g21_meyasu_l.bg_lime:after {
    border-top-color: #f8f9f0;
}

.g21_step .g21_meyasu_l.bg_shu:after {
    border-top-color: #ce4e38;
}

.g21_step .g21_meyasu_l.bg_orange:after {
    border-top-color: #df6900;
}

.g21_step .g21_meyasu_l.bg_yellow:after {
    border-top-color: #ee912d;
}

.g21_step .g21_meyasu_l.bg_beige:after {
    border-top-color: #b6a96e
}

.g21_step .g21_meyasu_l.bg_emerald:after {
    border-top-color: #0bc6ac;
}

.g21_step .g21_meyasu_l.bg_blue:after {
    border-top-color: #3493c6;
}

.g21_step .g21_meyasu_l.bg_purple:after {
    border-top-color: #ad73c5;
}

.g21_step .g21_meyasu_l.bg_azuki:after {
    border-top-color: #7e608a;
}

.g21_step .g21_meyasu_l.bg_navy:after {
    border-top-color: #006699;
}

.g21_step .g21_meyasu_l h3,
.g21_step .g21_meyasu_l h3:first-letter {
    color: #fff !important;
}

.g21_step .g21_meyasu_l h3 {
    margin-bottom: 5px !important;
}

.g21_step .g21_meyasu_l h4,
.g21_step .g21_meyasu_r h4 {
    font-weight: normal;
    line-height: 1.4;
    opacity: 0.8;
    margin-bottom: 5px;
}

.g21_step .g21_meyasu_l p {
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.13);
    color: rgba(255, 255, 255, 0.8);
}

.g21_step .g21_meyasu_l p {
    display: table;
    width: 100%;
    box-sizing: border-box;
}

.g21_step .g21_meyasu_l p .pr {
    display: table-row;
}

.g21_step .g21_meyasu_l p .ph,
.g21_step .g21_meyasu_l p .pd {
    display: table-cell;
    vertical-align: middle;
}

.g21_step .g21_meyasu_l p .ph {
    font-size: 13px;
    font-size: 1.3rem;
    width: 25%;
    text-align: center;
}

.g21_step .g21_meyasu_l p .pd {
    padding-left: 10px;
}

.g21_step .g21_meyasu_l.btnArea {
    padding: 0;
}

.g21_step .g21_meyasu_l.btnArea .btn {
    display: block;
    background: #d01027;
    padding: 16px 20px;
    color: #fff;
    border-radius: 3px;
    text-align: center;
}

.g21_step .g21_meyasu_l.btnArea .btn > span:after {
    display: inline-block;
    margin-left: 10px;
    content: ">";
}

.g21_step .g21_meyasu_r {
    width: 600px;
}

.g21_step .g21_meyasu_r h4:first-letter {
    display: inline-block;
    margin-right: 5px;
    color: #d2cfc7;
}

.g21_step .g21_meyasu_r h4 a {
    text-decoration: underline;
}

@media screen and (max-width: 640px) {
    .g21_step .g21_meyasu_l {
        width: auto;
    }

    .g21_step .g21_meyasu_l:after {
        display: none;
    }

    .g21_step .g21_meyasu_r {
        width: auto;
        padding: 10px;
    }
}

/* g21_follow */
.g21_follow .g21_follow_box {
    border-radius: 6px;
    padding: 50px;
    padding: 5.0rem;
}

.g21_follow .g21_follow_box .logo_gplus {
    margin-bottom: 10px;
}

.g21_follow .g21_follow_box h3 {
    font-weight: normal;
    margin-bottom: 20px;
}

.g21_follow .g21_follow_box hr {
    margin-top: 20px;
}

@media screen and (max-width: 640px) {
    .g21_follow .g21_follow_box {
        padding: 20px;
        padding: 2.0rem;
    }

    .g21_follow .g21_follow_box .logo_gplus {
        width: 100px;
    }
}


/* =========================================
noticeBox
========================================= */
.noticeBox {
    color: #bd1630;
    padding: 40px;
    padding: 4.0rem;
    border-radius: 5px;
    background: #f7edee;
    line-height: 1.6;
    /*border: solid 3px #bd1630;*/
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.noticeBox .noticeBox_title {
    color: #bd1630;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

.noticeBox .noticeBox_text {
    color: #bd1630;
    line-height: 1.4;
}

.noticeBox ul {
    margin-top: 10px;
}

.noticeBox ul li {
    margin-top: 5px;
}

.noticeBox a {
    color: #e15965 !important;
}

.noticeBox hr {
    background-color: #e0b4b9;
    margin: 20px 0;
}

@media screen and (max-width: 640px) {
    .noticeBox {
        padding: 20px;
        padding: 2.0rem;
    }
}


/* =========================================
Form
========================================= */
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
    border-radius: 0;
    -webkit-box-sizing: content-box;
    -webkit-appearance: button;
    appearance: button;
    border: none;
    box-sizing: border-box;
    cursor: pointer;
}

input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
    display: none;
}

input[type="submit"]::focus,
input[type="button"]::focus {
    outline-offset: -2px;
}

.formTitle {
    display: block;
}

.formTitle .formTitle_text {
    font-size: 16px;
    font-size: 1.6rem;
    display: inline-block;
    border-bottom: 1px solid #d01027;
    padding-bottom: 5px;
    margin-bottom: 10px;
    font-weight: bold;
}

.formTitle .required {
    background: #d01027;
    color: #fff;
    font-size: 10px;
    padding: 3px 6px;
    margin-left: 10px;
    vertical-align: text-bottom;
}

.formTitle.sub {
    margin-top: 10px;
}

.formTitle.sub .formTitle_text {
    font-size: 14px;
    font-size: 1.4rem;
    border: none;
    padding-bottom: 0;
    color: #5a5a5a;
}

form .colBox .col {
    margin-bottom: 10px !important;
}

form .btnArea {
    text-align: center;
}

form fieldset {
    border: none;
    padding-left: 20px;
}

form input[type="submit"] {
    min-width: 200px;
    line-height: 40px;
    padding: 0 20px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    background: #d01027;
    color: #fff;
    text-align: center;
    border: none;
    font-size: 15px;
    cursor: pointer;
}

form input[type="submit"]:hover {
    background: #B41124;
}

textarea, input[type="text"], .tagInput + .tag-editor, input[type="search"], input[type="tel"], input[type="url"], input[type="email"], input[type="password"], input[type="datetime"], input[type="number"], input[type="email"], select, .select2 .selection .select2-selection {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    -ms-box-shadow: none;
    -o-box-shadow: none;
    box-shadow: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    border: solid 1px #cecece;
    width: 100%;
    margin: 5px 0;
    padding: 10px;
    -webkit-appearance: none;
    font-size: 14px;
    font-size: 1.4rem;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none;
    text-indent: 0.01px;
    text-overflow: '';
    background-color: #fff;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cg%20transform%3D%22rotate%280%2C10%2C10%29%22%3E%3Cpolygon%20points%3D%2219.2%2C4.4%2016.5%2C4.4%2010%2C13.5%203.6%2C4.4%200.9%2C4.4%2010%2C17.3%22%20fill%3D%22%23999%22/%3E%3C/g%3E%3C/svg%3E");
    background-position: right 10px center;
    background-repeat: no-repeat;
    background-size: 12px;
    line-height: 1.25;
}

form[action="/seminars/"] {
    margin-top: 40px;
}

form[action="/seminars/"] select {
    width: 200px;
}

textarea.err, input[type="text"].err, .tagInput.err + .tag-editor, input[type="search"].err, input[type="tel"].err, input[type="url"].err, input[type="email"].err, input[type="password"].err, input[type="datetime"].err, input[type="number"].err, input[type="email"].err, select.err, .select2.err .selection .select2-selection {
    border-color: #cc9999;
    background: #efdcdf;
}

input[type="radio"] {
    display: none;
}

input[type="radio"] + label {
    position: relative;
    display: inline-block;
    padding: 3px 3px 3px 24px;
    cursor: pointer;
}

input[type="radio"] + label.block {
    display: block;
}

input[type="radio"] + label:before, input[type="radio"] + label:after {
    position: absolute;
    content: '';
    top: 50%;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    -ms-border-radius: 100%;
    -o-border-radius: 100%;
    border-radius: 100%;
    -webkit-transition: all 0.2s;
    -moz-transition: all 0.2s;
    -ms-transition: all 0.2s;
    -o-transition: all 0.2s;
    transition: all 0.2s;
}

input[type="radio"] + label:before {
    left: 0;
    width: 14px;
    height: 14px;
    margin-top: -8px;
    background: #fdfdfd;
    border: 1px solid #ccc;
}

input[type="radio"] + label:after {
    opacity: 0;
    left: 4px;
    width: 8px;
    height: 8px;
    margin-top: -4px;
    background: #d01027;
    -webkit-transform: scale(2);
    -moz-transform: scale(2);
    -ms-transform: scale(2);
    -o-transform: scale(2);
    transform: scale(2);
}

input[type="radio"]:checked + label:before {
    background: #fff;
    border: 1px solid #d01027;
}

input[type="radio"]:checked + label:after {
    opacity: 1;
    -webkit-transform: scale(1);
    -moz-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
}

@media screen and (max-width: 640px) {
    form[action="/seminars/"] {
        text-align: center;
    }

    form[action="/seminars/"] select {
        width: 100%;
    }
}

/******************************
  recruit,company  base
******************************/
.page_sidebar {
    float: left;
    width: 250px;
    margin-top: 20px;
}

.clearfix .page_contents {
    float: right;
    width: 850px;
    margin-top: 20px;
    padding-left: 20px;
    box-sizing: border-box;
}

.page_contents p {
    font-size: 15px;
    font-size: 1.5rem;
}

.page_contents span {
    font-size: 15px;
    font-size: 1.5rem;
}

@media screen and (max-width: 640px) {
    .page_sidebar {
        width: 100%;
    }

    .clearfix .page_contents {
        width: 100%;
        padding-left: 0;
    }
}

.page_contents {
    margin-top: 20px;
}

.page_contents section {
    padding: 0;
}

.page_contents .title_border_l {
    margin-bottom: 15px;
    border-left: 5px solid #d01027;
    font-size: 18px;
}

.page_contents .contents_ml {
    width: 100%;
    padding: 0;
}

/******************************
  sidebar
******************************/
.page_sidebar menu {
    margin: 0;
    padding: 0;
}

.site-content .page_sidebar ul {
    margin-top: 0;
}

.site-content .page_sidebar ul li {
    position: relative;
    margin-bottom: 0;
    padding-left: 0;
    background: #f5f5f5;
    border-bottom: 1px solid #fff;
    box-sizing: border-box;
}

.site-content .page_sidebar ul li:before {
    display: none;
}

.site-content .page_sidebar ul li:after {
    content: ">";
    display: block;
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -7px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1;
}

.site-content .page_sidebar ul li.active {
    background: #f1e0e1;
    border-bottom: 1px solid #d01027;
}

.site-content .page_sidebar ul li.active:after {
    display: none;
}

.page_sidebar ul li a {
    display: block;
    padding: 25px 20px;
    color: #000;
    text-decoration: none;
}

.page_sidebar ul li span {
    display: block;
    font-family: Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
}

.page_sidebar ul li .menu_title {
    font-size: 18px;
}

.page_sidebar ul li .menu_title_sub {
    font-size: 12px;
    font-weight: bold;
}


/******************************
  recruit top
******************************/
.page_contents .adopt_type .p {
    font-size: 12px;
}

.page_contents .adopt_type .adopt_left {
    float: left;
    width: 50%;
    margin-bottom: 45px;
    padding-right: 5px;
    box-sizing: border-box;
}

.page_contents .adopt_type .adopt_right {
    float: left;
    width: 50%;
    margin-bottom: 45px;
    padding-left: 5px;
    box-sizing: border-box;
}

@media screen and (max-width: 640px) {
    .page_contents .adopt_type .adopt_left {
        float: none;
        width: 100%;
    }

    .page_contents .adopt_type .adopt_right {
        float: none;
        width: 100%;
    }
}

.page_contents .adopt_image br,
.page_contents .adopt_information_box .adopt_information br {
    display: none;
}

.page_contents .adopt_image img {
    width: 100%;
}

.page_contents .adopt_information_box {
    padding: 0 15px;
    border-radius: 0 0 10px 10px;
}

.page_contents .adopt_information_box .adopt_information {
    padding: 20px 0;
    text-align: center;
}

.page_contents .adopt_information_box .adopt_information p {
    text-align: left;
    margin: 0;
}

.page_contents .adopt_information_box .adopt_information span {
    display: block;
    margin-bottom: 10px;
    text-align: center;
}

.page_contents .adopt_information_box .adopt_information a {
    display: inline-block;
}

.page_contents .adopt_information_box .adopt_information .contact_box p {
    text-align: center;
    margin-bottom: 10px;
}

.page_contents .adopt_information_box .adopt_information .contact_box .contact {
    padding: 20px;
    background: #fff;
    border-radius: 10px;
}

/*new_graduate*/
.page_contents .new_graduate .adopt_information_box {
    background: #f9f3f3;
}

.page_contents .new_graduate .adopt_information_box .adopt_information {
    border-bottom: 1px dashed #deb0b3;
}

/*mid_carrer*/
.page_contents .mid_carrer .adopt_information_box {
    background: #f3f5f9;
}

.page_contents .mid_carrer .adopt_information_box .adopt_information {
    border-bottom: 1px dashed #bfcbdc;
}

.page_contents .adopt_information_box .adopt_information.no_imformation_border {
    border: none !important;
}

.page_contents .mid_carrer .adopt_information_box .adopt_information span {
    text-align: left;
}

.page_contents .mid_carrer .adopt_information_box .adopt_information .place {
    margin-bottom: 0;
}

/*message*/
.page_contents .w550 {
    width: 60%;
}

.page_contents .w280 {
    width: 30%;
}

@media screen and (max-width: 640px) {
    .page_contents .w550 {
        width: 100%;
    }

    .page_contents .w280 {
        width: 100%;
    }
}

/******************************
  recruit new_graduate,mid_carrer
******************************/
.page_contents .adopt_left .adopt_message {
    padding-right: 20px;
}

.page_contents .adopt_right .adopt_message {
    padding-left: 20px;
}

.page_contents .contents_ml h4 {
    margin: 0;
    padding: 0;
}

.page_contents .contents_ml h4 + p {
    margin: 0;
}

.page_contents .contents_ml h5 + .m50 {
    margin-bottom: 45px;
}

.page_contents .recruit_title01 {
    border: none;
}

.page_contents .recruit_list {
    margin: 0 0 45px 0;
}

.page_contents .recruit_list li {
    padding: 5px 0;
}

.page_contents .recruit_list li div {
    width: 100%;
    box-sizing: border-box;
}

.page_contents .recruit_list li div label {
    padding: 0 0 0 20px;
    line-height: 1.8;
    box-sizing: border-box;
}

.page_contents .recruit_list li div label br {
    display: none;
}

.page_contents .recruit_list li div p {
    width: 680px;
    margin: 0;
    padding: 0 20px 0 0;
    box-sizing: border-box;
}

@media screen and (max-width: 640px) {
    .page_contents .adopt_left .adopt_message {
        padding-right: 0;
    }

    .page_contents .adopt_right .adopt_message {
        padding-left: 0;
    }

    .page_contents .recruit_list li div label {
        padding: 0;
    }

    .page_contents .recruit_list li div p {
        width: 100%;
    }
}


/******************************
  recruit message
******************************/
.page_contents .contents_ms {
    width: 100%;
    position: relative;
}

.page_contents .recruit_company_l {
    width: 60%;
}

.page_contents .recruit_company_r {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 30%;
    margin: 0;
}

.page_contents .recruit_company_l h3 + p {
    margin-bottom: 45px;
}

@media screen and (max-width: 640px) {
    .page_contents .contents_ms {
        box-sizing: border-box;
    }

    .page_contents .recruit_company_l {
        width: 100%;
    }

    .page_contents .recruit_company_r {
        position: relative;
        width: 100%;
    }

}

/******************************
  recruit system
******************************/
.page_contents .contents_ml .m40 + h3,
.page_contents .contents_ml .m50 + h3,
.page_contents .contents_ml .m70 + h3 {
    margin-top: 45px;
}

.page_contents .contents_ml .text_indent53 {
    text-indent: -70px;
    padding: 0 0 0 70px;
}

.page_contents .contents_ml .text_indent53 + .m50,
.page_contents .contents_ml .text_indent53 + .m70 {
    margin-bottom: 15px;
}

.page_contents .contents_ml .m45 {
    margin-bottom: 45px;
}

/******************************
  recruit senior
******************************/
.page_contents .recruit_navi li {
    width: 255px;
}

.page_contents .contents_l {
    width: 100%;
}

.page_contents .w475 {
    width: 55%;
}

.page_contents .w365 {
    width: 40%;
}

.page_contents .contents_m {
    width: 100%;
}

.page_contents .flexslider_c .slides li {
    padding: 0 5px;
}

.page_contents .flexslider_c {
    margin: 0 38px;
}

@media screen and (max-width: 640px) {
    .page_contents .w475 {
        width: 100%;
    }

    .page_contents .w365 {
        width: 100%;
    }

    .page_contents .flexslider_c {
        margin: 0 auto;
    }
}

/******************************
  recruit qa
******************************/
.page_contents .m45 {
    margin-bottom: 45px;
}

.page_contents .contents_mls {
    width: 100%;
}

.page_contents .wrapper.m30 + .wrapper {
    margin-top: 45px;
}

.page_contents .qa_title + p {
    display: none;
}

.page_contents .qa_title div {
    padding-left: 20px;
    box-sizing: border-box;
}

.page_contents .qa_title p {
    padding-right: 20px;
    box-sizing: border-box;
}

.page_contents .qa_answer {
    margin-bottom: 0;
    padding: 10px 0;
}

@media screen and (max-width: 640px) {
    .page_contents .qa_title div {
        padding-left: 0;
    }

    .page_contents .qa_answer .qa_title div {
        padding-left: 10px;
    }

    .page_contents .qa_title p {
        padding-right: 10px;
    }

    .page_contents .qa_answer .qa_title p {
        padding-left: 10px;
        padding-right: 10px;
    }
}


/******************************
  company business
******************************/
.site-content .page_contents h2 {
    margin-top: 0;
}

.site-content .page_contents h2:after {
    display: none;
}

/******************************
  company business
******************************/
.page_contents h3.text_red.text26.m60 {
    margin-bottom: 30px;
}

.site-content .contents_mm {
    width: 100%;
    padding: 7px 0;
}

.page_contents .w170 {
    padding: 5px 20px 0;
    box-sizing: border-box;
}

.page_contents .w660 {
    width: 660px;
    padding-right: 20px;
    box-sizing: border-box;
}

.site-content .page_contents .bg_stripe h3.text14 {
    margin: 0;
    font-size: 14px;
}

.site-content .page_contents .bg_stripe h3.text14:first-letter {
    color: #333 !important;
}

.site-content .page_contents .bg_stripe h3:first-letter {
    color: #000;
}

.site-content .page_contents .bg_stripe p {
    margin: 0;
    font-size: 12px;
}

@media screen and (max-width: 640px) {
    .page_contents .contents_mm {
        padding: 7px 0;
    }

    .page_contents .w660 {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
    }
}

/******************************
  company access
******************************/
.page_contents .contents_mm h4.text18.title_border_b.m10 {
    padding-bottom: 0;
    margin-bottom: 8px;
}

.page_contents .contents_mm h4 + p {
    display: none;
}

.page_contents .bg_stripe .contents_mm {
    position: relative;
}

.page_contents .access_list {
    margin: 0;
    font-size: 14px;
}

.page_contents .access_list .access_list03 {
    width: 285px;
}

.page_contents .access_list .access_list04 {
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -12px;
}

@media screen and (max-width: 640px) {
    .page_contents .access_list .access_list04 {
        position: static;
        top: auto;
        right: auto;
        margin-top: 0;
    }
}

/******************************
  showroom
******************************/
.page_contents .about_showroom {
    margin-bottom: 60px;
}

.page_contents .about_showroom p {
    font-size: 16px;
    text-align: center;
}

.page_contents .showroom_list .col4 {
    margin-bottom: 70px;
}

.page_contents .showroom_information {
    margin-top: 20px;
}

.page_contents .showroom_information {
    margin-top: 20px;
    padding: 0 10px;
    border-left: 1px solid #d01027;
}

.page_contents .showroom_information span {
    /* display: block; */
}

.page_contents .showroom_information .showroom_place {
    margin-bottom: 5px;
    font-size: 16px;
    color: #d01027;
}

.page_contents .showroom_information .showroom_name {
    font-size: 20px;
    color: #000;
}

.page_contents .showroom_information .showroom_name_en {
    font-size: 12px;
    color: #666666;
}

.feat_leaning_btn {
    text-align: center;
}

.feat_leaning_btn a {
    min-width: 200px;
    line-height: 40px;
    padding: 0 20px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    background: #d01027;
    color: #fff;
    text-align: center;
    border: none;
    font-size: 15px;
}

/******************************
  showroom detail
******************************/
.page_contents .showroom_menu ul {
    text-align: center;
    font-size: 0;
}

.page_contents .showroom_menu ul li {
    display: inline-block;
    position: relative;
    width: 135px;
    padding: 0;
    font-size: 16px;
    text-align: center;
}

.page_contents .showroom_menu ul li:before {
    display: none;
}

.page_contents .showroom_menu ul li.active a {
    color: #d01027;
}

.page_contents .showroom_menu ul li .showroom_arrow {
    display: inline-block;
    width: 15px;
    height: 15px;
    border: 1px solid #d01027;
    border-radius: 50%;
    font-size: 12px;
    color: #d01027;
}

.page_contents .showroom_menu ul li .showroom_arrow span {
    display: block;
    position: relative;
    top: -1px;
    left: 2px;
    font-size: 12px;
    text-align: center;
}

.page_contents .showroom_menu ul li.active .showroom_arrow {
    display: none;
}

.page_contents .showroom_title_box {
    position: relative;
    margin-bottom: 40px;
}

.page_contents .showroom_title_box .showroom_title {
    padding: 20px 30px;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}

.page_contents .showroom_title_box .showroom_title .showroom_place {
    float: left;
    display: block;
    padding-right: 30px;
    line-height: 58px;
    border-right: 1px solid #999999;
    font-size: 17px;
    color: #333333;
}

.page_contents .showroom_title_box .showroom_title .showroom_name {
    float: left;
    display: block;
    padding-left: 30px;
    font-size: 28px;
    color: #333333;
}

.page_contents .showroom_title_box .showroom_title .showroom_name_en {
    display: block;
    font-size: 11px;
    color: #d01027;
}

.page_contents .showroom_title_box .apply_button {
    display: none;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -29px;
    padding: 0 60px;
    background: #d01027;
    line-height: 58px;
    font-size: 14px;
    color: #fff;
}

.page_contents .showroom_title_box .apply_button span {
    margin-left: 20px;
}

.page_contents .showroom_slider_box {
    margin-bottom: 60px;
}

.page_contents .showroom_slider_box .flexslider .slides img {
    margin: 0 auto;
}

.page_contents .showroom_slider_box .flexslider .slides img {
    margin: 0 auto;
}

.page_contents .showroom_slider_box .showroomSlider {
    margin-bottom: 60px;
}

.page_contents .showroom_slider_box .showroomSliderNav {
    max-width: 1100px;
}

.page_contents .showroom_slider_box .showroomSliderNav li {
    padding: 0 5px;
}

.page_contents .showroom_slider_box .showroomSliderNav li.flex-active-slide img {
    margin: -4px;
    border: 4px solid #d01027;
}

.page_contents .map_box .showroom_information {
    padding-left: 0;
    border-left: none;
}

.page_contents .map_box .showroom_information {
    padding-left: 0;
    border-left: none;
}

.page_contents .map_box .showroom_information .information_row {
    padding: 15px 0;
    border-bottom: 1px dashed #999999;
}

.page_contents .map_box .showroom_information .information_row:last-child {
    border-bottom: none;
}

.page_contents .map_box .showroom_information .information_row .information_left {
    display: block;
    float: left;
    width: 13%;
    color: #d01027;
}

.page_contents .map_box .showroom_information .information_row .information_right {
    display: block;
    float: left;
    width: 87%;
    color: #333;
}

.page_contents .map_box .showroom_information .information_row .information_right a:nth-child(n+2) {
    margin-left: 3%;
}

@media screen and (max-width: 640px) {
    .page_contents .showroom_menu ul {
        text-align: justify;
    }

    .page_contents .showroom_menu ul li .showroom_arrow {
        display: none;
    }

    .page_contents .showroom_title_box .showroom_title {
        padding: 20px 10px;
    }

    .page_contents .showroom_title_box .showroom_title .showroom_place {
        padding-right: 15px;
        font-size: 15px;
    }

    .page_contents .showroom_title_box .showroom_title .showroom_name {
        padding-left: 15px;
        font-size: 22px;
    }

    .page_contents .showroom_title_box .apply_button {
        position: static;
        top: 50%;
        right: 0;
        margin-top: 30px;
        padding: 0 30px;
        text-align: center;
    }

    .page_contents .showroom_slider_box .showroomSliderNav .slides {
        width: 100% !important;
        transform: none !important;
    }

    .page_contents .showroom_slider_box .showroomSliderNav .slides li {
        width: 20% !important;
        box-sizing: border-box;
    }

    .page_contents .showroom_slider_box .showroomSliderNav li.flex-active-slide img {
        margin: -2px;
        border: 2px solid #d01027;
    }

    .page_contents .map_box .showroom_information .information_row .information_left {
        width: 100%;
    }

    .page_contents .map_box .showroom_information .information_row .information_right {
        width: 100%;
    }

    .page_contents .map_box .showroom_information .information_row .information_right a:nth-child(n+2) {
        margin-left: 0;
    }
}

/*common.css*/

/* ボディ
---------------------------------------------------- */
body {
    text-align: center;
    border-left: solid 5px #d01027;
    min-width: 1340px;
}

body > header {
    line-height: 1;
}


/* ヘッダー
---------------------------------------------------- */
header {
    padding: 0;
}

#header a:link {
    text-decoration: none;
    text-decoration-color: none;
}

#header a:visited {
    text-decoration: none;
}

#header {
    max-width: 1140px;
    margin: 0 auto;
    padding: 24px 20px 18px;
    position: relative;
    clear: both;
}

#header h1 img {
    height: 25px;
    margin-right: 24px;
}

.header_top {
    width: 100%;
    text-align: center;
}

.dna_label {
    height: 50px;
}

.header_navi {
    width: 550px;
}

.header_navi ul {
    width: 280px;
}

.header_navi ul li {
    width: 132px;
    padding: 0 8px 0 0;
    float: left;
}

div#header.clearfix > h1.float_l {
    margin-top: 4px;
}

#g_navi > div ul.clearfix > li:hover {
    /*border-top: 2px solid #D01027;*/
    /*background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #f7bcc2), color-stop(0.00, #fff));
background: -webkit-linear-gradient(top, #fff 0%, #f7bcc2 100%);
background: -moz-linear-gradient(top, #fff 0%, #f7bcc2 100%);
background: -o-linear-gradient(top, #fff 0%, #f7bcc2 100%);
background: -ms-linear-gradient(top, #fff 0%, #f7bcc2 100%);
background: linear-gradient(top, #fff 0%, #f7bcc2 100%);*/
}

#g_navi > div ul.clearfix > li.active a,
    /*#g_navi > div ul.clearfix > li:hover a {*/
color: #d01027

;
}

/* サイト内検索実装後にで削除 */
/*
#header ul{
	float:right;
}
 */

.search {
    width: 270px;
    margin: -5px 0 0 0;
    line-height: 1;
    /* display:none; */
}

.search div {
    padding: 0;
}

.header_navi_top {
    width: 550px;
    float: right;
}

.header_navi nav {
    float: right;
    width: 550px;
    padding: 15px 0 0 0;
    letter-spacing: 0.1em;
    text-align: right;
}

.header_navi nav img {
    vertical-align: middle;
}

.header_navi nav a {
    color: #333333;
}

.login_head {
    padding: 2px 5px 2px 5px;
}


/* header add css
------------------------------------------------- */

.hd_top_nav {
    display: none;
}

.hd_l_wrap {
    height: 50px;
    display: flex;
    align-items: center;
}

.hd_nav_text {
    float: left;
    width: 220px;
    line-height: 1;
    position: absolute;
    bottom: -5px;
}

/*h2.hd_banner_cate {
    font-family: inherit;
    font-size: 34px;
    float: right;
    font-weight: 100;
    position: absolute;
    right: 455px;
    top: 50%;
    transform: translatey(-50%);
		    color: rgb(225,225,225);
}*/

/*h2.hd_banner_cate {
	font-family: inherit;
font-size: 34px;
float: right;
font-weight: 100;
position: absolute;
right: 0;
top: 50%;
transform: translate(-415px,-50%);
color: rgb(225,225,225);
}*/


.dna_nav::before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    margin-right: 8px;
    background: url('../images/arrow_r_new.png') center/contain no-repeat;
}

.hd_dna_btn {
    margin-right: 20px;
}

.dna_nav > a {
    color: #D7120E;
    position: relative;
    top: -2px;
    font-size: 16px;
    font-size: 1.6rem;
    font-family: initial;
}

.dna_nav {
    margin: 0 0 3px 23px;
    font-weight: bold;
}

.yoshida_group::before {
    content: "";
    display: inline-block;
    width: 17px;
    height: 17px;
    margin-right: 13px;
    background: url('../images/arrow_r_new.png') center/contain no-repeat;
}

.yoshida_group > a {
    color: #D7120E;
    position: relative;
    top: -2px;
    left: -4px;
    font-size: 16px;
    font-size: 1.6rem;
    font-family: initial;
}

.yoshida_group {
    margin: 0 0 0 23px;
    font-weight: bold;
    display: none;
}

.free_dial {
    transform: translatey(-3px);
}

.phone_mobile {
    transform: translatey(3px);
}

.free_dial::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background: url('../images/icon_tel.png') center/contain no-repeat;
    position: relative;
    margin-right: 5px;
}

.phone_mobile::before {
    content: "";
    display: inline-block;
    width: 20px;
    height: 18px;
    background: url('../images/icon_mobile.png') center/contain no-repeat;
    position: relative;
    margin-right: 5px;
}

.phones {
    display: flex;
    align-items: center;
}

.phones img {
    min-width: 130px;
    height: 16px;
}

.phones a {
    color: #333333;
}

.yoshida_phone_wrap {
    float: left;
    margin-right: 13px;
    position: relative;
    top: -1px;
}

.yoshida_phone {
    float: left;
    font-size: 2.1rem;
    font-weight: bold;
    font-family: initial;
}

.yoshida_phone a {
    color: #333333;
}

.phone_desc {
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 2rem;
    float: left;
    clear: both;
    width: 100%;
    font-family: initial;
}

.hd_wrap {
    width: 114px;
    float: left;
}

.icon_btn_include {
    width: 16px;
    max-height: 16px;
    margin-right: 5px;
    object-fit: contain;
    vertical-align: bottom;
}

.contact_btn {
    margin-left: 20px;
}

.contact_btn > a {
    display: flex;
    padding: 14px 0;
    align-items: center;
    font-size: 12px;
    border-radius: 20px;
    background-color: #E8E8E8;
    width: 140px;
    justify-content: center;
}

.contact_btn > a > .btn_arrow {
    margin-left: 10px;
}

.hd_contact {
    display: flex;
    flex-direction: column;
}

.hd_contact_text {
    position: relative;
    color: #000000;
    font-family: initial;
}

.hd_btn_wrap {
    display: flex;
}

.btn_circle {
    height: 40px;
    width: 40px;
    margin-left: 20px;
    object-fit: contain;
    cursor: pointer;
}

.mypage_btn_text::before {
    content: "";
    width: 15px;
    height: 15px;
    margin-right: 6%;
    float: left;
    background: url('../images/my_icon_w.png') center / contain no-repeat;
    position: relative;
    left: 5px;
    top: -2.5px;
    zoom: 1.2;
}

.mypage_btn_text {
    color: white;
    font-size: 1.3rem;
    position: relative;
    top: 2px;
}

.hd_right {
    margin-left: 20px;
    min-height: 50px;
    float: right;
    display: flex;
    align-items: center;
}

.search_wrap {
    clear: both;
    content: "";
    display: block;
}

.search_glass {
    width: 40px;
    float: left;
    cursor: pointer;
}

.search_glass::before {
    content: "";
    display: inline-block;
    width: 39px;
    height: 39px;
    background: url('../images/btn_mushimegane.png') center/contain no-repeat;
}

.disable_l {
    display: none;
}

.hd_banner {
    position: relative;
    overflow: hidden;
}

.hd_banner_current {
    width: 54.6%;
    height: 100px;
    position: absolute;
    background-color: #9fa1a0;
    z-index: 1;
    top: 70px;
}

.hd_background {
    height: 195px;
    width: 200%;
    background-position: left;
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
    left: 125px;
}

.hd_banner_title {
    font-size: 22px;
    font-weight: bold;
    margin-right: 0;
    float: right;
    position: relative;
    display: inline-block;
    right: 0;
    top: 50%;
    transform: translatey(-50%);
    margin-right: 20px;
    color: #fff;
}

h2.hd_banner_cate {
    font-family: inherit;
    font-size: 34px;
    float: left;
    font-weight: 100;
    position: relative;
    top: 50%;
    transform: translatey(-50%);
    color: #fff;
}

.hd_banner_inner {
    width: 615px;
    position: absolute;
    right: 0;
    float: right;
    height: 100%;
}

/* DIMeヘッダー
---------------------------------------------------- */
#dime header {
    border-top: 4px solid #af2f23;
    padding: 0 0 20px 0;
}

#dime #header {
    width: 940px;
    margin: 0 auto;
    padding: 10px 0 0 0;
}

#dime #header h1 {
    width: 380px;
}

#dime .header_navi {
    width: 280px;
    padding: 12px 0 0 0;
}

#dime .header_navi li {
    width: 132px;
    padding: 0 0 0 8px;
    float: left;
}

/* グローバルナビ
---------------------------------------------------- */

#g_navi ul {
    margin: 0 auto;
}

#g_navi ul li {
    float: left;
}

/* DIMeグローバルナビ
---------------------------------------------------- */
#g_navi_dime {
    border-bottom: 2px solid #af2f23;
    padding: 0 0 10px 0;
}

#g_navi_dime nav {
    width: 940px;
    margin: 0 auto;
    text-align: left;
}

#g_navi_dime span a {
    color: #666666;
    text-decoration: none;
}

#g_navi_dime span a:hover {
    text-decoration: underline;
}

#g_navi_dime span:after {
    content: "　　";
}

#g_navi_dime span:before {
    content: "　　";
}

.nav1 {
    display: flex;
    flex-wrap: wrap;
    max-width: 1140px;
    margin: 0 auto;
    position: relative;
}

#g_navi > div ul {
    margin: 0 auto;
    display: block;
}

.submenu dl {
    background: #d01126;
    margin-bottom: 10px;
}

.submenu dt {
    background: #d01126;
    color: #ffffff;
    font-weight: bold;
    padding: 10px 0 10px 10px;
    width: 100%;
    display: inline-block;
    vertical-align: top;
}

.submenu dd {
    background: #ffffff;
    display: inline-block;
}

#g_navi > div ul.clearfix > li:last-child > a {
}

.submenu dd ul li a {
    color: #333;
    text-decoration: none;
    display: block;
    padding: 10px 0 10px 10px;
}

.submenu dd ul li a:hover {
    color: #000;
    background: #ccc;
}

.submenu dd ul li {
    width: 25%;
    float: left;
    box-sizing: border-box;
    position: relative;
}


/* パンくずナビ
---------------------------------------------------- */
.p_navi {
    width: 1100px;
    margin: 0 auto;
    padding: 20px 0 0 0;
}

.p_navi a {
    text-decoration: underline;
}

.p_navi_border {
    border-bottom: 3px solid #bfbfbf;
}

/* サブナビ
---------------------------------------------------- */
.s_navi {
    max-width: 940px;
    margin: 0 auto 0 auto;
    padding: 10px 0;
    text-align: center;
    letter-spacing: 0.2em;
}

.s_navi_nobg {
    background: none;
}

.s_navi span {
    display: inline-block;
    white-space: nowrap;
    margin: 6px 20px;
}

.s_navi a {
    color: #D21C31;
}

/* ノーマルナビ
---------------------------------------------------- */
.n_navi a {
    color: #666666;
}

.n_navi span {
    white-space: nowrap;
}

.n_navi span:after {
    content: "　　";
}

/* コンテンツ
---------------------------------------------------- */


.contents {
    width: 1100px;
    margin: 0 auto;
    padding: 0 0 50px 0;
}

/*
#index_page .contents_m{
	width:80%;

}
*/
.contents_m {
    width: 1100px;
    margin: 0 auto;
    padding: 40px 0 40px 0;
}

.contents_ml {
    width: 890px;
    margin: 0 auto;
    padding: 20px 0 20px 0;
}

.contents_mls {
    width: 890px;
    margin: 0 auto;
    padding: 10px 0 10px 0;
}

.contents_ms {
    width: 850px;
    margin: 0 auto;
    padding: 0 0 40px 0;
}

.contents_mm {
    width: 850px;
    margin: 0 auto;
    padding: 5px 0 5px 0;
}

.contents_l {
    width: 940px;
    margin: 0 auto;
}

.contents_ls {
    width: 940px;
    margin: 0 auto;
    padding: 50px 0 0 0;
}

.contents_s {
    width: 650px;
    margin: 0 auto;
    padding: 50px 0 50px 0;
}

.contents_sll {
    width: 790px;
    margin: 0 auto;
    padding: 50px 0 50px 0;
}

.contents_sl {
    width: 750px;
    margin: 0 auto;
}

.contents_slm {
    width: 750px;
    margin: 0 auto;
    padding: 50px 0 50px 0;
}

.contents_sm {
    width: 700px;
    margin: 0 auto;
}

.contents_sml {
    width: 700px;
    margin: 0 auto;
    padding: 15px 0 10px 0;
}

.contents_smm {
    width: 650px;
    margin: 0 auto;
    padding: 50px 0 0 0;
}

.contents_sms {
    width: 650px;
    margin: 0 auto;
    padding: 20px 0 0 0;
}

.contents_ssm {
    width: 650px;
    margin: 0 auto;
    padding: 20px 0 20px 0;
}

.contents_sss {
    width: 600px;
    margin: 0 auto;
    padding: 50px 0 50px 0;
}

.contents_ss {
    width: 500px;
    margin: 0 auto;
    padding: 50px 0 50px 0;
}

/* タイトル */
.title_l {
    padding: 0 0 7px 0;
    border-bottom: 3px solid #bfbfbf;
    text-align: center;
}

.title_border_l {
    /* padding:0 0 0 10px; */
    /*border-left:7px solid #d01126;*/
    line-height: 1.3;
}

.title_border_green {
    padding: 0 0 0 10px;
    border-left: 7px solid #20c145;
    line-height: 1.3;
}

.title_border_yellow {
    padding: 0 0 0 10px;
    border-left: 7px solid #c19920;
    line-height: 1.3;
}

.title_border_blue {
    padding: 0 0 0 10px;
    border-left: 7px solid #3399cc;
    line-height: 1.3;
}

.title_border_moss {
    padding: 0 0 0 10px;
    border-left: 7px solid #339933;
    line-height: 1.3;
}

.title_border_b {
    padding: 0 10px 0 10px;
    border-bottom: 1px solid #000000;
}

.title_border_b a {
    color: #333333;
}

.title_border_b02 {
    border-bottom: 1px solid #bfbfbf;
}

.title_m {
    background: #65aadd;
}

.title_ms {
    background: #dfdcdc;
}

.title_ms h2 {
    padding: 10px 0 10px 0;
    text-align: center;
    color: #666699;
}

.title_blue {
    width: 380px;
    margin: 0 auto 30px auto;
    padding: 10px 10px 10px 10px;
    background: #99ccff;
    text-align: center;
}

.title_orange {
    width: 380px;
    margin: 0 auto 30px auto;
    padding: 10px 10px 10px 10px;
    background: #ffbf99;
    text-align: center;
}

.title_green {
    width: 380px;
    margin: 0 auto 30px auto;
    padding: 10px 10px 10px 10px;
    background: #aee8ca;
    text-align: center;
}

.title_purple {
    width: 380px;
    margin: 0 auto 30px auto;
    padding: 10px 10px 10px 10px;
    background: #d0b6e9;
    text-align: center;
}

/* トップページ */
.top_main {
    width: 940px;
}

#Stage_button1 {
    cursor: pointer;
}

#Stage_button2 {
    cursor: pointer;
}

/* インフォメーションエリア */
.info_navi {
    width: 515px;
}

.info_title {
    padding: 0 10px 10px 5px;
    /* border-bottom:3px solid #d01126; */
    border-bottom: #ddd solid 1px;
}

.info_title h4 {
    padding: 0 0 0 10px;
    /* border-left:6px solid #d01126; */
    line-height: 1.4;
    float: left;
}

.info_navi li h5 {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6;
}

.info_title p {
    float: right;
}

.info_title_none {
    border-bottom: none;
}

.info_navi_top_box {
    padding: 10px;

}

#index_page .info_navi_top_box {
    width: 960px;
    margin: 0 auto;

}

.info_navi_top li {
    padding: 5px 10px 5px 10px;
    /* border-top:1px dashed #bfbfbf; */
}

.info_navi_top li:nth-child(1) {
    border-top: none;
}

.info_navi_top li p {
    width: 100px;
    float: left;
}

.info_navi_top li h5 {
    width: 940px;
    float: right;
}

.info_navi_top li h5 a {
    color: #666666;
}

.info_navi li {
    padding: 5px 10px 5px 10px;
    /* border-top:1px dashed #bfbfbf; */
}

.info_navi li:nth-child(1) {
    border-top: none;
}

.info_navi li p {
    width: 100px;
    float: left;
}

.info_navi li h5 {
    width: 345px;
    float: right;
}

.info_navi li h5 a {
    color: #666666;
}

.info_block {
    margin: 0 20px 40px 20px;
    padding: 10px 10px 10px 10px;
    border: 2px solid #F4272A;
}

/* 歯科専用ナビ */
.expert_navi {
    padding: 0 30px 0 30px;
}

.expert_navi li {
    width: 180px;
    padding: 0 25px 0 25px;
    float: left;
}

.expert_navi li h4 {
    padding: 0 0 3px 0;
    border-bottom: 2px solid #d01126;
}

.expert_navi li h4 a {
    color: #333333;
    text-decoration: none;
}

.expert_navi li h4 img {
    padding: 4px 0 0 0;
}

.expert_navi li div img {
    width: 50px;
}

.expert_navi li div p {
    width: 120px;
}

/* 歯科専用バナー */
.top_banner_b img {
    margin: 0 0 10px 0;
    padding: 0 10px 0 10px;
}

/* 商品情報 */
.products_navi01 h4 {
    text-align: center;
}

.products_navi01 li {
    width: 263.4px;
    /*margin:20px 0 0 0;*/
    padding-top: 15px;
    border: 2px solid #bfbfbf;

    margin-right: 10px;
    margin-bottom: 10px;
    float: left;
}

/*
.products_navi01 li:nth-child(odd){
	float:left;
}

.products_navi01 li:nth-child(even){
	float:left;

}


.products_navi01 li:nth-child(1){
	margin:0 10px 0 0;
}

.products_navi01 li:nth-child(2){
	margin:0 10px 0 0;
}

.products_navi01 li:nth-child(3){
	margin:0 10px 0 0;
}
*/

.products_navi01 li:nth-child(4n) {
    margin-right: 0;
}


.products_navi01_l {
    /*	width:223px;*/
    width: 100%;
    text-align: center;
}

.products_navi01_r {
    width: 200px;
    margin: 0 auto;
}

.products_navi01_r div {
    text-align: center;
}

.products_navi02 h4 {
    text-align: center;
}

.products_navi02 li {
    width: 425px;
    margin: 20px 0 0 0;
    padding: 15px 15px 15px 15px;
    border: 2px solid #bfbfbf;
    min-height: 155px;
}

.products_navi02 li:nth-child(odd) {
    float: left;
}

.products_navi02 li:nth-child(even) {
    float: right;
}

.products_navi02 li:nth-child(1) {
    margin: 0;
}

.products_navi02 li:nth-child(2) {
    margin: 0;
}

.products_navi02_l {
    width: 120px;
    padding: 0 0 0 30px;
}

.products_navi02_r {
    width: 216px;
}

.products_navi02_r p {
    padding: 0 5px 0 5px;
}

.products_navi03 li {
    width: 265px;
    padding: 10px 10px 50px 0;
    text-align: center;
    float: left;
}

/* .products_navi03 li:nth-child(4n) {
    padding: 10px 0px 50px 0;
} */

.products_navi03 li div {
    width: 220px;
    padding: 0 0px 5px 0px;
    background: url(../img/common/bg05.png) no-repeat bottom;
    text-align: center;
    display: table-cell;
    vertical-align: middle;
    line-height: 0;
    background-size: contain;
    transform: translateX(20px);
}

.products_navi03 li div a img {
    width: auto;
    max-width: 220px;
    max-height: 220px;
}

.products_navi03 li h4 {
    padding: 5px 0 0 0;
    line-height: 1.3;
    width: 220px;
    transform: translateX(-20px);
}

.products_navi03 li h4 a {
    text-decoration: none;
    color: #333333;
}

.products_navi03 li h5 {
    text-align: center;
}

.products_navi03 li p {
    padding: 10px 0px 0 0px;
}

.products_detail01_l {
    width: 350px;
    min-height: 500px;
    padding: 0 20px 0 0;
    background: url(../img/common/bg06.png) no-repeat right;
}

.products_detail01_l p {
    padding: 0 20px 0 20px;
}

.products_detail01_l .products_pdf {
    margin: 20px 0 0 0;
    text-align: center;
}

.products_detail01_r {
    width: 550px;
    text-align: center;
}

.products_detail02 {
    width: 460px;
    padding: 0 20px 30px 0;
    float: left;
}

.products_detail02:nth-child(2n) {
    padding: 0 0 30px 0;
}

.products_detail02 h4 {
    padding: 0 10px 0 10px;
    background: #b5b5b5;
}

.products_detail02 p {
    padding: 0 10px 0 10px;
}

.products_detail02 img {
    padding: 0 0 10px 0;
}

.products_detail03 {
    margin: 20px 0 0 0;
    padding: 25px 25px 25px 25px;
    border: 1px solid #666666;
}

.products_detail03:nth-child(1) {
    margin: 0;
}

.products_detail03_l {
    width: 330px;
    border: 1px solid #666666;
}

.products_detail03_r {
    width: 520px;
}

.products_detail03_r h4 {
    padding: 5px 15px 5px 15px;
    background: #65aadd;
}

.products_detail03_r p {
    padding: 0 15px 0 15px;
}

.products_detail03_r ul {
    padding: 20px 15px 0 15px;
}

.products_detail03_r ul li {
    margin: 0 15px 15px 0;
    float: left;
}

.products_end {
    padding: 5px 15px 5px 15px;
    background: #cc0033;
}


.products_ac li {
    display: inline-block;
    width: 25%;
    margin-top: 20px;
}

.products_ac span {
    margin: 15px 0px 0px 10px;
    display: inline-block;
    font-weight: 700;
    letter-spacing: 0.6px;
}

.products_ac a {
    display: block;
}

div#product_news li {
    width: 11%;
    float: left;
    margin: 0 20px 0 0px;
    min-height: 320px;
}


div#product_news li:nth-child(4n) {
    margin: 0 0px 0 0px;
}

.products_navi01 a {
    text-decoration: none;
}

.products_ac {
    margin: 15px 0px 0;
}

ul#productsBox1 {
    /* border: #78b0ff solid 5px; */
    padding: 25px 25px 35px;
}

ul#productsBox2 {
    padding: 20px 20px 30px;
}

ul#productsBox3 {
    /* border: #31af5c solid 5px; */
    padding: 20px 20px 30px;
}

ul#productsBox4 {
    /* border: #9d6dd0 solid 5px; */
    padding: 20px 20px 30px;
}

.products_ac a {
    color: #666;
}

.products_l {
    float: left;
    width: 450px;
}

.products_r {
    float: right;
    width: 450px;
}

.products_bg {
    background: #f2f2f2;
    padding: 10px;
    margin-bottom: 20px;
}

.products_detail {
    margin-bottom: 20px;
    font-weight: 700;
}

.products_detail dt {
    display: inline-block;
    width: 100px;
    vertical-align: top;
}

.products_detail dd {
    display: inline-block;
    width: 350px;
}

.products_bg p {
    line-height: 1.8;
}

.products_pdf li {
    background: #666;
    padding: 20px 10px;
    width: 195px;
    float: left;
    margin: 0 20px 20px 0;
}

.products_pdf li:nth-child(even) {
    margin-right: 0px;
}

.products_pdf a {
    display: block;
    color: #fff;
    text-align: center;
}

.red-line {
    border-bottom: #d01027 solid 2px;
}

.detail_range {
    margin-top: 20px;
    margin-bottom: 40px;
    padding: 40px 0;
    border-top: #aaa solid 1px;
    border-bottom: #aaa solid 1px;
}

.detail_move {
    border: #d01126 solid 10px;
    margin: 20px auto 40px;
}

.detail_move div {
    padding: 20px;
}

.detail_move img {
    height: 220px;
}

.bg_red {
    background: #d01027;
    padding: 20px;
    display: inline-block;
}

.bg_red a {
    color: #fff;
    display: block;
}

.detail_range dt {
    display: inline-block;
    width: 200px;
}

.detail_range dt {
    display: inline-block;
    width: 60px;
    vertical-align: top;
    margin-bottom: 10px;
}

.detail_range dd {
    display: inline-block;
    width: 360px;
    border-left: #aaa solid 1px;
    margin-left: 10px;
    padding-left: 10px;
}

.products_inquiry01.float_l {
    width: 300px;
    text-align: center;
    padding: 20px 0;
    background: #d01027;
    margin-right: 20px;
    margin-bottom: 20px;
}

.products_inquiry02.float_l {
    width: 300px;
    text-align: center;
    padding: 20px 0;
    background: #65aadd;
    margin-right: 20px;
    margin-bottom: 20px;
}

.products_inquiry03.float_l {
    width: 300px;
    text-align: center;
    padding: 20px 0;
    background: #666;
}


.products_inquiry01.float_l a, .products_inquiry02.float_l a, .products_inquiry03.float_l a {
    color: #fff;
    display: block;
    text-align: center;
    text-decoration: none;
}

ul.contents_category li {
    margin-right: 20px;
    width: 225px;
    padding: 15px;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: top;
}

ul.contents_category li:nth-child(4n) {
    margin-right: 0px;
}

ul.contents_category li p {
    height: 200px;
}

ul.contents_category li p img {
    max-height: 200px;
    width: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

ul.contents_category li p {
    height: 200px;
    border-bottom: #ddd solid 1px;
    padding-bottom: 10px;
    margin-bottom: 5px;
    position: relative;
}

ul.contents_category li:last-child {
    margin-right: 0px;
}

.contents_category img {
    margin: 0 auto;
    display: block;
}

.contents_category a {
    color: #333;
    text-decoration: none;
}

.products_pdf a, .bg_red a {
    text-decoration: none;
}


/* 商品詳細 */
.products_log img {
    /*max-width: 140px;*/
}

.products_log {
    width: 450px;
    /*height: 140px;*/
    text-align: center;
    margin-bottom: 20px;
    border: #ddd solid 1px;
}

#flickscroll img {
    max-height: 400px;
    margin: auto;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    width: auto;
}

div#flickthumb img {
    width: auto;
    max-height: 80px;
    display: block;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

/* セミナーページ */
.seminar_box01 {
    padding: 15px 25px 10px 60px;
    border: 1px solid #000000;
}

.seminar_box01 p {
    width: 530px;
    padding: 10px 0 10px 0;
}

.seminar_box01_r {
    width: 273px;
}

.seminar_box01_b div:nth-child(1) {
    float: left;
}

.seminar_box01_b div:nth-child(2) {
    float: right;
}

.seminar_box02_l {
    width: 280px;
}

.seminar_box02_img {
    /*border:1px solid #999999;*/
}

.seminar_box02_r {
    width: 775px;
}

.seminar_box02_r h3 {
    padding: 0 0 10px 10px;
    /* border-left:5px solid #d01126; */
    line-height: 1.4;
}

.seminar_box02_r ul li {
    font-weight: bold;
    padding-left: 0;
}

.seminar_button {
    /*padding:20px 0 0 310px;*/
    clear: both;
}

.seminar_button img {
    margin: 0 0 10px 0;
    transform: translateX(16px);
}

.seminar_map_img {
    width: 100%;
    text-align: left;
    margin-bottom: 15px;
}

.seminar_map_img img {
    max-height: 160px;
}

.seminar_map_img a img {
    max-height: 250px;
}

.seminer_page_qr {
    margin-bottom: 15px;
    display: block;
}

.seminar_map_img span {
    font-size: 16px;
}

/* マイページ */
.mypage_navi {
    display: table;
}

.mypage_navi li {
    width: 152px;
    padding: 5px 0 5px 0;
    background: #666666;
    border-left: 4px solid #ffffff;
    vertical-align: middle;
    display: table-cell;
}

.mypage_navi .mypage_navi_on {
    background: #d01126;
}

.mypage_navi li a {
    width: 100%;
    text-align: center;
    display: block;
    text-decoration: none;
    color: #ffffff;
}

.mypage_navi li a:hover {
    text-decoration: underline;
}

/* G21 */
.g21_bg00 {
    background: url(../img/common/bg07.png) repeat;
}

.g21_main_button {
    padding: 10px 0 280px 0;
    background: url(../img/g21/g21_main_bg.png) repeat-x bottom;
}

.g21_title01 {
    padding: 40px 0 22px 0;
    background: #ce4e38;
}

.g21_title02 h3 {
    width: 860px;
    margin: 0 auto;
    padding: 10px 0 10px 0;
    background: url(../img/common/arrow03.png) no-repeat right;
    cursor: pointer;
}

.g21_title03 {
    padding: 8px 0 8px 0;
    background: #ce4e38;
}

.g21_title04 {
    padding: 2px 0 2px 0;
    /*background:#333333;
	text-align:center;*/
}

.g21_navi {
    padding: 13px 0 0 0;
}

.g21_navi ul {
    width: 710px;
    margin: 0 auto;
}

.g21_navi ul li {
    width: 228px;
    padding: 0 13px 13px 0;
    cursor: pointer;
    float: left;
}

.g21_navi ul li:nth-child(3) {
    padding: 0 0 13px 0;
}

.g21_page_navi {
    padding: 13px 0 13px 0;
}

.g21_page_navi ul {
    width: 720px;
    margin: 0 auto;
}

.g21_page_navi ul li {
    width: 350px;
    padding: 15px 2px 15px 2px;
    background: #ffffff;
    text-align: center;
}

.g21_page_navi ul .g21_page_navi_c {
    width: 160px;
    margin: 0 0 0 10px;
    display: none;
}

.g21_border_top {
    padding: 5px 0 5px 0;
    border-top: 2px solid #333333;
}

.g21_border_bottom {
    border-bottom: 2px solid #333333;
}

.g21_box01, .g21_box02 {
    display: none;
}

.g21_box03 {
    padding: 30px 100px 30px 100px;
    border-radius: 8px;
    border: 3px solid #ce4e38;
}

.g21_box04 p {
    padding: 20px 230px 20px 25px;
}

.g21_box04 div {
    margin: -200px 0 0 0;
}

.g21_meyasu_l {
    width: 220px;
    padding: 10px 10px 10px 10px;
}

.g21_meyasu_l p {
    padding: 10px 10px 10px 10px;
}

.g21_meyasu_r {
    width: 510px;
}

#g21_11_02 {
    display: none;
}

#g21_11_03 {
    display: none;
}

.g21_about_bg {
    padding: 0 0 280px 0;
    background: url(../img/g21/g21_about_bg01.png) no-repeat bottom;
}

.g21_form_button {
    width: 280px;
    margin: 0 auto;
}

.g21_form_button input {
    width: 280px;
    padding: 10px 0 10px 0;
    background: url(../img/common/arrow04.png) no-repeat right #ce4e38;
    border: none;
    display: block;
    text-align: center;
    color: #ffffff;
    cursor: pointer;
}

.g21_table_01 table {
    width: 100%;
}

.g21_table_01 table tr td {
    width: 46%;
    padding: 10px 2% 10px 2%;
    color: #333333;
}

.g21_table_01_l {
    text-align: center;
    background: #ce4e38;
    border: 1px solid #ce4e38;
}

.g21_table_01_r {
    text-align: right;
    background: #ffffff;
    border: 1px solid #333333;
}

.g21_table_02 table {
    width: 100%;
}

.g21_table_02 table tr td {
    padding: 5px 2% 5px 2%;
    border: 1px solid #006699;
    background: #ffffff;
}

.g21_table_02 table tr .g21_table_02_l {
    width: 60%;
}

.g21_table_02 table tr .g21_table_02_r {
    width: 32%;
    text-align: right;
}

.g21_tabBox.contents {
    /*padding:0 0 50px 0;*/
    padding: 0;
    margin-bottom: 50px;
}

.g21_app_badge {
    transform: translateX(1px);
    float: right;
}

.g21_app_badge.index_opt {
    /*transform: translateY(30px);*/
    z-index: 1000;
    position: relative;
}

.g21_app_badge a {
    display: inline-block;
    overflow: hidden;
    background: url(https://linkmaker.itunes.apple.com/assets/shared/badges/en-us/appstore-lrg.svg) no-repeat;
    vertical-align: bottom;
    width: 160px !important;
    height: 55px !important;
    background-size: 100% !important;
}

.g21_app_badge a:hover {
    /*filter: invert(5);*/
}

.g21_app_badge span {
    display: block;
    text-align-last: center;
    font-weight: bold;
    margin: 3px 0 3px 0;
    font-size: 16px;
}

.chart_list {
    padding: 0 195px;
    /* padding:0 90px 0 90px; */

}

.chart_list li {
    width: 350px;
    /* margin:0 15px 30px 15px; */
    float: left;
}

.chart_list li input {
    width: 100%;
    padding: 8px 0 8px 0%;
    background: url(../img/common/arrow04.png) no-repeat right;
    border: none;
    display: block;
    font-weight: bold;
    color: #ffffff;
    cursor: pointer;
}

.chart_l {
    padding: 2px 0 2px 0;
    border: 1px solid #000000;
    background: #ffffff;
    text-align: center;
}

.chart_r {
    padding: 2px 0 2px 0;
    border: 1px solid #ffffff;
    background: #000000;
    text-align: center;
}

.chart_c {
    padding: 2px 0 2px 0;
    border: 1px solid #ffffff;
    background: #993399;
    text-align: center;
}

.chart_shu {
    padding: 2px 0 2px 0;
    text-align: center;
}

.chart_result_a, .chart_result_b, .chart_result_c, .chart_result_d, .chart_result_e, .chart_result_f {
    display: none;
}

.cg_link_change span {
    text-decoration: underline;
    cursor: pointer;
    color: #3399cc;
}

.cg_link_change span:hover {
    text-decoration: none;
    color: #333333;
}

.cg_link_change .cg_a, .cg_link_change .cg_01 {
    text-decoration: none;
    color: #333333;
}

.cg_img_change div {
    display: none;
}

.cg_img_change .cg_a01 {
    display: block;
}

.cg_text_change {
    padding: 5px 10px 5px 10px;
    background: #ffffff;
}

.cg_text_change span {
    display: none;
}

.cg_text_change .cg_a_text, .cg_text_change .cg_01_text {
    display: inline;
}

li.bg_beige,
li.bg_purple {
    float: right;
}


/* サポート */
.qa_navi li {
    width: 195px;
    margin: 20px 20px 0 0;
    padding: 10px 10px 10px 10px;
    border: 2px solid #bfbfbf;
    float: left;
}

.qa_navi li div {
    width: 100%;
    padding: 0 0 10px 0;
    text-align: center;
}

.qa_navi li h4 {
    width: 100%;
    padding: 0 0 10px 0;
    text-align: center;
}

.qa_navi li:nth-child(4n) {
    margin: 20px 0 0 0;
}

/* 企業情報 */
.company_navi li {
    padding: 0 47px 47px 0;
    float: left;
}

.company_navi li:nth-child(3n) {
    padding: 0 0 47px 0;
}

.business_navi {
    padding: 13px 0 0 0;
}

.business_navi ul {
    width: 850px;
    margin: 0 auto;
}

.business_navi ul li {
    width: 252px;
    padding: 0 47px 13px 0;
    float: left;
}

.business_navi ul li:nth-child(3) {
    padding: 0 0 13px 0;
}

.access_area {
    width: 882px;
    height: 532px;
    position: relative;
}

.access_map {
    position: absolute;
}

.access_button01 {
    position: absolute;
    top: 50px;
    left: 440px;
}

.access_button02 {
    position: absolute;
    top: 200px;
    left: 650px;
}

.access_button03 {
    position: absolute;
    top: 310px;
    left: 605px;
}

.access_button04 {
    position: absolute;
    top: 365px;
    left: 575px;
}

.access_button05 {
    position: absolute;
    top: 220px;
    left: 350px;
}

.access_button06 {
    position: absolute;
    top: 420px;
    left: 390px;
}

.access_button07 {
    position: absolute;
    top: 280px;
    left: 180px;
}

.access_button08 {
    position: absolute;
    top: 380px;
    left: 60px;
}

.access_list {
    display: table;
    padding: 0 0 0 15px;
}

.access_list li {
    display: table-cell;
}

.access_list .access_list01 {
    width: 140px;
    padding: 0 10px 0 0;
}

.access_list .access_list02 {
    width: 120px;
    padding: 0 10px 0 0;
}

.access_list .access_list03 {
    width: 360px;
    padding: 0 10px 0 0;
}

.access_list .access_list04 {
    width: 74px;
}

.hq_massage_wrap {
    background: #f5f5f5;
    margin-bottom: 25px;
    border-radius: 5px;
    padding: 15px;
}

.hq_massage_wrap h4 {
    margin-bottom: 15px;
    padding-bottom: 0px;
    border-bottom: none;
}

.hq_massage_wrap p.profile_link_wrap {
    font-size: 14px;
    margin-bottom: 12px;
}

/* 採用情報 */
.reqruit_main {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto 50px auto;
}

.reqruit_navi {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto 60px auto;
    background: url(../img/recruit/recruitment_main.jpg) no-repeat center;
}

.reqruit_navi ul {
    width: 525px;
    margin: 0 auto;
    padding: 250px 0 25px 0;
}

.recruit_button {
    padding: 20px 0 20px 0;
    border-top: 1px solid #999999;
    border-bottom: 1px solid #999999;
}

.recruit_title01 {
    border: 3px solid #e57d0a;
    padding: 0 5px 0 5px;
}

.recruit_title02 {
    border: 3px solid #00479d;
    padding: 0 5px 0 5px;
}

.recruit_list {
    width: 100%;
}

.recruit_list00 li:nth-child(odd) {
    background: #f2f2f2;
}

.recruit_list01 li:nth-child(odd) {
    background: #f7ede2;
}

.recruit_list02 li:nth-child(odd) {
    background: #e9f4fa;
}

.recruit_list li div {
    width: 890px;
    margin: 0 auto;
}

.recruit_list li div label {
    width: 155px;
    padding: 7px 0 7px 0;
    display: block;
    font-weight: bold;
    float: left;
}

.page_contents .recruit_list li div p {
    float: right;
    width: 645px;
    margin: 0;
    padding: 0 20px 0 0;
    box-sizing: border-box;
}

.recruit_navi {
    padding: 0 12px 0 12px;
}

.recruit_navi li {
    width: 279px;
    padding: 0 13px 40px 13px;
    float: left;
}

.recruit_navi li p {
    padding: 0 8px 0 8px;
}

.recruit_navi li h4 {
    padding: 0 8px 0 8px;
}

.recruit_slide {
    padding: 0 8px 0 8px;
}

.recruit_company_l {
    width: 650px;
    position: relative;
    z-index: 2;
}

.recruit_company_r {
    width: 320px;
    margin: -370px 0 -150px 0;
    position: relative;
    z-index: 1;
}

.recruit_symposium_main {
    border-top: 2px solid #bfbfbf;
    border-bottom: 2px solid #bfbfbf;
    padding: 50px 0 100px 0;
    background: url(../img/common/bg08.png) repeat;
}

/* Q&A */
.qa_question {
    margin: 0 0 3px 0;
    cursor: pointer;
}

.qa_answer {
    display: none;
}

.qa_title {
    display: table;
}

.qa_title div {
    width: 70px;
    display: table-cell;
    vertical-align: middle;
}

.qa_title p {
    display: table-cell;
    vertical-align: middle;
}

/* フォーム */
div.wpcf7-response-output {
    text-align: center;
}

.entry_form01 {
    width: 100%;
}

.entry_form01 li:nth-child(odd) {
    background: #f2f2f2;
}

.entry_form01 li {
    padding: 3px 0 3px 0;
    padding-left: 0 !important;
}

.entry_form01 li div {
    width: 710px;
    margin: 0 auto;
}

.entry_form01 li div label {
    width: 155px;
    padding: 7px 5px 7px 5px;
    display: block;
    font-weight: bold;
    float: left;
}

.entry_form01 li div p {
    width: 500px;
    padding: 7px 20px 7px 20px;
    float: left;
    text-align: center;
}

.entry_form01 li div.entry_form01_inner {
    width: 500px;
    padding: 7px 20px 7px 20px;
    float: right;
}

.entry_form01 li div.entry_form01_inner label {
    width: 80px;
    box-sizing: border-box;
    padding: 0 10px 0 0;
}

.entry_form01 li div.entry_form01_inner .name,
.entry_form01 li div.entry_form01_inner .profession {
    width: 210px;
    padding: 0 0 0 10px;
    float: left;
    box-sizing: border-box;
}

.entry_form01 li div.entry_form01_inner input {
    width: 100%;
    box-sizing: border-box;
}

.form_l input {
    width: 100%;
}

.form_l textarea {
    width: 100%;
}

.form_m input {
    width: 285px;
}

.entry_form01 li div .form_s div {
    width: 100%;
    padding: 3px 0 3px 0;
}

.entry_form01 li div .form_s {
    width: 500px;
    padding: 7px 0 7px 0;
    float: left;
}

.entry_form01 li div .form_s p {
    padding: 0 0 0 20px;
}

.form_s .form_s_l {
    width: 25px;
    padding: 0;
}

.form_s .form_s_r {
    width: 240px;
}

.form_s .form_s_r input {
    width: 240px;
}

.form_s .form_ss_l {
    width: 80px;
}

.form_s .form_ss_r {
    width: 350px;
}

.form_s .form_ss_r input {
    width: 350px;
}

.form_s .form_sm_r {
    width: 350px;
}

.entry_form01 li div .form_table {
    width: 500px;
    margin: 0;
    padding: 7px 0 7px 0;
    float: left;
}

.entry_form01 li div .form_table table {
    width: 400px;
    margin: 5px 0 0 20px;
}

.entry_form01 li div .form_table table tr td:nth-child(odd) {
    width: 40px;
}

.entry_form01 li div .form_table table tr td:nth-child(even) {
    padding: 0 20px 0 0;
}

.entry_form01 li div .form_table table tr td input {
    width: 145px;
}

.submit {
    text-align: center;
}

.submit input {
    width: 200px;
    margin: 0 10px 0 0;
    padding: 5px 20px 5px 20px;
    border: none;
    background: #666666;
    color: #ffffff;
    text-align: center;
    cursor: pointer;
    font-size: 14px;
}

.submit input:hover {
    background: #d01126;
}

.input_link {
    border: none;
    background: none;
    color: #3399cc;
    text-decoration: underline;
    cursor: pointer;
}

.input_link:hover {
    text-decoration: none;
}

#contact1,
#contact2,
#contact3 {
    width: auto;
}

.entry_form01 .contact_bt2 {
    display: inline;
    margin-right: 5px;
}

.entry_form01 .contact_radio_label {
    width: auto;
    padding: 0;
}

.col.col3.last_name_lm {
    margin-left: 14px;
}

.colBox.contact_name_h {
    margin: 10px 0 14px;
}


/* サイトマップ */
.sitemap_list {
    padding: 0 0 0 10px;
}

.sitemap_list li {
    width: 24%;
    padding: 0 1% 3px 0;
    float: left;
}

.sitemap_list li a {
    color: #333333;
}

/* ブログ */
#blog_area {
    /* padding:0 0 50px 0;
	border-bottom:1px solid #666666; */
}

#blog_area p {
    margin: 0 0 20px 0;
}

#blog_area ul {
    margin: 0 0 20px 0;
}

#blog_area ul li {
    padding: 0 0 0 1em;
    font-size: 108%;
    list-style: disc inside;
    text-indent: -1em;
}

#blog_area ol {
    margin: 0 0 20px 0;
}

#blog_area ol li {
    padding: 0 0 0 1em;
    font-size: 108%;
    list-style: decimal inside;
    text-indent: -1em;
}

.alignright {
    float: right;
}

.alignleft {
    float: left;
}

.aligncenter {
    text-align: center;
    　clear: both;
}

img.centered {
    display: block;
    border: none;
    text-align: center;
}

img.alignright {
    border: none;
    padding: 0 0 10px 10px;
}

img.alignleft {
    border: none;
    padding: 0 10px 10px 0;
}

img.aligncenter {
    display: block;
    margin: 0 auto;
    　clear: both;
}

/* テーブル */
table {
    border-spacing: 0;
    border-collapse: collapse;
}

tr {
    border-spacing: 0;
}

td {
    border-spacing: 0;
}

th {
    border-spacing: 0;
    font-weight: normal;
}

.table01 table {
    width: 100%;
    border: none;
}

.table01 table tr td {
    padding: 3px 1% 0;
    border: 1px solid #000000;
    width: 75%;
    float: left;
    height: 33px;
}

.table01 table tr td::before {
    background: inherit;
    border-right: none;
    content: none;
}

.table01 table tr .table01_c {
    text-align: center;
}

.table01 table tr .table01_r {
    width: 8.5%;
    text-align: center;
    height: 33px;
    line-height: 33px;
}

.table02 table {
    max-width: 560px;
    width: 100%;
}

.table02 table tr th {
    width: 46%;
    background: #ce4e38;
    padding: 3px 2% 3px 2%;
    border: 1px solid #000000;
    text-align: center;
    color: #ffffff;
}

.table02 table tr td {
    width: 46%;
    padding: 3px 2% 3px 2%;
    border: 1px solid #000000;
    text-align: center;
}

.table02 table tr .table01_c {
    text-align: center;
}

.table02 table tr .table01_r {
    width: 50px;
    text-align: center;
}

.table03 table {
    width: 100%;
}

.table03 table tr td {
    padding: 3px 0 3px 0;
    border-bottom: 1px solid #666666;
}

.table03 table tr .table03_15 {
    width: 15px;
    text-align: right;
}

.table03 table tr .table03_100 {
    width: 100px;
    text-align: center;
}

.table03 table .table03_c {
    display: none;
}

.table03 table tr .table03_r {
    text-align: right;
}

.table04 table {
    width: 100%;
}

.table04 table tr .table04_l {
    width: 30%;
    padding: 0 3% 0 0;
}

/* 幅 */
.w49_l {
    width: 48%;
}

.w49_r {
    width: 48%;
    text-align: right;
}

.w19p {
    width: 19%;
}

.w80p {
    width: 80%;
}

.w250 {
    width: 250px;
}

.w280 {
    width: 280px;
}

.w290 {
    width: 290px;
}

.w300 {
    width: 300px;
}

.w310 {
    width: 310px;
}

.w340 {
    width: 340px;
}

.w365 {
    width: 365px;
}

.w370 {
    width: 370px;
}

.w375 {
    width: 375px;
    padding: 60px 0 0 150px;
}

.w380 {
    width: 380px;
    padding: 0 0 0 160px;
}

.w390 {
    width: 390px;
}

.w400 {
    width: 400px;
}

.w450 {
    width: 450px;
    padding: 60px 0 0 0;
}

.w455 {
    width: 450px;
}

.w460 {
    width: 460px;
}

.w470 {
    width: 470px;
}

.w600 {
    width: 600px;
}

.w610 {
    width: 610px;
}

.w620 {
    width: 620px;
}

.w50p {
    width: 46%;
    padding: 0 2% 0 2%;
}

.w170 {
    width: 170px;
}

.w660 {
    width: 660px;
}

.w330 {
    width: 330px;
}

.w510 {
    width: 510px;
}

.w510 {
    width: 510px;
}

.w550 {
    width: 550px;
}

.w475 {
    width: 475px;
}

.w480 {
    width: 480px;
}

.w220 {
    width: 220px;
}

.w270 {
    width: 270px;
}

.w590 {
    width: 590px;
}

.w430 {
    width: 430px;
}

.w230 {
    width: 230px;
}

/* テキスト */
.text9 {
    font-size: 70%;
}

.text10 {
    font-size: 77%;
}

.text12 {
    font-size: 93%;
}

.text14 {
    font-size: 108%;
}

.text15 {
    font-size: 116%;
}

.text16 {
    font-size: 123.1%;
}

.text17 {
    font-size: 131%;
}

.text18 {
    font-size: 138.5%;
}

.text20 {
    font-size: 153.9%;
}

.text22 {
    font-size: 167%;
}

.text23 {
    font-size: 174%;
}

.text24 {
    font-size: 186%;
}

.text26 {
    font-size: 197%;
}

.text30 {
    font-size: 232%;
}

.text36 {
    font-size: 279%;
}

.text48 {
    font-size: 372%;
}

/* テキストカラー */
.text_white {
    color: #ffffff;
}

.text_white a {
    color: #ffffff;
}

.text_red {
    color: #cc0033;
}

.text_red a {
    color: #cc0033;
}

.text_shu {
    color: #ce4e38;
}

.text_shu a {
    color: #ce4e38;
}

.text_blue {
    color: #3399cc;
}

.text_blue a {
    color: #3399cc;
}

.text_yellow {
    color: #ffff99;
}

.text_yellow a {
    color: #ffff99;
}

.text_moss {
    color: #339933;
}

.text_moss a {
    color: #339933;
}

.text_water {
    color: #4395ff;
}

.text_water a {
    color: #4395ff;
}

.text_orange {
    color: #ff7d43;
}

.text_orange a {
    color: #ff7d43;
}

.text_green {
    color: #31af5c;
}

.text_green a {
    color: #31af5c;
}

.text_purple {
    color: #9d6dd0;
}

.text_purple a {
    color: #9d6dd0;
}

.text_blue_metallic {
    color: #035673;
}

.text_champagne_white {
    color: #999999;
}

.text_bordeaux_metallic {
    color: #6d2734;
}

.text_green_metallic {
    color: #005c47;
}

.text_black_metallic {
    color: #251412;
}

.text_french_beige {
    color: #e0c082;
}

.text_chocolate_brown {
    color: #452a31;
}

/* テキストエリア */
.text_area01 {
    padding: 20px 20px 20px 20px;
}

.text_area02 {
    padding: 20px 0 0 100px;
}

.text_area03 {
    padding: 0 0 0 130px;
}

.text_area04 {
    padding: 60px 0 0 0;
}

.text_area05 {
    padding: 10px 20px 10px 20px;
}

.text_area06 {
    padding: 50px 0 0 100px;
}

.text_area_border01 {
    padding: 20px 20px 20px 20px;
    border: 1px solid #bfbfbf;
}

/* 背景カラー */
.bg_white {
    background: #ffffff;
}

.bg_black {
    background: #222222;
}

.bg_gray {
    background: #f2f2f2;
}

.bg_gray_line {
    background: url(../images/main_bg.png) repeat-x #f2f2f2 center bottom;
    /*background:#f2f2f2 ;*/
}

.bg_expert {
    /*background:url(../img/expert/expert_bg.png) no-repeat #f2f2f2 center;*/
    background-color: #fff;
}

.bg_simulation {
    background: url(../img/simulation/simulation_bg01.png) repeat;
}

.bg_water {
    background: #65aadd;
}

.bg_hai {
    background: #dcdcdc;
}

.bg_lime {
    background: #f8f9f0;
}

.bg_shu {
    background: #ce4e38;
}

.bg_orange {
    background: #df6900;
}

.bg_yellow {
    background: #ee912d;
}

.bg_beige {
    background: #b6a96e
}

.bg_emerald {
    background: #0bc6ac;
}

.bg_blue {
    background: #3493c6;
}

.bg_purple {
    background: #ad73c5;
}

.bg_azuki {
    background: #7e608a;
}

.bg_navy {
    background: #006699;
}

.bg_stripe:nth-child(even) {
    background: #f3f3f3;
}

.bg_dashed {
    margin: 20px 0 0 0;
    border-top: 1px dashed #666666;
}

.bg_border {
    border-bottom: 1px solid #bfbfbf;
}

.bg_line {
    padding: 0 0 140px 0;
    background: url(../img/common/bg_line.png) center bottom repeat-x;
}

.bg_green_s {
    background: url(../img/common/bg09.png) repeat;
}

/* テキストインデント */
.text_indent53 {
    text-indent: -5.3em;
    padding: 0 0 0 5.3em;
}

.text_indent10 {
    text-indent: -1.0em;
    padding: 0 0 0 1.0em;
}

.text_indent15 {
    text-indent: -1.5em;
    padding: 0 0 0 1.5em;
}

/* テキスト寄せ */
.text_center {
    width: 100%;
    text-align: center;
}

.text_right {
    width: 100%;
    text-align: right;
}

/* マージン */
.m3 {
    margin: 0 0 3px 0;
}

.m5 {
    margin: 0 0 5px 0;
}

.m10 {
    margin: 0 0 10px 0;
}

.m15 {
    margin: 0 0 15px 0;
}

.m20 {
    margin: 0 0 20px 0;
}

.m25 {
    margin: 0 0 25px 0;
}

.m30 {
    margin: 0 0 30px 0;
}

.m35 {
    margin: 0 0 35px 0;
}

.m40 {
    margin: 0 0 40px 0;
}

.m50 {
    /*	margin:0 0 50px 0;*/
}

.m60 {
    margin: 0 0 60px 0;
}

.m70 {
    margin: 0 0 70px 0;
}

.m80 {
    margin: 0 0 70px 0;
}

.m90 {
    margin: 0 0 90px 0;
}

.m100 {
    margin: 0 0 100px 0;
}

.m200 {
    margin: 0 0 200px 0;
}

.mb20 {
    margin-bottom: 20px;
}

/* フロート */
.float_l {
    float: left;
}

.float_r {
    float: right;
}

.float_l_l {
    float: left;
}

.float_r_l {
    float: right;
}

.float_l_pc {
    float: left;
}

.float_r_pc {
    float: right;
}

/* 非表示 */
.no_display {
    display: none;
}

/* アイコン */
.icon {
    vertical-align: baseline;
    width: 15px;
    height: 15px;
    object-fit: contain;
    margin-left: 3px;
}

.icon_social {
    vertical-align: text-top;
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.smt_icon {
    float: right;
    width: inherit;
    height: inherit;
}

/* ビデオ */
.video_box {
    position: relative;
    width: 100%;
    padding-top: 75%;
}

.video_border {
    border: 1px solid #999999;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}

/* 画像 */
img {
    max-width: 100%;
    height: auto;
    width: auto \9; /* ie8 */
}

.input_button {
    max-width: 100%;
    height: auto;
    width: auto \9; /* ie8 */
}

/* ポップアップ（医療従事者）
---------------------------------------------------- */
.popup_box01 {
    margin: 5px 5px 2px 5px;
}

.popup_box01 h2 {
    padding: 15px 10px 10px 10px;
    border-bottom: 6px solid #cf5151;
    text-align: center;
}

.popup_box01 p {
    max-width: 420px;
    margin: 0 auto;
    padding: 30px 10px 30px 10px;
}

.popup_box01 h3 {
    max-width: 420px;
    margin: 0 auto;
    padding: 0 10px 40px 10px;
    text-align: center;
}

.popup_box01 ul {
    max-width: 420px;
    margin: 0 auto;
    padding: 0 10px 40px 10px;
}

.popup_box01 ul li {
    max-width: 174px;
    width: 48%;
    padding: 0 0 10px 0;
}

.popup_box01 ul li a {
    cursor: pointer;
}

.fancybox-close {
    display: none;
}

/* フッター
---------------------------------------------------- */
#footer {
    padding: 20px 0 13px 0;
    background: url(../img/common/bg01.png) repeat-x;
    text-align: center;
}

#footer a {
    color: #333333;
}

#footer span:after {
    content: "　　";
}

#copyright {
    font-size: 1.5rem;
    font-size: 15px;
    padding: 40px 0 25px 0;
    text-align: center;
    color: #E9E9E9;
}

.footer_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 auto;
    padding: 40px 40px 50px;
    max-width: 1100px;
}

.footer_nav_link {
    padding: 16px;
    display: inline-block;
    border-left: solid 1px rgb(120, 120, 120);
    vertical-align: top;
    margin-top: 20px;
    list-style: none;
}

.footer_nav_link:first-child {
    border-left: solid 1px rgb(120, 120, 120);
}

.footer_nav_link:last-child {
    border-right: none;
}

.footer_nav_link li a {
    color: #E9E9E9;
    font-size: 14px;
    line-height: 1.9;
    text-decoration: none;
}

.menu-footer-container {
    background: none;
    padding: 20px 0 45px 0;
}

footer {
    background-color: rgb(60, 60, 60);
}

/*
 * jQuery FlexSlider v2.0
 * http://www.woothemes.com/flexslider/
 *
 * Copyright 2012 WooThemes
 * Free to use under the GPLv2 license.
 * http://www.gnu.org/licenses/gpl-2.0.html
 *
 * Contributing author: Tyler Smith (@mbmufffin)
 */


/* Browser Resets */
.flex-container a:active,
.flexslider a:active,
.flex-container a:focus,
.flexslider a:focus {
    outline: none;
}

.slides,
.flex-control-nav,
.flex-direction-nav {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* FlexSlider Necessary Styles
*********************************/
.flexslider {
    margin: 0 auto;
    padding: 0;
    width: 100%;
    max-width: 900px;
}

.flexslider .slides > li {
    display: none;
    -webkit-backface-visibility: hidden;
}

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {
    max-width: 100%;
    display: block;
}

.flex-pauseplay span {
    text-transform: capitalize;
}

/* Clearfix for the .slides element */
.slides:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

html[xmlns] .slides {
    display: block;
}

* html .slides {
    height: 1%;
}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
* include js that eliminates this class on page load */
.no-js .slides > li:first-child {
    display: block;
}

/* FlexSlider Default Theme
*********************************/
.flexslider {
    background: #fff;
    border: 1px solid #fff;
    position: relative;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    zoom: 1;
}

.flexslider .slides {
    zoom: 1;
}

.flexslider .slides > li {
    position: relative;
}

/* Suggested container for "Slide" animation setups. Can replace this with your own, if you wish */
.flex-container {
    zoom: 1;
    position: relative;
}

/* Direction Nav */
.flexslider .flex-direction-nav {
    *height: 0;
}

.flexslider .flex-direction-nav a {
    width: 30px;
    height: 120px;
    margin: -70px 0 0;
    background: url(../img/common/arrows01.png) no-repeat;
    position: absolute;
    display: block;
    top: 50%;
    z-index: 200;
    cursor: pointer;
    opacity: 0.5;
    text-indent: -9999px;
}

.flexslider .flex-direction-nav .flex-next {
    background-position: 100% 0;
    right: -36px;
}

.flexslider .flex-direction-nav .flex-prev {
    left: -36px;
}

.flexslider .flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
    opacity: 1;
}

.flexslider .flex-direction-nav .flex-disabled {
    opacity: .3 !important;
    filter: alpha(opacity=30);
    cursor: default;
}

/* Control Nav */
.flexslider .flex-control-nav {
    width: 100%;
    position: absolute;
    bottom: -40px;
    text-align: center;
}

.flexslider .flex-control-nav li {
    margin: 0 6px;
    display: inline-block;
    zoom: 1;
    *display: inline;
}

.flexslider .flex-control-paging li a {
    width: 10px;
    height: 10px;
    display: block;
    background: #CCC;
    cursor: pointer;
    text-indent: -9999px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
    box-shadow:
}

.flexslider .flex-control-paging li a:hover {
    background: #ce4e38;
}

.flexslider .flex-control-paging li a.flex-active {
    background: #ce4e38;
    cursor: default;
}

.flexslider .flex-control-thumbs {
    margin: 5px 0 0;
    position: static;
    overflow: hidden;
}

.flexslider .flex-control-thumbs li {
    width: 25%;
    float: left;
    margin: 0;
}

.flexslider .flex-control-thumbs img {
    width: 100%;
    display: block;
    opacity: .7;
    cursor: pointer;
}

.flexslider .flex-control-thumbs img:hover {
    opacity: 1;
}

.flexslider .flex-control-thumbs .flex-active {
    opacity: 1;
    cursor: default;
}


/* FlexSlider Default Theme
*********************************/
.flexslider_s {
    background: #fff;
    border: 1px solid #fff;
    position: relative;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
    zoom: 1;
}

.flexslider_s .slides {
    zoom: 1;
}

.flexslider_s .slides > li {
    position: relative;
}

/* Suggested container for "Slide" animation setups. Can replace this with your own, if you wish */
.flex-container {
    zoom: 1;
    position: relative;
}

/* Control Nav */
.flexslider_s .flex-control-nav {
    width: 100%;
    position: absolute;
    bottom: 20px;
    text-align: right;
    z-index: 2000;
}

.flexslider_s .flex-control-nav li {
    margin: 0 6px;
    display: inline-block;
    zoom: 1;
    *display: inline;
}

.flexslider_s .flex-control-paging li a {
    width: 10px;
    height: 10px;
    display: block;
    background: #CCC;
    cursor: pointer;
    text-indent: -9999px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    -o-border-radius: 10px;
    border-radius: 10px;
    box-shadow:
}

.flexslider_s .flex-control-paging li a:hover {
    background: #ce4e38;
}

.flexslider_s .flex-control-paging li a.flex-active {
    background: #ce4e38;
    cursor: default;
}

.flexslider_s .flex-control-thumbs {
    margin: 5px 0 0;
    position: static;
    overflow: hidden;
}

.flexslider_s .flex-control-thumbs li {
    width: 25%;
    float: left;
    margin: 0;
}

.flexslider_s .flex-control-thumbs img {
    width: 100%;
    display: block;
    opacity: .7;
    cursor: pointer;
}

.flexslider_s .flex-control-thumbs img:hover {
    opacity: 1;
}

.flexslider_s .flex-control-thumbs .flex-active {
    opacity: 1;
    cursor: default;
}


/* FlexSlider Default Theme
*********************************/
/* Browser Resets */
.flexslider_c a:active,
.flexslider_c a:focus {
    outline: none;
}

/* FlexSlider Necessary Styles
*********************************/
.flexslider_c {
    margin: 0 30px 0 30px;
}

.flexslider_c .slides > li {
    display: none;
    -webkit-backface-visibility: hidden;
}

/* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider_c .slides li {
    width: 280px;
    padding: 0 21px 0 21px;
}

.flexslider_c .slides img {
    width: 100%;
    display: block;
}

/* FlexSlider Default Theme
*********************************/
.flexslider_c {
    max-height: 282px;
    position: relative;
    padding: 0 0 30px 0;
}

.flexslider_c .slides {
    zoom: 1;
}

/* Direction Nav */
.flexslider_c .flex-direction-nav {
    *height: 0;
}

.flexslider_c .flex-direction-nav a {
    width: 30px;
    height: 120px;
    margin: -70px 0 0;
    background: url(../img/common/arrows01.png) no-repeat;
    position: absolute;
    display: block;
    top: 50%;
    z-index: 200;
    cursor: pointer;
    opacity: 0.5;
    text-indent: -9999px;
}

.flexslider_c .flex-direction-nav .flex-next {
    background-position: 100% 0;
    right: -30px;
}

.flexslider_c .flex-direction-nav .flex-prev {
    left: -30px;
}

.flexslider_c .flexslider:hover .flex-next {
    opacity: 1;
    right: -30px;
}

.flexslider_c .flexslider:hover .flex-prev {
    opacity: 1;
    left: -30px;
}

.flexslider_c .flexslider:hover .flex-next:hover, .flexslider:hover .flex-prev:hover {
    opacity: 0.5;
}

.flexslider_c .flex-direction-nav .flex-disabled {
    opacity: 0 !important;
    filter: alpha(opacity=30);
    cursor: default;
}

.flexslider_c li h4 {
    padding: 15px 8px 15px 8px;
    background: #ffffff;
}

/* clearfix
---------------------------------------------------- */
/* for modern brouser */
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
    font-size: 0px;
}

/* IE7,MacIE5 */
.clearfix {
    display: inline-block;
}

/* WinIE6 below, Exclude MacIE5 \*/
* html .clearfix {
    height: 1%;
}

.clearfix {
    display: block;
}

.seminar-btn {
    float: right;
    width: 220px;
}

.seminar-btn li {
    margin-bottom: 5px;
}


div#flickscroll ul {
    width: auto !important;
}

#product_news dl {
    padding: 10px;
}

#product_news dt {
    height: 215px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: #ddd solid 1px;
    position: relative;
}

#product_news dt img {
    display: block;
    margin: auto;
    max-height: 215px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: auto;
}

#flickthumb ul li {
    position: relative;
}

ul#productsBox1 h4, ul#productsBox2 h4, ul#productsBox3 h4, ul#productsBox4 h4 {
    border-bottom: #ddd solid 1px;
    width: 100%;
}

p.sub_close {
    position: absolute;
    bottom: 10px;
    right: 10px;
}

span.impu_block {
    display: block;
}

label.form_request_option {
    text-align: left;
    display: block;
}

.colBox.col_add_margin {
    margin-bottom: 15px !important;
}

/* Single page of products */
.single_products {
    margin-top: 40px;
    border-top: 1px solid #D01126;
    word-break: break-all;
    word-wrap: break-word;
}

.single_products_button, a.single_products_button {
    position: relative;
    display: block;
    margin-top: 10px;
    margin-bottom: 10px;
    padding: 14px 50px;
    background-color: #666666;
    color: white;
    text-decoration: none;
    text-align: center;
    color: white;
}

.single_products_button.disabled {
    opacity: .6;
}

.single_products_button.button-arrow {
    position: relative;
}

.single_products_button.button-arrow:after {
    content: '>';
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    font-size: 10px;
    color: white;
}

.single_products_nav_red .single_products_button.button-arrow:after {
    content: '>';
    display: block;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -6px;
    font-size: 10px;
    color: #666;
}

.single_products_button img {
    position: absolute;
    left: 15px;
    top: 50%;
    margin-top: -10px;
}

.single_products_photos {
    float: left;
    width: 430px;
    margin-bottom: 20px;
}

.single_products_main_photo {
    position: relative;
    height: 400px;
    margin-bottom: 20px;
}

.single_products_main_photo img {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.single_products_image_list {
    margin: 0;
    padding: 0 0 1px;
}

.single_products_image_list li {
    float: left;
    width: 85px;
    height: 80px;
    list-style: none;
    margin: 0 0 5px -1px;
    padding: 0;
}

.single_products_image_list li a {
    display: block;
    padding: 3px 0;
    border: 1px solid #E6E6E6;
    border-top: 0;
    text-align: center;
}

.single_products_image_list li a.active {
    border-bottom: 4px solid #D01126;
    padding-bottom: 0;
}

.single_products_information h2 {
    margin-bottom: 25px;
    padding: 35px 0 0;
    border-top: 5px solid #D01126;
    font-size: 20px;
    line-height: 1.4;
}

.single_products_information h2 small {
    display: block;
    font-size: 65%;
    color: #D01126;
}

.single_products_description, .single_products_maker {
    margin: 25px 0;
    line-height: 1.71;
}

.single_products_maker span {
    font-weight: bold;
}

.single_products_information {
    float: right;
    width: 440px;
}

.single_products_lines {
    border-top: 1px solid #D01126;
    border-bottom: 1px solid #D01126;
}

.single_products_subtitle {
    margin-bottom: 20px;
    text-align: center;
}

.single_products_subtitle span {
    display: inline-block;
    border-top: 3px solid #D01126;
    padding: 14px 4px;
    color: #D01126;
    letter-spacing: 3px;
}

.single_products_nav_double {
    margin-left: -5px;
    margin-right: -5px;
}

.single_products_nav_double > div {
    float: left;
    width: 50%;
}

.single_products_nav_double > div .single_products_button {
    margin: 0 5px;
}

.single_products_nav_red a {
    background-color: #fff;
    text-align: left;
    color: #666;
    border: #666 solid 1px;
}

/*.single_products_nav_red a:nth-child(1) { background-color:#780A21; }
.single_products_nav_red a:nth-child(2) { background-color:#AA1126; }
.single_products_nav_red a:nth-child(3) { background-color:#bd1225; }
.single_products_nav_red a:last-child { background-color:#D01126; }*/
.single_products_pdfs {
    margin-top: 20px;
    padding-top: 10px;
    padding-bottom: 10px;
}

.single_products_pdfs p { /*float:left;padding:6px 0;*/
    color: #D01126;
}

.single_products_pdfs > div { /*float:right; width:340px;*/
    margin-left: -5px;
    margin-right: -5px;
}

.single_products_pdfs > div > div {
    float: left;
    width: 50%;
    text-align: center;
}

.single_products_pdfs > div > div .single_products_button {
    margin: 0 5px;
    padding: 14px 30px;
}

/* .single_products>.clearfix { margin-bottom:50px; } */
.single_products_movie_link {
    margin-left: 60px;
    margin-right: 60px;
    padding: 20px 0;
}

.single_products_movie_description {
    float: left;
    width: 330px;
    padding: 0 20px;
}

.single_products_movie_description .single_products_button {
    display: inline-block;
    padding: 10px 30px;
}

.single_products_movie_title {
    margin: -20px -20px 20px;
    padding: 10px 0;
    border-top: 4px solid #D01126;
    border-bottom: 1px solid #D01126;
    color: #D01126;
    letter-spacing: 3px;
}

.single_products_movie_description h5 {
    margin-bottom: 20px;
    font-size: 18px;
}

.single_products_movie_canvas {
    float: right;
    width: 410px;
}

.single_products_data {
    margin-bottom: 50px;
    padding: 30px 40px;
    background-color: #FAFAFA;
}

.single_products_data h4 {
    margin-top: -30px;
    text-align: center;
}

.single_products_data h4 span {
    display: inline-block;
    border-top: 4px solid #D01126;
    padding: 8px 8px 12px;
    letter-spacing: 3px;
    color: #D01126;
}

.single_products_data dl {
    float: left;
    width: 50%;
    font-size: 11px;
}

.single_products_data dl dt {
    clear: left;
    float: left;
    font-weight: bold;
    width: 90px;
    margin-bottom: 10px;
}

.single_products_data dl dd {
    margin-left: 90px;
    margin-bottom: 10px;
    margin-right: 20px;
}

.single_products_same_category h2 {
    margin-bottom: 15px;
    padding: 22px 0 24px;
    border-top: 3px solid #D01126;
    border-bottom: 1px solid #D01126;
}

.single_products_category-label {
    display: inline-block;
    line-height: 1.1;
    padding: 2px 4px;
    border: 1px solid #ccc;
    border-radius: 3px;
}

@media (min-width: 768px) and (max-width: 979px) {
    .single_products_photos {
        width: 350px;
    }

    .single_products_information {
        width: 340px;
    }

    .single_products_nav_double > div .single_products_button {
        padding-left: 15px;
        padding-right: 15px;
    }

    .single_products_movie_description {
        width: 290px;
    }

    .single_products_movie_canvas {
        width: 370px;
    }

    .single_products_movie_link {
        margin-left: 0;
        margin-right: 0;
    }

    #index_page .info_navi_top_box {
        width: auto;


    }

}

@media (max-width: 767px) {
    .single_products_photos, .single_products_information {
        float: none;
        width: auto;
    }

    .single_products_pdfs > div {
        clear: both;
        float: none;
        width: auto;
    }

    .single_products_nav_double > div .single_products_button {
        padding-left: 15px;
        padding-right: 15px;
    }

    .single_products_movie_link {
        margin-left: 0;
        margin-right: 0;
    }

    .single_products_movie_description, .single_products_movie_canvas {
        float: none;
        width: auto;
    }

    .single_products_data {
        padding-left: 15px;
        padding-right: 15px;
    }

    .single_products_data dl {
        float: none;
        width: auto;
    }

    .single_products_data dl dd {
        clear: left;
        margin-left: 0;
    }

    #index_page .info_navi_top_box {
        width: auto;


    }

}


/* DIMeグローバルナビ
---------------------------------------------------- */

#g_navi_dime {
    border-bottom: 2px solid #af2f23;
    padding: 0 0 10px 0;
}

#g_navi_dime nav {
    max-width: 940px;
    margin: 0 auto;
    text-align: left;
}

#g_navi_dime span a {
    color: #666666;
    text-decoration: none;
}

#g_navi_dime span a:hover {
    text-decoration: underline;
}

#g_navi_dime span:after {
    content: "　　";
}

#g_navi_dime span:before {
    content: "　　";
}


#g_navi > div ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 20px;
}

#g_navi > div ul > li {
    display: inline-block;
    padding: 10px 32px;
    float: left;
    box-sizing: border-box;
    text-align: center;
}

#g_navi > div ul > li:first-child {
    padding-left: 20px;
}

#g_navi > div ul > li:last-child {
    padding-right: 20px;
}

#g_navi > div ul > li.sub > a {
    color: #4C4C4C;
    text-decoration: none;
    font-size: 15px;
    font-weight: bold;
    box-sizing: border-box;
    font-family: Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    width: 100%;
}

li.sub > a > span {
    transition: all 0.3s ease;
}

li.sub > a:hover > span {
    color: #d01027;
    /*background: #d01027;*/
}

.submenu {
    max-width: 100%;
    text-align: left;
    z-index: 9999;
    display: none;
    position: absolute;
    opacity: 1;
    padding: 0 0 0 40px;
    background: #F7F7F7;
    left: 0;
    top: 100%;
}


.submenu dd ul li a {
    width: 175px;
    color: #333;
    text-decoration: none;
    display: block;
    padding: 10px 20px 10px 0;
    box-sizing: border-box;
}

.submenu dd ul li a:hover {
    color: #000;
    background: #ccc;
}

dl.submenu-00, dl.submenu-00 dt {
    position: relative;
}

dl.submenu-00 dt a {
    color: #D71200;
    text-decoration: none;
    display: block;
    font-size: 18px;
}

dl.submenu-00 dt a:after {
    content: '>';
    display: inline-block;
    position: relative;
    right: -10px;
    font-size: 24px;
    color: #D71200;
}

.submenu dl {
    margin-bottom: 0px;
    background: none;
}

.submenu dl.submenu-00 {
    width: 100%;
    float: none;
    background: #F7F7F7;
    display: block !important;
}

.submenu.menu01 dl.submenu-01, .submenu.menu01 dl.submenu-02, .submenu.menu01 dl.submenu-03, .submenu.menu01 dl.submenu-04 {
    /*width: 224px;*/
    width: 200px;
    display: inline-block;
    border-left: #eee solid 1px;
    margin: 10px 0px 0px 0px;
    padding: 0 0 0 0px;
}

.submenu dt {
    background: #f7f7f7;
    color: #333;
    font-weight: bold;
    padding: 5px 0 5px 19px;
    /*width: 175px;*/
    /*display: inline-block;*/
    display: block;
    vertical-align: top;
    border-left: #D72100 solid 1px;
    margin-bottom: 10px;
    position: relative;
    left: -1px;
    box-sizing: border-box;
}

#g_navi .submenu ul li {
    float: none;
    padding: 0 0 0 20px;
    display: flex;
    align-items: center;
}

.submenu dd ul li {
    width: initial;
    float: none;
    border-right: none;
    box-sizing: none;
    border-bottom: none;
    position: relative;
    display: flex;
    align-items: center;
}

.submenu dd {
    background: #f7f7f7;
    /*width: 100%;*/
    display: inline-block;
}

.submenu dd ul li:after {
    content: '>';
    position: relative;
    right: 15px;
    color: #d21a1a;
}

dl.submenu-00 dt {
    padding: 10px;
    border: none;
    margin: 0;
}

.submenu.menu03 dl.submenu-01 {
    width: 97%;
    float: left;
    border-left: #eee solid 1px;
    margin: 10px 0px 0px 10px;
    padding: 0 0 0 0px;
    height: 130px;
}

.submenu.menu04 dl.submenu-01 {
    width: 97%;
    float: left;
    border-left: #eee solid 1px;
    margin: 10px 0px 0px 10px;
    padding: 0 0 0 0px;
    min-height: 45px;
}

.submenu.menu04 dl.submenu-01.submenu dt {
    width: 140px;
}

.submenu.menu02 dl.submenu-01, .submenu.menu02 dl.submenu-02, .submenu.menu02 dl.submenu-03 {
    width: 302px;
    float: left;
    border-left: #eee solid 1px;
    margin: 10px 0px 0px 10px;
    padding: 0 0 0 0px;
    height: 235px;
}

.submenu.menu02 dl.submenu-01 {
    border: none;
}

.submenu.menu02 .submenu-01 dd ul li a:after {
    content: '>';
    position: absolute;
    top: 10px;
    right: 10px;
    color: #fff;
}

.submenu.menu02 .submenu-01 dd ul li:before,
.submenu.menu02 .submenu-03 dd ul li:before {
    display: none;
}

.submenu.menu02 .submenu-01 dd ul li a {
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 10px 10px 10px 10px;
    text-align: center;
    background-color: #AA1126;
}

.submenu.menu02 .submenu-01 dd ul li:nth-of-type(2) a {
    background-color: #666;
}

#g_navi .submenu.menu02 .submenu-01 ul li {
    padding: 0;
}

#g_navi .submenu.menu02 .submenu-01 ul li {
    padding: 0;
    width: 220px;
    margin: 20px auto 0px;
}

#g_navi .submenu.menu02 .submenu-03 ul li img {
    margin: 0 10px 0 0px;
}

#g_navi .menu03 .submenu-01 li, #g_navi .menu04 .submenu-01 li {
    /*width: 25%;*/
    float: left;
}

input[value="クレジットカードでお支払い"] {
    width: 220px;
}

dl.submenu-menu01 dt a:after {
    display: none;
}

dl.submenu-00.submenu-menu01 dt {
    width: 100%;
    padding: 10px 0;
}

#g_navi dl.submenu-00.submenu-menu01 li {
    align-items: center;
    display: flex;
}

#g_navi dl.submenu-00.submenu-menu01 li a:after {
    content: '>';
    display: inline-block;
    position: relative;
    right: -10px;
    font-size: 24px;
    color: #D71200;
}


/*navi追加*/
dl.submenu-05 dt {
    width: 940px;
    padding: 10px 0;
    border: none;
}

#g_navi dl.submenu-05 li {
    padding: 0;
    display: inline-block;
    width: 39%;
    padding: 0px 5%;
    text-align: center;
}

#g_navi dl.submenu-05 li a {
    background: #666;
    display: block;
    text-align: center;
    color: #fff;
    padding: 10px 0;
    text-decoration: none;
    position: relative;
}

#g_navi dl.submenu-05 li a:after {
    content: '>';
    position: absolute;
    top: 10px;
    right: 10px;
    color: #fff;
}


/* GROUP 21 */

.grp_top {
    position: relative;
    font-family: Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif
}

.grp_top .grp_top_ttl {
    line-height: 1;
    width: auto;
    padding: 80px 15px 60px;
    /*padding:70px 15px 60px;*/
    font-size: 300%;
    font-weight: 400;
    letter-spacing: 0.2em;
}

.grp_top .grp_top_tag {
    position: absolute;
    top: 340px;
    left: 50%;
    margin: 0 0 0 250px;
}

.grp_top .grp_top_txt {
    line-height: 1.8;
    padding: 40px 0 70px;
}

.grp_cnt {
    font-family: Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif
}

.grp_cnt:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.grp_cnt .grp_cnt_ttl {
    background-color: #e60012;
    margin: 0 0 15px 0;
    padding: 10px 0;
}

.grp_cnt .grp_left {
    float: left;
    width: 48%;
    padding: 10px 0 0;
}

.grp_cnt .grp_right {
    float: right;
    width: 48%;
    padding: 40px 0 0;
}

.grp_cnt .grp_cat {
    padding: 0 0 15px;
    line-height: 1.5;
    font-weight: bold;
}

.grp_cnt .grp_txt {
    padding: 0 0 15px;
}

.grp_cnt .grp_cnt_btn {
    display: inline-block;
    background-color: #ee869a;
    padding: 8px 20px;
    min-width: 250px;
    text-align: center;
    color: #fff;
    text-decoration: none;
    box-sizing: border-box;
}

.grp_cnt .grp_cnt_btn:hover {
    color: #fff;
    text-decoration: none;
    filter: opacity(50);
    opacity: 0.5;
}

.grp_cnt.cnt02 .grp_cnt_ttl {
    background-color: #8fc31f;
}

.grp_cnt.cnt03 .grp_cnt_ttl {
    background-color: #00b3d2;
}

.grp_cnt.cnt04 .grp_cnt_ttl {
    background-color: #fcc800;
}

.grp_cnt.cnt05 .grp_cnt_ttl {
    padding: 15px 0;
    width: auto;
    background-color: #ffffff;
    border: solid #e60012 5px;
}

.grp_cnt.cnt04 {
    margin-bottom: 50px;
}

.grp_cnt.cnt05 .grp_left {
    padding: 30px 0 0;
    width: 60%;
}

.grp_cnt.cnt05 .grp_right {
    padding: 30px 0 0;
    width: 40%;
}

.grp_cnt.cnt04 .grp_cnt_btn {
    background-color: #9d80ba;
}

.grp_cnt.cnt05 .grp_left li {
    position: relative;
    margin: 0 0 60px 0;
    padding: 0 0 0 70px;
    min-height: 50px;
    font-weight: bold;
    line-height: 1.4;
}

.grp_cnt.cnt05 .grp_left li img {
    position: absolute;
    top: 0;
    left: 0;
}

.grp_cnt.cnt05 .grp_left li b {
    color: #e60012;
}

.grp_cnt.cnt05 .grp_left li small {
    font-weight: normal;
}

.grp_cnt.cnt05 .grp_left li:first-child {
    line-height: 50px;
}

.grp_cnt .grp_mag_list:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.grp_cnt .grp_mag_list .float_l {
    width: 47.5%;
}

.grp_cnt .grp_mag_list .float_r {
    width: 47.5%;
}

.grp_cnt .grp_mag_list .grp_mag_ttl {
    padding: 10px 0 5px;
    line-height: 1.4;
}

.grp_cnt .grp_mag_list .grp_mag_ttl b {
    font-weight: bold;
}

.grp_cnt .grp_mag_list img {
    width: 100%;
    height: auto;
}

.grp_cnv {
    margin-bottom: 80px;
}

.grp_cnv .grp_cnv_btn {
    position: relative;
    display: block;
    background-color: #e60012;
    padding: 20px 0;
    text-align: center;
    text-decoration: none;
    box-sizing: border-box;
}

.grp_cnv .grp_cnv_btn:hover {
    color: #fff;
    text-decoration: none;
    filter: opacity(50);
    opacity: 0.5;
}

.grp_cnv .grp_cnv_tag {
    position: absolute;
    top: 0;
    left: 50%;
    margin: -57px 0 0 -305px;
    font-size: 0;
    line-height: 0;
}

.grp_gui {
    font-family: Meiryo, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", sans-serif
}

.grp_gui {
    width: 100%;
    background-color: #f4f1ea;
}

.grp_gui:after {
    content: ".";
    display: block;
    height: 0;
    font-size: 0;
    clear: both;
    visibility: hidden;
}

.grp_gui .grp_gui_txt {
    float: left;
    width: 50%;
    padding: 120px 0 0 0;
    line-height: 2;
}

.grp_gui .grp_gui_txt img {
    display: block;
    margin: 0 0 30px 0;
    line-height: 1;
}

.grp_gui .grp_gui_sup {
    position: relative;
    float: right;
    width: 38%;
    padding: 50px 0 80px;
}

.grp_gui .grp_gui_sup li {
    padding: 0 0 15px 0;
    line-height: 75px;
    font-weight: bold;
}

.grp_gui .grp_gui_sup li img {
    padding: 0 15px 0 0;
}

.grp_gui .grp_gui_sup li:last-child {
    padding: 0 0 0 0;
}

.grp_gui .grp_gui_sup .grp_gui_tag {
    position: absolute;
    bottom: 90px;
    left: -182px;
}

.grp_gui .grp_gui_cnv {
    float: left;
    padding: 50px 0 0 0;
    width: 50%;
}

.grp_gui .grp_gui_cnv dt {
    padding: 0 0 15px 0;
    font-weight: bold;
}

.grp_gui .grp_gui_cnv a {
    display: inline-block;
    background-color: #ee869a;
    padding: 10px 15px;
    width: 190px;
    text-align: center;
    color: #fff;
    text-decoration: none;
    box-sizing: border-box;
}

.grp_gui .grp_gui_cnv .tenant {
    background-color: #5699ba;
    margin: 0 15px 0 0;
}

.grp_gui .grp_gui_cnv .build {
    background-color: #d47833;
}

.grp_gui .grp_gui_cnv a:hover {
    color: #fff;
    text-decoration: none;
    filter: opacity(50);
    opacity: 0.5;
}


/* 2017-07-04　add */
.form_privacy_policy {
    width: 95%;
    margin: 0 auto 20px auto;
}

.form_privacy_policy p {
    /* text-decoration: underline; */
}

.form_privacy_policy a {
    text-decoration: underline;
    color: #c03;
    font-weight: bold;
}

/* 2017-07-13　add */
.omimai {

    color: #000;
    font-size: 1.3rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;

    border: 1px dotted #f00;

    padding: 1rem;
}

.warn {
    color: red;
    text-align: center;
    padding: 1rem;
    font-size: 2.2rem;
    font-size: 22px;
    font-weight: bold;

}

.no-underline,
.no-underline:link,
.no-underline:visited,
.no-underline:active {
    border: none;
}

.recruit_buttons {
    display: inline-flex;

}

.recruit_buttons li {
    padding: 5px 10px;
}

@media screen and (max-width: 768px) {

    .recruit_buttons {
        display: block;
        width: 200px;
        margin: 0 auto;

    }

    .list_seminars_area {
        padding-left: 20px;
        width: auto;
    }

    .list_seminars_area li {
        display: block;
    }
}

/*   フォーム送信後 submit 非表示
***************************************************/
form.wpcf7-form.sent ul {
    display: none;
}

.sent .contents_sm {
    display: none;
}

/*  コンタクトフォーム7 送信　押下後　メッセージ
***************************************************/

div.wpcf7-mail-sent-ok {
    border: 3px solid #398f14;
    background: rgba(222, 249, 210, 0.1);
    margin: 0 -3px 20px;
}

div.wpcf7-response-output {
    margin: 20px -3px 27px;
    padding: 2em 1em;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
    background: rgba(251, 208, 213, 0.1);
    border: 3px solid #D01126;
}

@media screen and (max-width: 767px) {
    .seminar_form .submit input {
        margin: 0px auto -20px auto;
    }
}


/*
-------------------------------------------------- */
.new_notice::after {
    content: "!";
    display: inline-block;
    font-size: 13px;
    font-weight: bold;
    width: 17px;
    height: 16px;
    background-color: #D71200;
    color: #ffffff;
    border-radius: 50%;
    position: relative;
    left: 4px;
    padding ~
    bottom: 1px;
}

.nav_select {
    border-bottom: solid 1px #D72100;
    color: #D72100;
    position: relative;
}


.nav_select::before {
    content: "";
    width: 1px;
    height: 60px;
    position: absolute;
    left: 50%;
    top: 100%;
    background-color: #D72100;
}

.nav_current {
    border-bottom: solid 1px #D72100;
    color: #D72100;
    position: relative;
}


.info_navi li p {
    position: relative;
    left: 20px;
}

.info_navi li h5 {
    width: 370px;
}


.tbl-column {
    padding: 5px 10px 5px 10px;
    /* border-bottom: 1px dashed #bfbfbf; */
    overflow: hidden;
}


p.tbl-column-txt {
    margin-bottom: 0;
}

.tbl-column-txt .cate {
    padding: 5px;
    margin-left: 5px;
    border-radius: 25%;
    background-color: #f7f7f7;
}

.tbl-column-txt a {
    float: right;
    width: 820px;
    color: #333333 !important;
}

.recommend_item_wrap {
    width: auto;
    padding: 25px 15px 0px 15px;
    background-color: #dcdcdc;
}

.recommend_item_wrap::after {
    display: block;
    clear: both;
    content: "";
}

.recommend_item_wrap span {
    position: relative;
    color: #D71200;
    text-decoration: none;
    display: block;
    font-weight: bold;
    font-size: 18px;
    bottom: 9px;
}

.recommend_item {
    margin-top: 10px;
}


.recommend_item_wrap a {
    font-size: 18px;
    font-weight: bold;
    color: #D72100;
    text-decoration-line: none;
}

.recommend_item_wrap > ul {
    width: 225px;
    float: left;
    margin: 15px auto 0;
}

#g_navi .submenu ul li.recommend_item {
    padding: 0;
    margin: 20px 0 10px;
}

.recommend_item_title {
    font-size: 14px;
    display: inline-block;
    float: left;
    margin-top: 5px;
    color: #666666;
    margin-bottom: 10px;
}

.recommend_item_title::after {
    content: '>';
    position: relative;
    left: 10px;
    top: 1px;
    color: #d21a1a;
    font-weight: bold;
    display: inline-block;
}

.recommend_item_pics {
    text-align: center;
}

.recommend_item_pics img {
    padding: 10px 10px;
    background-color: rgba(255, 255, 255, 0.75);
    margin: 0;
    max-width: 100%;
    max-height: 120px;
}


.flex-viewport ul.slides li h4 {
    background-color: inherit;
}


#productsBox1, #productsBox2, #productsBox3, #productsBox4　 {
    display: block;
}

.contents {
    /*overflow: hidden;*/
}

#product_news {
    width: 100%;
    padding: 0 0 15px;
}

#product_news > h3 {
    margin-left: 20px;
    margin-top: 16px;
}

#product_news li {
    width: 150px;
}

#totop {
    position: fixed;
    height: 58px;
    width: 58px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 1);
    border: solid 1px #D72100;
    right: 2%;
    bottom: 20px;
    cursor: pointer;
    text-align: center;
}

span.totop_botton_arrow {
    color: #D72100;
    display: block;
    transform: rotate(-135deg);
    position: relative;
    left: 35%;
    top: 45%;
    width: 15px;
    height: 15px;
    border-bottom: 2px solid;
    border-right: 2px solid;
}

.contents_ms {
    width: 1200px;
}

.contents_w {
    width: auto;
    margin: 0 auto;
    padding: 0 0 40px 0;
}

/* page index
-------------------------------------------------- */
#openIndex {
    position: fixed;
    padding-top: 12px;
    box-sizing: border-box;
    height: 66px;
    width: 66px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 1);
    color: #598CB9;
    border: solid 1px #598CB9;
    right: 2%;
    bottom: 20px;
    cursor: pointer;
    text-align: center;
}

#openIndex i {
    display: block;
    font-size: 26px;
}

.page-index-box {
    padding-bottom: 25px;
}

.page-index-box .page-title {
    background-color: #598CB9;
    position: relative;
    padding: 13px 17px;
    color: #fff;
}

.page-index-box .page-title #close-btn {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    color: #fff;
    font-size: 22px;
    cursor: pointer;
}

.page-index-box .page-index-content {
    padding: 0 10px;
    display: block;
    position: relative;
    cursor: pointer;
}

.page-index-box .page-index-content::after {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    position: absolute;
    right: 17px;
    top: 50%;
    transform: translateY(-50%);
}

.page-index-box .page-index-content:hover{
    color: #7AB272;
}

.page-index-box .page-index-content div {
    padding: 10px 6px;
    border-bottom: 1px solid #BEBEBE;
}

.page-index-box .page-index-content div span {
    display: block;
    font-weight: bold;
}

@media screen and (max-width: 480px) {
    .page-index-box .page-title {
        padding: 23px 17px;
        font-size: 16px;
    }
    .page-index-box .page-index-content {
        padding: 0 14px;
    }
    .page-index-box .page-index-content::after {
        font-size: 18px;
    }
    .page-index-box .page-index-content div {
        font-size: 14px;
        padding-right: 30px;
    }

}
/* search form
-------------------------------------------------- */

.gsc-search-button-v2, .gsc-search-button-v2:hover, .gsc-search-button-v2:focus {
    opacity: 0;
}

.gsc-search-button-v2 > svg {
    display: none;
}

#___gcse_1,
#site-navigation {
    display: none;
    position: absolute;
    top: 100%;
    right: 0px;
    z-index: 10000;
    background-color: #fff;
    border: solid 1px #E0E0E0;
    border-top: solid 1px #fff;
    height: 30px;
    width: 400px;
    padding: 10px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}


input.search_text {
    height: 30px;
    border-radius: 5px;
    margin: 0;
    position: relative;
    bottom: 10px;
}

#header input.search_button,
.gsc-search-button {
    background-image: url("../images/mushimegane_wh.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px;
    line-height: inherit;
    min-width: 50px;
    height: 30px;
    border-radius: 10%;
    margin-left: 1px;
    background-color: #D71E0F;
}

#cse-search-box {
    padding: 0 !important;
    background-color: inherit !important;
}

.gsib_a {
    padding: 6px;
}

/* pc header 検索フォーム */
#searchWrapPc > #site-navigation {
    display: none;
    position: absolute;
    top: 100%;
    right: 0px;
    z-index: 10000;
    background-color: #fff;
    border: solid 1px #E0E0E0;
    border-top: solid 1px #fff;
    height: 30px;
    width: 400px;
    padding: 10px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

#searchWrapPc > #site-navigation #srchForm {
    height: 30px;
    border-radius: 5px;
    position: relative;
    bottom: 10px;
}

#searchWrapPc > #site-navigation #srchInput {
    width: 330px;
}

#searchWrapPc > #site-navigation #srchBtn {
    background-image: url("../images/mushimegane_wh.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px;
    min-width: 60px;
    height: 38px;
    line-height: 50px;
    border-radius: 10%;
    font-size: 0px;
    margin-left: 5px;
    margin-bottom: 5px;
}

#searchWrapPc > #site-navigation #srchInputPc {
    width: 330px;
}

#searchWrapPc > #site-navigation .srchBtn {
    background-image: url("../images/mushimegane_wh.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 17px;
    min-width: 60px;
    height: 36px;
    line-height: 50px;
    border-radius: 10%;
    font-size: 0px;
    margin-left: 5px;
    background-color: #d01027;
    cursor: pointer;
    vertical-align: middle;
    border: none;
}

#searchWrapPc > #site-navigation .srchBtn:hover {
    background-color: #B41124;
}

#searchWrapSp .srchBtn:hover {
    background-color: #B41124;
}

/*製品ページ内検索フォーム*/
.contents_sform {
    border-top: 1px solid #cacaca;
    border-bottom: 1px solid #cacaca;
    margin: 30px 0px;
}

.contents_sform #srchForm {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: inherit;
    margin: 30px;
}

.contents_sform #srchForm > #srchInput {
    width: calc(77% - 20px);
    margin: auto;
}

.contents_sform #srchForm > #srchBtn {
    margin: auto;
    border-radius: 5px;
    background-color: #898989;
    font-size: 16px;
}

.yahoo_cse_gif {
    display: none;
}

/* style.css 上書き用
-------------------------------------------------- */
#main.site-main h2.title_l.text30.m40 {
    display: none;
}

.company_navi li:nth-child(3n) {
    padding: 0 47px 0 0;
}

.movie {
    text-align: center;
}

.contents_smm > h3 {
    font-size: 23px;
}

div.w49_l.float_l_pc p,
div.w49_l.float_r_pc p {
    text-align: center;
}

.info_navi ul {
    margin: 0;
}


.single_products_information h2 {
    margin-top: 0;
}


dl.submenu-01 {
    /*width:  245px;*/
    height: inherit;
    /*float: left;*/
    /*    margin-bottom: 35px;*/
    border-left: #eee solid 1px;
}

#g_navi .nav1 ul.opt_uls {
    max-width: 1000px;
    justify-content: unset;
}

#g_navi .submenu ul.opt_uls li {
    float: left;
    width: 245px;
    padding-left: 20px;
}


h2.title_l {
    margin: 0;
    color: #333333;
    margin-top: 0;
    margin: 0;
}

h2.title_l::after {
    border-bottom: none;
}

h3.title_border_l {
    /* margin-bottom: 45px; */
}


.g21_meyasu_l h3::first-letter {
    color: white;
}

.g21_meyasu_l h3 {
    margin-bottom: 0;
    font-size: 138.5%;
}

.g21_meyasu_l p {
    line-height: 1.5;
    margin-bottom: 0;
}

.g21_meyasu_l h4,
.g21_meyasu_r h4 {
    font-size: inherit;
    padding-bottom: 5px;
    margin-bottom: 0;
    border-bottom: none;
    display: block;
}

.flexslider_c ul.flex-direction-nav li {
    position: inherit;
}

.flex-viewport ul.slides li h4 {
    font-size: 17px;
}

.cf section h4 {
    border-bottom: none;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

.cf section p {
    line-height: inherit;
    margin-bottom: 0px;;
}

.single_products_description p, {
    line-height: inherit;
}


h3.title_border_l .contact_h {
    margin: 45px auto;
}

p.m5 {
    margin-bottom: 5px;
}

.products_navi03 {
    width: 1100px;
}

.products_navi03 li h4 {
    width: 100%;
    transform: inherit;
    text-align: center;
    padding-top: 10px;
}

span.p_navi_home {
    /* border-bottom: 1px solid #333333; */
    position: relative;
}

span.p_navi_arrow {
    margin: 0 8px;
}

span.p_navi_current {
    color: #cc0033;
}

.mypage_btn.gray {
    display: none;
    background-color: #ccc;
}

.mypage_btn {
    background-color: #89888a;
}

.mypage_btn_text {
    text-align: center;
}

.hd_contact_skin .mypage_btn_text::before {
    content: none;
}

.contents.g_margin {
    margin-top: 45px;
}

p.cambra_box_title {

}

.cambra_box_img img {
    max-width: 380px;
}

.adopt_information > .colBox {
}

.adopt_information > .colBox > .col {
    text-align: center;
    font-weight: bold;
    font-size: 1.6rem;
    font-size: 16px;
}

.adopt_information > .colBox > .col > a {
    color: #cc0033;
    padding: 4px 20px;
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 0 2px #999;
}

h2.g21_title03.bg_shu.text_white {
    color: #ffffff !important;
}

h2.g21_title03.bg_hai {
}

.bg_shu > h3 {
    font-size: inherit;
}

h3.text_white::first-letter {
    color: #ffffff !important;
}

h3.g21_title04::first-letter {
    color: #d01027 !important;
}

.bg_shu .text_white {
    color: #ffffff !important;
}

.g21_bg02 .bg_white {
    text-align: left !important;
}

.g21_bg02 p > a {
    color: #333 !important;
}

h2.text22 {
    color: inherit;
}

.g21_bg02 ul.chart_list > li {
    margin-bottom: inherit;
}

.g21_bg02 h2::after {
    content: none;
}

.g21_border_bottom {
    border-bottom: 2px solid #333333 !important;
}

.g21_bg02 input[type="text"] {
    width: 70%;
}

.single_products_same_category ul {
    text-align: left;
}

.info_navi a.moreBtn {
    display: inline-block;
    margin: auto;
    padding: 3px 15px;
    background: #d01027;
    color: #fff !important;
    font-size: 13px;
    font-size: 1.3rem;
}

.flexslider .flex-direction-nav li {
    position: inherit;
}

h3.table_hd:first-letter {
    color: #333333 !important;
}

.float_r_pc .icon,
.float_l_pc .icon {
    vertical-align: middle;
}

.seminar_box02_r ul li::before,
.seminar_area ul li::before,
.g21_page_navi ul li::before,
.g21_page_navi ul li::before,
.trspr .contents_m ul li::before,
.g21_bg02 > .contents_slm > ul > li.text_indent10::before,
.wrapper > .contents_sms > ul.clearfix > li.w50p::before,
.g21_bg02 > .contents_sml > ul > li::before,
.g21_bg02 > .contents_s > ul > li::before,
.flexslider02 > ul.slides > li::before,
.g21_bg02 > .contents_smm > ul > li::before,
.g21_bg02 ul.chart_list > li::before,
.g21_navi.bg_hai > ul > li::before,
ul#productsBox4 li::before,
.footer_wrap ul.footer_nav_link li::before,
.g21_page_navi ul li::before,
ul.entry_form01 li::before,
#content > div.m80 > div.grp_cnt.cnt05.contents > ul > li.grp_left > ol > li::before,
.grp_cnt ul > li::before,
ul.grp_mag_list > li::before,
ul.grp_sup_list > li::before,
.contents_ms > ul > li::before,
.flex-viewport ul.slides li::before,
ul.recruit_list li::before,
ul.recruit_buttons li::before,
div.reqruit_navi > ul > li.float_l_pc::before,
ul#productsBox3 li:before,
ul#productsBox2 li:before,
ul#productsBox1 li:before,
div.seminar_box02_r.float_r_pc > ul > li::before,
ul.flex-direction-nav li::before,
.flexslider ul.slides li::before,
ul.access_list li::before,
ul.single_products_image_list li::before,
.single_products_same_category ul.contents_category li::before,
ul.sitemap_list > li::before,
ul.recruit_navi > li::before,
.info_navi_top > ul > li::before,
ul.company_navi > li::before,
ul.products_navi03 > li::before,
.business_navi > ul > li::before,
.company_navi li::before,
.info_navi li.clearfix::before,
.clearfix li.clearfix::before,
li.clearfix.products_ac_bt::before {
    content: none;
}

.footer_wrap ul.footer_nav_link li,
.chart_result_a ul li,
.chart_result_b ul li,
.chart_result_c ul li,
.chart_result_d ul li,
.chart_result_e ul li,
.chart_result_f ul li,
.wrapper > .contents_sms > ul.clearfix > li.w50p,
.g21_bg02 > .contents_sml > ul > li,
.g21_bg02 > .contents_s > ul > li,
.flexslider02 > ul.slides > li
.g21_bg02 > .contents_smm > ul > li,
.g21_bg02 ul.chart_list > li,
.flexslider_c ul.flex-direction-nav li,
ul.grp_mag_list > li,
.contents_ms > ul > li,
ul.recruit_list li,
ul.recruit_buttons li,
div.reqruit_navi > ul > li.float_l_pc,
.flexslider ul.slides li,
ul.sitemap_list > li,
ul.recruit_navi > li,
.info_navi_top > ul > li,
ul.company_navi > li,
ul.products_navi03 > li,
.info_navi li.clearfix,
.clearfix li.clearfix,
.products_ac ul li,
li.clearfix.products_ac_bt {
    padding-left: 0;
}

.footer_wrap ul.footer_nav_link li,
.single_products_title h2,
.single_products_description p,
.flexslider_c ul.flex-direction-nav li,
.info_navi_top_box ul li p,
.info_title h4,
.info_title p,
.info_navi ul li p,
.info_navi ul li h5,
info_title > h4,
.info_navi_top > ul > li > h5 {
    margin-bottom: 0;
}

.title_l::after,
.flex-viewport ul.slides li h4,
.contents_ml > h4,
.recruit_button > h4,
.contents_l h2::after,
.contents_mm h4,
.wrapper > .title_l::after,
.single_products_data > h4,
.single_products_same_category h2:after,
.single_products_information h2::after,
ul.recruit_navi li h4,
.contents_m > h4,
.contents_ms > h4,
ul.products_navi03 > li > h4,
.products_navi01_r > h4,
.info_title > .text_red {
    border-bottom: none;
}


/* movies
-----------------------------------------------*/
.section h3::first-letter {
    color: black;
}

aside#navi ul.contents {
    margin: 10px auto 20px;
}

ul.list-pro01 li::before {
    content: none
}

li.sub.active::before {
    content: none;
}

.subnavi dl dd ul li::before {
    content: none;
}

aside#navi li.login::before {
    content: none;
}

li.login ul li::before {
    content: none;
}


/* single-columns
----------------------------------------*/

p.p_date_l {
    width: 1100px;
    margin: 0 auto;
}

h3.contents_mls::first-letter {
    color: black;
}

/* digitalbook
---------------------------------------*/
.tbl-column dd h4 {
    border-bottom: none;
    padding-bottom: 0px;
    margin-bottom: 0px;
}

/* single-movies
------------------------------------------*/
ul#Tag li {
    float: left;
}

ul#Tag li::before {
    content: none;
}

ul#Tag li::after {
    content: " ";
}

/* google costum search
	---------------------------------------*/
#adBlock {
    display: none;
}

.gsc-above-wrapper-area {
    border: none;
}

.gsc-adBlock {
    border: none;
}

td.gsc-result-info-container {
    border: none !important;
    display: inline-block !important;
}

td.gsc-orderby-container {
    display: inline-block !important;
}

td.gsc-table-cell-thumbnail.gsc-thumbnail {
    border: none !important;
    vertical-align: middle !important;
    overflow: hidden;
    /* float: right; */
}

#___gcse_0 table,
#___gcse_0 table.gsc-above-wrapper-area-container,
#___gcse_0 .gsc-orderby-container {
    border: none !important;
}

.gsc-resultsHeader {
    display: none !important;
}


td.gsc-table-cell-snippet-close {
    border: none !important;
}

.gsc-cursor-page {
    padding: 5px;
    font-size: 14px;
    font-size: 1.4rem;
}

.gs-image-box.gs-web-image-box.gs-web-image-box-portrait {
    width: 120px !important;
    height: auto !important;
}

img.gs-image {
    max-width: 120px !important;
    max-height: 120px !important;
}

/* TOP PAGE
----------------------------------*/
.conceptItem .title {
    font-size: 30px;
    font-size: 3rem;
}


/* maintenance
*********************************************/
.smt_title {
    display: inline-block;
}

/* top update
**********************************************/

em {
    font-family: sans-serif, osaka, Meiryo;
    font-size: 12px;
    font-size: 1.2rem;
}

/* inst_support_info
**********************************************/
.inst_support_info a {
    color: #fff;
    padding: 10px 20px;
    display: block;
    text-align: center;
    text-decoration: none;
    background-color: #d01027;
}

.inst_support_info a span {
    font-size: 18px;
    font-size: 1.8rem;
}

/* seminar pdf link
*********************************************/
.seminar_box02_r ul li a {
    color: #d01027;
}

/* instructors
*********************************************/
.bt2 a {
    color: rgb(255, 255, 255) !important;
}

/*  movies
**********************************************/
.movie_box_wrap {
    max-width: 640px;
}

.movie_box {
    position: relative;
    width: 100% !important;
    height: auto !important;
    padding-top: 56.25% !important;
}

.movie_box video,
.movie_box iframe {
    position: absolute !important;
    width: 100% !important;
    height: 100% !important;
    display: block;
    top: 0;
    left: 0;
}

.movie_box .jstream-eqPlayer,
.movie_box .eq-h5_player {
    position: absolute !important;
    width: 100% !important;
    height: 100% !important;
    top: 0;
    left: 0;
}

/*
iframe {
	position: relative;
	width: 100%!important;
}

iframe .jstream-eqPlayer{
	position: absolute!important;
	width: 100%!important;
} */

/* header dna flag
**********************************/

.hd_nav_text.hd_flag {
    position: absolute;
    bottom: 38px;
    transform: translateX(-100%);
}

.hd_nav_text.hd_flag .dna_nav::before {
    content: none;
}

.hd_nav_text.hd_flag .dna_nav {
    text-align: center;
    margin: 0;
    font-weight: inherit;
}

.hd_nav_text.hd_flag .dna_nav.my_page {
    margin-right: 15px;
}

.hd_nav_text.hd_flag .dna_nav.my_page a {
    background: #c61f26;
}

.hd_nav_text.hd_flag .dna_nav > a {
    color: rgb(225, 225, 225);
    padding: 5px 30px;
    background-color: rgb(102, 99, 99);
    top: 22px;
    font-size: 14px;
}

.hd_nav_text.hd_flag .dna_nav > a > span.dna_arrow {
    margin-left: 6px;
    position: absolute;
    font-family: cursive;
}

.hd_right.hd_opt {
    top: 14px;
    margin-right: 16px;
}

.hd_right.hd_opt .free_dial {
    top: 3px;
}

.hd_right.hd_opt .free_dial::before {
    width: 20px;
    height: 20px;
    top: 2px;
}

.phone_desc {
    text-align-last: justify;
}

.yoshida_phone {
    font-size: 17px;
    font-size: 1.7rem;
}

.yoshida_phone a {
    display: inline-block;
    padding: 0 2px;
}

.mypage_btn {
    font-size: 13px;
    background-color: inherit;
    padding: 0;
    width: auto;
}

.mypage_btn a {
    background-color: rgb(232, 232, 232);
    border-radius: 25px;
    padding: 12px 15px;
    display: inline-block;
}

.mypage_btn a span {
    position: absolute;
    margin-left: 3px;
    font-family: cursive;
}

.mypage_btn_text {
    color: #333;
    top: 0;
    left: -3px;
    font-weight: bold;
}

.search_glass::before {
    content: "";
    display: inline-block;
    width: 36px;
    height: 36px;
    background: url(../images/btn_mushimegane.png) center/contain no-repeat;
}


.hd_nav_text.hd_flag.right_top {
    position: absolute;
    right: -20px;
    top: -55px;
    bottom: inherit;
    transform: translateX(0);
    display: flex;
    flex-wrap: wrap;
    width: auto;
}

/* chair side
**********************/
.chair_content::after {
    clear: both;
    display: block;
    content: "";
}

.chair_desc {
    text-align: center;
    margin-bottom: 40px;
}

.chair_desc p {
    display: inline-block;
}

.video_wrap {
    float: left;
    width: 45%;
    padding: 0 2.5%;
}

.video_wrap iframe {
    width: 100%;
    margin-bottom: 50px;
}

.video_wrap p {
    margin-bottom: 0;
}

.text_wrap {
    float: right;
    width: 45%;
    padding: 0 2.5%;
}

.text_wrap img {
    max-width: 50%;
    float: left;
}

.text_wrap img:nth-child(odd) {
    float: right;
}

.text_wrap_content_p {
    margin-left: 2rem;
    float: left;
}

.text_wrap_content_p p {
}

/* seminar
******************************/
span.seminar_area_cft {
    display: inline-block;
    width: 100%;
    text-align: right;
}

.seminar_area_inwrap {
    float: left;
    margin-right: 15px;
}

.contents_m.seminar_single {
    padding: 15px 0;
}

.seminar_box02_r ul li > span .icon {
    margin-left: 1em;
}

.seminar_box_title > .date > span {
    margin-left: 1rem;
}

.seminar_detail_bt {
    width: 40%;
    clear: both;
    box-sizing: border-box;
    line-height: 40px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    background: # #f5f5f5;
    border: solid 1px #8e8e8e;
    font-size: 14px;
}

.seminar_detail_bt a {
    display: block;
    text-align: center;
    box-shadow: 0 0 2px;
}

.seminar_detail_bt a span {
    display: inline-block;
    vertical-align: middle;
}

.seminar_detail_bt a span::after {
    content: "";
    display: inline-block;
    width: 13px;
    height: 19px;
    margin-left: 6px;
    vertical-align: text-bottom;
    background: url(../img/common/arrow01x2.png) center/contain no-repeat;
}

.accept_cancel_mail {
    /*max-width: 412px;*/
    max-width: 100%;
    box-shadow: 0 0 2px;
    line-height: 38px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    background: #d01027;
    border: none;
    font-size: 15px;
    position: relative;
}

.accept_cancel_mail a {
    color: #fff;
    display: block;
    text-align: center;
}

.cancel_bt {
    background: none;
}

.seminar_bt {
    margin-top: 20px;
    padding: 0;
    clear: both;
    box-shadow: 0 0 2px;
    line-height: 38px;
    -webkit-border-radius: 2px;
    -moz-border-radius: 2px;
    -ms-border-radius: 2px;
    -o-border-radius: 2px;
    border-radius: 2px;
    /*background: #d01027;*/
    border: none;
    font-size: 13px;
    float: right;
    width: 775px;
    position: relative;
}

.seminar_button.seminar_bt a {
    color: #fff;
    display: block;
    text-align: center;
    background: #d01027;
}

.seminar_bt > a > span::after,
.cancel_bt > a > span::after {
    content: "";
    display: inline-block;
    width: 13px;
    height: 16px;
    margin-left: 6px;
    vertical-align: middle;
    background: url(../img/common/arrow01x2.png) center/contain no-repeat;
}

.remote_option_area {
    width: 100%;
}

.remote_option_area ul {
    width: 15%;
    float: left;
    margin-top: 0;
}

.remote_option_area ul li {
    height: 35px;
    line-height: 35px;
}

.remote_option {
    float: left;
    width: 33%;
}

.remote_option span {
    display: inline-block;
    text-align: center;
    padding: 5px 15px;
    width: 100%;
    height: 35px;
    border: solid 1px #999;
    box-sizing: border-box;
    background-color: #fff;
    border-radius: 1px;
}

.remote_option:nth-child(2) span {
    width: 85%;
}

.remote_option:nth-child(2) {
    display: block;
    margin-right: 50%;
}

.remote_option:nth-child(4) {
    margin-left: 5px;
}

.remote_option:nth-child(6) {
    margin-left: 5px;
}

.remote_option:nth-child(n+3) {
    margin-top: 5px;
}

.print_bt {
    position: relative;
    height: 40px;
    margin-bottom: 10px;
    margin: 0 auto;
    width: 1100px;
}

.print_bt a {
    position: absolute;
    right: 0;
    font-size: 16px;
    color: white;
    text-decoration: underline;
    box-sizing: border-box;
    border: 1px solid #d01027;
    background-color: #d01027;
    width: 30%;
    max-width: 300px;
    height: 40px;
    text-align: center;
    border-radius: 3px;
    box-shadow: 0 0 3px rgba(100, 100, 100, 0.1);
    line-height: 40px;
}

.seminar_box02_l {
    width: 280px;
}

.instr_desc_area {
    padding: 10px;
    box-sizing: border-box;
    border: solid 1px #cecece;
    border-radius: 8px;
    margin-bottom: 15px;
}

.instr_desc_img {
    float: left;
    margin-left: 10px;
}

.instr_desc_area h3::first-letter {
    color: #333 !important;
}

.instr_desc_name {
    font-size: 18px;
    margin-left: 143px;
}


.instr_desc_name_h {
    font-size: 16px;
    margin-left: 143px;
}

.instr_desc_intro {
    margin-left: 20%;
}

.seminar_desc_list {
    /*margin-left: -12px;*/
    margin-bottom: 15px;
    float: left;
}

.cost_hd {
    float: left;
}

.seminar_box02_r p {
    clear: both;
}

.seminar_box02_r .instr_desc_intro p {
    clear: none;
}

/*セミナー登録注意文*/
.contents_m.seminar_notice_area {
    padding: 0;
}

.noticeBox.seminar_no_display {
    max-width: 1100px;
    margin: 0 auto;
    padding: 3rem;
    transform: translateY(-25px);
}

.noticeBox.seminar_no_display p {
    line-height: 2.5;
    margin: 25px 0 0;
}

/* seminar form
******************************/
.entry_form01 li div p {
    width: 500px;
    padding: 7px 20px 7px 20px;
    float: right;
    text-align: left;
}

/* 製品情報 重要なお知らせ 新製品情報
******************************/
.info_navi.float_r_pc.info_navi_top_box {
    display: none;
}

.info_navi.float_l_pc.info_navi_top_box {
    margin: 0 auto;
    float: none;
    width: 90%;
}

.info_navi.float_l_pc.info_navi_top_box li h5 {
    float: left;
    width: auto;
    max-width: 85%;
    margin-left: 40px;
}

#history-tabs li::before {
    content: none;
}

/*印刷用
******************************/
@media print {

    .print_display {
        display: inline-block;
    }

    body {
        border-left: none;
        display: block;
        min-width: 21cm !important;
        width: 21cm !important;
        height: 29.7cm !important;
    }

    .contents_m.clearfix {
        page-break-after: always;
    }

    .contents {
        padding: 0;
    }

    .contents_m {
        padding: 0;
        width: 100%;
    }

    .contents_m.seminar_single {
        padding: 0;
    }

    .seminar_box02_r .seminar_box_title {
        margin-bottom: 10px;
    }

    .seminar_box02_r .seminar_box_title h3 {
        padding-left: 0;
        padding: 0;
    }

    .seminar_box02_r .seminar_box_title .date {
        padding-left: 0;
        padding: 0;
    }


    .seminer_page_qr {
        display: block;
    }


    .float_r_pc {
        float: none;
    }

    .seminar_box02_r {
        width: 100%;
    }

    .seminar_box02_r ul {
        margin-bottom: 10px;
        overflow: hidden;
        padding-left: 22px;
    }

    .seminar_box02_r p::before {
        display: block;
        content: "";
        clear: both;
    }

    .seminar_box02_r p {
        width: 100%;
        font-size: 12pt;
    }

    .seminar_box02_r ul li {
        display: block;
        margin-bottom: 3pt;
        font-size: 14pt;
    }

    .seminar_box02_r ul li a {
        color: #333;
    }

    .seminar_box02_r .seminar_map_img.disable_l {
        display: block !important;
        float: left;
        min-width: 200pt;
        width: 100%;
        /*margin-left: 15px;*/
    }

    .seminar_box02_r .seminar_map_img.disable_l img {
        margin: 0;
        min-width: 200pt;
        width: 100%;
        max-width: none;
        margin-bottom: 10px;
    }

    .seminar_box02_r .seminar_box02_img.disable_l {
        display: block !important;
        float: left;
        margin: 0;
        min-width: 200pt;
        width: 100%;
        /*margin-bottom: 30px;*/
    }

    .seminar_box02_r .seminar_box02_img.disable_l img {
        min-width: 200pt;
        width: 100%;
        margin-bottom: 10px;
    }

    .seminar_box02_img.disable_s {
        display: none !important;
    }

    .seminar_box02_r_print_wrap {
        width: 40%;
        overflow: hidden;
        float: left;
    }

    .instr_desc_area::before {
        display: block;
        clear: both;
        content: "";
    }

    .instr_desc_area {
        font-size: 14pt;
        width: 100%;
        overflow: hidden;
        margin-bottom: 0;
    }

    .instr_desc_area h3 {
        font-size: 20pt;
        padding-left: 0 !important;
        padding-left: 10px;
    }

    .instr_desc_area.instr_desc_name {
        font-size: 16pt;
    }

    .instr_desc_intro {
        margin-left: 143px;
    }

    .instr_desc_intro p {
        float: left;
    }

    .instr_desc_name,
    .instr_desc_name_h, {
        margin-left: 18%;
    }

    .print_map_img {
        width: 100%;
        max-width: 700px;
    }

    .seminer_page_qr {
        vertical-align: middle;
        margin-bottom: 0;
    }

    .prit_qr_wrap span {
        display: inline-block;
        margin-bottom: 20px;
        vertical-align: bottom;
    }

    .date,
    .seminar_box02_r .seminar_box_title h3 {
        color: #333 !important;
        background: none !important;
    }

    .seminar_box02_r .seminar_box_title h3 {
        font-size: 20pt;
    }

    .seminar_desc_list {
        margin-left: 0;
    }

    .seminar_desc_list li {
        padding-left: 0 !important;
    }

    .date {
        font-size: 12pt
        padding-left: 0 !important;
        padding-top: 0 !important;
    }


    .seminar_box02_r .seminar_box_title h3:first-letter {
        color: #333 !important;
    }

    .seminar_box02_l {
        width: 100%;
        margin-top: 10px;
    }

    .bg_stripe:nth-child(even) {
        background: none;
    }

    .seminar_no_display {
        display: none !important;
    }

    #totop,
    .print_bt,
    .seminar_map_img,
    .seminar_label_img,
    .seminar_button,
    .nav_current,
    img.rollover,
    footer,
    form[action="/seminars/"],
    .p_navi,
    .hd_banner_wrap,
    ul#g_navi_sp,
    nav#g_navi,
    header {
        display: none !important;
    }

}

/*
公開前にbase.cssにマージします。
*/
#dna, #kamulog, #howtouse {
    max-width: 1100px;
    margin: 0 auto;
}

#dna .page a:link, #dna .page a:visited,
#kamulog .page a:link, #kamulog .page a:visited,
#howtouse .page a:link, #howtouse .page a:visited {
    padding: 0;
    border: none;
}

#dna h2, #kamulog h2, #howtouse h2 {
    padding-left: 0 !important;
}

#dna h3, #kamulog h3, #howtouse h3 {
    margin-bottom: 30px;
    line-height: 1 !important;
}

#dna .lead, #kamulog .lead, #howtouse .lead {
    padding: 2em 0;
    font-size: 24px;
    line-height: 2;
    text-align: center;
}

#dna .box, #kamulog .box, #howtouse .box {
    padding: 35px;
    background-color: #f7f7f7;
}

#dna .box p, #kamulog .box p, #howtouse .box p {
    font-size: 16px;
}

@media (max-width: 640px) {
    #dna .pconly, #kamulog .pconly, #howtouse .pconly {
        display: none;
    }

    #dna h2, #kamulog h2, #howtouse h2 {
        margin-bottom: 0 !important;
    }

    #dna .site-content h3, #kamulog .site-content h3, #howtouse .site-content h3 {
        margin: 0 10px 10px !important;
        font-size: 16px;
    }

    #dna .lead, #kamulog .lead, #howtouse .lead {
        margin: 10px 0 !important;
        padding: 0 1em;
        font-size: 12px;
    }

    #dna .box, #kamulog .box, #howtouse .box {
        padding: 10px;
    }
}

@media (min-width: 641px) {
    #dna .sponly, #kamulog .sponly, #howtouse .sponly {
        display: none;
    }

    #dna .box, #kamulog .box, #howtouse .box {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
    }
}

/* Dental Next Action
-------------------------------------------------------------------------------------------*/
#dna .lang {
    margin-bottom: 1em;
    text-align: right;
    font-weight: bold;
    color: #d01027;
}

#dna .lang a {
    color: #333;
}

#dna .bg {
    margin-bottom: 50px;
    padding-top: 50px;
    padding-left: 330px;
    background: url(/wp-content/uploads/2018/07/dna-bg.png) no-repeat left top;
}

#dna .bg div {
    margin-bottom: 1em;
    color: #b71d2c;
    font-size: 24px;
}

#dna .bg p {
    margin-bottom: 70px;
    font-size: 14px;
    line-height: 2;
}

#dna .box .img {
    width: 415px;
}

#dna .box .tit {
    margin-bottom: 20px;
    padding: 20px 0 15px 0;
    border-top: 1px solid #d01027;
    border-bottom: 1px solid #d01027;
}

#dna .box .tit p {
    margin-bottom: 15px;
    line-height: 1;
}

#dna .box .tit div {
    font-size: 24px;
    color: #d01027;
    line-height: 1;
}

@media (max-width: 640px) {
    #dna h3 span {
        font-size: 18px;
    }

    #dna .bg {
        margin: 0 10px 20px;
        padding-top: 0px;
        padding-left: 25px;
        background: none;
    }

    #dna .num {
        margin-bottom: -20px !important;
        margin-left: -25px;
        color: #fff !important;
        background-color: #b71d2c;
        border-radius: 50%;
        width: 20px;
        height: 20px;
        line-height: 20px;
        text-align: center;
    }

    #dna .bg div {
        font-size: 16px;
    }

    #dna .bg p {
        margin-bottom: 10px;
        font-size: 12px;
    }

    #dna .bg p:last-child {
        margin-bottom: 0;
    }

    #dna .box {
        margin: 0 0 10px;
    }

    #dna .box .img {
        text-align: center;
        width: 100%;
    }

    #dna .box p {
        font-size: 12px;
    }

    #dna .box .tit {
        margin-bottom: 10px;
        padding: 10px 0 5px 0;
    }

    #dna .box .tit p {
        margin-bottom: 10px;
    }

    #dna .box .tit div {
        font-size: 16px;
    }
}

@media (min-width: 641px) {
    #dna .box {
        -webkit-flex-direction: row-reverse; /* Safari */
        flex-direction: row-reverse;
        margin-bottom: 30px;
    }

    #dna .box .txt {
        -webkit-flex: 1 1 0%;
        flex: 1 1 0%;
    }

    #dna .box p:last-child {
        margin-bottom: 0;
    }
}

/* カムログ
-------------------------------------------------------------------------------------------*/
#kamulog .flexslider {
    max-width: 1100px;
}

#kamulog .flexslider .flex-direction-nav {
    width: 100%;
    position: absolute;
    left: 0;
    top: 50%;
}

#kamulog .flexslider ul {
    margin: 0;
}

#kamulog .flexslider .slides li {
    text-align: center;
}

#kamulog .flexslider .flex-direction-nav .flex-prev {
    top: 50px;
    left: 30px;
}

#kamulog .flexslider .flex-direction-nav .flex-next {
    top: 50px;
    right: 30px;
}

#kamulog .flexslider .flex-direction-nav .flex-prev::after,
#kamulog .flexslider .flex-direction-nav .flex-next::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    border-right: 3px solid #06959a;
    border-top: 3px solid #06959a;
    -webkit-transition: rotate(45deg);
    transform: rotate(45deg);
    right: 20px;
    height: 16px;
    width: 16px;
    margin-top: -8px;
}

#kamulog .flexslider .flex-direction-nav .flex-prev::after {
    left: 20px;
    right: auto;
    -webkit-transition: rotate(-135deg);
    transform: rotate(-135deg);
}

#kamulog .flexslider .flex-direction-nav a {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-image: none;
    background-color: #fff;
    border: 3px solid #06959a;
    opacity: 0.9;
}

#kamulog .txt01, #kamulog .txt02, #kamulog .txt03 {
    font-size: 18px;
}

#kamulog .txt01 {
    margin-top: 2em;
}

#kamulog .txt03 {
    margin-bottom: 2em;
}

#kamulog .box {
    padding: 40px;
}

#kamulog .box p:last-child {
    margin-bottom: 0;
}

#kamulog .attention {
    margin: 3em 0;
    padding: 1.5em;
    color: #d01027;
    font-size: 18px;
    border: 1px solid #d01027;
    text-align: center;
}

#kamulog .adviser .tit {
    margin-bottom: 1.5em;
}

#kamulog .adviser .item {
    margin-bottom: 20px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

#kamulog .adviser .img {
    width: 140px;
}

#kamulog .adviser .txt {
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    text-align: left;
    padding-left: 2em;
}

#kamulog .adviser .name {
    margin-bottom: 20px;
    font-weight: bold;
    font-size: 24px;
}

#kamulog .adviser .name span {
    font-weight: normal;
    font-size: 16px;
}

#kamulog .adviser .txt p {
    font-size: 16px;
    line-height: 1.8;
}

@media (max-width: 640px) {
    #kamulog .txt01, #kamulog .txt03 {
        margin-bottom: 1em;
    }

    #kamulog .txt01, #kamulog .txt02, #kamulog .txt03 {
        padding-left: 1em;
        padding-right: 1em;
        font-size: 12px;
    }

    #kamulog .box {
        padding: 10px;
    }

    #kamulog .box .img {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        margin-bottom: 20px;
    }

    #kamulog .box .img div:first-child {
        -webkit-flex: 1 1 0%;
        flex: 1 1 0%;
    }

    #kamulog .box .img .flex {
        padding-left: 20px;
        width: 70px;
    }

    #kamulog .box .img .flex div:first-child {
        padding: 0 5px;
    }

    #kamulog .box p {
        font-size: 12px;
    }

    #kamulog .attention {
        margin: 10px 0;
        padding: 1em;
        font-size: 9px;
    }

    #kamulog .adviser {
        padding: 10px 0;
    }

    #kamulog .adviser .tit {
        margin-left: 0 !important;
    }

    #kamulog .adviser .item {
        margin-bottom: 10px;
    }

    #kamulog .adviser .img {
        width: 70px;
    }

    #kamulog .adviser .txt {
        padding-left: 1em;
    }

    #kamulog .adviser .name {
        padding-top: 10px;
        margin-bottom: 10px;
        font-size: 14px;
    }

    #kamulog .adviser .name span, #kamulog .adviser .txt p {
        font-size: 11px;
    }
}

@media (min-width: 641px) {
    #kamulog .box {
        -webkit-align-items: center;
        align-items: center;
    }

    #kamulog .box .img {
        width: 380px;
        background-color: #fff;
    }

    #kamulog .box .img .flex {
        padding: 30px 0;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
    }

    #kamulog .box .img .flex div:last-child {
        margin-left: 20px;
    }

    #kamulog .box .txt {
        padding-left: 2em;
    }

    #kamulog .box .txt {
        -webkit-flex: 1 1 0%;
        flex: 1 1 0%;
    }
}

/* 使い方
-------------------------------------------------------------------------------------------*/
#howtouse h3 {
    position: relative;
    margin-bottom: 30px;
    height: 1em;
    border-bottom: 1px solid #d01027;
}

#howtouse h3 span::first-letter {
    color: #d01027 !important;
}

#howtouse h3 span {
    position: absolute;
    left: 0;
    bottom: -1px;
    padding-right: 1em;
    background: #fff;
    font-weight: normal;
    line-height: 1;
}

#howtouse .box {
    margin-bottom: 30px;
    padding: 25px;
}

#howtouse .box .tit {
    margin-bottom: 20px;
    font-size: 18px;
    font-weight: bold;
    color: #d21c32;
}

#howtouse .box .img div + div {
    margin-top: 10px;
}

#howtouse .box table {
    width: 100%;
}

#howtouse .box th, #howtouse .box td {
    float: none;
    padding: 8px 20px;
}

#howtouse .box td::before {
    display: none !important;
}

#howtouse .box th {
    background-color: #999;
    color: #fff;
    font-size: 16px;
    vertical-align: middle;
}

#howtouse .box td {
    font-size: 16px;
}

#howtouse .box th:first-child, .box td:first-child {
    border-right: 1px solid #ccc;
}

@media (max-width: 640px) {
    #howtouse h3 span {
        font-size: 18px;
    }

    #howtouse .box {
        margin-bottom: 10px;
        padding: 10px;
    }

    #howtouse .box .tit {
        margin-bottom: 10px;
        font-size: 14px;
    }

    #howtouse .box p {
        font-size: 12px;
    }

    #howtouse .box table {
        margin-bottom: 10px;
    }

    #howtouse .box th, #howtouse .box td {
        display: table-cell;
        padding: 5px 15px;
        position: inherit;
    }

    #howtouse .box th {
        font-size: 12px;
    }

    #howtouse .box td {
        font-size: 12px;
    }

    #howtouse .box .img {
        text-align: center;
    }
}

@media (min-width: 641px) {
    #howtouse .box {
        -webkit-flex-direction: row-reverse; /* Safari */
        flex-direction: row-reverse;
    }

    #howtouse .box .img {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
    }

    #howtouse .box .img div:last-child {
        padding-left: 15px;
    }

    #howtouse .box .txt {
        -webkit-flex: 1 1 0%;
        flex: 1 1 0%;
        padding-left: 30px;
        padding-top: 20px;
    }

    #howtouse .box tr:last-child td {
        border-bottom: none;
    }
}

/* history */

@charset "utf-8";
.sponly, .pconly {
    display: none;
}

@media (max-width: 640px) {
    .sponly {
        display: block;
    }
}

@media (min-width: 641px) {
    .pconly {
        display: block;
    }
}

/* form-bt
---------------------------------------------------- */
#form-bt {
    margin: 50px auto;
    width: 1024px;
}

#form-bt a {
    display: inline-block;
    padding: 10px;
    width: 480px;
    text-decoration: none;
    color: #d01027;
    font-size: 24px;
    text-align: center;
    border: 1px solid #d01027;
    border-radius: 4px;
}

#form-bt a:first-child {
    float: left;
}

#form-bt a:last-child {
    float: right;
}

#form-bt a span {
    position: relative;
}

#form-bt a span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    border-right: 2px solid #d01027;
    border-top: 2px solid #d01027;
    -webkit-transition: rotate(45deg);
    transform: rotate(45deg);
    right: -20px;
    height: 10px;
    width: 10px;
    margin-top: -5px;
}

#form-bt a:hover {
    background-color: #d01027;
    color: #fff;
}

#form-bt a:hover span::after {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
}

@media (max-width: 640px) {
    #form-bt {
        margin: 20px auto;
        width: 100%;
    }

    #form-bt a {
        width: -webkit-calc(100% - 20px);
        width: calc(100% - 20px);
        font-size: 12px;
    }

    #form-bt a + a {
        margin-top: 10px;
    }

    #form-bt a:first-child, #form-bt a:last-child {
        float: none;
    }

    #form-bt a span::after {
        border-right: 1px solid #d01027;
        border-top: 1px solid #d01027;
        height: 5px;
        width: 5px;
    }
}

/* lead
---------------------------------------------------- */
#history-lead p {
    margin: 20px 0 40px;
    font-size: 16px;
}

@media (max-width: 640px) {
    #history-lead .title {
        padding-top: 10px;
        font-size: 15px;
        line-height: 1.3;
    }

    #history-lead p {
        margin: 0 0 20px;
        font-size: 9px;
    }
}

/* tab
---------------------------------------------------- */
#history-tabs {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around; /* Safari */
    justify-content: space-around;
    -webkit-align-items: stretch;
    align-items: stretch;
    margin: 0 -4px;
}

#history-tabs li {
    padding: 0;
    margin: 0 4px;
    height: 65px;
    width: -webkit-calt(100% / 5);
    width: calc(100% / 5);
    list-style: none;
    border-radius: 4px 4px 0 0;
    background-color: #a1a1a1;
}

#history-tabs li.select {
    background-color: #d01027;
}

#history-tabs li:hover {
    opacity: 0.8;
}

#history-tabs li::before {
    display: none;
}

#history-tabs li a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    padding: 0 5px;
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    color: #fff;
}

@media (max-width: 640px) {
    #history-tabs {
        margin: 0 -2px;
    }

    #history-tabs li {
        margin: 0 2px;
        height: 35px;
        border-radius: 2px 2px 0 0;
    }

    #history-tabs li a {
        font-size: 9px;
    }
}

/* tab item
---------------------------------------------------- */
.history-item {
    padding: 30px 20px 20px;
    background-color: #f7f7f7;
    border-top: 4px solid #d01027;
}

.history-item .title {
    border: none;
    font-size: 30px;
    color: #d01027;
}

.history-item .lead {
    font-size: 16px;
}

.history-item .box {
    padding: 35px;
    background-color: #fff;
    background-size: cover;
    background-position: right center;
}

.history-item .box .tit {
    position: relative;
    margin-left: -35px;
    margin-bottom: 0;
    padding: 0 20px 0 25px;
    line-height: 35px;
    color: #fff;
    font-size: 20px;
    border: none;
    background-color: #d01027;
    height: 35px;
}

.history-item .box .tit::after {
    content: "";
    right: -17px;
    top: 0;
    display: block;
    position: absolute;
    width: 35px;
    height: 35px;
    border-radius: 50%;
    background-color: #d01027;
}

.history-item .movie {
    margin: 60px auto 0;
    width: 735px;
}

.history-item .movie .t {
    font-size: 24px;
    color: #333;
}

.history-item .movie p {
    margin: 0;
    text-align: center;
    font-size: 16px;
}

.history-item .youtube {
    position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px;
    height: 0;
    overflow: hidden;
}

.history-item .youtube iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 640px) {
    .history-item {
        padding: 20px 10px 10px;
        border-top: 2px solid #d01027;
    }

    .history-item .title {
        margin-bottom: 5px;
        line-height: 1.3;
        font-size: 15px;
    }

    .history-item .lead {
        font-size: 10px;
    }

    .history-item .box {
        padding: 15px 0 0;
    }

    .history-item .box .tit {
        margin-left: -20px;
        padding: 0 20px 0 25px;
        line-height: 20px;
        font-size: 14px;
        height: 20px;
    }

    .history-item .box .tit::after {
        right: -10px;
        width: 20px;
        height: 20px;
    }

    .history-item .movie {
        margin: 30px 10px 0;
        width: -webkit-calc(100% - 20px);
        width: calc(100% - 20px);
    }

    .history-item .movie .t {
        margin: 0 10px 10px;
        font-size: 12px;
    }

    .history-item .movie p {
        padding: 10px;
        font-size: 9px;
        text-align: left;
    }
}

/* gplus */
@charset "utf-8";
.site-content h2.title_l {
    margin-top: 25px;
    display: none;
}

.sponly, .pconly {
    display: none;
}

@media (max-width: 640px) {
    .sponly {
        display: block;
    }
}

@media (min-width: 641px) {
    .pconly {
        display: block;
    }
}

/* top-btn-pc
---------------------------------------------------- */
@media (min-width: 641px) {
    #top-btn-pc {
        position: relative;
    }

    #top-btn-pc li {
        position: absolute;
        right: 19px;
        margin-bottom: 0;
        height: 33px;
        font-size: 0;
    }

    #top-btn-pc li a {
        display: block;
        height: 100%;
    }

    #top-btn-pc li a:hover {
        box-shadow: 0 3px 5px rgba(0, 0, 0, 0.3);
    }

    #top-btn-pc li:nth-child(1) {
        right: 68px;
        bottom: 376px;
        width: 437px;
    }

    #top-btn-pc li:nth-child(2) {
        left: 18px;
        bottom: 327px;
        width: 491px;
    }

    #top-btn-pc li:nth-child(3) {
        bottom: 279px;
        width: 781px;
    }

    #top-btn-pc li:nth-child(4) {
        bottom: 230px;
        width: 1063px;
    }

    #top-btn-pc li:nth-child(5) {
        bottom: 182px;
        width: 781px;
    }

    #top-btn-pc li:nth-child(6) {
        bottom: 133px;
        width: 781px;
    }

    #top-btn-pc li:nth-child(7) {
        bottom: 84px;
        width: 781px;
    }

    #top-btn-pc li:nth-child(8) {
        bottom: 35px;
        width: 1063px;
    }

    #top-btn-pc li::before {
        display: none;
    }
}

/* gplus-bt
---------------------------------------------------- */
#gplus-bt {
    margin: 50px auto;
    width: 1024px;
}

#gplus-bt a {
    display: inline-block;
    padding: 10px;
    width: 480px;
    text-decoration: none;
    color: #d01027;
    font-size: 24px;
    text-align: center;
    border: 1px solid #d01027;
    border-radius: 4px;
}

#gplus-bt a:first-child {
    /*float: left;*/
}

#gplus-bt a:last-child {
    /*float: right;*/
}

#gplus-bt a span {
    position: relative;
}

#gplus-bt a span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    border-right: 2px solid #d01027;
    border-top: 2px solid #d01027;
    -webkit-transition: rotate(45deg);
    transform: rotate(45deg);
    right: -20px;
    height: 10px;
    width: 10px;
    margin-top: -5px;
}

#gplus-bt a:hover {
    background-color: #d01027;
    color: #fff;
}

#gplus-bt a:hover span::after {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
}

@media (max-width: 640px) {
    #gplus-bt {
        margin: 20px auto;
        width: 100%;
    }

    #gplus-bt a {
        width: -webkit-calc(100% - 20px);
        width: calc(100% - 20px);
        font-size: 14px;
    }

    #gplus-bt a + a {
        margin-top: 10px;
    }

    #gplus-bt a:first-child, #gplus-bt a:last-child {
        float: none;
    }

    #gplus-bt a span::after {
        border-right: 1px solid #d01027;
        border-top: 1px solid #d01027;
        height: 5px;
        width: 5px;
    }
}

/* tab
---------------------------------------------------- */
#gplus-tabs li {
    padding: 0;
    list-style: none;
    box-sizing: border-box;
}

#gplus-tabs li:hover {
    opacity: 0.8;
}

#gplus-tabs li.select {
    opacity: 1;
}

#gplus-tabs li::before {
    display: none;
}

#gplus-tabs li a {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    background-color: #999;
}

@media (max-width: 640px) {
    #gplus-tabs {
        margin: 0 -1px;
    }

    #gplus-tabs::after {
        content: "";
        display: block;
        clear: both;
    }

    #gplus-tabs li {
        float: left;
        margin-bottom: 3px;
        padding: 0 1.5px;
        height: 40px;
        width: -webkit-calt(100% / 5);
        width: calc(100% / 5);
    }

    #gplus-tabs li:nth-child(5n-4) {
        clear: both;
    }

    #gplus-tabs li a {
        border-radius: 2px 2px 0 0;
    }

    #gplus-tabs li a span {
        font-size: 9px;
    }

    #gplus-tabs li a b {
        display: block;
        font-size: 12px;
    }
}

@media (min-width: 641px) {
    #gplus-tabs {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-around; /* Safari */
        justify-content: space-around;
        -webkit-align-items: stretch;
        align-items: stretch;
        margin: 0 -2px;
    }

    #gplus-tabs li {
        margin: 0 2px;
        height: 50px;
        width: -webkit-calt(100% / 8);
        width: calc(100% / 8);
    }

    #gplus-tabs li a {
        border-radius: 4px 4px 0 0;
    }
}

/* tab item
---------------------------------------------------- */
.gplus-item {
    padding: 15px 20px 20px;
    background-color: #f7f7f7;
    border-top: 5px solid #fff;
}

.gplus-item .gplus-title {
    margin-bottom: 15px;
}

.site-content h3::first-letter {
    color: inherit !important;
}

.gplus-item .gplus-title p {
    font-size: 18px;
    text-align: right;
}

.gplus-item .gplus-box {
    position: relative;
    padding: 0 35px 35px;
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: right center;
}

.gplus-item .gplus-box::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 0;
    background-color: rgba(255, 255, 255, 0.7);
}

.gplus-item .gplus-box * {
    position: relative;
    z-index: 1;
}

.gplus-item .gplus-box .title {
    position: relative;
    margin-left: -35px;
    padding: 0 30px 0 45px;
    line-height: 45px;
    height: 45px;
    color: #fff;
    font-size: 18px;
    border: none;
}

.gplus-item .gplus-box .title::after {
    content: "";
    right: -24px;
    top: 0;
    display: block;
    position: absolute;
    width: 25px;
    height: 45px;
    transform: skewX(-20deg);
    border-right: 7px solid #999;
}

.gplus-item .gplus-box ul {
    margin: 20px 0 40px;
    width: 610px;
    min-height: 240px;
}

.gplus-item .gplus-box li {
    position: relative;
    display: -webkit-flex;
    display: flex;
    padding: 15px 5px;
}

.gplus-item .gplus-box li::before {
    display: none;
}

.gplus-item .gplus-box li:not(:last-child)::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 490px;
    height: 1px;
    border-bottom: 1px dashed #ccc;
}

.gplus-item .case {
    width: 5em;
    font-size: 18px;
    font-weight: bold;
}

.gplus-item .gplus-box li p {
    margin: 0;
    -webkit-flex: 1 1 0%;
    flex: 1 1 0%;
    line-height: 1;
    font-size: 22px;
    font-weight: bold;
}

.gplus-item .gplus-box li p span.etc {
    display: inline-block;
    color: #333 !important;
    font-size: 18px;
}

.gplus-item .btn {
    text-align: center;
}

.gplus-item .btn a {
    display: inline-block;
    padding: 0.8em 1em;
    width: 500px;
    text-align: center;
    color: #fff;
    font-size: 24px;
    border-radius: 5px;
    text-decoration: none;
    line-height: 1;
}

.gplus-item .btn a:hover {
    opacity: 0.8;
}

.gplus-item .btn a span {
    position: relative;
}

.gplus-item .btn a span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
    -webkit-transition: rotate(45deg);
    transform: rotate(45deg);
    right: -20px;
    height: 10px;
    width: 10px;
    margin-top: -6px;
}

@media (max-width: 640px) {
    .gplus-item {
        position: relative;
        padding: 15px 10px 10px;
        border-top: 2px solid #fff;
    }

    .gplus-item .gplus-title .title {
        margin-bottom: 5px;
        font-size: 15px;
    }

    .gplus-item .gplus-title p {
        margin-bottom: 15px;
        font-size: 9px;
    }

    .gplus-item .gplus-box {
        padding: 10px;
        min-height: 300px;
        background-size: contain;
        background-position: center bottom;
    }

    .gplus-item .gplus-box .title {
        margin-bottom: 0;
        margin-left: -18px;
        padding: 0 10px 0 18px;
        line-height: 18px;
        font-size: 11px;
        height: 18px;
    }

    .gplus-item .gplus-box .title::after {
        right: -9px;
        top: 0;
        width: 10px;
        height: 18px;
    }

    .gplus-item .gplus-box ul {
        margin: 10px 0 0;
        width: 100%;
        min-height: auto;
    }

    .gplus-item .gplus-box li {
        margin-bottom: 0;
        padding: 5px 0;
    }

    .gplus-item .gplus-box li:not(:last-child)::after {
        left: 0;
        bottom: 0;
        width: 100%;
    }

    .gplus-item .case {
        margin-right: 2em;
        font-size: 9px;
    }

    .gplus-item .gplus-box li p {
        font-size: 11px;
    }

    .gplus-item .gplus-box li p span.etc {
        display: block;
        margin-top: 10px;
        text-align: right;
        font-size: 9px;
    }

    .gplus-item .btn {
        position: absolute;
        width: -webkit-calc(100% - 40px);
        width: calc(100% - 40px);
        left: 20px;
        bottom: 20px;
    }

    .gplus-item .btn a {
        padding: 1em;
        width: -webkit-calc(100% - 2em);
        width: calc(100% - 2em);
        font-size: 12px;
        border-radius: 3px;
    }

    .gplus-item .img {
        margin-bottom: 60px;
    }
}

@media (min-width: 641px) {
    .gplus-item .gplus-title {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: end;
        align-items: end;
    }

    .gplus-item .gplus-title .title {
        width: 55%;
    }

    .gplus-item .gplus-title .title img {
        max-width: none;
    }

    .gplus-item .gplus-title p {
        width: 45%;
    }

    .gplus-item .img {
        position: absolute;
        right: 35px;
        top: 35px;
    }
}

/* tab color
---------------------------------------------------- */
/* tab1 */
#gplus-tabs.top li:nth-child(1) a, #gplus-tabs li:nth-child(1).select a, #tab1 .gplus-box .title, #tab1 .gplus-box .btn a, #tab1 .gplus-box .title::after {
    background-color: #d01027;
}

#tab1 {
    border-top-color: #d01027;
}

#tab1 .gplus-box li span {
    color: #d01027;
}

/* tab2 */
#gplus-tabs.top li:nth-child(2) a, #gplus-tabs li:nth-child(2).select a, #tab2 .gplus-box .title, #tab2 .gplus-box .btn a, #tab2 .gplus-box .title::after {
    background-color: #01b3d2;
}

#tab2 {
    border-top-color: #01b3d2;
}

#tab2 .gplus-box li span {
    color: #01b3d2;
}

/* tab3 */
#gplus-tabs.top li:nth-child(3) a, #gplus-tabs li:nth-child(3).select a, #tab3 .gplus-box .title, #tab3 .gplus-box .btn a, #tab3 .gplus-box .title::after {
    background-color: #da88b7;
}

#tab3 {
    border-top-color: #da88b7;
}

#tab3 .gplus-box li span {
    color: #da88b7;
}

/* tab4 */
#gplus-tabs.top li:nth-child(4) a, #gplus-tabs li:nth-child(4).select a, #tab4 .gplus-box .title, #tab4 .gplus-box .btn a, #tab4 .gplus-box .title::after {
    background-color: #ea5935;
}

#tab4 {
    border-top-color: #ea5935;
}

#tab4 .gplus-box li span {
    color: #ea5935;
}

/* tab5 */
#gplus-tabs.top li:nth-child(5) a, #gplus-tabs li:nth-child(5).select a, #tab5 .gplus-box .title, #tab5 .gplus-box .btn a, #tab5 .gplus-box .title::after {
    background-color: #f6ac1d;
}

#tab5 {
    border-top-color: #f6ac1d;
}

#tab5 .gplus-box li span {
    color: #f6ac1d;
}

/* tab6 */
#gplus-tabs.top li:nth-child(6) a, #gplus-tabs li:nth-child(6).select a, #tab6 .gplus-box .title, #tab6 .gplus-box .btn a, #tab6 .gplus-box .title::after {
    background-color: #6eb92b;
}

#tab6 {
    border-top-color: #6eb92b;
}

#tab6 .gplus-box li span {
    color: #6eb92b;
}

/* tab7 */
#gplus-tabs.top li:nth-child(7) a, #gplus-tabs li:nth-child(7).select a, #tab7 .gplus-box .title, #tab7 .gplus-box .btn a, #tab7 .gplus-box .title::after {
    background-color: #0079c5;
}

#tab7 {
    border-top-color: #0079c5;
}

#tab7 .gplus-box li span {
    color: #0079c5;
}

/* tab8 */
#gplus-tabs.top li:nth-child(8) a, #gplus-tabs li:nth-child(8).select a, #tab8 .gplus-box .title, #tab8 .gplus-box .btn a, #tab8 .gplus-box .title::after {
    background-color: #0ba95f;
}

#tab8 {
    border-top-color: #0ba95f;
}

#tab8 .gplus-box li span {
    color: #0ba95f;
}

@media (max-width: 640px) {
    #tab1 .gplus-box {
        background-image: url(../img/gplus/tab01-bg_sp.jpg);
    }

    #tab2 .gplus-box {
        background-image: url(../img/gplus/tab02-bg_sp.jpg);
    }

    #tab3 .gplus-box {
        background-image: url(../img/gplus/tab03-bg_sp.jpg);
    }

    #tab4 .gplus-box {
        background-image: url(../img/gplus/tab04-bg_sp.jpg);
    }

    #tab5 .gplus-box {
        background-image: url(../img/gplus/tab05-bg_sp.jpg);
    }

    #tab6 .gplus-box {
        background-image: url(../img/gplus/tab06-bg_sp.jpg);
    }

    #tab7 .gplus-box {
        background-image: url(../img/gplus/tab07-bg_sp.jpg);
    }

    #tab8 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }
}

@media (min-width: 641px) {
    #tab1 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab2 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab3 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab4 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab5 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab6 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab7 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab8 .gplus-box {
        background-image: url(../img/gplus/tab-allbg.png);
    }

    #tab1 .gplus-box li p span.etc {
        margin-left: 20px;
    }

    #tab2 .gplus-box li p span.etc {
        display: block;
        margin-top: 20px;
        text-align: right;
        width: 440px;
    }

    #tab3 .gplus-box li p span.etc {
        margin-left: 50px;
    }

    #tab4 .gplus-box li p span.etc {
        margin-left: 50px;
    }

    #tab5 .gplus-box li p span.etc {
        margin-left: 50px;
    }

    #tab6 .gplus-box li p span.etc {
        display: block;
        margin-top: 20px;
        text-align: right;
        width: 450px;
    }

    #tab7 .gplus-box li p span.etc {
        display: block;
        margin-top: 20px;
        text-align: right;
    }

    #tab8 .gplus-box li p span.etc {
        margin-left: 20px;
    }
}

/* top
---------------------------------------------------- */
#top-btn ul {
    margin-top: -30px !important;
    margin-bottom: 0 !important;
}

#top-btn li {
    padding-left: 0;
    margin-bottom: 10px !important;
}

#top-btn li::before {
    display: none !important;
}

.submenu_outer {
    display: flex;
    flex-wrap: wrap;
}

.submenu_inner {
    text-align: left;
}

#g_navi > div .submenu ul {
    width: 100%;
    margin: 0 auto;
    display: block;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

@media screen and (max-width: 1100px) {
    .nav_select::before {
        content: none;
    }
}


@media screen and (max-width: 768px) {
    #g_navi > div ul > li {
        padding: 10px 35px;
    }

    .nav_select::before {
        content: none;
    }
}


@media screen and (max-width: 709px) and (min-width: 641px) {
    .hd_contact {
        width: 120px;
    }

    .btn_circle {
        margin-left: 10px;
    }
}


#yjserp {
    position: relative;
    padding-top: 100%;
}

#yjserp iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* ie gnavi products */
.submenu.menu01 dl.submenu-01, .submenu.menu01 dl.submenu-02, .submenu.menu01 dl.submenu-03, .submenu.menu01 dl.submenu-04 {
    width: 200px;
    display: inline-flex;
    border-left: #eee solid 1px;
    margin: 10px 0px 0px 0px;
    padding: 0 0 0 0px;
    flex-flow: row wrap;
}

#g_navi > div .menu01 ul {
    width: 100%;
    margin: 0 auto;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: column;
}

#g_navi .menu01 ul li {
    float: none;
    padding: 0 0 0 20px;
    display: flex;
    align-items: center;
    width: 100%;
}

.recommend_item_wrap {
    width: auto;
    max-width: 210px;
    padding: 25px 15px 0px 15px;
    background-color: #f7f7f7;
    z-index: 1;
    margin-left: 26px;
}


/* 201908 renew header and top page */
.btn {
    box-sizing: border-box;
    padding: 2px 36px 2px 18px;
    border-radius: 4px;
    position: relative;
}

.r_arrow {
    content: "";
    display: inline-block;
    transform: rotate(-45deg) translateY(-50%);
    width: 0.7rem;
    height: 0.7rem;
    border-bottom: 1px solid;
    border-right: 1px solid;
    right: 0;
    top: calc(50% - 0.1rem);
    position: absolute;
    transition: 0.3s;
}

.js-d-none {
    display: none;
}

.relative {
    position: relative;
}

.color_darker_red {
    color: #8C060E !important;
}

.font_weight_bold {
    font-weight: bold;
}

.border_b_darker_red {
    border-bottom: solid 1px #8C060E;
}

.bg_white {
    background-color: white;
}

.bg_light_gray {
    background-color: #909090;
}

.bg_dark_red {
    background-color: #9D2530;
}

.bg_alabaster {
    background-color: #F2EFE4;
}

.bg_checked {
    background-image: linear-gradient(#B35B61 1px, transparent 0),
    linear-gradient(90deg, #B35B61 1px, transparent 0);
    background-size: 52px 52px;
}

.marker_yellow {
    background: linear-gradient(to top, transparent 10%, #EEDF5B 10% 70%, transparent 70% 100%);
}

.bg_img_cover {
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

.m_auto {
    margin: auto;
}

.ml_auto {
    margin-left: auto;
}

.mr_auto {
    margin-right: auto;
}

.flex {
    display: flex;
}

.flex_inline {
    display: inline-flex;
}

.flex_wrap {
    flex-wrap: wrap;
}

.flex_column {
    flex-direction: column;
}

.align_items_center {
    align-items: center;
}

.align_items_end {
    align-items: flex-end;
}

section.p_disable {
    padding: 0;
}

hr.line {
    margin-top: 30px;
    margin-bottom: 30px;
    border-bottom: solid 1px #707070;
    display: block;
    width: 100%;
}

/* header */
.fixed_header .header_inner {
    max-width:1200px;
    margin: auto;
}

.fixed_header.fixed_top {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100vw;
    padding: 12px;
    box-sizing: border-box;
    z-index: 1010;
}

.header_logo .logo {
    width: 215px;
    height: auto;
    transition: 0.3s;
}

.dna_logo {
    width: 90px;
    height: auto;
}

/* .fixed_header .header_right .upper_row */
.is_home .top_message {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.is_home .top_message .line {
    margin-top: 0px;
}

.is_home top_message_sp h1,
.is_home .top_message h1 {
    font-size: 45px;
    margin-bottom: 20px;
    margin: auto;
    padding: auto;
}

.is_home top_message_sp h2,
.is_home .top_message h2 {
    color: #333;
    font-size: 30px;
    font-weight: normal;
    margin: auto;
    padding: auto;
}

.is_home .top_message_sp h2:after,
.is_home .top_message h2:after {
    content: none;
}

.fixed_header .header_right .upper_row {
    margin-bottom: 15px;
}

.fixed_header .header_right .upper_row .margin_rl {
    margin-right: 10px;
    margin-left: 10px;
}

.fixed_header .header_right .upper_row .text_link {
    position: relative;
    padding-right: 0.4em;
    padding-left: 0.4em;
    box-sizing: border-box;
}

.fixed_header .header_right .upper_row .contact_num:nth-child(1) {
    margin-right: 20px;
}

.fixed_header .header_right .upper_row .contact_num_icon {
    margin-right: 8px;
}

.contact_num_mobile, .contact_num_tel {
    font-size: 12px;
    font-weight: bold;
}

.fixed_header .header_right .upper_row .text_link .text {
    padding-right: 0.7em;
}

.fixed_header .header_right .upper_row .text_link .r_arrow {
    right: 0;
}

.header_right .search_icon {
    margin-left: 14px;
    margin-right: 25px;
    cursor: pointer;
    position: relative;
    z-index: 5;
}

.header_right .header_search_wrap {
    position: relative;
}

.header_right .header_search_wrap .header_search_inner {
    position: absolute;
    right: 100%;
    bottom: -5px;
}

.header_right .header_search_wrap .header_search_inner .srchInput {
    width: 31em;
    margin: 0;
    position: relative;
    top: -5px;
    right: -35px;
    height: 36px;
    border-color: #8C060E;
    padding: 0.3em 95px 0.3em 0.3em;
    box-sizing: border-box;
}

.header_right .header_search_wrap .header_search_inner .search_cnt {
     padding: inherit;
     background-color: inherit;
}

.header_right .header_search_wrap .header_search_inner .srchBtn {
    position: absolute;
    right: -5px;
    top: -5%;
    min-width: inherit;
    background-color: #8C060E;
    line-height: 29px;
    padding: 0 10px;
    font-weight: bold;
}

.bluebody .header_right .header_search_wrap .header_search_inner .srchInput {
    height: 30px;
    border-color: #588CB9;
}

.bluebody .header_right .header_search_wrap .header_search_inner .srchBtn {
    color: #fff;
    background-color: #588CB9;
    font-size: 14px;
    font-weight: normal;
    line-height: 22px;
}

@media screen and (max-width: 767px) {
    .bluebody .header_right .header_search_wrap .header_search_inner .srchInput {
        height: 40px;
        width: 100%;
        right: 0;
        padding-right: 76px;
    }

    .bluebody .header_right .header_search_wrap .header_search_inner .srchBtn {
        right: 16px;
        top: 1px;
        padding: 3px 8px;
    }
}

.bluebody .header_right .search_icon{
    margin-left: 20px;
}

.bluebody .header_right .header_search_wrap{
    top: 3px;
}

/* .fixed_header .header_right .lower_row */
.fixed_header .header_right .lower_row .link_area {
    padding: 0.2em 25px 0.4em;
    border-right: solid 1px #333;
}

.fixed_header .header_right .lower_row .link_area a > span:nth-child(1) {
    margin-bottom: 4px;
}

.fixed_header .header_right .lower_row .link_area:nth-last-child(1) {
    border-right: none;
}

/* [G-NAVI] */
.gnavi_sub_wrap {
    position: absolute;
    top: 100%;
    right: 50%;
    transform: translateX(50%);
    width: 1015px;
    padding: 16px;
    box-sizing: border-box;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
}

.gnavi_sub_heading {
    margin-bottom: 0.6em;
}

.gnavi_sub_cat {
    padding: 0 2%;
    width: 23%;
    box-sizing: border-box;
    margin-right: auto;
}

.gnavi_sub_cat > li {
    padding-top: 1em;
    padding-bottom: 1em;
}

.gnavi_sub_cat > .gnavi_sub_cat_heading {
    border-bottom: solid 1px #C1BFB8;
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 0.4em;
}

.gnavi_sub_cat_row {
    width: 100%;
}

.gnavi_sub_cat_row_lists {
    margin-top: 10px;
    margin-bottom: 10px;
}

.gnavi_sub_cat_row_lists > li {
    width: 25%;
    padding: 0.5em;
    box-sizing: border-box;
    display: inline-block;
}

.gnavi_sub_cat_row_lists > li > a {
    padding: 0.5em;
    box-sizing: border-box;
    display: inline-block;
}

.header_menu_icon {
    position: relative;
    cursor: pointer;
    height: 40px;
    width: auto;
    top: 4px;
}

.header_menu_icon .drawer_bar::before {
    transition: 0.4s;
    position: absolute;
    content: "";
    width: 23px;
    height: 2px;
    left: 8px;
    background-color: #8C060E;
}

.header_menu_icon .drawer_bar1::before {
    transform: translate(0px, 0px) rotate(0deg);
}

.header_menu_icon .drawer_bar2::before {
    transform: translate(0px, 7px) rotate(0deg);
}

.header_menu_icon .drawer_bar3::before {
    transform: translate(0px, 14px) rotate(0deg);
}

.header_menu_icon .drawer_text {
    transition: 0.3s;
    position: relative;
    bottom: -23px;
    left: -1px;
    color: #8C060E;
    font-size: 14px;
}

.header_menu_icon.active .drawer_bar1::before {
    transform: translate(0px, 7px) rotate(-45deg);
}

.header_menu_icon.active .drawer_bar2::before {
    transform: translate(0px, 7px) rotate(-45deg);
    opacity: 0;
}

.header_menu_icon.active .drawer_bar3::before {
    transform: translate(0px, 7.5px) rotate(-135deg);
}

.header_menu_icon.active .drawer_text {
    opacity: 0;
}
/* G NAVI SP*/
.fixed_header .g_navi_menu_sp {
    position: absolute;
    top: -100vh;
    left: 0;
    display: block;
    width: 80vw;
    max-height: 83.6vh;
    margin-top: 0px;
    overflow-y: scroll;
    transition: 0.4s;
}

.fixed_header .g_navi_menu_sp ul li {
    background-color: #F2EFE4;
    border-bottom: none;
}

.fixed_header .g_navi_menu_sp dt,
.fixed_header .g_navi_menu_sp dd a,
.fixed_header .g_navi_menu_sp .submenu_sp ul li {
    background-color: #fff !important;
}

.fixed_header .g_navi_menu_sp ul li a {
    text-align: left;
    margin-right: 4.75vw;
    margin-left: 4.75vw;
    background-color: inherit;
    font-weight: inherit;
}

.fixed_header .g_navi_menu_sp > ul > li > a {
    border-bottom: 1px dashed #6D6D6D;
    position: relative;
}

.fixed_header .g_navi_menu_sp > ul > li.sub_active > a {
    border-bottom: none;
}


.fixed_header .submenu_sp dd ul li:after {
    content: none;
}

.fixed_header .g_navi_menu_sp ul li div a {
    padding-left: inherit;
}

.fixed_header .submenu_sp dt {
    background-color: inherit;
    font-size: 20px;
    font-weight: normal;
    min-height: 60px;
    line-height: 60px;
    border-bottom: 1px dashed #6D6D6D;
    width: calc(100% - 9vw);
    margin: auto;
}

.g_navi_menu_sp ul li a {
    min-height: 60px;
    line-height: 60px;
    background-color: #f7f7f7;
    font-weight: bold;
    display: block;
    color: #333333;
    text-decoration: none;
    font-size: 20px;
}

.submenu_sp {
    width: 93%;
    position: relative;
    margin: 0 auto;
    top: 0;
    border: solid 1px #E0E0E0;
    box-sizing: border-box;
}

.fixed_header .sub_arrow::before {
    color: #8C060E;
    content: "";
    display: inline-block;
    transform: rotate(45deg) translate(-50%, -50%);
    width: 0.7rem;
    height: 0.7rem;
    border-bottom: 1px solid;
    border-right: 1px solid;
    right: 1em;
    position: absolute;
    top: 50%;
    transition: 0.3s;
    margin-right: 0px;
}

.fixed_header .sub_s.sub_active .sub_arrow::before {
    transform: rotate(-45deg);
}

.close_btn_red {
    display: inline-block;
    position: relative;
    cursor: pointer;
    width: 24px;
    height: 24px;
}

.close_btn_red::before,
.close_btn_red::after {
    content: "";
    height: 2px;
    width: 21px;
    background-color: #8C060E;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-bottom: 11px;
}

.close_btn_red::before {
    transform: rotate(45deg);
}

.close_btn_red::after {
    transform: rotate(135deg);
}

.g_navi_menu_sp .close_btn_red {
    margin-top: 14px;
    margin-right: 20px;
}

.fixed_header .sub_arrow::before {
    color: #8C060E;
    content: "";
    display: inline-block;
    transform: rotate(45deg) translate(-50%, -50%);
    width: 0.7rem;
    height: 0.7rem;
    border-bottom: 1px solid;
    border-right: 1px solid;
    right: 1em;
    position: absolute;
    top: 50%;
    transition: 0.3s;
}

.fixed_header .sub_s.sub_active .sub_arrow::before {
    transform: rotate(-45deg);
}

.close_btn_red {
    display: inline-block;
    position: relative;
    cursor: pointer;
    width: 24px;
    height: 24px;
}

.close_btn_red::before,
.close_btn_red::after {
    content: "";
    height: 2px;
    width: 21px;
    background-color: #8C060E;
    position: absolute;
    left: 0;
    bottom: 0;
    margin-bottom: 11px;
}

.close_btn_red::before {
    transform: rotate(45deg);
}

.close_btn_red::after {
    transform: rotate(135deg);
}

.g_navi_menu_sp .close_btn_red {
    margin-top: 14px;
    margin-right: 20px;
}

@media screen and ( min-width: 1085px ) {
    .header_menu_icon {
        display: none !important;
    }
}

@media screen and ( max-width: 1085px ) {
    .responsive_s.header_fixed {
        display: block;
    }

    .gnavi_sub_wrap {
        display: none !important;
    }

    .header_left {
        width: 100%;
    }

    .header_menu_icon {
        display: inline-block !important;
    }

    .header_menu_icon {
        display: inline-block !important;
    }

    .g_navi_menu_sp ul li a.contact_num {
        display: flex;
    }

    .g_navi_menu_sp ul li a.contact_num .contact_num_icon {
        align-self: center;
    }

    .g_navi_menu_sp ul li a.contact_num .contact_num_mobile {
        margin-left: 0.4em;
        font-size: 14px;
    }
}

@media screen and ( max-width: 767px ) {
    .header_right {
        display: none;
    }

    .bluebody .header_right {
        display: block;
    }

    .bluebody .header_right .search_icon {
        visibility: hidden;
    }

    .bluebody .header_right .header_search_inner {
        display: block!important;
        right: auto;
        bottom: auto;
        left: 0;
        position: relative;
    }
}

@media screen and (max-width: 767px) {
    body.is_header_fixed {
        padding-top: 54px;
    }
}

/**********
   /top page main slick slider
**********/
.tier.alert {
    padding: 0;
}

@media screen and (max-width: 767px) {
    .alert-accordion-wrap {
        padding: 0;
    }
}

.alert-item {
    width: 66%;
    padding: 20px;
    border: solid 1px #588CB9;
    font-size: 15px;
}

.alert-item b {
    display: block;
}

.alert-item p,
.alert-item b {
    line-height: normal;
    margin-bottom: 12px;
}

.alert-item  p:last-child,
.alert-item  b:last-child{
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .alert-accordion-wrap {
        margin-bottom: 45px;
        padding: 0;
    }

    .alert-item {
        width: 100%;
        font-size: 14px;
    }
}

.alert-title {
    padding: 0;
}

.arrow-inner {
    position: absolute;
    z-index: 1;
    display: inline-block;
    width: 20px;
    height: 20px;
    bottom: 12px;
    transform: translateY(50%);
    right: calc(50%);
    cursor: pointer;
}

.arrow-inner.open {
    transform: translateY(50%) translateX(50%) rotate(180deg);
}

.arrow-inner .arrow {
    content: "";
    display: inline-block;
    transform: rotate(45deg) translateX(-2px) translateY(-2px);
    width: 10px;
    height: 10px;
    border-bottom: 1px solid;
    border-right: 1px solid;
    border-color: #588CB9;
    position: absolute;
    transition: 0.3s;
    box-sizing: border-box;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}

.tier.font_message {
    background-color: #F5F7FA;
    padding: 100px 20px;
    box-sizing: border-box;
}

@media screen and (max-width: 767px) {
    .tier.font_message {
        padding: 40px 20px 45px;
    }
}

.tier.font_message .box {
    display: block;
    margin: auto;
}

.tier.font_message .box .box_title {
    text-align: center;
}

.tier.font_message .box .box_title span:first-child {
    font-size: 4.0rem;
    display: block;
    margin-bottom: 12px;
}

.tier.font_message .box .box_title:after {
    display: block;
    content: "";
    border: solid 2px #588CB9;
    width: 7%;
    margin: 12px auto 0 auto;
}

.tier.font_message .box .box_content {
    margin-top: 60px;
}

.tier.font_message .box .box_content p {
    text-align: center;
    font-size: 17px;
    line-height: 3;
}

@media screen and (max-width: 767px) {
    .tier.font_message .box .box_content{
        margin-top: 20px;
    }
    .tier.font_message .box .box_content p {
        font-size: 14px;
        line-height: 1.8;
    }
}

.tier.font_message .box .box_footer {
    text-align: center;
    margin-top: 40px;
}

@media screen and (max-width: 767px) {
    .tier.font_message .box .box_footer {
        margin-top: 32px;
        line-height: 1.2rem;
    }
}

.tier.font_message .box .box_footer span:last-child {
    display: block;
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .tier.font_message .box .box_footer span {
        font-size: 14px;
    }
}

#totop {
    z-index: 1;
}
