@charset "utf-8";

/* リンク設定 */
a:link,
a:visited {
    text-decoration: none;
    color: #0068b7;
}

a:hover,
a:active {
    text-decoration: none;
    color: #51b4ff;
}

a {
    transition: 0.4s;
}

a:hover {
    opacity: 0.7;
}

/* デフォルトハック */
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

/* デフォルトイメージ */
img.frame {
    padding: 5px;
    border: 1px solid #666666;
    background: #FFFFFF;
    margin: 5px;
}

img.right {
    margin: 0 0 5px 5px;
}

img.left {
    margin: 0 5px 5px 0;
}

/* 共通 */
html {
    font-size: 16px;
}

body {
    min-width: 1000px;
    color: #222;
    font-size: 1rem;
    line-height: 1.5;
    font-family: 'Noto Sans JP', 游ゴシック体, 'Yu Gothic', YuGothic, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: 400;

}

.en {
    font-family: Arial, Helvetica, sans-serif;
}


.inner {
    min-width: 1100px;
    max-width: 1100px;
    margin-right: auto;
    margin-left: auto;
    padding-right: 10px;
    padding-left: 10px;
    position: relative;
}

#globalheader .inner {
    max-width: none;
}

.section {
    padding-top: 40px;
    padding-bottom: 40px;
    position: relative;
}




.section_slide,
.section:not(.section_inview)>* {
    opacity: 0;
    transform: translateY(50px);
    transition: 0.8s 0.2s;
}

body.loaded .section_slide.inview,
body.loaded .section.inview>* {
    opacity: 1;
    transform: translateY(0);
}


.header_icon {
    line-height: 1;
    font-size: 1.2rem;
    vertical-align: middle;
    background: #f3f3f3;
    border-bottom: 1px solid #d0d0d0;
}

.header_icon .inner {
    padding: 0;
}

.header_icon .flex {
    margin-right: 41px;
    align-items: stretch;
    justify-content: flex-end;
}

.header_icon li a {
    padding: 12px 16px;
    display: inline-block;
    border-left: 1px solid #d0d0d0;
    color: #878787;
}

.header_icon li a:hover{
    opacity: 1;
}
.header_icon li.icon_blog a {
    padding: 16px 16px;
    font-weight: bold;
    font-size: 0.8rem;}
.header_icon li.icon_blog a:hover {
    opacity: 1;
    color: rgb(0, 104, 183);
}
.header_icon li.icon_yt a:hover {
    color: #F70B00;
}

.header_icon li.icon_tw a:hover {
    color: #1D9DEC;
}
.header_icon li.icon_ist a:hover {
    color: #CE3C89;
}

.header_icon li.icon_fb a:hover {
    color: #395598;
}

.header_icon li.icon_hamburger a {
    color: #ffffff;
}




.header_icon li.head_contact {}

.header_icon li.head_contact a {
    display: block;
    line-height: 100%;
    box-sizing: border-box;
    line-height: 43px;
    padding: 0 20px;
    border: none;
    margin: auto 0;
    font-size: 12px;
}


@media screen and (max-width: 1200px) {
    .pc-menu {
        display: none;
    }
}

.pc-menu__hamburger {
    top: 0;
    right: 0;
    position: absolute;
    cursor: pointer;
    background-color: #333333;
    color: #ffffff;
    font-size: 1.2rem;
    padding: 12px;
}

.pc-menu__list {
    z-index: 101;
    height: 100vh;
    transition: right 0.3s;
    position: fixed;
    width: 300px;
    box-sizing: border-box;
    padding: 40px 10px 40px 60px;
    top: 0;
    right: -300px;
    background-color: #444444;
}

.pc-menu__list--open {
    right: 0;
}

.pc-menu__close {
    cursor: pointer;
    width: 35px;
    height: 35px;
    position: absolute;
    left: 10px;
    top: 5px;
}

.pc-menu__close::after,
.pc-menu__close::before {
    content: "";
    width: 2px;
    height: 35px;
    background-color: #ffffff;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    transform-origin: center;
}

.pc-menu__close::after {
    transform: rotate(45deg);
}

.pc-menu__close::before {
    transform: rotate(315deg);
}

.pc-menu__item {
    font-size: 14px;
    margin-bottom: 10px;
}

.pc-menu__item a {
    color: #ffffff;
    font-weight: bold;
    font-size: 18px;
}

body[class*="wcarea"] .pc-menu__item a {
    color: #222222;
}

#globalheader {
    position: relative;
    z-index: 200;
}

#globalheader h1 a {
    display: block;
    text-indent: -200em;
    overflow: hidden;
    width: 250px;
    height: 70px;
    background: url(/mailmagazine/wp-content/themes/kinan/common/img/logo.gif) no-repeat;
    background-size: cover;
}

.header_nav {
    position: relative;
    background: #fff;
}

.header_nav>.inner.flex {
    align-items: center;
}

.mainnav {
    flex: 1 1 auto;
    margin-left: 40px;
}

.mainnav li {
    flex: 1 1 auto;
    text-align: center;
}

.mainnav ul {
    font-weight: 700;
}

.mainnav ul a {
    color: #222;
    padding-top: 40px;
    padding-bottom: 40px;
    display: block;
}

.mainnav ul a:hover,
.mainnav ul a.is-open {
    background-color: #0968B7;
    color: #fff;
    opacity: 1;
}

.mainnav .dropdown {
    position: absolute;
    z-index: 100;
    left: 0;
    top: 100%;
    width: 100%;
    background: #fff;
    color: #fff;
    display: none;
    background-color: #444444;
}

.mainnav .dropdown a {
    color: #ffffff;
    padding: 20px;
}

.mainnav .dropdown a:hover {
    background-color: #fff;
    color: #333333;
}

.mainnav .dropdown li {
    min-width: 20%;
    flex: none;
    text-align: left;

}

.has_dropdown>a {
    position: relative;
}

.has_dropdown>a:after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    bottom: 10px;
    transform: translateX(-50%);

    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 5px 0 5px;
    border-color: #0068B7 transparent transparent transparent;

}

.has_dropdown>a:hover:after,
.has_dropdown>a.is-open:after {
    border-top-color: #fff;
}

.section_slide {
    z-index: 1;
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
}

.sp-button {
    width: 16px;
    height: 16px;
    background: #ddd;
    border: none;
    margin-right: 30px;
}


.sp-selected-button {
    background: #0968B7;
}

.section_slide {
    padding: 30px 0;
}

.section_slide .sp-buttons {
    position: absolute;
    right: 0;
    bottom: 20px;
    width: auto;
}

.slider .sp-slide {
    background-color: #333;
}

.slider .sp-slide .sp-image {
    opacity: 0.5;
    transition: opacity 0.5s;
}

.slider .sp-slide.sp-selected .sp-image {
    opacity: 1;
}

.slider .sp-arrows {
    width: 1050px;
    margin-right: auto;
    margin-left: auto;
    right: 0;
    left: 0;
}


.slider .sp-arrow {
    position: absolute;
    display: block;
    box-sizing: content-box;
    width: 0;
    height: 0;
    border: 30px solid transparent;
    border-right: 20px solid #ffffff;
    opacity: 0.8;
    cursor: pointer;
}

.slider .sp-arrow::before,
.slider .sp-arrow::after {
    display: none
}






.section_links {
    z-index: 1;
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
}




.links_contents {
    display: flex;
    justify-content: space-between;
    background: url(../img/back.jpg) no-repeat center;
    background-size: cover;
    padding: 30px 4% 60px;
    position: relative;
    flex-wrap: nowrap;
}



.links_item {
    position: relative;
    flex: 0 1 auto;
    box-sizing: border-box;
    opacity: 0;
    transition: all 0.3s;
    transform: translateY(40px);
}

.links_item.is-visible {
    opacity: 1;
    transform: translateY(0px);
}

body[class*="wcedit"] .links_item,
body[class*="wcselect"] .links_item {
    opacity: 1 !important;
    transform: none !important;
}

.links_title {
    font-weight: bold;
    width: 500px;
    max-width: 100%;
    font-size: 24px;
    color: #ffffff;
    border-bottom: 1px solid #ffffff;
}


.links_subtitle {
    color: #ffffff;
    margin-bottom: 20px;
}





.item_lineup.just6 {
    width: 13%;
    border-radius: 8px;
    position: relative;
    background-color: rgba(255, 255, 255, .75);
    transition: all 0.3s;
}

