@charset "UTF-8";

/*
 sp-size
========================================================== */

/* ==========================================================
 reseting
========================================================== */
*, *:before, *:after {-webkit-font-smoothing: antialiased;-moz-osx-font-smoothing: grayscale;-moz-box-sizing: border-box;-webkit-box-sizing: border-box;box-sizing: border-box;margin: 0;padding: 0;font: inherit;word-wrap: break-word;border: 0;vertical-align: baseline;outline: none;}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, button, figure, figcaption　{ margin: 0; padding: 0;}
body {color: #1a1311;font-size: 3.4vw;font-family: 'Noto Sans JP', 游ゴシック体, YuGothic, 'Yu Gothic', "游ゴシック Medium", "Yu Gothic Medium", sans-serif;font-weight: 500;font-style: normal;line-height: 1;position: relative;}
body.top {background: url("../images/sp-main-bg.png") no-repeat left top; background-size: 100%;}
article, aside, canvas, details, figcaption, figure, header, footer, hgroup, main, menu, nav, section, summary { display: block; }
blockquote, q { quotes: none; }
ul, ol, li { list-style: none; }
table { border-spacing: 0; border-collapse: collapse; }
img, video, object {max-width: 100%;height: auto;border: none;display: block;}
ins { background: none; color: #000; text-decoration: none; }
mark { background-color: #ff9; color: #000; font-style: italic; font-weight: bold; }
del { text-decoration: line-through; }
abbr[title], dfn[title] { border-bottom: 1px dotted; cursor: help; }
hr { height: 1px; padding: 0; margin: 1em 0; border: 0; border-top: 1px solid #ccc; display: block; }
*:before, *:after { -moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); -webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97); }
a {color: #222222;text-decoration: none;display: block;-moz-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);-o-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);-webkit-transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);transition: all 0.3s cubic-bezier(0.05, 0.05, 0.31, 0.97);}
a:hover, label:hover { opacity: 0.8; }
.clearfix:after { content: ''; display: block; clear: both; }
.pc { display: none; }

main {position: relative;}
.inner {width: 90vw;margin: 0 auto;}
.pickup-video .inner{
    padding: 12vw 4vw 18vw 4vw;
    background-color: #ddd;
}

/* ==========================================================
 font
========================================================== */
.fot {font-family: fot-udkakugoc80-pro, sans-serif; font-weight: 700; font-style: normal;}
.e {font-family: 'Montserrat', sans-serif; font-weight: 500; font-style: normal;}
.e-h {font-family: 'Heebo', sans-serif;font-weight: 700;font-style: normal;}

/* ==========================================================
 midashi
========================================================== */
.h_01 {text-align: center;}
.h_01 span {display: block;font-size: 3vw;letter-spacing: 0.06em;}
.h_01 .e {font-size: 6.6vw;font-weight: bold;margin-top: 0.9vw;letter-spacing: 0.1em;}
.h_02 {font-size: 3.3vw;font-weight: bold;margin-top: 0.5vw;letter-spacing: 0.1em;}

/* ==========================================================
 button
========================================================== */
.more-link {padding: 0;}
.more-link a {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-end;justify-content: flex-end;align-items: center;}
.more-link a p {color: #001E62;font-size: 4.3vw;text-decoration: underline;letter-spacing: -0.08em;margin: 0;}
.more-link a img {width: 6vw;margin-left: 5vw;}
.hover-link:hover {opacity: 0.6;}
.hover-image:hover {
    transform: scale(1.07, 1.07);
    transition: 0.5s all;
    opacity: 0.8;
}

/* ==========================================================
 header
========================================================== */
header {width: 90vw;margin: 0 auto;padding-bottom: 8.8vw;}
.header-logo {width: 11.8vw;margin-top: 5vw;}
.header-navi {position: fixed;right: 5vw;top: 4.6vw;padding: 4vw 1.4vw; background-color: white; border: 1px solid #001E62;border-radius: 50%;z-index: 20;width: 12vw;height: 12vw;}
.header-navi p {text-align: center;color: #001E62;font-size: 2vw;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);transition: all 0.3s ease;}
nav {display: none;}

.sp-navi {position: fixed;top: 0;right: -92.2vw;width: 92.2vw;height: 100vh;z-index: 15;overflow-y: auto;-ms-overflow-style: none;scrollbar-width: none;-webkit-overflow-scrolling: touch;background: -webkit-linear-gradient(110deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(110deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(110deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(110deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(340deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);transition: all 0.3s ease;}
.sp-navi-inner {padding: 22.8vw 5vw 15vw;}
.sp-navi-top {/* width: 75vw; */margin: 0 auto 12vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: center;}
.sp-navi-top li:nth-child(2) {margin-left: 14px;}
.sp-navi-top li a {border: 1px solid #fff;border-radius: 50px;padding: 5vw 4.6vw 3.6vw;}
.sp-navi-top li:nth-child(2) a {padding: 5vw 6.6vw 3.6vw;background: -webkit-linear-gradient(110deg, rgb(137, 203, 75) 0%, rgb(179, 208, 120) 100%);background: -o-linear-gradient(110deg, rgb(137, 203, 75) 0%, rgb(179, 208, 120) 100%);background: -ms-linear-gradient(110deg, rgb(137, 203, 75) 0%, rgb(179, 208, 120) 100%);background: -moz-linear-gradient(110deg, rgb(137, 203, 75) 0%, rgb(179, 208, 120) 100%);background: linear-gradient(340deg, rgb(137, 203, 75) 0%, rgb(179, 208, 120) 100%);border-color: rgba(0,0,0,0);}
.sp-navi-top li p {font-weight: bold;font-size: 4vw;letter-spacing: 0.14em;color: #fff;}
.sp-navi-menu {padding: 0;}
.sp-navi-menu dt {font-size: 5vw;font-weight: bold;padding: 4.5vw 3vw;position: relative;border-bottom: 1px solid rgba(255,255,255,0.2);color: #fff;}
.sp-navi-menu dt li a {color: #fff;}
.sp-navi-menu dt p {padding: 0;}
.sp-navi-menu dt img {position: absolute;right: 1vw;top: 50%;transform: translate(0, -50%);}
.sp-navi-menu dd {display: none;}
.sp-navi-menu dd ul {margin-top: 4vw;}
.sp-navi-menu dd li {padding: 0;}
.sp-navi-menu dd li a {font-size: 4vw;color: #fff;padding: 3vw 4vw;}
.sp-navi-btn {margin: 9vw 0 19vw;}
.sp-navi-btn img {max-width: 105%;position: relative;left: 50%;transform: translate(-50%);}
.sp-navi-txt {text-align: center;margin-bottom: 9vw;}
.sp-navi-txt a {display: inline-block;color: #fff;font-size: 4.6vw;text-decoration: underline;}
.sp-navi-txt p {padding: 0;}
.sp-navi-sns {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: center;}
.sp-navi-sns li {margin: 0 1.5vw;}

.header-open .header-navi {background-color: #0000; border-color: #fff;}
.header-open .header-navi p {display: none;}
.header-open .header-navi:after {content: "CLOSE";text-align: center;color: #fff;font-size: 2vw;position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);transition: all 0.3s ease;}
.header-open .sp-navi {border-color: #fff;right: 0;}

/* ==========================================================
 bread
========================================================== */
.breadcrumb {position: relative;width: 96vw;margin: 3.5vw auto 5vw;}

.breadcrumb-items {padding: 0;margin: 0 auto;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;}
.breadcrumb-items li {font-size: 3.6vw;position: relative;}
.breadcrumb-items li:after {content: "/";margin-right: 2vw;margin-left: 2vw;}
.breadcrumb-items li:last-child:after {display: none; margin-right: 0;}
.breadcrumb-items a { display: inline-block; }
.breadcrumb-items .current a {color: #d3d3d3;}

/* ==========================================================
 footer
========================================================== */
footer {background: url("../images/footer-bg.jpg") no-repeat center top;background-size: 122%;}
.footer-in {padding: 11vw 0 8.6vw;width: 90vw;margin: 0 auto;}
.footer-top {margin: 0 auto;}
.footer-links {width: 75vw;margin: 0 auto;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.footer-links li:nth-child(2) {margin-left: 14px;}
.footer-links li a {border: 1px solid #fff;border-radius: 50px;padding: 5vw 4.6vw 3.6vw;}
.footer-links li:nth-child(2) a {padding: 5vw 6.6vw 3.6vw;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);border-color: rgba(0,0,0,0);}
.footer-links li p {font-weight: bold;font-size: 4vw;letter-spacing: 0.14em;color: #fff;}
.footer-links .lang-select-white {
    padding: 5vw 4.6vw 3.6vw;
    font-size: 4vw;
}
.footer-navi {margin-top: 12vw;}
.footer-navi dl {padding: 0;}
.footer-navi dt {font-size: 5.1vw;font-weight: bold;color: #fff;padding: 4.6vw 0;border-bottom: 1px solid rgba(255,255,255,0.2);position: relative;}
.footer-navi dt img {position: absolute;right: 2vw;top: 50%;transform: translate(0, -50%);}
.footer-navi dd {display: none;}
.footer-navi dd ul {margin-top: 3vw;}
.footer-navi dd li {padding: 0;}
.footer-navi dd a {color: #fff;font-size: 4vw;padding: 4vw;}
.footer-btm {margin-top: 29.3vw;text-align: center;}
.footer-btm > a {display: inline-block;font-size: 4.2vw;font-weight: bold;color: #fff;}
.footer-navi-sns {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: center;margin-top: 4.7vw;}
.footer-navi-sns li {margin: 0 1.4vw;}
.copyright {margin-top: 9vw;border-top: 1px solid rgba(255, 255, 255, 0.2);text-align: center;padding-top: 5vw;}
.copyright p {font-size: 4vw;color: #fff;}

/* ==========================================================
 fixed link
========================================================== */
.fixed-link {position: sticky;bottom: 0;z-index: 10;}
.fixed-link a {padding: 0;}
.fixed-link img {padding: 0;}

/* ==========================================================
 hero
========================================================== */
.hero-top {margin-bottom: 6.3vw;}
.hero-slider {width: 97.4vw;margin: 0 0 0 auto;}
.hero-slider-in {position: relative;height: 64.3vw;border-radius: 10px 0 0 10px;overflow: hidden;}
.hero-slider-in li {position: absolute;width: 100%;height: 100%;opacity: 0;visibility: hidden;transition: all 2s ease;border-radius: 10px 0 0 10px;overflow: hidden;}
.hero-slider-in li.active {opacity: 1; visibility: visible;}
.hero-slider-in li img {width: 100%;}
.hero-slide-pager {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: flex-start;margin-top: 4.6vw;}
.hero-slide-pager li {width: 2.3vw;height: 2.3vw;background: #001E62;border-radius: 50%;margin: 0 0.5vw;transition: all 2s ease;cursor: pointer;opacity: 0.4;}
.hero-slide-pager li.active {opacity: 1;}
.hero-slide-pager li:hover {background: rgb(246 171 0 / 30%);}
.hero-txt {margin: 9vw auto 0;width: 77vw;}
.hero-txt img {margin: 0 auto;width: 49vw;}
.hero-txt h1 {text-align: center;font-size: 8.4vw;font-weight: bold;line-height: 1.4;margin-top: 6.2vw;}
.hero-txt p {font-size: 4.3vw;margin-top: 2.2vw;line-height: 1.6;}

.hero-add {text-align: center;padding: 7vw 0 6vw;background: #ededed;}
.hero-add-midashi {padding: 0;}
.hero-add-midashi span {display: block;}
.hero-add-midashi .e {font-size: 9vw;font-weight: bold;margin-top: 0.8vw;}

/* ==========================================================
 top contents
========================================================== */
.contents-btn {margin: 0 auto 13.7vw;width: 90vw;}
.contents-btn li {margin-bottom: 5.3vw;}
.contents-btn li:last-child {margin-bottom: 0;}

.product {margin-bottom: 13.8vw;}
.product .h_01 span {font-size: 3vw;}
.product .h_01 .e {font-size: 6.6vw;margin-top: 0.9vw;letter-spacing: 0.1em;}
.product .product-in {margin-top: 9.6vw;}
.product .product-in img {width: 77vw;margin: 0 auto;}
.product .product-in p {text-align: center;font-size: 3.6vw;margin: 2vw 0;line-height: 1.8;}
.product .product-link {padding: 0;}
.product .product-link img {width: auto;}

.oversea {position: relative;padding-bottom: 22vw;overflow: hidden;}
.oversea .inner {margin-bottom: 12.3vw;}
.oversea-img {padding: 11vw 0 3.8vw;margin-bottom: 13vw;}
.oversea-img:after {content: "";width: 77vw;height: 89vw;position: absolute;right: 0;top: 0;border-radius: 10px 0 0 10px;z-index: 0;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);}
.oversea-img img {width: 89vw;position: relative;z-index: 1;}
.oversea-txt {padding: 0;}
.oversea-txt h1 {font-size: 6.4vw;font-weight: 600;color: #001E62;}
.oversea-txt > p {line-height: 2.35;margin-top: 3vw;}

.about-lisence {margin-top: 13.8vw;border-top: 1px solid #707070;border-bottom: 1px solid #707070;padding: 8vw 0 6.7vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;}
.about-lisence p {font-size: 4.2vw;color: #001E62;}
.about-lisence img {padding: 0;}

.oversea-slider {width: 90vw;margin: 0 auto;}
.oversea-slider-in {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;position: relative;}
.oversea-slider-in li {position: absolute;}

.video {margin-bottom: 25vw;}
/* .video .inner {width: 95vw;} */
.video .h_01 span {font-size: 3.4vw;}
.video .h_01 .e {font-size: 6.6vw;margin-top: 2.3vw;letter-spacing: 0.1em;}
.video-list {margin-top: 14.6vw;}
.video-list li {margin-bottom: 11.2vw;}
.video-list li:last-child {margin-bottom: 0;}
.video-list li .video-frame {border-radius: 10px;margin-bottom: 3.6vw; height: 50vw; overflow: hidden;}
.video-list li .video-frame iframe {width: 100%; height: 100%;}
.video-list li p {font-size: 4.8vw;font-weight: 700;line-height: 1.6;text-decoration: underline;letter-spacing: 0.088em;}

.contents {background: #f5f5f5;padding-bottom: 11.5vw;}

.contact {width: 92vw;margin: 0 auto 7vw;position: relative;top: -12vw;}
.contact a {padding: 0;}
.contact h1 {padding: 0;}
.contact p {padding: 0;}
.contact span {padding: 0;}

.award {margin-bottom: 25vw;}
.award-list {margin: 9.9vw 0 15vw;display: grid;grid-template-columns: repeat(2, 1fr); /* 4列のグリッドを作成 */grid-gap: 60px 30px; /* アイテム間の余白を設定 */}
.award-list li div {border-radius: 10px; overflow: hidden;}
.award-list li img {width: 100%;}
.award-list li p {margin-top: 2.5vw;line-height: 1.6;font-size: 3.6vw;letter-spacing: 0.02em;padding-right: 3vw;}
.award-list li time {margin-top: 1vw;display: block;font-size: 3.2vw;color: #C4C4C4;}

.contents .media .inner {
    margin: 10vw auto 3vw;
}
.media-list {
    margin: 6.4vw 0 3.4vw;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    /* gap: 3vw 3vw; */
    grid-template-columns: repeat(3, 1fr); /* 4列のグリッドを作成 */
    grid-gap: 60px; /* アイテム間の余白を設定 */
}

.media-list a {
    width: 300px;
    margin: 0 auto;
}
.media-list a div {
    /* height: 75px; */
}
.media-list .media-banner {
    aspect-ratio: auto 300 / 75;
}
.media-list p {
    margin: 0 0 1.6vw;
}

.media-list time {
    color: #666;
    margin: 2px 8px 0 0;
    display: inline-block;
}

.update {margin-bottom: 26vw;}
.update-list {margin-top: 16vw;margin-bottom: 9.3vw;}
.update-list li {margin-bottom: 3.3vw;padding-bottom: 2.7vw;border-bottom: 1px solid #D8D8D8;}
.update-list li p {margin-bottom: 2.4vw;font-size: 4.2vw;line-height: 1.6;}
.update-list li p:last-child {margin-bottom: 0;}
.update-list li time {margin-right: 4.5vw;font-size: 3.2vw;}
.update-list li .cat {width: 33vw;padding: 1.8vw 0 0.8vw;display: inline-block;border-radius: 50px;color: #fff;font-weight: 600;font-size: 3.2vw;letter-spacing: 0.02em;text-align: center;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);border-color: rgba(0,0,0,0);}
.update-list li .cat.press {background: #001E62;}

.news {margin-bottom: 12.5vw;}
.news-list {margin-top: 16vw;margin-bottom: 7.3vw;}
.news-list li {margin-bottom: 3.7vw;padding-bottom: 4.6vw;border-bottom: 1px solid #D8D8D8;}
.news-list li p {margin-bottom: 0.4vw;font-size: 4.2vw;line-height: 1.6;}
.news-list li p:last-child {margin-bottom: 0;}
.news-list li time {margin-right: 4.5vw;font-size: 3.2vw;}
.news-list li img {display: inline-block;vertical-align: middle;width: 4.5vw;margin-left: 2vw;}

.about {padding: 11vw 0 11vw;margin-bottom: 20vw;background: url("../images/about-bg.jpg");background-size: 100%;}
.about-in {width: 90vw;margin: 0 auto;}
.about-in h1 {padding: 0;}
.about-in > p {font-size: 5vw;margin: 6vw 0 4vw;line-height: 2.08;}
.about-in > p strong {font-weight: bold;}
.about-in .more-link {width: auto;}

.team {padding: 0;}
.team-list {
    margin: 10vw 0 9.3vw;
    display: -webkit-box;
    display: -moz-box;
    display: -webkit-flex;
    /* display: box; */
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-start;
    justify-content: space-around;
    align-items: flex-start;
}
.team-list li {
    width: 40vw;
    max-width: 300px;
    min-width: 250px;
    margin: 1vw 1vw 8vw;
}
.team-list p.name {margin-top: 3vw; font-weight: 600;}
.team-list p.position {margin-top: 1.2vw; margin-bottom: 4.0vw;}
.team-list p.position span {display: block;font-size: 3.6vw;}
.team-list p.position span.e {font-weight: bold;margin-top: 1vw;}
.team-list p.comment {
    margin-top: 1.5vw; line-height: 1.6; font-size: 4vw;}
.team-list-member {
    max-width: 300px;
}
/* ==========================================================
 product
========================================================== */
.product-visual {padding: 14.8vw 0 20vw;}
.product-visual img {margin: 6vw auto 0;}
.product-visual p {text-align: center;font-size: 3.8vw;width: 74vw;margin: 2vw auto 0;line-height: 1.6;}

.product-video {margin: 25vw 0 24vw;}
.product-video .inner {width: 95vw;}
.product-video .h_01 span {font-size: 3.4vw;}
.product-video .h_01 .e {font-size: 8.3vw;margin-top: 1.4vw;letter-spacing: 0.1em;}
.product-video-in {margin-top: 15vw;font-size: 5vw;font-weight: 600;line-height: 1.6;letter-spacing: 0.12em;text-decoration: underline;}
.product-video-in img {margin-bottom: 3vw;}

.product-capable {padding: 0;}
.product-capable .inner {margin-bottom: 18vw;}
.product-capable .h_01 span {font-size: 3.4vw;}
.product-capable .h_01 .e {font-size: 8.3vw;margin-top: 1.4vw;letter-spacing: 0.1em;}
.product-capable-in {font-size: 4.2vw;line-height: 1.9;margin-top: 6vw;}
.product-capable-in a {display: inline-block;text-decoration: underline;color: #96cc62;}
.product-capable-in ul {margin-top: 14vw;text-align: left;}
.product-capable-in li {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: flex-start;padding-bottom: 10.4vw;margin-bottom: 11.8vw;position: relative;}
.product-capable-in li:after {content: "";width: 86%;height: 1px;background: #ccc;position: absolute;bottom: 0;}
.product-capable-in li:last-child {margin-bottom: 0; padding-bottom: 0;}
.product-capable-in li:last-child:after {display: none}
.product-capable-in li img {width: 24vw;margin-top: 13vw;}
.product-capable-in li dl {width: 60vw;}
.product-capable-in li dt {font-size: 5vw;font-weight: bold;margin-bottom: 3vw;line-height: 1;}
.product-capable-in li dt span {display: block;font-size: 3.5vw;font-weight: normal;margin-bottom: 2.3vw;}
.product-capable-in li dd {font-size: 3.6vw;line-height: 1.9;}
.product-capable-in li dd a {display: inline-block;font-weight: bold;color: #96c264;}

.product-case {margin-top: 16vw;margin-bottom: 15vw;}
.product-case .inner {width: 95vw;}
.product-case .h_01 span {font-size: 3.4vw;}
.product-case .h_01 .e {font-size: 8.3vw;margin-top: 1.4vw;letter-spacing: 0.1em;}
.product-cases {width: 90vw;margin: 11vw auto 10vw;}
.product-cases li {margin-bottom: 4.5vw;text-indent: 7vw;font-size: 5vw;font-weight: 600;}
.product-cases li:last-child {margin-bottom: 0;}
.product-cases li p {padding-left: 7vw;font-size: 5vw;font-weight: 600;margin-bottom: 3.5vw;}
.product-cases li img {margin-top: 3.5vw;}
.product-case h2 {text-align: center;font-size: 8vw;font-weight: 700;color: #091f47;}
.product-video-list {margin-top: 8.7vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.product-video-list li {width: 46.2vw;margin-bottom: 4.7vw;}
.product-video-list li .video-frame {border-radius: 10px;margin-bottom: 3.4vw;height: 26vw;overflow: hidden;}
.product-video-list li .video-frame iframe {width: 100%; height: 100%;}
.product-video-list li a {font-size: 4.2vw;line-height: 1.4;letter-spacing: 0.02em;}
.product-video-list li a span {padding-bottom: 2vw;border-bottom: 1px solid #d7d7d7;margin-bottom: 1.3vw;display: block;}

.product-research {padding: 0;}
.product-research .h_01 span {font-size: 3.4vw;}
.product-research .h_01 .e {font-size: 7vw;margin-top: 1.4vw;letter-spacing: 0.1em;}
.product-research .h_01 .e span {font-size: 8.3vw;margin-top: 2.2vw;letter-spacing: 0.1em;}
.product-research li p {line-height: 2;margin: 4.9vw 0 9vw;font-size: 4vw;}
.product-research-link {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;padding: 7vw 6vw 6vw;border-radius: 10px;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);}
.product-research-link p {margin: 0;font-weight: 600;line-height: 1.6;text-decoration: underline;}
.product-research-link img {padding: 0;}
.product-research .product-paper {margin-top: 23vw;}
.product-research h2 {text-align: center;font-size: 7.4vw;font-weight: 600;color: #061e52;margin-bottom: 11vw;}
.product-research .head {border-top: 1px solid #707070; border-bottom: 1px solid #707070;margin-bottom: 3vw; padding: 16px 0;}
.product-research .head.open { border-bottom: none; }
.product-research .head img {float: right;}
.product-research dd {padding: 0;}
.product-research .paper-list h3 {font-size: 1.4vw;font-weight: 600;line-height: 1.6;text-decoration: underline;}
.product-research .paper-list p.paper-category { margin-top: 8.1vw; font-size: 4.5vw; font-weight: 600; color: #061e52; }
.product-research .paper-list p { text-align: left; font-size: 1.0vw; line-height: 1.2;}
.product-research .paper-list p span {padding: 0;}
.product-research .paper-list ul li { list-style: disc; }
.product-research .paper-list ul li span { font-size: 2.5vw; }

.product-research .paper-list .paper-category .expand {
    float: right;
    padding-top: 0.5vw;
    padding-right: 1vw;
}

.product-research .paper-list .paper-category.open .expand {
    display: none;
}
.product-research .paper-list .accordion-body {
    display: none;
}

/* ==========================================================
 company
========================================================== */
.company-top {margin-bottom: 13.4vw;}
.company-top img {width: 94vw;margin: 0 auto 13vw;}
.company-top h1 {padding: 0;}
.company-top h1 .e {font-size: 8.4vw;margin-top: 2.5vw;}
.company-top p {width: 90vw;margin: 5vw auto 0;font-size: 4.9vw;line-height: 1.7;}
.company-wedo {padding: 10vw 0;background: url("../images/about-bg.jpg");margin-bottom: 0vw;}
.company-wedo .inner {padding: 0;}
.company-wedo h1 {text-align: center;font-size: 7vw;font-weight: bold;color: #001e62;}
.company-wedo p {margin: 5vw 0 0;font-size: 4vw;line-height: 2;}

/* ==========================================================
 value
========================================================== */
/* .company-value {margin-bottom: 15vw;overflow: hidden;}
.company-value h1 {margin-bottom: 13.2vw;}
.company-value h1 .e {font-size: 8.4vw;margin-top: 3.4vw;}
.company-value .values {padding-bottom: 7.2vw;border-bottom: 1px solid #bcde9c;}
.company-value .value-txt {padding: 7vw 0 0;}
.company-value .value-txt img {width: 18vw;margin-bottom: 2.3vw;}
.company-value .value-txt dl {padding: 0;}
.company-value .value-txt dt {font-size: 6vw;font-weight: bold;color: #001e62;}
.company-value .value-txt dd {font-size: 3.7vw;line-height: 1.9;margin-top: 3vw;}
.company-value .value-img {margin-top: 7vw;}
.company-value .value-img img {padding: 0;}
.company-value .value-img p {text-align: right;margin-top: 3vw;letter-spacing: 0.07em;font-weight: bold;color: #b1b1b1;} */

/* ==========================================================
 contact
========================================================== */
.contact-top {margin: 12vw auto 11vw;}
.contact-top p {width: 82vw;margin: 7.2vw auto 0;font-size: 3.6vw;text-align: justify;line-height: 2.2;}
.form {width: 96vw;margin: 0 auto;padding: 16vw 3vw 17vw;background: #efefef;border-radius: 10px;}
.form .two-inputs, .form .single-input {margin-bottom: 9.2vw;}
.form dt {font-size: 5vw;margin-bottom: 2vw;}
.form dt.must:after {content: "*";width: 2px;height: 2pxw;border-radius: 50px;display: inline-block;vertical-align: middle;color: #bc4492;}
.form dd {padding: 0;}
.form dd input, .form dd textarea {width: 100%;padding: 3.2vw 2vw;font-size: 20px;}
.form dd textarea {height: 67vw;}
.form .two-inputs {padding: 0;}
.form .two-inputs dl {padding: 0;}

.form .bottom-input {margin-top: 11vw;}
.form .bottom-input label {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;font-size: 4.7vw;font-weight: 600;}
.form .bottom-input input {display: inline-block;vertical-align: middle;width: 6vw;height: 6vw;margin-right: 4vw;}
.form .bottom-input a {display: inline-block;text-decoration: underline;}

.form .submit-btn {margin-top: 10vw;}
.form .submit-btn li {margin-bottom: 4vw;}
.form .submit-btn li:last-child {margin-bottom: 0;}
.form .submit-btn li label {border: 2px solid #bfbfbf;padding: 7.4vw 0 5.8vw;display: block;}
.form .submit-btn li input {display: none;}
.form .submit-btn li p {text-align: center;font-size: 4.7vw;font-weight: 600;color: #707070;}
.form .submit-btn input {
    cursor: pointer;
    border: 1px solid #aaa;
    padding: 2.5vw 4vw;
}

.form .submit-btn input.submit {
    padding: 4.5vw 16vw;
    border-radius: 4px;
    font-size: 1.5rem;
    font-weight: 600;
    background-color: #042242;
    color: #fff;
}
.form .submit-btn input:hover {
    opacity: 0.8;
    border: 1px solid #aaa;
}

.contact-others {margin-top: 30vw;}
.contact-others .others-links {width: 90vw;margin: 6.5vw auto 0;}
.contact-others .others-links li {margin-bottom: 5.1vw;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);border-radius: 10px;}
.contact-others .others-links a {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;padding: 8vw 5vw 8vw 8vw;}
.contact-others .others-links p {font-size: 5vw;font-weight: 600;text-decoration: underline;}
.contact-others .others-links img {width: 10vw;}

.form .radio-btn{
    margin-bottom: 8vw;
}
.form .radio-btn dd{
    display: flex;
    flex-wrap: wrap;
}
.form .radio-btn dd span{
    margin-left: 0 !important;
}
.form .radio-btn label{
    display: flex;
    margin-top: 0.8em;
    margin-right: 0.5em;
}
.form .radio-btn label .radio{
    width: 24px;
    border-color: #A2C86C;
}
/* ==========================================================
 language selection
========================================================== */

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1.1vw;
    border: 1px solid #042242;
    border-radius: 50px;
    padding: 0.7vw 0.6vw;
}
.lang-select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    font-size: 1vw;
    border: 1px solid #042242;
    border-radius: 500px;
    padding: 0.4vw 0.7vw;
}

.lang-select-white {
    -webkit-appearance: none;
    -moz-appearance: none;
    color: #fff;
    appearance: none;
    font-size: 1vw;
    border: 1px solid #ddd;
    border-radius: 500px;
    padding: 0.4vw 0.7vw;
}

/*
 tablet-size
========================================================== */
@media screen and (min-width: 479px) {
}

/*
 pc-size
========================================================== */
@media screen and (min-width: 959px) {

body {font-size: 0.9vw;}
body.top {background: url("../images/main-bg.jpg") no-repeat center top;background-size: 100%;}
.sp { display: none; }
.pc { display: block; }

main {position: relative;padding-bottom: 0;}
.inner {width: 70vw;margin: 0 auto;}

/* ==========================================================
 midashi
========================================================== */
.h_01 {text-align: center;}
.h_01 span {font-size: 1vw;}
.h_01 .e {font-size: 2.4vw;font-weight: bold;margin-top: 0.8vw;letter-spacing: 0.1em;}
.h_02 {font-size: 1.2vw;font-weight: bold;margin-top: 0.5vw;letter-spacing: 0.1em;}

/* ==========================================================
 button
========================================================== */
.more-link {width: 65.5vw;margin: 0 auto;}
.more-link a p {font-size: 1vw;letter-spacing: 0;}
.more-link a img {width: 2vw;margin-left: 1vw;}

/* ==========================================================
 header
========================================================== */
header {width: 78vw;margin: 1.3vw auto 2.6vw;padding-bottom: 0;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;}
.header-logo {width: 3vw;margin-top: 0;}
.header-navi {display: none;}

.sp-navi {display: none;}

nav {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.g-navi {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;}
.g-navi li {font-size: 0.85vw;font-weight: 600;margin-left: 1.5vw;}
.g-navi li .hover-link{display: flex; flex-direction: column; align-items: center;}
.g-navi-sub {margin-left: 2.5vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.g-navi-sub li a {border: 1px solid #042242;border-radius: 50px;padding: 0.7vw 0.6vw;}
.g-navi-sub li p {font-weight: bold;font-size: 0.9vw;letter-spacing: 0.14em;color: #042242;}
.g-navi-sub li:nth-child(2) {margin-left: 14px;}
.g-navi-sub li:nth-child(2) a {padding: 0.7vw 1vw;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);border-color: rgba(0,0,0,0);}
.g-navi-sub li:nth-child(2) p {color: #fff;}

/* ==========================================================
 bread
========================================================== */
.breadcrumb {width: auto;margin: 1.6vw auto;}
.breadcrumb-items {-webkit-justify-content: center;justify-content: center;}
.breadcrumb-items li {font-size: 0.9vw;}
.breadcrumb-items li:after {margin-right: 0.5vw;margin-left: 0.5vw;}

/* ==========================================================
 footer
========================================================== */
footer {background: url("../images/footer-bg-pc.jpg") no-repeat center top;}
.footer-in {padding: 5vw 0 8.6vw;width: 70vw;margin: 0 auto;}
.footer-top {margin: 0 auto;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.footer-links {order: 2;margin: 0;width: auto;}
.footer-links li a {padding: 0.8vw 0.7vw;}
.footer-links li p {font-size: 0.9vw;}
.footer-links li:nth-child(2) {margin-left: 14px;}
.footer-links li:nth-child(2) a {padding: 0.8vw 1.15vw;}
.footer-links li:nth-child(2) p {color: #fff;}
.footer-links .lang-select-white {
    padding: 0.8vw 1.15vw;
    font-size: 1.2vw;
}
.footer-navi {margin-top: 0;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: flex-start;}
.footer-navi dl {width: 11vw;padding-top: 0.2vw;}
.footer-navi dt {font-size: 0.8vw;font-weight: bold;color: #fff;padding: 4px 0;border-bottom: none;position: relative; }
.footer-navi dt img {display: none;}
.footer-navi dd {display: block;margin-top: 0.8vw;}
.footer-navi dd ul {margin-top: 0;}
.footer-navi dd li {padding: 0;}
.footer-navi dd a {color: #fff;font-size: 0.9vw;padding: 0.6vw 0;}
.footer-btm {margin-top: 6.5vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-end;}
.footer-btm > a {display: inline-block;font-size: 0.9vw;font-weight: bold;color: #fff;}
.footer-navi-sns {-webkit-justify-content: flex-end;justify-content: flex-end;margin-top: 0;}
.footer-navi-sns li {margin: 0 0.5vw;}
.copyright {margin-top: 1.1vw;padding-top: 1.2vw;}
.copyright p {font-size: 0.9vw;}

/* ==========================================================
 fixed link
========================================================== */
.fixed-link {position: fixed;right: 0;width: 18vw;}
.fixed-link a {padding: 0;}
.fixed-link img {padding: 0;}

/* ==========================================================
 hero
========================================================== */
.hero-top {margin-bottom: 3.95vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.hero-top {margin-bottom: 3.95vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: flex-start;}
/* .hero-video {width: 51.4vw;margin: 0 0 0 auto;order: 2; aspect-ratio: 16/9; border-radius: 10px 0 0 10px; overflow: hidden; position: relative;}
.hero-video::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
} */
/* .hero-video>iframe { width: 100%; height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);} */
.hero-slider {width: 51.4vw;margin: 0 0 0 auto;order: 2;}
.hero-slider-in {position: relative;height: 64.3vw;}
.hero-slider-in li {position: absolute;width: 100%;height: 100%;opacity: 0;visibility: hidden;transition: all 2s ease;border-radius: 10px 0 0 10px;overflow: hidden;}
.hero-slider-in li.active {opacity: 1; visibility: visible;}
.hero-slider-in li img {width: 100%;}
.hero-slide-pager {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: flex-start;margin-top: 1vw;}
.hero-slide-pager li {width: 0.5vw;height: 0.5vw;margin: 0 0.2vw;}
.hero-txt {margin: 0;padding: 4.4vw 6vw 0 18.5vw;width: 47vw;}
.hero-txt img {margin: 0 auto;width: 21vw;}
.hero-txt h1 {text-align: left;font-size: 3.1vw;margin-top: 4.2vw;}
.hero-txt p {font-size: 1.2vw;margin-top: 2vw;line-height: 1.7;}

.hero-add {padding: 2.6vw 0 2.4vw;}
.hero-add-midashi {padding: 0;}
.hero-add-midashi span {font-size: 1vw;}
.hero-add-midashi .e {font-size: 2.5vw;letter-spacing: 0.04em;}

/* ==========================================================
 top contents
========================================================== */
.contents-btn {margin: 0 auto 4.8vw;width: 58vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.contents-btn li {margin-bottom: 0;width: 18.2vw;}
.contents-btn li:last-child {margin-bottom: 0;}

.product {margin-bottom: 4.8vw;}
.product .h_01 span {font-size: 1vw;}
.product .h_01 .e {font-size: 2.4vw;margin-top: 0.8vw;}
.product .product-in {margin-top: 5.3vw;}
.product .product-in img {width: 46vw;margin: 0 auto;}
.product .product-in p {text-align: center;font-size: 1.05vw;margin: 2vw 0 1vw;line-height: 1.9;}
.product .product-link {width: 18vw;margin: 0 auto;}
.product .product-link img {width: auto;}
.product-link:hover { scale: 1.05; }

.oversea {padding-bottom: 9.6vw;}
.oversea .inner {margin-bottom: 4.2vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.oversea-img {order: 2;padding: 5.7vw 0 5vw;margin-bottom: 0;}
.oversea-img:after {width: 41.8vw;height: 39vw;}
.oversea-img img {width: 34vw;position: relative;z-index: 1;}
.oversea-txt {width: 32vw;padding: 5.9vw 0 0;}
.oversea-txt h1 {font-size: 2vw;font-weight: 600;color: #001E62;}
.oversea-txt > p {line-height: 2.2;margin-top: 1.4vw;letter-spacing: 0vw;}
.oversea-txt .more-link {margin-top: 1vw;padding: 0 0.7vw;}
.oversea-txt .more-link a {-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}

.about-lisence {margin-top: 4vw;padding: 2.3vw 0.5vw;}
.about-lisence p {font-size: 1vw;}
.about-lisence img {padding: 0;}

.oversea-slider {width: 90vw;margin: 0 auto;}
.oversea-slider-in {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;position: relative;}
.oversea-slider-in li {position: absolute;}
.oversea-slider-in li img { border-radius: 8px; }

.video {margin-bottom: 27.4vw;}
.pickup-video{
    margin-bottom: 10vw;
}
.video .inner {width: 65.2vw;}
.pickup-video .inner{
    padding: 4vw 0 5vw 0;
    background-color: #ddd;
}
.video .h_01 span {font-size: 1.1vw;}
.video .h_01 .e {font-size: 1.92vw;margin-top: 1.1vw;}
.video-list {margin-top: 6.1vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.pickup-video-list{
    justify-content: center;
}
.video-list li {margin-bottom: 0;width: 30vw;}
.video-list li .video-frame {margin-bottom: 0.9vw;height: 16vw;}
.video-list li p {font-size: 0.95vw;font-weight: 700;line-height: 2.2;text-decoration: underline;letter-spacing: 0.088em;}

.contents {padding-bottom: 12.1vw;}

.contact {width: 57.2vw;margin: 0 auto 0.4vw;top: -12.7vw;}
.contact a {padding: 0;}
.contact h1 {padding: 0;}
.contact p {padding: 0;}
.contact span {padding: 0;}

.award {margin-bottom: 8.4vw;}
.award-list {margin: 6.4vw 0 3.4vw; display: grid;
grid-template-columns: repeat(3, 1fr); /* 4列のグリッドを作成 */grid-gap: 60px 30px; /* アイテム間の余白を設定 */}
.award-list li img {border-radius: 10px;}
.award-list li p {margin-top: 0.8vw;line-height: 1.6;font-size: 0.9vw;letter-spacing: 0.02em;padding-right: 0;}
.award-list li time {margin-top: 0.8vw;display: block;font-size: 0.8vw;color: #C4C4C4;}

.contents .media .inner {
    margin: 10vw auto 3vw;
}
.media-list {
    display: flex;
    margin: 6.4vw 0 3.4vw;
    justify-content: space-evenly;
    /* gap: 4vw 4vw; */
    /* display: grid; */
    /* grid-template-columns: repeat(3, 1fr); 4列のグリッドを作成 */
    grid-gap: 60px; /* アイテム間の余白を設定 */
}

.media-list a {
    width: 300px;
    /* height: 75px; */
}
.media-list .media-banner {
    aspect-ratio: auto 300 / 75;
}
.media-list p {
    margin: 0 0 1.2vw;
}

.media-list time {
    color: #666;
    margin: 6px 8px 0 0;
    display: inline-block;
}

.update {margin-bottom: 6.7vw;}
.update-list {margin: 5vw auto 2.9vw;width: 58vw;}
.update-list li {margin-bottom: 0;padding: 1.5vw 0;border-bottom: 1px solid #D8D8D8;}
.update-list li a {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.update-list li p {margin-bottom: 0;font-size: 0.95vw;line-height: 1.6;}
.update-list li time {margin-right: 0.9vw;font-size: 0.9vw;}
.update-list li .cat {width: 7vw;padding: 0.2vw 0;font-size: 0.8vw;margin-right: 0.7vw;}

.news {margin-bottom: 10vw;}
.news-list {margin: 2vw auto 2.2vw;width: 58vw;}
.news-list li {margin-bottom: 0;padding: 1.5vw 0;border-bottom: 1px solid #D8D8D8;}
.news-list li a {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: flex-start;justify-content: flex-start;align-items: center;}
.news-list li p {margin-bottom: 0;margin-right: 1vw;font-size: 0.95vw;line-height: 1.6;}
.news-list li time {margin-right: 0.9vw;font-size: 0.9vw;}
.news-list li img {display: inline-block;vertical-align: middle;width: 1.5vw;margin-left: 0.6vw;}

.about {padding: 4.3vw 0 3.7vw;margin-bottom: 13.2vw;background: url("../images/about-bg-pc.png") no-repeat center top;background-size: 100%;}
.about-in {width: 50vw;padding: 0 12vw;margin: 0 auto;}
.about-in h1 {padding: 0;}
.about-in > p {font-size: 1.1vw;margin: 3.8vw 0 1.8vw;line-height: 1.9;}

.team {margin-bottom: 4.7vw;}
.team-list {
    margin: 4vw auto 3.3vw;
    width: 70vw;
    max-width: 1200px;
    display: flex;
    justify-content: space-around;
}
.team-list li {
    max-width: 300px;
    width: 22vw;
    margin: 0 0.5vw 2vw;
}
/* .team-list li:nth-child(2n) {margin-right: 1.4vw;} */
.team-list li:nth-last-child(3) {margin-bottom: 0;}
.team-list li:nth-child(3n) {margin-right: 0;}
.team-list p.name {margin-top: 1.6vw;font-size: 1.3vw;font-weight: bold;}
.team-list p.position {margin-top: 0.8vw; margin-bottom: 1.4vw;}
.team-list p.position span {font-size: 1vw;}
.team-list p.position span.e {margin-top: 1.1vw;letter-spacing: 0.09em;}
.team-list p.comment {font-size: 1.2vw; margin-top: 0.7vw;line-height: 2.0;}

/* ==========================================================
 product
========================================================== */
.product-visual {padding: 1vw 0 8vw;}
.product-visual img {margin: 6vw auto 0;}
.product-visual p {font-size: 1.9vw;width: auto;margin: 1.6vw auto 0;color: #091e4b;}

.product-video {margin: -7.2vw 0 5.8vw;}
.product-video .inner {width: 95vw;}
.product-video .h_01 span {font-size: 1.08vw;}
.product-video .h_01 .e {font-size: 1.9vw;margin-top: 1.1vw;}
.product-video-in {margin: 2vw auto 0;width: 30vw;font-size: 1vw;line-height: 1.8;letter-spacing: 0.06em;}
.product-video-in img {margin-bottom: 1.2vw;}

.product-capable {padding: 0;}
.product-capable .inner {margin-bottom: 17.7vw;}
.product-capable .h_01 span {font-size: 1.1vw;}
.product-capable .h_01 .e {font-size: 2vw;margin-top: 1.2vw;}
.product-capable-in {font-size: 0.85vw;margin-top: 2.2vw;text-align: center;}
.product-capable-in a {display: inline-block;text-decoration: underline;color: #96cc62;}
.product-capable-in ul {margin-top: 4.5vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.product-capable-in li {width: 33%;display: block;padding: 0 1.5vw;margin-bottom: 0;}
.product-capable-in li:after {content: "";width: 1px;height: 60%;bottom: auto;top: 25%;right: 0;}
.product-capable-in li img {width: 9vw;margin: 0 auto;}
.product-capable-in li dl {width: 100%;margin-top: 3.9vw;}
.product-capable-in li dt {font-size: 1.5vw;margin-bottom: 1.1vw;}
.product-capable-in li dt span {font-size: 0.9vw;margin-bottom: 0.8vw;}
.product-capable-in li dd {font-size: 0.9vw;line-height: 2.2;}
.product-capable-in li dd a {display: inline-block;font-weight: bold;color: #96c264;}

.product-case {margin-top: -3.1vw;margin-bottom: 6.3vw;}
.product-case .inner {width: 95vw;}
.product-case .h_01 span {font-size: 1vw;}
.product-case .h_01 .e {font-size: 2vw;margin-top: 1vw;}
.product-cases {width: 73vw;margin: 5vw auto 6vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.product-cases li {margin-bottom: 0;width: 24vw;text-indent: 2.2vw;font-size: 1.35vw;}
.product-cases li:last-child {margin-bottom: 0;}
.product-cases li p {padding-left: 2.2vw;font-size: 1.35vw;margin-bottom: 1.2vw;}
.product-cases li img {margin-top: 1.2vw;}
.product-case h2 {text-align: center;font-size: 1.6vw;font-weight: 700;color: #091f47;}
.product-video-list {margin: 5.4vw auto 0;width: 65.3vw;}
.product-video-list li {width: 30.2vw;margin-bottom: 5vw;}
.product-video-list li .video-frame {margin-bottom: 1.6vw; height: 16vw;}
.product-video-list li a {font-size: 1vw;line-height: 1.4;letter-spacing: 0.17em;}
.product-video-list li a span {padding-bottom: 1.1vw;margin-bottom: 1.1vw;font-size: 1.4vw;}

.product-research {width: 52.5vw;margin: 0 auto 10vw;}
.product-research .inner {width: 100%;}
.product-research .inner .clinical_research_content {
    margin: 3vw 0;
    line-height: 1.8;
}
.product-research .h_01 span {font-size: 1vw;}
.product-research .h_01 .e {font-size: 2vw;margin-top: 1.1vw;letter-spacing: 0.1em;}
.product-research .h_01 .e span {font-size: 2vw;margin-top: 0;margin-left: 0.8vw;display: inline-block;}
.product-research li p {margin: 2.9vw 0 2.6vw;font-size: 0.9vw;text-align: center;}
.product-research-link {margin: 0 auto;padding: 1.8vw 2.6vw 1.5vw;width: 47vw;}
.product-research-link p {margin: 0;font-weight: 600;line-height: 1.6;text-decoration: underline;}
.product-research-link img {padding: 0;}
.product-research .product-paper {margin: 5.8vw auto 0;width: 52.5vw;}
.product-research h2 {font-size: 1.5vw;margin-bottom: 3.4vw;}
.product-research dl {margin-bottom: 3.5vw;}
.product-research dt {padding: 1.6vw 0;font-size: 0.9vw;}
.product-research dd {padding: 0;}
.product-research dd h3 {font-size: 1vw;line-height: 2.4;}
.product-research dd p {margin: 0 0 1.5vw;line-height: 2;text-align: left;}
.product-research dd p span {padding: 0;}

.product-research .paper-list p.paper-category {
    margin-top: 3.1vw;
    font-size: 1.5vw;
    font-weight: 600;
    color: #061e52;
    border-top: 1px solid #999;
    border-bottom: 1px solid #999;
    padding: 1.5vw 0;
}
.product-research .paper-list .paper-category .expand {
    float: right;
    padding-top: 0.5vw;
    padding-right: 1vw;
}

.product-research .paper-list .paper-category.open .expand {
    display: none;
}
.product-research .paper-list .accordion-body {
    display: none;
}

.product-research .paper-list ul li span { font-size: 1.2vw; }

/* ==========================================================
 company
========================================================== */
.company-top {margin-bottom: 7vw;}
.company-top img {width: 70vw;margin: 0 auto 3.5vw;}
.company-top h1 {padding: 0;}
.company-top h1 .e {font-size: 1.9vw;margin-top: 1.2vw;}
.company-top p {width: 29vw;margin: 2.6vw auto 0;font-size: 1.1vw;line-height: 2.15;}
.company-wedo {padding: 0.3vw 0 2.2vw;background: url("../images/about-bg-pc.png") no-repeat center top;background-size: 100%;margin-bottom: 0vw;}
.company-wedo .inner {width: 45vw;}
.company-wedo h1 {font-size: 1.9vw;}
.company-wedo p {margin: 2.2vw 0 0;font-size: 0.85vw;line-height: 2.42;}
.company-wedo .more-link {width: auto;margin-top: 2.8vw;}

/* ==========================================================
 value
========================================================== */
/* .company-value {margin-bottom: 8.6vw;}
.company-value h1 {margin-bottom: 3.5vw;}
.company-value h1 .e {font-size: 1.9vw;margin-top: 1.2vw;}
.company-value .values {padding-bottom: 2.2vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;border-bottom: none;position: relative;}
.company-value .values:after {content:"";width: 43vw;height: 31.7vw;position: absolute;right: -16vw;top: 0;border-radius: 10px 0 0 10px;z-index: 0;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);}
.company-value .value-txt {padding: 1.3vw 0 0 1.3vw;width: 32vw;}
.company-value .value-txt img {width: 12vw;margin-bottom: 0.7vw;}
.company-value .value-txt dl {padding: 0;}
.company-value .value-txt dt {font-size: 2vw;}
.company-value .value-txt dd {font-size: 0.9vw;line-height: 2.2;margin-top: 1.5vw;}
.company-value .value-img {width: 31.2vw;margin-top: 0;margin-right: 2.6vw;padding: 3.8vw 0 2.6vw;position: relative;z-index: 1;}
.company-value .value-img img {padding: 0;}
.company-value .value-img p {margin-top: 1vw;color: #001e62;}
.company-value .values:nth-child(even):after {left: -16vw;top: 0;border-radius: 10px 0 0 10px;z-index: 0;background: -webkit-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -o-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -ms-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: -moz-linear-gradient(300deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);background: linear-gradient(150deg, rgb(175, 225, 128) 0%, rgb(127, 185, 71) 100%);}
.company-value .values:nth-child(even) .value-txt {order: 2;} */

/* ==========================================================
 contact
========================================================== */
.contact-top {margin: 5.7vw auto 4.8vw;}
.contact-top p {width: 42vw;margin: 0.2vw auto 0;font-size: 0.9vw;}
.form {width: 52vw;padding: 4.9vw 4.4vw 7vw;}
.form .inner {width: 100%;}
.form .two-inputs, .form .single-input {margin-bottom: 1.8vw;}
.form dt {font-size: 1.1vw;margin-bottom: 0.8vw;}
.form dt:after {width: 0.2vw;height: 0.2vw;margin-left: 0.4vw;}
.form dd {padding: 0;}
.form dd input, .form dd textarea {padding: 1.1vw 1vw;}
.form dd textarea {height: 13.1vw;}
.form .two-inputs {display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: center;}
.form .two-inputs dl {width: 20.3vw;}

.form .bottom-input {margin-top: 4vw;}
.form .bottom-input label {font-size: 1.1vw;}
.form .bottom-input input {display: inline-block;vertical-align: middle;width: 1vw;height: 1vw;margin-right: 0.9vw;}
.form .bottom-input a {display: inline-block;text-decoration: underline;}

.form .submit-btn {margin-top: 4vw;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: center;justify-content: center;align-items: center;}
.form .submit-btn li {width: 19vw;margin: 0 1vw;cursor: pointer;}
.form .submit-btn li label {padding: 1.5vw 0 1.1vw;border-width: 1px;}
.form .submit-btn li input {display: none;}
.form .submit-btn li p {font-size: 1vw;}
.form .submit-btn input {
    cursor: pointer;
    border: 1px solid #aaa;
    padding: 1.5vw 3vw;
    margin: 1vw;
}
.form .submit-btn input.submit {
    cursor: pointer;
    border: 1px solid #aaa;
    padding: 1.5vw 9vw;
    border-radius: 4px;
}
.form .submit-btn input.submit:hover {
    opacity: 0.8;
    border: 1px solid #aaa;    
}

.form .radio-btn{
    margin-top: 1vw;
    margin-bottom: 1.8vw;
}
.form .radio-btn dd{
    display: flex;
    flex-wrap: wrap;
}
.form .radio-btn dd span{
    margin-left: 0 !important;
}
.form .radio-btn label{
    display: flex;
    margin-top: 0.8em;
    margin-right: 0.5em;
}
.form .radio-btn label .radio{
    width: 24px;
    border-color: #A2C86C;
}

.contact-others {margin-top: 7.7vw;margin-bottom: 9.3vw;}
.contact-others .others-links {width: 65.3vw;margin: 3.1vw auto 0;display: -webkit-box;display: -moz-box;display: -webkit-flex;display: box;display: flex;-webkit-flex-wrap: wrap;flex-wrap: wrap;-webkit-justify-content: space-between;justify-content: space-between;align-items: flex-start;}
.contact-others .others-links li {margin-bottom: 0;border-radius: 10px;width: 31.2vw;}
.contact-others .others-links a {padding: 3.15vw 4vw 3.1vw 2.5vw;}
.contact-others .others-links p {font-size: 1vw;}
.contact-others .others-links img {width: 2.1vw;}
}