.item_lineup.just6:hover {
    box-shadow: 5px 5px 5px #666666;
    transform: translate(-5px, -5px);
}


.item_lineup a:hover {
    opacity: 1;
}




.item_lineup a {}

.item_lineup img {
    width: 100%;
    height: auto;
}


.links_item_eigyou .links_item_inner {
    position: relative;
}


.links_item.links_item_eigyou .links_title {}

.links_item.links_item_lineup .links_title {
}



.links_item.links_item_lineup {
    width: 56%;
    flex: 0 1 auto;
    transition: all 1s cubic-bezier(.4, .04, .48, .86);
}

.links_item.links_item_eigyou {
    transition: all 1s 0.2s cubic-bezier(.4, .04, .48, .86);
    width: 40%;
    min-width: 420px;
    flex: 0 1 auto;
    overflow: hidden;
    min-height: 600px;
}


.item_lineup {
    color: #0068b7;
    position: relative;
    transition: 0.4s;
    margin: 0 5px 20px;
}




.item_lineup.just_ex {
    width: calc(40% - 10px);
    color: #fff;
    background: #0068b7;
}

.item_lineup.just_ex:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(110deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0) 70%,
            rgba(255, 255, 255, 0.2) 70.1%,
            rgba(255, 255, 255, 0.2) 72%,
            rgba(255, 255, 255, 0) 72.1%,
            rgba(255, 255, 255, 0) 74%,
            rgba(255, 255, 255, 0.2) 74.1%,
            rgba(255, 255, 255, 0.2) 80%,
            rgba(255, 255, 255, 0) 80.1%,
            rgba(255, 255, 255, 0) 85%,
            rgba(255, 255, 255, 0.2) 85.1%,
            rgba(255, 255, 255, 0.2) 86%,
            rgba(255, 255, 255, 0) 86.1%,
            rgba(255, 255, 255, 0) 90%,
            rgba(255, 255, 255, 0.2) 90.1%,
            rgba(255, 255, 255, 0.2) 95%,
            rgba(255, 255, 255, 0) 95.1%,
            rgba(255, 255, 255, 0) 100%);
}

.item_lineup.just_ex:hover {
    background: #fff;
    color: #0068b7
}

.item_lineup.just_ex dt {
    width: 158px;
}

.eigyou_map_img {
    width: 420px;
    height: 397px;
    position: relative;
    margin: 0 auto;
    padding-top: 50px;
}

.eigyou_map_img img {
    max-width: 100%;
    height: auto;
}

.eigyou_map_shapes {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 50px;
    left: 0;
}


.eigyou_map_shape {
    position: absolute;
    background-position: center;
    background-repeat: no-repeat;
    transition: all 0.3s;
    z-index: 0;
    opacity: 0;
    cursor: pointer;
}

.eigyou_map_shape a {
    width: 100%;
    height: 100%;
    display: block;
}

.eigyou_map_shape.onhover {
    opacity: 1;
    filter: drop-shadow(3px 3px 3px #aaa);
}

.eigyou_map_shape-east {
    background-image: url(../img/east.png);
    width: 164px;
    height: 316px;
    right: 0;
    top: 0;
}

.eigyou_map_shape-center {
    background-image: url(../img/center.png);
    width: 183px;
    height: 149px;
    right: 145px;
    top: 215px;
}

.eigyou_map_shape-west {
    background-image: url(../img/west.png);
    width: 81px;
    height: 111px;
    left: 0;
    bottom: 0;
}

.eigyou_map_areas {
    position: absolute;
    z-index: 1;
    display: flex;
    top: 0;
    left: 0;

}

.eigyou_map_area {
    padding: 0 10px;
    transition: all 0.3s;
}

.eigyou_map_area.onhover .eigyou_map_area_item a,
.eigyou_map_area_item:hover a {
    text-shadow: 2px 2px 2px #aaaaaa;
    color: #0068b7;
}

.eigyou_map_area_item a {
    transition: all 0.3s;
}


.eigyou_map_area_item a {
    color: #ffffff;
    font-weight: bold;
    font-size: 18px;
}

.eigyou_map_area_item a:hover {
    color: #0068b7;
    opacity: 1;
}

.section-stickybox {
    padding: 80px 0 0;
}



.catch__title {
    z-index: 1;
    text-align: center;
    font-size: 38px;
    font-weight: bold;
    margin-bottom: 35px;
    background: #ffffff;
    padding: 15px 0;
    position: sticky;
    top: 104px;
}

@media screen and (max-width: 1200px) {
    .catch__title {
        top: 96px;
    }
}

.catch__text {
    font-size: 28px;
    color: #666666;
    text-align: center;
    margin-bottom: 80px;
}





.section-about {
    background-color: #f5f5f5;
    overflow: hidden;
    padding: 80px 0;
    margin: 0 auto;
}

.about__item {
    width: 1200px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    position: relative;
    z-index: 1;
    margin-bottom: 100px;
}

.about__item.onhover {
    cursor: pointer;
}


.about__item--left .about__text {
    transform: translateX(-100px);
}



.about__item--left .about__img {
    transform: translateX(200px);
    margin-right: 0;
}



.about__item--right .about__text {
    transform: translate(100px);
}

.about__item--right .about__img {
    transform: translateX(-200px);
}

.about__item--visible .about__img,
.about__item--visible .about__text {
    opacity: 1;
    transform: translate(0);
}



.about__text {
    opacity: 0;
    transition: opacity 1.6s, transform 1.6s;
    transition-timing-function: cubic-bezier(0.65, 0.05, 0.29, 0.9);
    transition-delay: 0.8s;
    box-sizing: border-box;
    width: 50%;
}

.about__text__title {
    font-size: 35px;
    color: #0068b7;
    font-weight: bold;
    margin-bottom: 15px;
}

.about__text__main {
    width: 100%;
    font-size: 20px;
    margin-bottom: 40px;
    background-color: #ffffff;
    text-align: center;
    transition: all 0.6s;
    position: relative;
    transition-timing-function: cubic-bezier(0.65, 0.05, 0.29, 0.9);
    box-shadow: 0 1px 3px #cccccc;
}

.about__text__main__default,
.about__text__main__hover {
    padding: 10px 40px;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    position: absolute;
    justify-content: center;
    align-content: center;
    align-items: center;
    display: flex;
    transition: all 1.2s;
}

.about__text__main__hover {
    opacity: 0;
	color:#666;
}

.about__text__main__hover--flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    text-align: left;
}

.about__text__main__hover--flex li {
    width: 50%;
}

.about__item:hover .about__text__main__default {
    opacity: 0;
}

.about__item:hover .about__text__main__hover {
    opacity: 1;
}

body[class*="wcedit"] .about__text__main__default,
body[class*="wcedit"] .about__text__main__hover {
    position: relative;
    background-color: #ffffff;
    margin-bottom: 50px;
    padding: 20px 50px;
    opacity: 1 !important;
}

body[class*="wcedit"] .about__text__main__default::before {
    content: "デフォルトの表示：";
    position: absolute;
    top: -10px;
    left: 0;
    color: red;
    font-size: 20px;
}

body[class*="wcedit"] .about__text__main__hover::before {
    position: absolute;
    top: -30px;
    left: 0;
    content: "ホバー時の表示:";
    color: red;
    font-size: 20px;
}


.about__text__main:hover {}

.about__item:hover .about__text__main {
    background-color: #ffffff;
    color: #000000;
    box-shadow: 5px 5px 3px #aaaaaa;
}

.about__item:hover .about__img {
    box-shadow: 5px 5px 3px #aaaaaa;
}

.about__item:hover .about__img img {
    transform: scale(1.1);
}


.about__text__more {
    width: 100%;
    text-align: right;
    position: absolute;
    bottom: 20px;
    right: 20px;
}

.about__text__more a {
    text-decoration: underline;
    color: #ffffff;
    font-size: 18px;
}


.about__img {
    opacity: 0;
    transition: opacity 1.6s, transform 1.6s, box-shadow 0.6s;
    transition-delay: 0.3s, 0.3s, 0s;
    transition-timing-function: cubic-bezier(0.65, 0.05, 0.29, 0.9);
    z-index: -1;
    overflow: hidden;
    width: 48%;
}


.about__img a:hover {
    opacity: 1;
}

.about__img img {
    transition: all 0.6s;
    width: 100%;
    height: auto;
}



body[class*="wcedit"] .about__subtitle,
body[class*="wcedit"] .about__title,
body[class*="wcedit"] .about__text,
body[class*="wcedit"] .about__img,
body[class*="wcselect"] .about__subtitle,
body[class*="wcselect"] .about__title,
body[class*="wcselect"] .about__text,
body[class*="wcselect"] .about__img,
body[class*="wcarea"] .about__subtitle,
body[class*="wcarea"] .about__title,
body[class*="wcarea"] .about__text,
body[class*="wcarea"] .about__img,
body[class*="wcancedit"] .about__subtitle,
body[class*="wcancedit"] .about__title,
body[class*="wcancedit"] .about__text,
body[class*="wcancedit"] .about__img {
    opacity: 1 !important;
    transform: none !important;
}



.section_product {}

.product_slider {
    z-index: 1;
}

.product_item_img {
    margin: 0 auto;
    width: 200px;
    box-shadow: 0 3px 10px #666666;
    border-radius: 6px 6px 0 0;
    overflow: hidden;
}

.product_item_title {
    word-break: break-all;
    background-color: #ffffff;
    border: 1px solid #0068B7;
    text-align: center;
    font-size: 16px;
    color: #0068B7;
}


.product_slider .sp-arrows {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    right: 0;
    left: 0;
}

.product_slider .sp-arrow {
    position: absolute;
    display: block;
    box-sizing: content-box;
    width: 0;
    height: 0;
    border: 30px solid transparent;
    border-right: 20px solid rgba(0, 104, 183, 0.5);
    opacity: 0.8;
    cursor: pointer;
}

.product_slider .sp-arrow::before,
.product_slider .sp-arrow::after {
    display: none
}



.item_info {
    align-items: flex-start;
}

.item_events+.item_events,
.item_info+.item_info {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px dashed #999;
}

.info_date {
    width: 5rem;
    font-family: Arial, Helvetica, sans-serif;

}

.info_cat {
    background: #bbb;
    color: #fff;
    font-size: 0.85rem;
    line-height: 1;
    padding: 8px;
    text-align: center;
    display: block;
    width: 8rem;
    margin-right: 50px;
    margin-left: 50px;
}

.info_text {
    flex: 1;
}


.cat_red {
    background: #e83421;
}

.cat_blue {
    background: #0068b7;
}

.cat_gray {
    background-color: #666666;
}

.bdimg {
    border: 1px solid #bbb;
    padding: 2px;
    background: #fff;
}

.sns_contents {
    position: relative;
    margin: 0 auto;
    max-width: 1200px;
    z-index: 1;
    justify-content: space-around;
}

.sns_item {
    width: 150px;

}


.sns_item_img {
    background-color: #ffffff;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    box-shadow: 0 5px 5px #999999;
    overflow: hidden;
    margin-bottom: 10px;
    position: relative;
}

.sns_item_img a::after {
    left: 0;
    top: 0;
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    display: block;
}

.sns_item_img img {
    position: absolute;
    width: 50%;
    height: auto;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
}

.sns_item_title {
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
}

.sns_item.wcempty {
    display: none;
}

.section_blue {
    background: #dae4ec;
}

.section_blue>.inner {
    position: relative;
    z-index: 100;
}

.section_blue:after,
.section_blue:before {
    content: '';
    display: block;
    background: linear-gradient(120deg,
            rgba(255, 255, 255, 0) 0%,
            rgba(255, 255, 255, 0) 10%,
            rgba(255, 255, 255, 0.3) 10.1%,
            rgba(255, 255, 255, 0.3) 30%,
            rgba(255, 255, 255, 0) 30.1%,
            rgba(255, 255, 255, 0) 80%,
            rgba(255, 255, 255, 0.3) 80.1%,
            rgba(255, 255, 255, 0.3) 100%);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}

.section_blue:before {
    background: linear-gradient(70deg,
            rgba(255, 255, 255, 0) 15%,
            rgba(255, 255, 255, 0) 15%,
            rgba(255, 255, 255, 0.3) 15.1%,
            rgba(255, 255, 255, 0.3) 25%,
            rgba(255, 255, 255, 0) 25.1%,
            rgba(255, 255, 255, 0) 85%,
            rgba(255, 255, 255, 0.3) 85.1%,
            rgba(255, 255, 255, 0.3) 90%,
            rgba(255, 255, 255, 0) 90.1%,
            rgba(255, 255, 255, 0) 100%);
}

.inner.flex>.just {
    flex: 1;
    margin-left: 50px;
}

.title_events {
    align-items: center;

}

.title_events h4 {
    flex: 1 1 100%;
    margin-top: 20px;
    font-weight: 700;
    color: #0068b7;
}


.title_events h4.title_red {
    color: #e83421;
}


.section_gray {
    background: #efefef;
    padding-top: 20px;
    padding-bottom: 40px;
    margin-top: 40px;
    margin-bottom: 40px;
}

.module_carousel .sp-slide {
    opacity: 1;
}

.module_carousel .sp-arrows {
    position: static;
}

.module_carousel .sp-arrow {
    width: 30px;
    top: -20px;
    height: calc(100% + 40px);
    background: #bbb;
}



.module_carousel .sp-arrow:after {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    border-radius: 30px;
    background: #666;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.module_carousel .sp-arrow:before {
    content: '';
    display: block;
    background: none;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 6.9px 4px 0;
    border-color: transparent #fff transparent transparent;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 100;
}

.module_carousel.sp-horizontal .sp-previous-arrow {
    left: 0;
}

.module_carousel.sp-horizontal .sp-next-arrow,
.module_carousel.sp-horizontal.sp-rtl .sp-previous-arrow {
    right: 0;
}

#globalfooter {
    background-color: #444444;
    margin-top: 80px;
}

@media screen and (min-width: 1200px) {
    #globalfooter .inner {}
}

.gf-info__logo {
    margin-right: 30px;
    float: left;
}

.gf-sns {
    display: flex;
    flex-wrap: wrap;
    margin: 0 30px 30px;
}

.gf-sns__item {}

.gf-sns__item:not(:first-child) {
    border-left: none;
}

.gf-sns__item a {
    padding: 12px 16px;
    font-size: 1.2rem;
    display: inline-block;
    color: #ffffff;
}

.gf-sns__item a:hover {
    opacity: 1;
}

.gf-sns__item--blog a {
    padding: 16px 16px;
    font-weight: bold;
    font-size: 0.8rem;
}

.gf-sns__item--blog a:hover {
    opacity: 1;
    color: rgb(0, 104, 183);
}

.gf-sns__item--yt a:hover {
    color: #F70B00;
}

.gf-sns__item--tw a:hover {
    color: #1D9DEC;

}
.gf-sns__item--ist a:hover {
    color: #CE3C89;
}

.gf-sns__item--fb a:hover {
    color: #395598;

}

.gf-info {
    padding-top: 40px;
    margin-bottom: 80px;
}

.gf-info::after {
    content: "";
    display: block;
    clear: both;
}

.gf-info__logo {
    font-size: 26px;
    font-weight: bold;
    margin-bottom: 24px;
}

.gf-info__company {
    float: left;
    margin-right: 40px;
}

.gf-info__logo,
.gf-info__title,
.gf-info__address,
.gf-info__tel {
    color: #ffffff;
    font: normal;
}

.gf-info__address {
    margin-bottom: 5px;
}

.gf-info__title {
    font-size: 16px;
    margin-bottom: 15px;
}

.gf-info__address,
.gf-info__tel {
    font-size: 14px;
}






.gf-list {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-around;
}

.gf-list__item {
    flex: 1 1 auto;
}

.gf-list__item__title {
    font-size: 16px;
    margin-bottom: 10px;
}

.gf-list__item__title a {
    display: block;
    position: relative;
    padding-left: 15px;
}

.gf-list__item__title a::before {
    position: absolute;
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: 5px solid transparent;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-left: 5px solid #ffffff;
}

.gf-list__item__link {
    font-size: 14px;
    margin-left: 25px;
    margin: 0 0 5px 25px;
}

.gf-list__item__title a,
.gf-list__item__link a {
    color: #ffffff;
}

body[class*="wcarea"] .gf-list__item__title a::before {
    border-color: #222222;
}

body[class*="wcarea"] .gf-list__item__title a,
body[class*="wcarea"] .gf-list__item__link a {
    color: #222222;
}

.copy {
    margin-top: 60px;
    color: #fff;
    text-align: center;
    font-size: 0.85rem;
    padding: 20px 0;
}

img[src*="http://analytics.global-websystem.net"] {
    opacity: 0 !important;
    position: absolute;
}

@media screen and (max-width: 1200px) {
    .gf-logo {
        margin-bottom: 20px;
    }

    .gf-sns {
        margin: 0 0 40px;
    }
}




.bg {
    display: none;
}

.has_bg {
    background-position: center center;
    background-size: cover;
}

.section_pagetitle {
    padding-top: 60px;
    padding-bottom: 60px;
    color: #fff;
    opacity: 0;
    transition: opacity 0.8s;
}

body.loaded .section_pagetitle {
    opacity: 1;
}

.section_pagetitle:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right,
            rgba(0, 0, 0, 1) 0%,
            rgba(0, 0, 0, 0) 50%);
}

.section_pagetitle>.inner {
    opacity: 1;
    transform: none;
    position: relative;
    z-index: 100;
    overflow: hidden;
}

.section_pagetitle h3,
.section_pagetitle h2 {
    font-weight: 700;
    opacity: 0;
    transform: translateX(50px);
    transition: 1.2s;
}

.section_pagetitle h2 {
    font-size: 2.5rem;
    transition-delay: 0.4s;
}

.section_pagetitle h3 {
    transition-delay: 0.6s;
}

body.loaded .section_pagetitle.inview h3,
body.loaded .section_pagetitle.inview h2 {
    opacity: 1;
    transform: translateX(0)
}

.section.section_contents>* {
    opacity: 1;
    transform: none;
}

.section.section_contents>*>.module {
    opacity: 0;
    transform: translateY(50px);
    transition: 0.8s 0.2s;
}

body.loaded .section.section_contents>*>.module.inview {
    opacity: 1;
    transform: translateY(0);
}






.section_search {
    background: #e9edf0;
    padding-top: 20px;
    padding-bottom: 20px;
}

.section_search>.inner {
    width: 600px;
}

.section_search .module:not(:last-child) {
    margin-bottom: 10px;
}

.item_search dt {
    flex: 1 1 auto;
}

select,
input[type="text"],
textarea {
    box-sizing: border-box;
    padding: 4px;
    width: 100%;
    height: 100%;
}

select {
    width: auto;
    height: auto;
}

button {
    background: #0068B7;
    color: #fff;
    border: none;
    padding: 8px 20px;
}

input.w_semi {
    width: 50%;
}

span.require {
    color: #f33;
    margin-right: 10px;
    margin-left: 10px;
}


.module_tag {
    margin-top: -10px;
}

.module_tag li {
    display: inline;
}

.module_tag li a {
    margin-top: 10px;
    display: inline-block;
    background: #0068B7;
    color: #fff;
    border-radius: 4px;
    margin-right: 20px;
    line-height: 1;
    padding: 8px 20px;
    font-size: 0.85rem;
}

body>img {
    position: absolute;
    left: -50px;
    top: -50px;
}

.sponly {
    display: none;
}

.table_ryokin table td,
.table_ryokin table th:nth-child(even) {
    width: auto;
}

.module_carousel {
    transform: none !important;
    opacity: 1 !important;
    transition: none !important;
}

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

.module_textlink .text {
    flex: 1;
}

.module_textlink .detaillink {
    margin-top: 0;
}




.module_flexlink .detaillink {
    margin-top: 0;
}

.module_flexlink .detaillink a {
    display: block;
    text-align: center;
}

.module_flexlink .just4 {
    width: calc(25% - 5px);
}



.eigyou-annai_title img,
.eigyou-area_title img {
    width: 100%;
    height: auto;
}

.module.eigyou-annai_areaname,
.module.eigyou-area_areaname {
    padding: 0 20px;
}

.eigyou-annai_area {
    padding: 0 40px;
}

.eigyou-annai_area_title {
    font-weight: bold;
    margin-bottom: 10px;
    font-size: 20px;
}

.eigyou-annai_area_list {
    display: flex;
    padding: 0 20px;
    flex-wrap: wrap;
}

.eigyou-annai_area_item {
    text-align: left;
    width: 33.33%;
}

.eigyou-annai_areaname img,
.eigyou-area_areaname img {
    width: 200px;
    height: auto;
}

.eigyou-area_todouhuken {
    font-size: 20px;
    font-weight: bold;
    padding: 0 40px;
}

body[class*="wcselect"] .eigyou-annai_area_list {
    display: block;
}

body[class*="wcselect"] .eigyou-annai_area_list>div {
    display: flex;
    flex-wrap: wrap;
}

.eigyou-area_maps {
    padding: 0 30px;
}

.just2.item_eigyou {}


.item_eigyou .module:not(:last-child) {
    margin-bottom: 20px;
}

.item_eigyou .flex {
    align-items: center;
}

.item_eigyou_maplink {
    text-align: center;
    margin-top: 20px;
}

.item_eigyou_maplink a {
    border-radius: 5px;
    line-height: 1.4;
    background-color: #34A853;
    text-decoration: none;
    display: inline-block;
    padding: 0 15px;
    font-size: 14px;
    color: #ffffff;
}

.item_tel dt {
    font-size: 0.85rem;
    background: #0968B7;
    color: #fff;
    margin-right: 10px;
    line-height: 1;
    padding: 4px 10px;
    border-radius: 4px;
}

.item_tel+.item_tel {
    margin: 0 20px;

}


.item_btn {
    float: right;
}

.item_btn a {
    display: inline-block;
    background: #0968B7;
    color: #fff;
    font-size: 0.85rem;
    padding: 4px 10px;
}

.iframe_wrap {
    position: relative;
    width: 100%;
    padding: 50% 0 0 0;
}

.iframe_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.section_rectitle {
    padding-top: 0;
    padding-bottom: 0;
}

.section_rectitle .sp-layer {
    width: 100%;
    top: 50% !important;
    transform: translateY(-50%) !important;
}

.module_rectitle {
    padding: 10px;
    display: inline-block;
    position: relative;
    overflow: hidden;
    color: rgba(255, 255, 255, 0);
    font-weight: 900;
    font-size: 3rem;
    text-shadow: 0 0 10px rgba(0, 0, 0, 1);
}

.module_rectitle:after {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #0968B7;
    transform: scaleX(0);
    transform-origin: left center;
}

.section.inview .sp-selected .module_rectitle:after {
    animation: rectitle 1.2s cubic-bezier(1, 0, 0, 1);
}

.section.inview .sp-selected .module_rectitle {
    animation: rectitle_text 1.2s cubic-bezier(1, 0, 0, 1) forwards;
}

@keyframes rectitle_text {
    0% {
        color: rgba(255, 255, 255, 0);
    }

    50% {
        color: rgba(255, 255, 255, 0);
    }

    50.1% {
        color: rgba(255, 255, 255, 1);
    }

    100% {
        color: rgba(255, 255, 255, 1);
    }
}


@keyframes rectitle {
    0% {
        transform-origin: left center;
        transform: scaleX(0);
    }

    50% {
        transform-origin: left center;
        transform: scaleX(1);
    }

    50.1% {
        transform-origin: right center;
        transform: scaleX(1);
    }

    100% {
        transform-origin: right center;
        transform: scaleX(0);
    }
}

.section_recmes {
    padding-top: 60px;
    padding-bottom: 60px;
}

.img_recmes {
    position: absolute;
    left: 0;
    top: 0;
    width: 50%;
    height: 100%;
    background-size: cover;
    z-index: -1;
}

.module_recmes {
    position: relative;
    margin-left: 500px;
    padding: 40px;
    background: rgba(255, 255, 255, 0);
    transition: 1s 1s;
    color: rgba(0, 0, 0, 0);
}

.module_recmes .title .plaintitle {
    transition: 1s 1s;
    color: rgba(0, 0, 0, 0);
}

body.loaded .section.inview .module_recmes {
    background: rgba(255, 255, 255, 1);
    color: rgba(0, 0, 0, 1) !important;
}

body.loaded .section.inview .module_recmes .title .plaintitle {
    color: #0968B7;
}

.module_recmes:before,
.module_recmes:after {
    content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 1px solid #0968B7;
    transform: scale(0);
    transition: 0.6s 0.4s;
}

.module_recmes:before {
    right: 0;
    top: 0;
    border-left: none;
    border-bottom: none;
    transform-origin: right top;
}

.module_recmes:after {
    left: 0;
    bottom: 0;
    border-top: none;
    border-right: none;
    transform-origin: left bottom;
}

body.loaded .section.inview .module_recmes:after,
body.loaded .section.inview .module_recmes:before {
    transform: scale(1);
}

.section_voicebtn {
    margin: 60px 0;
}

.item_voicebtn {
    width: 600px;
    margin: auto;
    background: rgba(9, 104, 183, 0.7);
    color: #fff;
    padding: 20px;
    font-weight: 900;
    font-size: 1.2rem;
}

.item_voicebtn .detaillink a:hover,
.item_voicebtn .detaillink a:active {
    background: #E83421;
    color: #fff;
}

.bg_voicebtn {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.bg_voicebtn * {
    height: 100%;
    width: auto;
}

.flex_wrap.nopd>.just2 {
    width: 50%;
}

.fadeleft {
    transition: 1s;
    opacity: 0;
    transform: translateX(-50px);
}

.faderight {
    transition: 1s;
    opacity: 0;
    transform: translateX(50px);
}

body.loaded .module.inview .faderight,
body.loaded .module.inview .fadeleft {
    opacity: 1;
    transform: none;
}

.photo .text .module:not(:last-child) {
    margin-bottom: 30px;
}

.photo.photo_flex {
    display: flex;
    align-items: flex-start;
}

.photo.photo_flex .detail-btn {
    display: inline-block;
    background-color: rgb(0, 104, 183);
    float: right;
}

.photo.photo_flex .detail-btn a {
    color: #ffffff;
    display: inline-block;
    padding: 3px 10px;
    font-size: 14px;

}

.photo.photo_flex .pict {
    flex-shrink: 0;
    width: 30%;
}

.photo.photo_flex .pict img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.title_voice .plaintitle span.primary {
    font-weight: 900;
    color: #0968B7;
    margin-right: 20px;
}

.title_voice.title_voice_red .plaintitle span.primary {
    color: #E83421;
}

.voice_cat {
    color: #fff;
    font-size: 0.85rem;
    line-height: 1;
    padding: 4px 10px;
}

.list_voice dt,
.list_voice dd {
    width: 100%;
}

.item_schedule {
    padding: 10px 10px 10px 60px;
    background: #e3eef8;
    color: #154a76;
    position: relative;
    margin-top: 20px;
}

.time {
    background: #0968B7;
    color: #fff;
    width: 50px;
    height: 50px;
    border-radius: 50px;
    text-align: center;
    line-height: 50px;
    white-space: nowrap;
    font-family: Arial, Helvetica, sans-serif;
}

.item_schedule .time {
    position: absolute;
    left: 0px;
    top: -10px;
}

.just3.border-box,
.just4.border-box,
.just5.border-box {
    padding: 10px 10px 15px 10px;
    border: 1px solid #ccc;
}

.just3.border-box .just_item h4,
.just4.border-box .just_item h4,
.just5.border-box .just_item h4 {
    font-weight: bold;
    color: #0068B7;
    font-size: 18px;
    margin-bottom: 10px;
    padding: 0 5px;
    border-left: 5px solid #0068B7;
}

.wrap-pulldown .title-button {
    color: #ffffff;
    font-weight: bold;
    position: relative;
    cursor: pointer;
    padding: 10px 30px;
    background-color: #0068B7;
}

.wrap-pulldown.open .title-button::before {
    transform: rotate(180deg);
    top: -5px;
}

.wrap-pulldown .title-button::before {
    position: absolute;
    left: 10px;
    top: 10px;
    bottom: 0;
    width: 0;
    height: 0;
    margin: auto 0;
    border: 5px solid transparent;
    border-top: 10px solid #ffffff;
    content: "";
    display: inline-block;
    transition: all 0.3s;
    transform-origin: center;
}

.wrap-pulldown .wrap-content {
    padding: 20px;
    background-color: #eee;

}

.wrap-pulldown .wrap-content p {
    margin-bottom: 30px;
}

.wrap-pulldown .wrap-content .wrap-img {
    text-align: center;
}

.wrap-pulldown .wrap-content .wrap-img img {
    max-width: 100%;
    width: auto;
    height: auto;
}








/** com_gaiyo **/
.table_patent {
    margin: 0 auto;
    max-width: 100%;
    width: 800px;

}


.table_patent td,
.table_patent th {
    width: 50%;
}


/** com_rinen **/
.module_precept {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
    display: flex;
    align-items: center;
    flex-wrap: nowrap;
}

.module_precept .pict {
    flex-shrink: 0;
}


.just3_concept {}

.just3_concept .just_item h3 {
    text-align: center;
    margin-bottom: 10px;
}

.just3_concept .just_item h3 .primary {
    display: block;
    color: #0068b7;
    font-size: 18px;
    font-weight: bold;
    border-bottom: 5px solid #0068b7;
    padding-bottom: 5px;
    margin-bottom: 5px;
}

.just3_concept .just_item h3 .secondary {
    display: block;
    color: #EA4736;
}

.just3_concept .just_item .wrap-p {
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
}

.just3_concept .just_item p {
    text-align: center;
    margin-bottom: 20px;
    line-height: 1.8;
    position: relative;
    width: 100%;
}

.just3_concept .just_item p:not(:last-child)::after {
    position: absolute;
    bottom: -15px;
    width: 70%;
    height: 5px;
    border-radius: 50%;
    right: 0;
    left: 0;
    margin: 0 auto;
    background: linear-gradient(#ddd, #999, #ddd);
    display: block;
    content: "";

}

/**com_rinen*/
.module_enkaku {
    display: flex;
    justify-content: space-between;
    flex-wrap: nowrap;
    flex-wrap: nowrap;
    align-items: flex-start;
}

.module_enkaku .wrap-img {
    width: 25%;
}

.module_enkaku .wrap-img img {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

.module_enkaku .wrap-dl {
    width: 73%;
}

/**group **/
.module_group {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
}

.module_group .list {
    justify-content: space-between;
    align-items: center;

}

.module_group .list dd,
.module_group .list dt {
    flex: 0 1 auto;
}

.module_group .list dt {
    width: 44%;
    text-align: center;
}

.module_group .list dd {
    width: 54%;
}

.module_group .list dt img {
    max-width: 100%;
    height: auto;
}





@media screen and (max-width:1200px) {
    body {
        min-width: 0;
    }

    .sponly {
        display: block;
    }

    .pconly {
        display: none;
    }



    .just2,
    .just3,
    .just4 {
        width: 100%;
    }

    .just5 {
        width: calc(50% - 10px);
    }


    .inner {
        min-width: 0;
        max-width: none;
        padding-right: 10px !important;
        padding-left: 10px !important;
        width: 100% !important;
    }

    .header_nav {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .spnav {
        position: fixed;
        right: -250px;
        top: 0;
        height: 100%;
        width: 250px;
        background: #fff;
        z-index: 500;
        transition: 0.4s right;
    }

    .spnav.open {
        right: 0;
    }

    .spnav_inner {
        height: 100%;
        overflow: auto;
    }

    .spnav_btn a {
        position: absolute;
        left: -40px;
        top: 22px;
        display: flex;
        width: 40px;
        height: 40px;
        background: #0068B7;
        color: #fff;
        justify-content: center;
        align-items: center;
        color: #fff;
    }

    .spnav .mainnav {
        margin-left: 0;
    }

    .spnav .mainnav ul.flex {
        display: block;
    }

    .spnav .mainnav ul a {
        padding-top: 20px;
        padding-bottom: 20px;
    }

    .spnav .mainnav ul li.has_dropdown>a {
        padding-bottom: 30px;
    }

    .spnav .has_dropdown>a:after {
        bottom: 10px;
    }


    .spnav_social li.icon_yt a {
        color: #F70B00;
    }

    .spnav_social li.icon_tw a {
        color: #1D9DEC;
    }

    .spnav_social li.icon_fb a {
        color: #395598;
    }

    .spnav_social ul.flex {
        font-size: 1.5rem;
        margin-top: 20px;
        padding-top: 20px;
        padding-bottom: 20px;
        border-top: 1px solid #ddd;
        justify-content: space-around;

    }

    .spnav_social ul.flex .head_contact a {
        font-size: 16px;
        color: #878787;
    }

    .spnav_social ul.flex .head_contact {
        margin-bottom: 20px;
        width: 100%;
        padding-left: 20px;
    }

    .spnav .mainnav .dropdown {
        position: static;
    }

    .spnav .dropdown ul.flex a {
        font-size: 0.85rem;
        font-weight: 400;
        padding: 10px;
        height: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .section_slide {
        padding: 15px 0;
    }

    .slider .sp-arrows {
        width: 100%;

    }


    .slider .sp-arrow {
        position: absolute;
        display: block;
        box-sizing: content-box;
        width: 0;
        height: 0;
        border: 20px solid transparent;
        border-right: 15px solid #ffffff;
        opacity: 0.8;
        cursor: pointer;
    }

    .slider .sp-previous-arrow {
        left: 0;
    }

    .slider .sp-next-arrow {
        right: 0;
    }

    .slider .sp-arrow::before,
    .slider .sp-arrow::after {
        display: none
    }


    .item_lineup.just_ex,
    .item_lineup {

        width: 100%;
    }

    .links_contents {
        display: block;
    }

    .links_item {
        padding: 50px 10px 10px 10px;
    }

    .item_lineup.just6 {
        max-width: 175px;
        width: 24%;
        padding: 0;
    }


    .item_lineup {
        margin: 0 0 10px;
    }

    .links_item_eigyou .links_item_inner {}

    .links_item_inner,
    .links_item_lineup .links_item_inner {
        height: auto;
        padding: 15px 10px;
    }

    .links_item.links_item_lineup {
        width: 100%;
    }

    .links_item.links_item_eigyou {
        width: 100%;
        min-height: 0;
    }

    .links_contents .flex_wrap {
        margin-bottom: 0;
    }






    .eigyou_map {
        height: 100%;
    }

    .eigyou_map_img {
        width: auto;
        height: auto;
        position: relative;
        bottom: 0;
        top: 0;
        right: 0;
        left: 0;
    }

    .eigyou_map_areas {
        position: relative;
        flex-wrap: wrap;
        top: 0;
        left: 0;
        width: 100%;
    }

    .eigyou_map_item {
        display: none !important;
    }

    .eigyou_map_area {
        margin: 0;
        width: 100%;
        flex-wrap: wrap;
        margin-bottom: 20px;
    }

    .eigyou_map_area_item {
        margin-bottom: 10px;
        width: 25%;
    }


    .eigyou_map_img {
        display: none;
    }



    .product_item_img {
        margin: 0 auto;
        width: 135px;

    }

    .product_slider .sp-arrow {
        border: 20px solid transparent;
        border-right: 15px solid rgba(0, 104, 183, 0.5);
    }

    .product_slider .sp-arrows {
        width: 100%;
    }

    .product_slider .sp-previous-arrow {
        left: 0;
    }

    .product_slider .sp-next-arrow {
        right: 0;
    }



    .sns_item {
        width: 100%;
    }

    .sns_item_img {
        margin-right: auto;
        margin-left: auto;
    }

    .sns_item_img img {
        position: absolute;
        width: 50%;
        height: auto;
        top: 0;
        bottom: 0;
        right: 0;
        left: 0;
        margin: auto;
    }


    map[name="Map"] {
        display: none;
    }

    .slide-text * {
        font-size: 1.5rem !important;
    }

    .info_text {
        flex: 1 1 100%;
        margin-top: 10px;
    }

    .info_cat {
        margin-left: 20px;
        margin-right: 0;
    }


    .photo>.pict {
        float: none;
        margin-right: 0;
        margin-left: 0;
        margin-bottom: 10px;
    }

    .photo>.pict img {
        width: 100%;
        height: auto;
    }

    .photo.photo_flex {
        display: block;
    }

    .photo.photo_flex .detail-btn {
        display: block;
        float: none;
    }

    .photo.photo_flex .pict {
        width: 100%;
    }

    .photo.photo_flex .pict img {
        width: 100%;
        height: auto;
        margin-bottom: 20px;
    }

    .inner.flex>*+* {
        margin-top: 20px;
    }

    .inner.flex>.just {
        margin-left: 0;
    }

    .inner.flex {
        display: block;
    }

    #globalfooter>.inner>.just {
        padding-left: 0;
        border-left: none;
    }

    .module_footerlink {
        display: block;
    }

    .module_footerlink>*+* {
        margin-left: 0;
    }

    .section_message .module {
        font-size: 1rem;
    }

    h3.plaintitle {
        font-size: 1.5rem;
    }

    .title_h3_02 span.primary {
        letter-spacing: normal;
        text-indent: 0;
        font-size: 1.3rem;
    }

    .title_h3_02:before {
        margin-right: 20px;
    }

    .title_h3_02:after {
        margin-left: 20px;
    }

    .title_h3_03 span.primary {
        letter-spacing: normal;
        text-indent: 0;
        font-size: 1.3rem;
    }

    .title_h3_03:before {
        margin-right: 20px;
    }

    .title_h3_03:after {
        margin-left: 20px;
    }

    .section_pagetitle {
        overflow: hidden;
    }

    .section_pagetitle h2 {
        font-size: 2rem;
    }

    dl.list {
        display: flex;
    }

    dl.list dt,
    dl.list dd {
        width: 100%;
    }

    dl.list dt {
        margin-bottom: 10px;
    }

    .detaillink a {
        display: block !important;
        text-align: center;
    }

    .table th {
        min-width: 150px
    }

    .table td {
        min-width: 200px;
    }

    .table_wrap {
        overflow: auto;

    }

    .iframe_wrap {
        position: relative;
        width: 100%;
        height: 0;
        padding-top: 75%;
    }

    .iframe_wrap iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .table_attention {
        opacity: 1 !important;
        transform: none !important;
        font-size: 0.85rem;
        margin-top: -50px;
    }

    .module_flexlink .just4 {
        width: 100%;
        margin-bottom: 10px;
    }

    .module_textlink {
        display: block;
    }

    .module_textlink .text {
        margin-bottom: 20px;
    }

    select,
    input.w_semi {
        width: 100%;
    }

    .module_flexlink .just4 {
        width: calc(50% - 10px);
    }

    .module_flexlink .detaillink a {
        padding: 10px;
    }

    dl.item_tel {
        flex: 1 1 100%;
    }

    dl.item_tel+dl.item_tel {
        margin-left: 0;
        margin-top: 10px;
    }

    .module_rectitle {
        font-size: 2rem;
    }

    .module_recmes {
        margin-left: 0;
        padding: 20px;
    }

    .item_voicebtn,
    .img_recmes {
        width: 100%;
    }

    body.loaded .section.inview .module_recmes {
        background: rgba(255, 255, 255, 0.8);
    }

    .title_voice .plaintitle {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
    }

    dl.list.list_voice {
        display: block;
    }

    .item_schedule {
        width: 100%;
    }

    .module_precept {
        width: 100%;
        display: block;
    }

    .module_precept .pict {
        flex-shrink: 0;
    }

    .module_enkaku {
        display: block;

    }

    .module_enkaku .wrap-img {
        width: 100%;
    }

    .module_enkaku .wrap-dl {
        width: 100%;
    }

    .module_group {
        width: 800px;
        max-width: 100%;
        margin: 0 auto;
    }

    .module_group .list {
        display: block;
    }

    .module_group .list dd,
    .module_group .list dt {
        flex: 0 1 auto;
    }

    .module_group .list dt {
        width: 100%;
    }

    .module_group .list dd {
        width: 100%;
    }

    .wrap-pulldown .wrap-content {
        padding: 10px;

    }

    .eigyou-annai_title img {
        width: 100%;
        height: auto;
    }

    .module.eigyou-annai_areaname,
    .module.eigyou-area_areaname {
        padding: 0;
    }

    .module.eigyou-annai_area {
        margin: 0 0 10px;
        padding: 0;
    }

    .eigyou-area_todouhuken {
        padding: 0;
    }

    .eigyou-area_maps {
        padding: 0;
    }

    .eigyou-annai_area_title {
        margin-bottom: 10px;
        font-size: 18px;
    }

    .eigyou-annai_area_list {
        display: flex;
        padding: 0;
        flex-wrap: wrap;
    }

    .eigyou-annai_area_item {
        text-align: left;
        width: 50%;
        padding: 0 10px;
    }

    .eigyou-annai_areaname img {
        width: 200px;
        height: auto;
    }



}


/*about*/

.about-list {
    display: flex;
    flex-wrap: wrap;
}

.about-list__item {
    position: relative;
    background-color: #dddddd;
    width: calc(33.33% - 4px);
    box-sizing: border-box;
    margin-bottom: 6px;
}

.about-list__rect {
    padding-top: 100%;
}

.about-list__item:not(:nth-child(3n-2)) {
    margin-left: 6px;
}

.about-list__title,
.about-list__img,
.about-list__text {
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.about-list__img,
.about-list__text {
    display: flex;
    align-items: center;
    height: 100%;
    top: 20px;
}

.about-list__title {
    text-align: center;
    top: 20px;
    font-size: 20px;
    line-height: 1.2;
    z-index: 1;
}

.about-list__text {
    padding: 0 30px;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s;
}

.about-list__text--visible {
    pointer-events: all;
    opacity: 1;
}

.about-list__img {
    justify-content: center;
    text-align: center;
}

.about-list__hide {
    display: none;
}

.about-list__img img {
    max-width: 80%;
    height: auto;
}

body[class*="wcedit"] .about-list__text,
body[class*="wcselect"] .about-list__text,
body[class*="wcarea"] .about-list__text {
    opacity: 1;
    pointer-events: all;
}

body[class*="wcedit"] .about-list__img,
body[class*="wcselect"] .about-list__img {
    display: none;
}

/*End About*/

/* Survice and Support*/

.company-list__item {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
}

.company-list__img {
    width: 100px;
    flex: 0 0 auto;
}

.company-list__img img {
    width: 100%;
    height: auto;
}

.company-list__info {
    margin-left: 30px;
    flex: 1 1 auto;
}

.company-list__title {
    font-weight: bold;
    margin-bottom: 5px;
}

.company-list__link {
    font-size: 12px;
    flex: 0 0 auto;
    margin-left: 20px;
}

.company-list__link a {
    text-decoration: underline;

}

/* End: Survice and Support*/


/* csr*/
.sdgs-list {
    margin-top: 50px;
    background-color: #f5f5f5;
    padding: 50px 0;
}

/* End CSR*/

/* レンタル・販売・修理・メンテナンス、　特殊事業 */
.about-flow__item {
    padding: 50px 0;
}

.about-flow__item:nth-child(2n) {
    background-color: #f5f5f5;
}

.about-flow .module_flexlink,
.specialty-flexlink.module_flexlink,
.ict-flexlink.module_flexlink {
    justify-content: space-around;
}

.about-flow .module_flexlink .detaillink,
.specialty-flexlink.module_flexlink .detaillink,
.ict-flexlink.module_flexlink .detaillink {
    flex: 0 1 auto;
    width: 49%;
}

.about-flow .module_flexlink .detaillink.wcempty,
.specialty-flexlink.module_flexlink .detaillink.wcempty,
.ict-flexlink.module_flexlink .detaillink.wcempty {
    display: none;
}

/* End:特殊事業 */

/*ICT*/

.ict-logo {
    position: relative;
    height: 636px;
}

.ict-logo__logo,
.ict-logo__flow,
.ict-logo__catch {
    position: absolute;
    left: 0;
    width: 100%;
    text-align: center;
}

.ict-logo__bg {
    background: url(../../about/img/ict-logo_bg.png) no-repeat center;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: all 0.6s;
}

.ict-logo__bg--visible {
    opacity: 1;
}




.ict-logo__logo {
    top: 270px;
    opacity: 0;
    transition: all 0.4s cubic-bezier(.69, .36, .29, .59);
}

.ict-logo__logo--visible {
    opacity: 1;
}

.ict-logo__logo--move {
    top: 150px;
}

.ict-logo__flow {
    display: flex;
    background: url(../../about/img/ict-logo_bar.png) no-repeat center;
    top: 260px;
    opacity: 0;
    justify-content: center;
    position: absolute;
    transition: all 0.6s;
}

.ict-logo__flow--visible {
    opacity: 1;
}

.ict-logo__flow__item {
    transition: all 0.6s cubic-bezier(.69, .36, .29, .59);
    margin-left: 40px;
    transform: translateX(-20px);
    opacity: 0;
}

.ict-logo__flow__item--visible {
    opacity: 1;
    transform: translateX(0);
}

.ict-logo__flow__item:first-child {
    margin-left: 0;
}

.ict-logo__catch {
    opacity: 0;
    top: 440px;
    transition: all 0.6s cubic-bezier(.69, .36, .29, .59);
    transform: translateY(20px);
}

.ict-logo__catch--visible {
    transform: translateY(0);
    opacity: 1;
}

.ict-logo-trigger {}

@media screen and (max-width: 1200px) {
    .ict-logo {
        position: relative;
        max-width: 100%;
        width: 369px;
        height: 212px;
        display: block;
        margin: 0 auto;
        overflow: hidden;
    }

    .ict-logo__bg {
        background-size: cover;
    }

    .ict-logo__logo {
        top: 90px;
    }

    .ict-logo__logo img {
        width: 118px;
        height: auto;
    }

    .ict-logo__logo--move {
        top: 50px;
    }

    .ict-logo__flow {
        background-size: 232px auto;
        top: 86px;
    }

    .ict-logo__flow__item {
        margin-left: 13px;
        transform: translateX(-7px);
    }

    .ict-logo__flow__item--visible {
        transform: translateX(0);
    }

    .ict-logo__flow__item img {
        width: 48px;
        height: auto;
    }

    .ict-logo__catch {
        top: 146px;
        transform: translateY(7px);
    }

    .ict-logo__catch--visible {
        transform: translateY(0);
    }

    .ict-logo__catch img {
        width: 337px;
        height: auto;
    }
}


.ict-flow {
    margin: 50px 0;
    background-color: #f5f5f5;
    padding: 100px 0;
}

.ict-flow__item {
    display: flex;
    height: 244px;
    opacity: 0;
    transition: all 0.6s cubic-bezier(.69, .36, .29, .59);
    transform: translateY(-30px);
}

.ict-flow__item--visible {
    transform: translateY(0);
    opacity: 1;
}

.ict-flow__item__left {
    flex: 0 0 auto;
}

.ict-flow__item__right {
    margin-left: 30px;
    flex: 1 1 auto;
}

@media screen and (max-width: 1200px) {
    
    .ict-flow__item {
        height: auto;
        margin-bottom: 30px;
    }

    .ict-flow__item__right {
        margin-left: 20px;
    }
    .ict-flow__item__right .pict img{
        max-width: 100%;
        height: auto;
    }

}

/*END:ICT*/



/*WC用スタイル*/


/*TOP*/
body[class*='wcedit'] .section_slide,
body[class*='wcarea'] .section_slide,
body[class*='wcselect'] .section_slide,
body[class*='wcancedit'] .section_slide,
body[class*='wcedit'] .section:not(.section_inview)>*,
body[class*='wcarea'] .section:not(.section_inview)>*,
body[class*='wcselect'] .section:not(.section_inview)>*,
body[class*='wcancedit'] .section:not(.section_inview)>* {
    opacity: 1;
    transform: translateY(0);
}

body[class*='wcedit'] .section_pagetitle {
    opacity: 1;
}

body[class*='wcedit'] .section_slide .slider,
body[class*='wcedit'] .section_product .product_slider,
body[class*='wcselect'] .section_slide .slider,
body[class*='wcselect'] .section_product .product_slider {
    max-width: 100%;
    overflow: auto;
}


body[class*="wcedit"] .section_slide .sp-slide .sp-image,
body[class*="wcselect"] .section_slide .sp-slide .sp-image {
    opacity: 1;
    width: 100%;
    height: auto;
}

body[class*='wcedit'] .section_slide .sp-slides,
body[class*='wcedit'] .section_product .sp-slides,
body[class*='wcselect'] .section_slide .sp-slides>div,
body[class*='wcselect'] .section_product .sp-slides>div {
    display: flex;
}

body[class*='wcedit'] .section_slide .sp-slide,
body[class*='wcselect'] .section_slide .sp-slide {
    background-color: transparent;
    margin-right: 20px;
    flex-shrink: 0;
    width: 800px;
    opacity: 1;
    position: relative;
}

body[class*='wcarea'] .sp-slide {
    position: relative;
}

body[class*='wcedit'] .section_slide .sp-slide:after {
    content: none;
}


body[class*='wcedit'] .section_product .sp-slide,
body[class*='wcselect'] .section_product .sp-slide {
    background-color: transparent;
    margin-right: 20px;
    flex-shrink: 0;
    width: 220px;
    opacity: 1;
    position: relative;
}


body[class*='wcedit'] .module_carousel .sp-slides,
body[class*='wcselect'] .module_carousel .sp-slides>div,
body[class*='wcselect'] .module_carousel .sp-slides {
    display: flex;
    flex-wrap: nowrap;
    max-width: 100%;
    overflow: auto;
}

body[class*='wcedit'] .module_carousel .sp-slide,
body[class*='wcselect'] .module_carousel .sp-slide {
    opacity: 1;
    flex-shrink: 0;
    padding: 0 20px;
    position: relative;
    flex-shrink: 0;
}

body[class*='wcedit'] .slide_message,
body[class*='wcselect'] .slide_message {
    width: 100%;
    position: relative;
    overflow: auto;
}

body[class*='wcedit'] .slide_message ul,
body[class*='wcselect'] .slide_message ul>div,
body[class*='wcselect'] .slide_message ul {
    display: flex;
    flex-wrap: nowrap;
}

body[class*="wcedit"] .eigyou_map_area,
body[class*="wcselect"] .eigyou_map_area {
    opacity: 1 !important;
    transform: none !important;
}

body[class*="wcselect"] .eigyou_map_area-west .eigyou_map_area_list {
    width: auto !important;
    display: block !important;
}

body[class*="wcselect"] .eigyou_map_area-west .eigyou_map_area_item {
    width: auto !important;
}

body[class*="wcselect"] .eigyou_map_shapes,
body[class*="wcedit"] .eigyou_map_shapes {
    display: none !important;
}



/*下層ぺージ*/
body[class*='wcedit'] .section.section_contents>*>.module,
body[class*='wcselect'] .section.section_contents>*>.module,
body[class*='wcancedit'] .section.section_contents>*>.module {
    opacity: 1;
    transform: translateY(0);
}

body[class*='wcedit'] .section_pagetitle h3,
body[class*='wcedit'] .section_pagetitle h2,
body[class*='wcselect'] .section_pagetitle h2,
body[class*='wcselect'] .section_pagetitle h3 {
    opacity: 1;
    transform: translateX(0);
}

body[class*='wcedit'] .section_pagetitle,
body[class*='wcselect'] .section_pagetitle {
    position: relative;
    overflow: hidden;
}

body[class*='wcedit'] .section.section_pagetitle .bg,
body[class*='wcselect'] .section.section_pagetitle .bg {
    display: block;
    opacity: 1;
    width: 1500px;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

body[class*='wcedit'] .section_pagetitle:after {
    content: none;
}

body[class*='wcedit'] .sponly,
body[class*='wcarea'] .sponly,
body[class*='wcselect'] .sponly {
    display: block;
}



body[class*='wcedit'] .fadeleft,
body[class*='wcarea'] .fadeleft,
body[class*='wcselect'] .fadeleft,
body[class*='wcedit'] .faderight,
body[class*='wcarea'] .faderight,
body[class*='wcselect'] .faderight {
    opacity: 1;
    transform: none;
}


body[class*='wcedit'] .module_slide .slider-pro,
body[class*='wcselect'] .module_slide .slider-pro,
body[class*='wcarea'] .module_slide .slider-pro {
    max-width: 100%;
    overflow: auto;
}

body[class*='wcedit'] .module_slide .sp-slides,
body[class*='wcselect'] .module_slide .sp-slides>div,
body[class*='wcselect'] .module_slide .sp-slides,
body[class*='wcarea'] .module_slide .sp-slides {
    display: flex;
}

body[class*='wcedit'] .module_slide .sp-slide,
body[class*='wcselect'] .module_slide .sp-slide,
body[class*='wcarea'] .module_slide .sp-slide {
    opacity: 1;
    margin-right: 20px;
    flex-shrink: 0;
    width: 600px;
    position: relative;
}

body[class*='wcedit'] .module_slide.module_corporate .sp-slide,
body[class*='wcselect'] .module_slide.module_corporate .sp-slide,
body[class*='wcarea'] .module_slide.module_corporate .sp-slide {
    width: 800px;
}

body[class*='wcselect'] .sp-slide,
body[class*='wcarea'] .sp-slide {
    opacity: 1;
    position: relative;
}


body[class*='wcedit'] .module_slide .sp-slide:after {
    content: none;
}

body[class*='wcedit'] .module_slide .sp-slide img,
body[class*='wcselect'] .module_slide .sp-slide img,
body[class*='wcarea'] .module_slide .sp-slide img {
    width: 100%;
    height: auto;

}

body[class*='wcedit'] .module_gallery .slider-pro,
body[class*='wcselect'] .module_gallery .slider-pro,
body[class*='wcarea'] .module_gallery .slider-pro {
    max-width: 100%;
    overflow: auto;
}

body[class*='wcedit'] .module_gallery .sp-slides,
body[class*='wcselect'] .module_gallery .sp-slides>div,
body[class*='wcarea'] .module_gallery .sp-slides,
body[class*='wcselect'] .module_gallery .sp-slides {
    display: flex;
}

body[class*='wcedit'] .module_gallery .sp-slide,
body[class*='wcselect'] .module_gallery .sp-slide,
body[class*='wcarea'] .module_gallery .sp-slide {
    opacity: 1;
    margin-right: 20px;
    flex-shrink: 0;
    width: 200px;
    position: relative;
}

body[class*='wcedit'] .module_gallery .sp-slide img,
body[class*='wcselect'] .module_gallery .sp-slide img,
body[class*='wcarea'] .module_gallery .sp-slide img {
    width: 100%;
    height: auto;

}

/*recruit*/
body[class*='wcedit'] .section_rectitle .rec_slide,
body[class*='wcselect'] .section_rectitle .rec_slide {
    max-width: 100%;
    overflow: auto;
}

body[class*='wcedit'] .section_rectitle .sp-slides,
body[class*='wcselect'] .section_rectitle .sp-slides>div {
    display: flex;
}

body[class*='wcedit'] .section_rectitle .sp-slide,
body[class*='wcselect'] .section_rectitle .sp-slide {
    margin-right: 20px;
    flex-shrink: 0;
    width: 1100px;
    position: relative;
}

body[class*='wcedit'] .section_rectitle .module_rectitle,
body[class*='wcselect'] .section_rectitle .module_rectitle {
    color: #ffffff;
}

body[class*='wcedit'] .section_rectitle .sp-slide img {
    width: 100%;
    height: auto;

}

body[class*='wcedit'] .module_recmes,
body[class*='wcselect'] .module_recmes {
    background: rgba(255, 255, 255, 1);
    color: rgba(0, 0, 0, 1) !important;
}

body[class*='wcedit'] .module_recmes .title .plaintitle,
body[class*='wcselect'] .module_recmes .title .plaintitle {
    color: #0968B7;
}


body[class*='wcedit'] .module_recmes:after,
body[class*='wcselect'] .module_recmes:after,
body[class*='wcedit'] .module_recmes:before,
body[class*='wcselect'] .module_recmes:before {
    transform: scale(1);
}


body[class*='wcedit'] .img_recmes .bg,
body[class*='wcselect'] .img_recmes .bg {
    width: 100%;
    height: auto;
    display: block;
}

body[class*='wcedit'] .img_recmes,
body[class*='wcselect'] .img_recmes {
    overflow: hidden;
}


body[class*='wcedit'] .bg_voicebtn ul,
body[class*='wcselect'] .bg_voicebtn ul>div,
body[class*='wcselect'] .bg_voicebtn ul {
    display: flex;
    flex-wrap: nowrap;
    max-width: 100%;
    overflow: auto;
    height: 300px;
}

body[class*='wcedit'] .bg_voicebtn,
body[class*='wcselect'] .bg_voicebtn,
body[class*='wcselect'] .bg_voicebtn {

    z-index: 0;
    position: relative;
}


.section_message {
    z-index: -1;
}


body[class*='wcedit'] .section_message {
    z-index: 1;
}




.itemflex {
    display: flex;
    flex-wrap: wrap;
}

.itemflex div {
    width: 50%;
}

.itemtitle {
    color: #333333 !important;
    margin-top: 40px !important;
}


@media screen and (max-width:1200px) {
    h5.plaintitle {
        font-size: 16px;
    }

    .title_h4 {
        font-size: 20px;
    }

    .itemflex {
        display: block;
    }

    .itemflex div {
        width: 100%;
    }
}



.itemdetail_title {
    color: #333333 !important;
    font-size: 30px !important;
    font-weight: normal !important;
}

.makerhp {
    margin-top: 40px;
}


.wc_anctxt img {
    vertical-align: top;
}



a[name*="wc_anc"]{
    position: relative;
    top: -150px;
}

.table_attention {
    margin-top: 20px !important;
}