/*共通-----------------------*/
.top_section {
    padding: 6rem 0;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 0;
    background-color: #fff;
}
.top_section .inbox {
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
}
.tih2 {
font-weight: 600;
    position: relative;
}
.tih2 .num {
    font-size: 20px;
    position: absolute;
    z-index: -1;
    line-height: 100%;
}
.tih2 em {
}
.en {
    font-family: all-round-gothic, sans-serif;
font-style: normal;
}
.jp {
    font-family: 'Zen Kaku Gothic New', sans-serif;
}
.link_box {
    width: 300px;
    max-width: 100%;
}
.link_box a {
    background-color: #0e0e0e;
    border: 2px solid #0e0e0e;
    color: #fff;
    text-decoration: none;
    display: block;
    padding: 10px 0;
    border-radius: 50px;
    text-align: center;
    transition: all 0.5s ease;
}
.link_box a:hover {
    background-color: #fff;
    color: #0e0e0e;
}
.fadein {
  opacity: 0;
  transition: all ease 0.8s 0s;
  -webkit-transition: all ease 0.8s 0s;
  -moz-transition: all ease 0.8s 0s;
  transform: translate(0px, 20px);
}
.fadein.on {
  opacity: 1;
  transform: translate(0px, 0px);
}
    .tb {
        display: none;
    }

#splash {
    /*fixedで全面に固定*/
  position: fixed;
  z-index: 999;
  width: 100%;
  height: 100%;
  background:#000;
  text-align:center;
  color:#fff;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
#splash .inbox {
}
#splash .inbox dl {
    display: flex;
    flex-wrap: nowrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    padding: 0 5vw;
}
#splash dl dt {
    width: 8vw;
}
#splash dl dd {
    padding-left: 2vw;
    font-size: 1.15em;
}
#splash dl dd span {
    display: block;
    text-align: left;
    font-size: 0.75em;
    margin-top: 0.5vw;
}
/*unit-----------------------*/
header {
    position: fixed;
    z-index: 100;
    width: 100%;
    padding: 20px 20px 0;
}
header .unit {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    z-index: 1;
    position: relative;
}
header .unit .logo {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    transition: all 0.5s ease;
    position: relative;
    z-index: 0;
}
header .unit .logo a {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
header .unit.active .logo {
    opacity: 0;
    pointer-events: none;
}
header .unit .logo img {
    width: 184px;
}
header .unit .logo p {
    font-weight: 900;
    font-size: 13px;
    line-height: 120%;
    padding-left: 5px;
}
header .unit .menu {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}
header .unit .menu ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    transition: all 0.5s ease;
}
header .unit.active .menu ul {
    opacity: 0;
    pointer-events: none;
}
header .unit .menu ul li {
}
header .unit .menu ul li:not(:last-of-type) {
    margin-right: 20px;
}
header .unit .menu ul li a {
    color: #0e0e0e;
    text-decoration: none;
    padding: 5px;
    font-size: 1.1em;
    position: relative;
    z-index: 0;
}
header .unit .menu ul li a::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #ffc600;
    bottom: -5px;
    left: 0;
    right: 0;
    margin: auto;
    transition: all 0.5s ease;
    opacity: 0;
}
header .unit .menu ul li a:hover::before {
    opacity: 1;
}
header .unit .menu .botton {
    width: 50px;
    height: 50px;
    margin-left: 20px;
    background-color: #fff;
    padding-top: 25px;
    font-size: 12px;
    text-align: center;
    line-height: 100%;
    border-radius: 50%;
    font-weight: 900;
    cursor: pointer;
    position: relative;
    z-index: 0;
}
header .unit .menu .botton p {
    position: relative;
    z-index: 0;
}
header .unit .menu .botton .open {
    font-style: normal;
    transition: all 0.5s ease;
}
header .unit .menu .botton .close {
    position: absolute;
    font-style: normal;
    left: 0;
    right: 0;
    margin: auto;
    opacity: 0;
    transition: all 0.5s ease;
}
header .unit.active .menu .botton .open {
    opacity: 0;
}
header .unit.active .menu .botton .close {
    opacity: 1;
}
header .unit .menu .botton span {
    position: absolute;
    z-index: -1;
    width: 1px;
    background-color: #0e0e0e;
    margin: auto;
    transition: all 0.5s ease;
    top: 10px;
}
header .unit .menu .botton span:nth-of-type(1) {
    height: 15px;
    right: 0;
    left: 10px;
}
header .unit .menu .botton span:nth-of-type(2) {
    height: 11px;
    right: 0;
    left: 0;
}
header .unit .menu .botton span:nth-of-type(3) {
    height: 8px;
    right: 10px;
    left: 0;
}
header .unit .menu .botton:hover span:nth-of-type(2) {
    height: 15px;
}
header .unit .menu .botton:hover span:nth-of-type(3) {
    height: 15px;
}
header .unit.active .menu .botton span:nth-of-type(1) {
    height: 15px;
    right: 0;
    left: 0;
    transform: rotate(45deg);
}
header .unit.active .menu .botton span:nth-of-type(2) {
    opacity: 0;
}
header .unit.active .menu .botton span:nth-of-type(3) {
    height: 15px;
    right: 0;
    left: 0;
    transform: rotate(-45deg);
}
.contact_banner {
    position: fixed;
    z-index: 99;
    bottom: 0;
    left: 0;
    width: 550px;
    max-width: 45%;
    background-color: #8c1010;
    color: #fff;
    border-radius: 0 10px 0 0;
    box-shadow: 0px 0px 15px #0000005c;
    transition: all 0.5s ease;
}
.contact_banner.active {
    opacity: 0;
    pointer-events: none;
}
.contact_banner h4 {
    font-size: 1.4em;
    text-align: center;
    padding: 15px 0;
    line-height: 100%;
}
.contact_banner ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    border-top: 1px solid #fff;
}
.contact_banner ul li {
    width: 50%;
}
.contact_banner ul li:not(:last-of-type) {
    border-right: 1px solid #fff;
}
.contact_banner ul li a {
    color: #fff;
    text-decoration: none;
    font-size: 1.3em;
    padding: 15px 0;
    display: block;
    text-align: center;
    line-height: 100%;
    transition: all 0.5s ease;
}
.contact_banner ul li a:hover {
    color: #8c1010;
    background-color: #fff;
}
.unit_inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    right: 0;
    display: flex;
    opacity: 0;
    pointer-events: none;
    transition: all 0.5s ease;
    transform: translate(0px,20px);
}
.unit_inner.active {
    opacity: 1;
    pointer-events: auto;
    transform: translate(0px,0px);
}
.unit_inner .inbox {
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
    z-index: 1;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
    padding: 3rem 0;
}
.unit_inner .left {
    width: 35%;
    padding-right: 5%;
}
.unit_inner .left .logo {
    margin-bottom: 3rem;
}
.unit_inner .left .logo img {
    width: 400px;
    max-width: 100%;
}
.unit_inner .left .logo p {
    font-size: 1.8em;
    font-weight: 900;
    line-height: 120%;
    margin-top: 10px;
}
.unit_inner .left .link_box:not(:last-of-type) {
    margin-bottom: 0.5rem;
}
.unit_inner .left .link_box a {
}
.unit_inner .right {
    width: 65%;
}
.unit_inner .right ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: flex-start;
}
.unit_inner .right ul li {
    width: 32%;
    margin-bottom: 2rem;
}
.unit_inner .right ul li:not(:nth-of-type(3n+3)) {
    margin-right: 2%;
}
.unit_inner .right ul li a {
    color: #0e0e0e;
    text-decoration: none;
}
.unit_inner .right ul li dl {
}
.unit_inner .right ul li dl dt {
}
.unit_inner .right ul li dl dd {
}
.unit_inner .right ul li dl dt a {
    font-size: 2em;
    font-weight: 900;
    transition: all 0.5s ease;
}
.unit_inner .right ul li dl dt a.noevent {
    pointer-events: none;
}
.unit_inner .right ul li dl dt a:hover {
    padding-left: 5px;
}
.unit_inner .right ul li dl dd a {
    font-size: 1.0em;
    position: relative;
    z-index: 0;
    padding-left: 15px;
    transition: all 0.5s ease;
}
.unit_inner .right ul li dl dd a:hover {
    padding-left: 20px;
}
.unit_inner .right ul li dl dd a::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 12px;
    height: 12px;
    background-color: #c3c0c0;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 50%;
    transition: all 0.5s ease;
}
.unit_inner .right ul li dl dd a:hover::before {
    background-color: #0e0e0e;
}
.unit_inner .right ul li dl dd a::after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 4px;
    height: 4px;
    border-top: 1px solid #0e0e0e;
    border-right: 1px solid #0e0e0e;
    left: 4px;
    top: 0;
    bottom: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: all 0.5s ease;
}
.unit_inner .right ul li dl dd a:hover::after {
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
.unit_inner .bg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #fff;
    z-index: 0;
    transition: all 0.6s ease;
    transform: translate(0px,60px);
}
.unit_inner.active .bg {
    transform: translate(0px,0px);
}
/*TOPPAGE-----------------------*/
#top_fv {
    padding: 0;
    margin: 0;
    height: 200vh;
}
#top_fv::before {
    content:"";
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: 0;
    transition: all 1s ease;
}
#top_fv.backon::before {
    opacity: 0.5;
}
#top_fv .video_bg {
    position: absolute;
    z-index: -2;
    width: 100%;
    height: calc(200vh - 430px);
    top: 430px;
    left: 0;
    opacity: 1;
}
#top_fv .video_bg video {
    width: 100%;
    height:  calc(200vh - 430px);
    object-fit: cover;
}
#top_fv #fvbox {
    height: 100vh;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: center;
    margin-top: calc(70px + 50px);
}
#top_fv #fvbox h1 {
    font-size: 3.0em;
    font-weight: 900;
    line-height: 150%;
    width: 100%;
}
#top_fv #fvbox h1 span {
    display: inline-block;
    transform: translate(0px,20px) rotate(5deg);
    opacity: 0;
    transition: all 0.5s ease-in-out;
}
#top_fv #fvbox h1 span:nth-of-type(1) {
    transition-delay: 0.1s;
}
#top_fv #fvbox h1 span:nth-of-type(2) {
    transition-delay: 0.1s;
}
#top_fv #fvbox h1 span:nth-of-type(3) {
    transition-delay: 0.15s;
}
#top_fv #fvbox h1 span:nth-of-type(4) {
    transition-delay: 0.15s;
}
#top_fv #fvbox h1 span:nth-of-type(5) {
    transition-delay: 0.2s;
}
#top_fv #fvbox h1 span:nth-of-type(6) {
    transition-delay: 0.2s;
}
#top_fv #fvbox h1 span:nth-of-type(7) {
    transition-delay: 0.25s;
}
#top_fv #fvbox h1 span:nth-of-type(8) {
    transition-delay: 0.25s;
}
#top_fv #fvbox h1 span:nth-of-type(9) {
    transition-delay: 0.3s;
}
#top_fv #fvbox h1 span:nth-of-type(10) {
    transition-delay: 0.3s;
}
#top_fv #fvbox h1 span:nth-of-type(11) {
    transition-delay: 0.35s;
}
#top_fv #fvbox h1 span:nth-of-type(12) {
    transition-delay: 0.35s;
}
#top_fv #fvbox h1 span:nth-of-type(13) {
    transition-delay: 0.4s;
}
#top_fv #fvbox h1 span:nth-of-type(14) {
    transition-delay: 0.4s;
}
#top_fv #fvbox h1 span:nth-of-type(15) {
    transition-delay: 0.45s;
}
#top_fv #fvbox h1 span:nth-of-type(16) {
    transition-delay: 0.45s;
}
#top_fv #fvbox h1 span:nth-of-type(17) {
    transition-delay: 0.5s;
}
#top_fv #fvbox h1 span:nth-of-type(18) {
    transition-delay: 0.5s;
}
#top_fv #fvbox h1 span:nth-of-type(19) {
    transition-delay: 0.55s;
}
#top_fv #fvbox h1 span:nth-of-type(20) {
    transition-delay: 0.55s;
}
#top_fv #fvbox h1 span:nth-of-type(21) {
    transition-delay: 0.6s;
}
#top_fv #fvbox h1 span:nth-of-type(22) {
    transition-delay: 0.6s;
}
#top_fv #fvbox h1 span:nth-of-type(23) {
    transition-delay: 0.65s;
}
#top_fv #fvbox h1 span:nth-of-type(24) {
    transition-delay: 0.65s;
}
#top_fv #fvbox h1 span:nth-of-type(25) {
    transition-delay: 0.7s;
}
#top_fv #fvbox h1 span:nth-of-type(26) {
    transition-delay: 0.7s;
}
#top_fv #fvbox h1 span:nth-of-type(27) {
    transition-delay: 0.75s;
}
#top_fv #fvbox h1 span:nth-of-type(28) {
    transition-delay: 0.75s;
}
#top_fv #fvbox h1 span:nth-of-type(29) {
    transition-delay: 0.8s;
}
#top_fv #fvbox h1 span:nth-of-type(30) {
    transition-delay: 0.8s;
}
#top_fv #fvbox h1 span:nth-of-type(31) {
    transition-delay: 0.85s;
}
#top_fv #fvbox h1 span:nth-of-type(32) {
    transition-delay: 0.85s;
}
#top_fv #fvbox h1 span:nth-of-type(33) {
    transition-delay: 0.9s;
}
#top_fv #fvbox h1 span:nth-of-type(34) {
    transition-delay: 0.9s;
}
#top_fv #fvbox h1 span:nth-of-type(35) {
    transition-delay: 0.95s;
}
#top_fv #fvbox.on h1 span {
    opacity: 1;
    transform: translate(0px,0px) rotate(00deg);
}
#top_fv #fvbox p {
    margin-top: 2rem;
    width: 100%;
    font-size: 1.25em;
    font-weight: 600;
    opacity: 0;
    transform: translate(0px,5px);
    transition: all 0.5s 1.4s ease-in-out;
}
#top_fv #fvbox.on p {
    opacity: 1;
    transform: translate(0px,0px);
}
#top_fv #bottom_box {
    height: 100vh;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-end;
    align-items: center;
    justify-content: space-between;
    padding-bottom: 30vh;
    color: #fff;
}
#top_fv #bottom_box .title {
    width: 48%;
}
#top_fv #bottom_box .title h2 {
    font-size: 2.6em;
    line-height: 140%;
    font-weight: 900;
    -webkit-text-stroke: 1px #ffffff;
    text-stroke: 1px #009743;
    color: rgba(0,0,0,.0);
}
#top_fv #bottom_box .content {
    width: 48%;
}
#top_fv #bottom_box .content h3 {
    font-size: 2.0em;
    font-weight: 700;
    line-height: 140%;
}
#top_fv #bottom_box .content p {
    margin-top: 1.5rem;
}
#topsec--works {
    background: #000000;
    height: 100vh;
}
#topsec--works .video_bg {
    position: absolute;
    z-index: 0;
    width: 80%;
    height: 100%;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}
#topsec--works .video_bg span {
    position: relative;
    z-index: 0;
}
#topsec--works .video_bg span::before {
    content: "";
    position: absolute;
    background-image: url(.././img/topsec--works_back.png);
    background-repeat: no-repeat;
    background-size: 100% auto;
    left: 0;
    top: 0;
    width: 101%;
    height: 101%;
}
#topsec--works .video_bg video {
}
#topsec--works .txt_bg {
    color: #363636;
    font-size: 10em;
    position: absolute;
    top: -10%;
    line-height: 100%;
    opacity: 0.85;
}
#topsec--works .txt_bg:nth-of-type(2) {
    transform: translate(0, 0) rotate(90deg);
    transform-origin: left;
    left: 40px;
}
#topsec--works .txt_bg:nth-of-type(3) {
    transform: translate(0, 0) rotate(270deg);
    transform-origin: right;
    right: 40px;
}
#topsec--works .wrap {
    display: flex;
    height: 100%;
    align-items: center;
}
#topsec--works .box01 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    text-align: center;
}
#topsec--works .box01 .tih2 {
    color: #fff;
    font-size: 11em;
    line-height: 100%;
    position: relative;
    z-index: 0;
    display: inline-block;
    padding-top: 1rem;
    -webkit-text-stroke: 1px #ffffff;
    text-stroke: 1px #009743;
    color: rgba(0,0,0,.0);
}
#topsec--works .box01 .tih2 span.num {
    border-top: 2px solid #fff;
    top: 0;
    left: 0;
    line-height: 100%;
    color: #fff;
}
#topsec--works .box01 .tih2 em {
    color: #fff;
}
#topsec--works .box01 p {
    color: #fff;
    font-weight: 500;
}
#topsec--works .box02 {
    width: 100%;
    position: relative;
    z-index: 0;
}
#topsec--works .box02 .inbox {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-end;
    align-items: center;
    position: relative;
    z-index: 0;
}
#topsec--works .box02 .txt_box {
    position: absolute;
    z-index: 1;
    width: 50%;
    left: 0;
    top: 0;
    bottom: 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
    margin: auto;
}
#topsec--works .box02 .txt_box h2 {
    color: #fff;
    font-size: 2.6em;
    font-weight: 900;
    line-height: 100%;
    width: 100%;
    margin-bottom: 30px;
}
#topsec--works .box02 .txt_box h2 span {
    display: block;
    font-size: 0.65em;
    color: #a78600;
    line-height: 100%;
    margin-bottom: 10px;
}
#topsec--works .box02 .txt_box dl {
    width: 100%;
    color: #fff;
    font-size: 1.4em;
    padding-left: 5%;
    margin-bottom: 20px;
}
#topsec--works .box02 .txt_box dl:nth-of-type(1) {
}
#topsec--works .box02 .txt_box dl:nth-of-type(2) {
}
#topsec--works .box02 .txt_box dl dt {
}
#topsec--works .box02 .txt_box dl dd {
}
#topsec--works .box02 .txt_box dl dd span {
    font-size: 5em;
    font-weight: 900;
    margin-right: 10px;
    line-height: 100%;
}
#topsec--works .box02 .txt_box dl:nth-of-type(1) dd span {
    font-size: 7em;
}
#topsec--works .box02 .txt_box .link_box {
    padding-left: 5%;
}
#topsec--works .box02 .txt_box .link_box a {
    border: 2px solid #ebe300;
}
#topsec--works .box02 .txt_box .link_box a:hover {
    color: #9d9800;
}
#topsec--works .box02 .slider_box {
    width: 65%;
    position: relative;
    z-index: 0;
}
#topsec--works .box02 .slider_box .img_box {
}
#topsec--works .box02 .slider_box .swiper-pagination {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 1;
}
#topsec--works .box02 .slider_box .swiper-pagination .swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    border: 1px solid #ebe300;
    opacity: 1;
}
#topsec--works .box02 .slider_box .swiper-pagination .swiper-pagination-bullet:not(:last-of-type) {
    margin-right: 15px;
}
#topsec--works .box02 .slider_box .swiper-pagination .swiper-pagination-bullet-active {
    background-color: #ebe300;
}
#topsec--works-list {
}
#topsec--works-list .inbox {
    width: 1400px;
}
#topsec--works-list .inbox {
}
#topsec--works-list .inbox ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: flex-start;
}
#topsec--works-list .inbox ul li {
    width: 30%;
    position: relative;
    z-index: 0;
    margin-bottom: 5%;
}
#topsec--works-list .inbox ul li:not(:nth-of-type(3n+3)) {
    margin-right: 5%;
}
#topsec--works-list .inbox ul li a {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
}
#topsec--works-list .inbox ul li .img {
    transform: scale(0.9);
    transition: all 0.5s ease;
}
#topsec--works-list .inbox ul li:hover .img {
    transform: scale(1);
}
#topsec--works-list .inbox ul li .txt {
    margin-top: 10px;
}
#topsec--works-list .inbox ul li .txt .cat {
    background-color: #900;
    color: #fff;
    display: inline-block;
    padding: 0px 10px;
    font-size: 0.8em;
}
#topsec--works-list .inbox ul li .txt h3 {
    line-height: 140%;
    margin-top: 5px;
    font-weight: bold;
}
#topsec--works-list .inbox .link_box {
    margin: 0 auto;
}
#topsec--service {
    padding: 60px 0;
}
#topsec--service::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 20%;
    height: 100%;
    right: 0;
    top: 0;
    background-color: #8c1010;
}
#topsec--service .inbox {
    position: relative;
    z-index: 0;
}
#topsec--service .inbox .tih2 {
    margin-bottom: 60px;
    font-size: 2.2em;
    padding-left: 40px;
    line-height: 100%;
}
#topsec--service .inbox .tih2 .num {
    border-top: 2px solid #0e0e0e;
    top: 0;
    left: 0;
    line-height: 100%;
}
#topsec--service .inbox .tih2 .jp {
    font-size: 0.6em;
    padding-left: 20px;
}
#topsec--service .inbox .slider_box {
    overflow: hidden;
    margin-right: 80px;
}
#topsec--service .inbox .slider_box .swiper-slide {
    position: relative;
    z-index: 0;
}
#topsec--service .inbox .slider_box .swiper-slide.soon {
    pointer-events: none;
}
#topsec--service .inbox .slider_box .swiper-slide.soon .img_box {
    position: relative;
    z-index: 0;
}
#topsec--service .inbox .slider_box .swiper-slide.soon .img_box::before {
    content: "";
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    background-color: #00000094;
}
#topsec--service .inbox .slider_box .swiper-slide.soon .img_box::after {
    content: "coming soon";
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
    color: #fff;
    font-family: all-round-gothic, sans-serif;
    left: 0;
    top: 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
    font-size: 1.4em;
}
#topsec--service .inbox .slider_box .swiper-slide.soon a {
}
#topsec--service .inbox .slider_box .swiper-slide a {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
#topsec--service .inbox .slider_box .swiper-slide .img_box {
    transition: all 0.5s ease;
}
#topsec--service .inbox .slider_box .swiper-slide:hover .img_box {
    opacity: 0.8;
}
#topsec--service .inbox .slider_box .swiper-slide .txt_box {
    margin-top: 5px;
}
#topsec--service .inbox .slider_box .swiper-slide .txt_box h3 {
    display: inline-block;
    padding-right: 25px;
    position: relative;
    z-index: 0;
    font-size: 0.95em;
}
#topsec--service .inbox .slider_box .swiper-slide .txt_box h3::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
}
#topsec--service .inbox .slider_box .swiper-slide .txt_box h3::after {
    content: "";
    position: absolute;
    width: 6px;
    height: 6px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
}
#topsec--service .inbox .slider_box .swiper-slide .txt_box h3 span {
    margin-right: 10px;
    font-size: 1.2em;
}
#topsec--service .inbox .swiper-pagination1 {
    position: absolute;
    top: 0;
    right: 0;
    width: auto;
    left: unset;
    bottom: unset;
    color: #fff;
    font-weight: 900;
}
#topsec--service .inbox .swiper-button-next {
    width: 40px;
    height: 40px;
    background: none;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    right: 0;
}
#topsec--service .inbox .swiper-button-next::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#topsec--service .inbox .swiper-button-next::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    left: 6px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
}
#topsec--price {
}
#topsec--price .inbox {
}
#topsec--price .inbox .flex {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-end;
}
#topsec--price .inbox .flex .tih2 {
    width: auto;
    font-size: 7em;
    line-height: 85%;
    display: inline-block;
}
#topsec--price .inbox .flex .tih2 .num {
    border-bottom: 2px solid #000;
    right: 0;
    top: 10px;
}
#topsec--price .inbox .flex .txt {
    width: 40%;
}
#topsec--price .inbox .flex .txt p {
}
#topsec--price .inbox .txt_box {
    text-align: center;
    margin: 3rem 0;
}
#topsec--price .inbox .txt_box h3 {
    font-size: 3.5em;
    font-weight: 900;
}
#topsec--price .inbox .txt_box p {
    font-size: 1.3em;
}
#topsec--price .inbox .txt_box p span {
    font-size: 1.3em;
    font-weight: bold;
    position: relative;
    z-index: 0;
}
#topsec--price .inbox .txt_box p span::before {
    content: "";
    position: absolute;
    z-index: -1;
    background-color: #e6ff10;
    width: 100%;
    height: 55%;
    bottom: 0;
    left: 0;
}
#topsec--price .inbox .table {
}
#topsec--price .inbox .table h4 {
    font-size: 1.5em;
}
#topsec--price .inbox .table h4 span {
    font-size: 0.8em;
    margin-left: 10px;
}
#topsec--price .inbox .table ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: stretch;
    margin: 30px 0;
}
#topsec--price .inbox .table ul li {
    width: 20%;
    border-left: 1px solid #e0e0e0;
    border-bottom: 1px solid #e0e0e0;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
    justify-content: center;
    padding: 15px;
}
#topsec--price .inbox .table ul li:last-of-type {
    border-right: 1px solid #e0e0e0;
}
#topsec--price .inbox .table ul li:nth-of-type(1) {
    border-top: 15px solid #00697f;
}
#topsec--price .inbox .table ul li:nth-of-type(2) {
    border-top: 15px solid #2d7f00;
}
#topsec--price .inbox .table ul li:nth-of-type(3) {
    border-top: 15px solid #dd6800;
}
#topsec--price .inbox .table ul li:nth-of-type(4) {
    border-top: 15px solid #ad0000;
}
#topsec--price .inbox .table ul li:nth-of-type(5) {
    border-top: 15px solid #554c00;
}
#topsec--price .inbox .table ul li h3 {
    width: 100%;
    text-align: center;
    font-size: 1.3em;
    line-height: 100%;
}
#topsec--price .inbox .table ul li .price {
    font-size: 1.3em;
    text-align: center;
    margin: 10px 0;
}
#topsec--price .inbox .table ul li .price span {
    font-size: 2.0em;
    font-weight: bold;
    line-height: 100%;
}
#topsec--price .inbox .table ul li p {
    min-height: 140px;
    line-height: 150%;
}
#topsec--price .inbox .table ul li p span {
    display: block;
    font-weight: bold;
    font-size: 1.05em;
    line-height: 130%;
    margin-bottom: 5px;
}
#topsec--price .inbox .table ul li .link_box {
}
#topsec--price .inbox .table ul li .link_box a {
}
#topsec--price .inbox .table ul li:nth-of-type(1) .link_box a {
    background-color: #00697f;
    border: 2px solid #00697f;
}
#topsec--price .inbox .table ul li:nth-of-type(2) .link_box a {
    background-color: #2d7f00;
    border: 2px solid #2d7f00;
}
#topsec--price .inbox .table ul li:nth-of-type(3) .link_box a {
    background-color: #dd6800;
    border: 2px solid #dd6800;
}
#topsec--price .inbox .table ul li:nth-of-type(4) .link_box a {
    background-color: #ad0000;
    border: 2px solid #ad0000;
}
#topsec--price .inbox .table ul li:nth-of-type(5) .link_box a {
    background-color: #554c00;
    border: 2px solid #554c00;
}
#topsec--price .inbox .table ul li:nth-of-type(1) .link_box a:hover {
    color: #00697f;
    background-color: #fff;
}
#topsec--price .inbox .table ul li:nth-of-type(2) .link_box a:hover {
    color: #2d7f00;
    background-color: #fff;
}
#topsec--price .inbox .table ul li:nth-of-type(3) .link_box a:hover {
    color: #dd6800;
    background-color: #fff;
}
#topsec--price .inbox .table ul li:nth-of-type(4) .link_box a:hover {
    color: #ad0000;
    background-color: #fff;
}
#topsec--price .inbox .table ul li:nth-of-type(5) .link_box a:hover {
    color: #554c00;
    background-color: #fff;
}
#topsec--price .inbox .table .notice {
    text-align: center;
    font-size: 1.1em;
    color: #eb0000;
}
#topsec--voice {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    align-items: center;
    justify-content: flex-end;
}
#topsec--voice .inbox {
    position: relative;
    z-index: 0;
}
#topsec--voice .tih2 {
    color: #8c1010;
    font-size: 8.5em;
    line-height: 85%;
    padding-left: 30px;
    display: inline-block;
    transform: translate(2%, 15%);
}
#topsec--voice .tih2 .num {
    border-bottom: 2px solid #8c1010;
    left: 0;
}
#topsec--voice .inner {
    width: 100%;
    position: relative;
    z-index: 0;
}
#topsec--voice .inner::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 100%;
    background-color: #8c1010;
    top: 0;
    left: 0;
    height: 70%;
}
#topsec--voice .inner .inbox {
}
#topsec--voice .inner h3 {
    color: #fff;
    text-align: center;
    font-size: 2.5em;
    font-weight: 800;
    line-height: 100%;
    margin: 3rem 0;
}
#topsec--voice .inner .swiper-pagination2 {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
}
#topsec--voice .inner .swiper-pagination2 .swiper-pagination-bullet {
    width: 15px;
    height: 15px;
    border: 1px solid #ebe300;
    opacity: 1;
    background-color: #8c1010;
}
#topsec--voice .inner .swiper-pagination2 .swiper-pagination-bullet-active {
    background-color: #ebe300;
}
#topsec--voice .inner .swiper-pagination2 .swiper-pagination-bullet:not(:last-of-type) {
    margin-right: 15px;
}
#topsec--voice .inner .slider_box {
    margin: 1.5rem auto;
    width: calc(100% - 100px);
    padding: 0 0 1rem;
}
#topsec--voice .inner .slider_box .img_box img {
    border-radius:10px 10px 0 0;
}
#topsec--voice .inner .slider_box .txt_box {
    background-color: #fff;
    border-radius: 0 0 10px 10px;
    box-shadow: 0px 0px 10px #4F4A4D;
    padding: 20px;
}
#topsec--voice .inner .slider_box .txt_box h3 {
    color: #0e0e0e;
    font-size: 1.2em;
    margin: 0;
    text-align: left;
}
#topsec--voice .inner .slider_box .txt_box h3 span {
    display: block;
    font-size: 0.85em;
    font-weight: normal;
    color: #8c1010;
}
#topsec--voice .inner .slider_box .txt_box p {
    margin-top: 10px;
}
#topsec--voice .inner .swiper-button-next3 {
    width: 40px;
    height: 40px;
    background: none;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
    z-index: 1;
    box-shadow: 0px 0px 5px #4f4a4d85;
}
#topsec--voice .inner .swiper-button-next3::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#topsec--voice .inner .swiper-button-next3::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    left: 6px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
}
#topsec--voice .inner .swiper-button-prev3 {
    width: 40px;
    height: 40px;
    background: none;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    cursor: pointer;
    z-index: 1;
    box-shadow: 0px 0px 5px #4f4a4d85;
}
#topsec--voice .inner .swiper-button-prev3::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#topsec--voice .inner .swiper-button-prev3::after {
    content: "";
    position: absolute;
    width: 7px;
    height: 7px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    right: 6px;
    left: 0;
    margin: auto;
    transform: rotate(225deg);
}
#topsec--voice .link_box {
    margin: 0 auto;
}
#topsec--voice .link_box a {
}
#topsec--company {
}
#topsec--company .img_box {
    width: 53%;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}
#topsec--company .inbox {
}
#topsec--company .inbox .txt_box {
    width: 45%;
    margin: 0 0 0 auto;
}
#topsec--company .inbox .txt_box .tih2.en {
    font-size: 2em;
    padding-left: 30px;
    line-height: 85%;
}
#topsec--company .inbox .txt_box .tih2.en .num {
    left: 0;
    border-top: 2px solid #0e0e0e;
}
#topsec--company .inbox .txt_box .tih2.jp {
    font-size: 2.8em;
    font-weight: 900;
    line-height: 120%;
    margin: 1.5rem 0;
}
#topsec--company .inbox .txt_box p {
}
#topsec--company .inbox .link_box {
    margin-top: 1.5rem;
}
#topsec--company .inbox .link_box a {
}
#topsec--blog {
}
#topsec--blog .inbox {
}
#topsec--blog .inbox .flex {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
}
#topsec--blog .inbox .tih2 {
    font-size: 2.2em;
    padding-left: 30px;
    line-height: 85%;
}
#topsec--blog .inbox .tih2 .num {
    left: 0;
    border-top: 2px solid #0e0e0e;
}
#topsec--blog .inbox .link {
}
#topsec--blog .inbox .link a {
    color: #0e0e0e;
    padding-right: 20px;
    text-decoration: none;
    border-bottom: 1px solid #0e0e0e;
    position: relative;
    z-index: 0;
}
#topsec--blog .inbox .link a::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transition: all 0.5s ease;
}
#topsec--blog .inbox .link a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: all 0.5s ease;
}
#topsec--blog .inbox .link a:hover::before {
    right: -5px;
}
#topsec--blog .inbox .link a:hover::after {
    right: -5px;
}
#topsec--blog .inbox .slider_box {
    margin-top: 3rem;
    overflow: hidden;
    position: relative;
    z-index: 0;
    padding-bottom: 3rem;
}
#topsec--blog .inbox .slider_box::before {
    content: "";
    position: absolute;
    z-index: 2;
    width: 15%;
    height: 100%;
    background: linear-gradient(90deg, #fff0, #fff);
    right: 0;
    top: 0;
    pointer-events: none;
}
#topsec--blog .inbox .slider_box .swiper-slide {
    position: relative;
    z-index: 0;
}
#topsec--blog .inbox .slider_box .swiper-slide a  {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
#topsec--blog .inbox .slider_box .swiper-slide .img_box {
}
#topsec--blog .inbox .slider_box .swiper-slide .img_box img {
    height: 250px !important;
    object-fit: cover;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box {
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box dl {
    display: flex;
    color: #8c1010;
    font-size: 0.95em;
    margin: 10px 0;
    line-height: 100%;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box dl dt {
    margin-right: 5px;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box dl dd {
    margin-left: 5px;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box h3 {
    line-height: 150%;
}
#topsec--blog .inbox .swiper-pagination4 {
    width: 100%;
    height: 5px;
    position: absolute;
    z-index: 2;
    bottom: 0;
    left: 0;
    background-color: #cbcbcb;
    border-radius: 50px;
    overflow: hidden;
}
#topsec--blog .inbox .swiper-pagination4.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background-color: #8c1010;
}
#topsec--topics {
}
#topsec--topics .inbox {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: flex-start;
}
#topsec--topics .inbox .title_box {
    width: 30%;
    padding-right: 5%;
}
#topsec--topics .inbox .title_box .tih2 {
    font-size: 3.5em;
    line-height: 85%;
    padding-top: 30px;
}
#topsec--topics .inbox .title_box .tih2 .num {
    top: 0;
    border-bottom: 2px solid #0e0e0e;
}
#topsec--topics .inbox .title_box .link {
    margin-top: 3rem;
}
#topsec--topics .inbox .title_box .link a {
    color: #0e0e0e;
    padding-right: 20px;
    text-decoration: none;
    border-bottom: 1px solid #0e0e0e;
    position: relative;
    z-index: 0;
}
#topsec--topics .inbox .title_box .link a::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transition: all 0.5s ease;
}
#topsec--topics .inbox .title_box .link a::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: all 0.5s ease;
}
#topsec--topics .inbox .title_box .link a:hover::before {
    right: -5px;
}
#topsec--topics .inbox .title_box .link a:hover::after {
    right: -5px;
}
#topsec--topics .inbox ul {
    width: 70%;
}
#topsec--topics .inbox ul li {
    position: relative;
    z-index: 0;
    width: 100%;
    padding: 20px 0;
    border-bottom: 1px solid #adadad;
}
#topsec--topics .inbox ul li span {
    position: relative;
    z-index: 0;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}
#topsec--topics .inbox ul li span::before {
    content: "";
    position: absolute;
    width: 12px;
    height: 1px;
    background-color: #000;
    top: 0;
    bottom: 0;
    right: 0;
    margin: auto;
    transition: all 0.5s ease;
}
#topsec--topics .inbox ul li span::after {
    content: "";
    position: absolute;
    width: 5px;
    height: 5px;
    border-top: 1px solid #000;
    border-right: 1px solid #000;
    top: 0px;
    bottom: 0px;
    right: 0;
    margin: auto;
    transform: rotate(45deg);
    transition: all 0.5s ease;
}
#topsec--topics .inbox ul li:hover span::before {
    right: -5px;
}
#topsec--topics .inbox ul li:hover span::after {
    right: -5px;
}
#topsec--topics .inbox ul li:first-of-type {
    padding-top: 0;
}
#topsec--topics .inbox ul li:last-of-type {
    padding-bottom: 0;
    border-bottom: 0px solid #adadad;
}
#topsec--topics .inbox ul li a {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
#topsec--topics .inbox ul li .date {
    background-color: #909090;
    color: #fff;
    font-size: 0.85em;
    line-height: 100%;
    padding: 5px 15px;
}
#topsec--topics .inbox ul li h4 {
    padding-left: 15px;
    transition: all 0.5s ease;
}
#topsec--topics .inbox ul li:hover h4 {
    padding-left: 25px;
}
#contact {
    padding-bottom: 0;
}
#contact .tih2 {
    text-align: center;
    font-size: 7em;
    line-height: 100%;
    -webkit-text-stroke: 1px #0e0e0e;
    text-stroke: 1px #009743;
    color: rgba(0,0,0,.0);
}
#contact .inner {
    background-color: #000;
    background-image: url(.././img/contact_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    margin-top: 100px;
    padding: 100px 0;
    position: relative;
    z-index: 0;
    background-color: rgb(0 0 0 / 22%);
    background-blend-mode: color;
}
#contact .inner::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 50px;
    left: 0;
    right: 0;
    background-color: #0e0e0e;
    top: -50px;
    margin: auto;
}
#contact .inner::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 50px;
    left: 0;
    right: 0;
    background-color: #fff;
    top: 0px;
    margin: auto;
}
#contact .inner .inbox {
}
#contact .inner .inbox .tel {
    text-align: center;
    color: #fff;
}
#contact .inner .inbox .tel dl {
    font-weight: 900;
}
#contact .inner .inbox .tel dl dt {
    line-height: 100%;
    letter-spacing: 2px;
    font-size: 4em;
}
#contact .inner .inbox .tel dl dt span {
    font-size: 1.5em;
    line-height: 100%;
}
#contact .inner .inbox .tel dl dt span a {
    color: #fff;
    text-decoration: none;
}
#contact .inner .inbox .tel dl dd {
    line-height: 100%;
    font-size: 2em;
}
#contact .inner .inbox .contant_link {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
    margin-top: 3rem;
}
#contact .inner .inbox .contant_link a {
    color: #fff;
    text-decoration: none;
    font-size: 1.6em;
    border: 1px solid #fff;
    padding: 10px 0;
    display: block;
    text-align: center;
    transition: all 0.5s ease;
}
#contact .inner .inbox .contant_link:hover a {
    color: #0e0e0e;
    background-color: #fff;
}
.breadcrumbs-area {
}
footer {
    background-color: #222222;
    position: relative;
    z-index: 0;
}
footer .inbox {
    padding: 6rem 0;
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
}
footer .inbox .topbox {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-end;
}
footer .inbox .topbox .left {
    position: relative;
    z-index: 0;
}
footer .inbox .topbox .left a {
    position: absolute;
    z-index: 1;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}
footer .inbox .topbox .left img {
    width: 450px;
}
footer .inbox .topbox .left h3 {
    color: #fff;
    font-size: 1.7em;
    font-weight: 900;
    line-height: 120%;
    margin-top: 1.5rem;
}
footer .inbox .topbox .right {
}
footer .inbox .topbox .right .sns {
    display: flex;
    justify-content: flex-end;
}
footer .inbox .topbox .right .sns a {
    width: 40px;
    display: block;
    height: 40px;
    padding: 0 10px;
    border-radius: 50%;
    border: 1px solid #fff;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    transition: all 0.5s ease;
}
footer .inbox .topbox .right .sns a:hover {
    opacity: 0.6;
}
footer .inbox .topbox .right .sns a:not(:last-of-type) {
    margin-right: 10px;
}
footer .inbox .topbox .right .sns img {
}
footer .inbox .topbox .right p {
    text-align: right;
    color: #fff;
    line-height: 160%;
    margin-top: 2rem;
}
footer .inbox .bottombox {
    margin-top: 3rem;
}
footer .inbox .bottombox ul {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-start;
}
footer .inbox .bottombox ul li {
    width: calc(100% / 6.5);
    width: calc(100% / 6.8);
}
footer .inbox .bottombox ul li a {
    color: #fff;
    text-decoration: none;
    display: block;
    font-size: 1.2em;
    transition: all 0.5s ease;
}
footer .inbox .bottombox ul li a.noevent {
    pointer-events: none;
}
footer .inbox .bottombox ul li a:hover {
    padding-left: 5px;
}
footer .inbox .bottombox ul li dl {
}
footer .inbox .bottombox ul li dl dt {
    border-bottom: 1px solid #808080;
}
footer .inbox .bottombox ul li dl dd {
}
footer .inbox .bottombox ul li dl dd a {
    font-size: 1em;
    margin-top: 5px;
    color: #c1c1c1;
}
footer .cop {
    background-color: #0e0e0e;
    text-align: center;
    color: #fff;
    padding: 5px 0;
}
    .pc {
    display: block;
    }
    .sp {
    display: none;
    }
    .ssp {
    display: none;
    }
/*SUB-----------------------*/
.sub_fv {
    position: relative;
    z-index: 0;
    margin-top: calc(70px + 20px);
    min-height: 315px;
}
.sub_fv .txt {
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
    padding: 3.5rem 0;
    padding-right: 50%;
}
.sub_fv .txt h2 {
    font-size: 2.8em;
    font-weight: 900;
    line-height: 120%;
    margin-bottom: 20px;
}
.sub_fv .txt h2 span {
    display: block;
    font-size: 0.4em;
    line-height: 100%;
    margin-bottom: 5px;
}
.sub_fv .txt p {
}
.sub_fv .img {
    position: absolute;
    right: 0;
    top: 0;
    width: 52%;
    max-height: 315px;
    height: 23vw;
}
.sub_fv .img img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.sub_fv.part2 {
    min-height: unset;
}
.sub_fv.part2 .txt {
    padding: 0;
    text-align: center;
    margin: 10px auto 30px;
}
.sub_fv.part2 .img {
    position: relative;
    width: 100%;
}
.sub_sec {
    padding: 6rem 0;
    width: 100%;
    overflow: hidden;
    position: relative;
    z-index: 0;
    background-color: #fff;
}
.sub_sec .sub_box {
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
}
#price_01 {
}
#price_01 .sub_box {
}
#price_01 .sub_box h3 {
    font-size: 1.9em;
    line-height: 140%;
    margin-bottom: 15px;
    font-weight: bolder;
}
#price_01 .sub_box p {
}
.subtih3 {
    font-size: 1.5em;
    font-weight: 500;
    position: relative;
    z-index: 0;
    padding-left: 30px;
}
.subtih3::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 20px;
    height: 4px;
    background-color: #8c1010;
    bottom: 0;
    top: 0;
    left: 0;
    margin: auto;
}
.subtih3 span {
    font-size: 0.8em;
    margin-left: 10px;
    font-weight: normal;
}
#price_02 {
    background-color: #fffdf2;
}
#price_02 .sub_box {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-end;
}
#price_02 .sub_box h3 {
}
#price_02 .sub_box p {
}
#price_02 .sub_box .table {
    width: 100%;
    margin-top: 30px;
}
#price_02 .sub_box .table dl {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: stretch;
}
#price_02 .sub_box .table dl dt {
    width: 20%;
    padding: 5px;
}
#price_02 .sub_box .table dl dd {
    width: 20%;
    padding: 5px;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: center;
    align-items: center;
    border-right:1px solid #9e9e78;
    border-bottom: 1px solid #9e9e78;
}
#price_02 .sub_box .table dl.table01 dd {
    border-bottom: 0px;
}
#price_02 .sub_box .table dl.table01 dd:nth-of-type(1) {
    border-top: 15px solid #5fffe3;
}
#price_02 .sub_box .table dl.table01 dd:nth-of-type(2) {
    border-top: 15px solid #fff223;
}
#price_02 .sub_box .table dl.table01 dd:nth-of-type(3) {
    border-top: 15px solid #ff8888;
}
#price_02 .sub_box .table dl.table01 dd:nth-of-type(4) {
    border-top: 15px solid #000000;
}
#price_02 .sub_box .table dl dd:nth-of-type(1) {
    border-left:1px solid #9e9e78;
}
#price_02 .sub_box .table dl dd h4 {
    width: 100%;
    text-align: center;
    font-size: 1.3em;
    line-height: 100%;
    margin-bottom: 10px;
}
#price_02 .sub_box .table dl dd p {
    line-height: 150%;
    font-size: 0.95em;
}
#price_02 .sub_box .table dl dd p span {
    display: block;
    font-weight: bold;
    font-size: 1.05em;
    line-height: 130%;
    margin-bottom: 5px;
}
#price_02 .sub_box .table .inner {
    position: relative;
    z-index: 0;
}
#price_02 .sub_box .table .inner dl dd {
    align-content: center;
}
#price_02 .sub_box .table .inner:not(:last-of-type) {
    margin-bottom: 15px;
}
#price_02 .sub_box .table .inner .left {
    background-color: #9e9e78;
    width: 100px;
    top: 0;
    bottom: 0;
    position: absolute;
    left: 0;
    padding: 5px;
    color: #fff;
    font-size: 0.9em;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}
#price_02 .sub_box .table .inner .right {
    width: 100%;
}
#price_02 .sub_box .table .inner .right dl {
    font-size: 0.9em;
}
#price_02 .sub_box .table .inner .right dl dt {
    border-left:1px solid #9e9e78;
    border-bottom: 1px solid #9e9e78;
    padding-left: 105px;
}
#price_02 .sub_box .table .inner .right dl:nth-of-type(1) dt {
    border-top: 1px solid #9e9e78;
}
#price_02 .sub_box .table .inner .right dl dd {
}
#price_02 .sub_box .table .inner .right dl dd.color_bg {
    background-color: #f5f0d4;
}
#price_02 .sub_box .table .inner .right dl:nth-of-type(1) dd {
    border-top: 1px solid #9e9e78;
}
#price_02 .sub_box .table .inner .right dl dd span {
}
#price_03 {
}
#price_03 .sub_box {
}
#price_03 .sub_box .title {
    font-size: 2.8em;
    font-weight: 900;
    line-height: 120%;
    margin-bottom: 20px;
    text-align: center;
}
#price_03 .sub_box .title span {
    display: block;
    font-size: 0.4em;
    line-height: 100%;
    margin-bottom: 5px;
}
#price_03 .sub_box p {
}
#price_03 .sub_box ul {
    display: flex;
    flex-wrap: wrap;
    align-content: flex-start;
    justify-content: space-between;
    align-items: stretch;
    margin-top: 30px;
}
#price_03 .sub_box ul li {
    width: 48.5%;
    box-shadow: 0px 0px 5px #696969;
    padding: 30px;
    border-radius: 20px;
    margin-bottom: 3%;
}
#price_03 .sub_box ul li:nth-of-type(3),
#price_03 .sub_box ul li:nth-of-type(4) {
    margin-bottom: 0%;
}
#price_03 .sub_box ul li .ti {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
    align-items: center;
}
#price_03 .sub_box ul li:nth-of-type(1) .ti,
#price_03 .sub_box ul li:nth-of-type(1)  p.price span
{
    color: #00697f;
}
#price_03 .sub_box ul li:nth-of-type(2) .ti,
#price_03 .sub_box ul li:nth-of-type(2)  p.price span {
    color: #2d7f00;
}
#price_03 .sub_box ul li:nth-of-type(3) .ti,
#price_03 .sub_box ul li:nth-of-type(3)  p.price span {
    color: #dd6800;
}
#price_03 .sub_box ul li:nth-of-type(4) .ti,
#price_03 .sub_box ul li:nth-of-type(4)  p.price span {
    color: #ad0000;
}
#price_03 .sub_box ul li .ti .num {
    font-size: 2.5em;
    line-height: 100%;
}
#price_03 .sub_box ul li .ti .num span {
    display: block;
    font-size: 0.4em;
    text-align: center;
    line-height: 100%;
}
#price_03 .sub_box ul li h3 {
    font-size: 1.3em;
    line-height: 130%;
    margin-left: 10px;
    font-weight: 800;
}
#price_03 .sub_box ul li p.desc {
    text-align: left;
    font-weight: 700;
    line-height: 160%;
    margin: 15px 0;
}
#price_03 .sub_box ul li p.price {
    font-size: 1.3em;
    padding-left: 20px;
    padding-top: 15px;
    position: relative;
    z-index: 0;
}
#price_03 .sub_box ul li p.price::before {
    content: "￥";
    position: absolute;
    z-index: -1;
    font-weight: bold;
    font-size: 3em;
    line-height: 100%;
    bottom: 0;
    left: 0;
    color: #d4d4d4;

}
#price_03 .sub_box ul li p.price span {
}
#price_03 .sub_box ul li p.price strong {
    font-size: 2.0em;
    line-height: 100%;
}
#price_03 .sub_box ul li dl {
}
#price_03 .sub_box ul li dl dt {
    font-size: 1.3em;
    font-weight: bold;
}
#price_03 .sub_box ul li dl dd {
    position: relative;
    z-index: 0;
    padding-left: 10px;
}
#price_03 .sub_box ul li dl dd::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 5px;
    height: 5px;
    background-color: #8c1010;
    border-radius: 50%;
    top: 12px;
    left: 0;
    margin: auto;
}
#todo_01 {
}
#todo_01 .sub_box {
    width: 800px;
}
#todo_01 .sub_box form.add_box {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: stretch;
}
#todo_01 .sub_box form.add_box input[type="text"] {
    border: 1px solid #797979;
    border-radius: 5px 0 0 5px;
    width: calc(100% - 100px);
    padding: 10px;
    border-right: 0px;
}
#todo_01 .sub_box form.add_box input[type="submit"] {
    border-radius: 0 5px 5px 0;
    border: 1px solid #8c1010;
    width: 100px;
    background-color: #8c1010;
    color: #fff;
    transition: all 0.5s ease;
    cursor: pointer;
}
#todo_01 .sub_box form.add_box input[type="submit"]:hover,
#todo_01 .sub_box form.add_box input[type="submit"]:focus {
    background-color: #fff;
    color: #8c1010;
}
#todo_01 .sub_box ul {
    margin-top: 3rem;
}
#todo_01 .sub_box ul li {
    background-color: #efefef;
    padding: 13px;
    border-radius: 5px;
    font-size: 1.2em;
    position: relative;
    z-index: 0;
    display: flex;
    align-content: flex-start;
    justify-content: flex-start;
    align-items: center;
}
#todo_01 .sub_box ul li.checked {
    background-color: #999797;
}
#todo_01 .sub_box ul li:not(:last-of-type) {
    margin-bottom: 10px;
}
#todo_01 .sub_box ul li .delete {
    width: 15px;
    height: 15px;
    position: absolute;
    right: 13px;
    bottom: 0;
    top: 0;
    margin: auto;
    cursor: pointer;
}
#todo_01 .sub_box ul li .delete input[type="submit"] {
    position: absolute;
    z-index: 100;
    width: 100%;
    height: 100%;
}
#todo_01 .sub_box ul li .delete::before ,
#todo_01 .sub_box ul li .delete::after {
    content: "";
    width: 100%;
    height: 1px;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    background-color: #000;
    position: absolute;
}
#todo_01 .sub_box ul li .delete::before {
    transform: rotate(45deg);
}
#todo_01 .sub_box ul li .delete::after {
    transform: rotate(-45deg);
}
#todo_01 .sub_box ul li input[type="checkbox"] {
    margin-right: 10px;
    cursor: pointer;
}
#todo_01 .sub_box ul .all_delete {
}
#todo_01 .sub_box ul .all_delete input[type="submit"] {
    width: 100%;
    padding: 5px;
    background-color: #000;
    color: #fff;
    margin-bottom: 20px;
}

@media (max-width: 1600px) {
#topsec--price .inbox .table ul li .price {
    font-size: 1.2em;
}
#topsec--price .inbox .table ul li .price span {
    font-size: 1.8em;
}
}
@media (max-width: 1400px) {
header {
    padding: 1.5vw 1.5vw 0;
}
header .unit .menu ul li:not(:last-of-type) {
    margin-right: 1vw;
}
header .unit .logo img {
    width: 15vw;
}
header .unit .logo p {
    font-size: 0.85em;
    padding-left: 0.5vw;
}
header .unit .menu .botton {
    margin-left: 1vw;
}
header .unit .menu ul li a {
    padding: 0.5vw;
    font-size: 1.0em;
}
.unit_inner .left .logo p {
    font-size: 1.5em;
}
#top_fv #fvbox {
    margin-top: calc(5vw + 3vw);
    height: calc(100vh - 8vw);
}
#top_fv #fvbox p {
}
#top_fv .video_bg {
    height: calc(200vh - 30vw);
    top: 30vw;
}
#top_fv .video_bg video {
    height: calc(200vh - 30vw);
}
    .tb {
        display: block;
    }
.unit_inner .right ul li {
    margin-bottom: 2vw;
}
#top_fv #fvbox p {
    margin-top: 3vw;
}
#top_fv #bottom_box .content p {
    margin-top: 2vw;
}
#topsec--price .inbox .table ul li {
    padding: 0.5vw;
}
#topsec--price .inbox .table ul li h3 {
    font-size: 1.2em;
}
#topsec--price .inbox .table ul li .price {
    font-size: 1.2em;
    margin: 1vw 0;
}
#topsec--price .inbox .table ul li p span {
    margin-bottom: 0.5vw;
}
#topsec--price .inbox .table ul li p {
    min-height: 15vw;
}
#topsec--price .inbox .table ul {
    margin: 2vw 0;
}
.top_section {
    padding: 5vw 0;
}
#topsec--price .inbox .txt_box {
    margin: 3vw 0;
}
#topsec--voice .inner h3 {
    margin: 3vw 0;
}
#topsec--voice .inner .slider_box {
    margin: 2vw auto;
}
#topsec--service {
    padding: 6vw 0;
}
#topsec--service .inbox .tih2 {
    margin-bottom: 6vw;
}
#topsec--company .inbox .txt_box .tih2.jp {
    margin: 2vw 0;
}
#topsec--company .inbox .link_box {
    margin-top: 2vw;
}
#topsec--blog .inbox .slider_box {
    margin-top: 3vw;
    padding-bottom: 3vw;
}
#topsec--blog .inbox .slider_box .swiper-slide .img_box img {
    height: 15vw !important;
    max-height: 250px;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box dl {
    margin: 1vw 0;
}
#topsec--topics .inbox ul li {
    padding: 1.8vw 0;
}
#topsec--price .inbox .table ul li .price {
    font-size: 1.2em;
}
#topsec--price .inbox .table ul li .price span {
    font-size: 1.8em;
}
#contact .inner {
    margin-top: 8vw;
    padding: 8vw 0;
}
#contact .inner::before {
    height: 4vw;
    top: -4vw;
}
#contact .inner::after {
    height: 4vw;
}
#contact .inner .inbox .contant_link {
    width: 800px;
    max-width: 100%;
    margin: 0 auto;
    margin-top: 3vw;
}
#contact .inner .inbox .contant_link a {
    padding: 1.25vw 0;
}
footer .inbox {
    padding: 5vw 0;
}
footer .inbox .bottombox {
    margin-top: 4vw;
}
footer .inbox .topbox .left img {
    width: 33vw;
}
footer .inbox .topbox .left h3 {
    margin-top: 1.5vw;
}
footer .inbox .topbox .right p {
    margin-top: 2vw;
}
footer .inbox .bottombox ul li dl dd a {
    margin-top: 0.5vw;
}
.contact_banner h4 {
    padding: 1.25vw 0;
}
.contact_banner ul li a {
    padding: 1.25vw 0;
}
#splash .inbox dl {
    padding: 0 3rem;
}
#splash dl dt {
    width: 100px;
}
#splash dl dd {
    padding-left: 20px;
}
#splash dl dd span {
    margin-top: 10px;
}
/*SUB-----------------------*/
.sub_fv {
    margin-top: calc(5vw + 2.5vw);
    min-height: 23vw;
}
.sub_fv .txt {
    padding: 3.5vw 0;
    padding-right: 49%;
}
.sub_sec {
    padding: 5vw 0;
}
.sub_fv.part2 {
}
}
@media (max-width: 1200px) {
#top_fv #fvbox p {
    font-size: 1.1em;
}
}
@media (max-width: 850px) {
header .unit .menu ul {
    display: none;
}
#top_fv #bottom_box .title {
    width: 100%;
    margin-bottom: 3vw;
}
#top_fv #bottom_box .content {
    width: 100%;
}
.unit_inner .inbox {
    overflow-y: scroll;
    align-content: flex-start;
}
.unit_inner .left {
    width: 100%;
    padding-right: 0;
    margin-bottom: 2vw;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: flex-start;
}
.unit_inner .left .logo {
    margin-bottom: 0vw;
    width: 35vw;
}
.unit_inner .left .logo p {
    font-size: 1.4em;
}
.link_box a {
    padding: 1vw 0;
}
.unit_inner .left .link_box {
    width: 27vw;
}
.unit_inner .right {
    width: 100%;
}
.unit_inner .right ul li {
    width: 49%;
}
.unit_inner .right ul li:not(:nth-of-type(3n+3)) {
    margin-right: 0%;
}
.unit_inner .right ul li:not(:nth-of-type(2n+2)) {
    margin-right: 2%;
}
#topsec--works .box01 .tih2 {
    font-size: 9em;
}
    .pc {
    display: none;
    }
    .sp {
    display: block;
    }
#topsec--works-list .inbox ul li {
    width: 49%;
}
#topsec--works-list .inbox ul li:nth-of-type(9) {
    display: none;
}
#topsec--works-list .inbox ul li:not(:nth-of-type(3n+3)) {
    margin-right: 0%;
}
#topsec--works-list .inbox ul li:not(:nth-of-type(2n+2)) {
    margin-right: 2%;
}
#top_fv #fvbox h1 {
    font-size: 2.8em;
}
#topsec--price .inbox .flex .txt {
    width: 100%;
    margin-top: 3vw;
}
#topsec--price .inbox .table ul li {
    width: 50%;
}
#topsec--price .inbox .table ul li p {
    min-height: 12vw;
}
#topsec--price .inbox .table ul li:nth-of-type(2),
#topsec--price .inbox .table ul li:nth-of-type(4) {
    border-right: 1px solid #e0e0e0;
}
#topsec--company .img_box {
    width: 100%;
    position: relative;
    display: block;
    margin-bottom: 5vw;
}
#topsec--company .inbox .txt_box {
    width: 100%;
    margin: 0;
}
#topsec--blog .inbox .slider_box .swiper-slide .img_box img {
    height: 40vw !important;
}
#topsec--topics .inbox .title_box {
    width: 100%;
    padding-right: 0;
}
#topsec--topics .inbox .title_box .link {
    margin-top: 2vw;
}
#topsec--topics .inbox ul {
    width: 100%;
    margin-top: 3vw;
}
footer .inbox .bottombox ul li {
    width: 100%;
}
footer .inbox .bottombox ul li:not(:last-of-type) {
    margin-bottom: 2vw;
}
footer .inbox .topbox .right {
    width: 100%;
}
footer .inbox .topbox .right .sns {
    justify-content: flex-start;
    margin-top: 3vw;
}
footer .inbox .topbox .right p {
    text-align: left;
}
.contact_banner {
    max-width: 100%;
    border-radius: 0 0px 0 0;
}
.sub_fv .img {
    height: 26.5vw;
}
}
@media (max-width: 500px) {
header .unit .logo {
    flex-direction: column-reverse;
    align-items: flex-start;
}
header .unit .logo img {
    width: 40vw;
    max-width: 150px;
}
header .unit .logo p {
    font-size: 0.75em;
    padding-left: 0;
    margin-bottom: 0.5vw;
    line-height: 100%;
}
.unit_inner .left .logo {
    margin-bottom: 4vw;
    width: 100%;
}
.unit_inner .left .logo img {
    width: 250px;
    max-width: 100%;
}
.unit_inner .left .logo p {
    font-size: 1.1em;
}
.unit_inner .left .link_sec {
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}
.unit_inner .left .link_box {
    width: 49.5%;
}
.unit_inner .left .link_box:not(:last-of-type) {
    margin-bottom: 0;
}
.unit_inner .left .link_box a {
    font-size: 0.9em;
}
.unit_inner .right ul li dl dt a {
    font-size: 1.3em;
}
.unit_inner .right ul li dl dd a {
    font-size: 0.9em;
}

#splash .inbox dl {
    padding: 0px 4vw;
}
#splash dl dt {
    width: 18vw;
}
#splash dl dd {
    padding-left: 3vw;
}
#splash dl dd span {
    margin-top: 1.5vw;
}
#top_fv #fvbox h1 {
    font-size: 2.0em;
}
    .ssp {
    display: block;
    }
#top_fv #fvbox p {
    margin-top: 6vw;
    font-size: 1.0em;
}
.contact_banner ul li a {
    padding: 3vw 0;
    font-size: 1.05em;
}
.contact_banner h4 {
    padding: 3vw 0;
    font-size: 1.2em;
}
#top_fv .video_bg {
    height: 100vh;
    top: 0vw;
    position: fixed;
    opacity: 0.6;
}
#top_fv .video_bg video {
    height: 100vh;
}
#top_fv #fvbox {
    /*margin-top: calc(15vw + 7.5vw);
    height: calc(100vh - 22.5vw);*/
    margin-top: 0;
    height: 100vh;
    align-content: center;
}
#top_fv #bottom_box .title h2 {
    font-size: 2.0em;
}
#top_fv #bottom_box .content h3 {
    font-size: 1.4em;
}
#top_fv #bottom_box .content p {
    margin-top: 5vw;
}
#top_fv #bottom_box {
    padding-bottom: 10vh;
}
#topsec--works .box01 .tih2 {
    font-size: 6em;
}
#topsec--works .box02 .txt_box {
    position: relative;
    width: 100%;
    display: block;
}
#topsec--works .box02 .slider_box {
    width: 100%;
    position: relative;
    z-index: 0;
}
#topsec--works .box02 .inbox {
    flex-direction: column-reverse;
}
#topsec--works .box02 .txt_box {
    margin-top: 5vw;
    display: flex;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: flex-end;
}
#topsec--works .box02 .txt_box h2 {
    font-size: 1.8em;
    margin-bottom: 6vw;
}
#topsec--works .box02 .txt_box dl {
    font-size: 1.1em;
    padding-left: 0%;
    margin-bottom: 0;
    width: 100%;
}
#topsec--works .box02 .txt_box dl:nth-of-type(2) dd span {
    font-size: 5em;
}
#topsec--works .box02 .txt_box dl dt {
    line-height: 120%;
}
#topsec--works .box02 .txt_box .link_box {
    padding-left: 0;
    margin-top: 6vw;
}
#topsec--works .box02 .slider_box .swiper-pagination .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
}
#topsec--works .box02 .slider_box .swiper-pagination .swiper-pagination-bullet:not(:last-of-type) {
    margin-right: 10px;
}
.link_box a {
    padding: 2.5vw 0;
}
#topsec--service .inbox .tih2 .jp {
    font-size: 0.6em;
    padding-left: 0;
    display: block;
}
#topsec--service .inbox .slider_box {
    margin-right: 25px;
}
#topsec--price .inbox .flex .tih2 {
    font-size: 3.8em;
}
#topsec--price .inbox .txt_box h3 {
    font-size: 2.5em;
    line-height: 130%;
}
#topsec--price .inbox .txt_box p {
    font-size: 1.1em;
    margin-top: 4vw;
}
#topsec--price .inbox .txt_box p span {
    font-size: 1.1em;
    border-bottom: 4px solid #e6ff10;
}
#topsec--price .inbox .txt_box p span::before {
    content: none;
}
#topsec--price .inbox .txt_box p .sp {
    display: none;
}
#topsec--price .inbox .table ul li {
    width: 100%;
    padding: 4.5vw;
}
#topsec--price .inbox .table ul li h3 {
    font-size: 1.4em;
}
#topsec--price .inbox .table ul li .price {
    margin: 2vw 0;
}
#topsec--price .inbox .table ul li p {
    min-height: unset;
}
#topsec--price .inbox .table ul li .link_box {
    margin-top: 4.5vw;
}
#topsec--price .inbox .table ul li p span {
    margin-bottom: 1.5vw;
}
#topsec--price .inbox .table .notice {
    font-size: 1.0em;
}
#topsec--voice .tih2 {
    font-size: 3.5em;
}
.tih2 .num {
    font-size: 15px;
}
#topsec--voice .inner h3 {
    margin: 6vw 0;
    font-size: 2em;
}
#topsec--voice .inner .swiper-pagination2 .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
}
#topsec--voice .inner .swiper-pagination2 .swiper-pagination-bullet:not(:last-of-type) {
    margin-right: 10px;
}
#topsec--voice .inner .slider_box .txt_box {
    padding: 4vw;
}
#topsec--voice .inner .slider_box .txt_box p {
    margin-top: 1vw;
    line-height: 100%;
}
#topsec--voice .inner .slider_box {
    margin: 6vw auto;
}
#topsec--blog .inbox .slider_box {
    margin-top: 6vw;
    padding-bottom: 10vw;
}
#topsec--blog .inbox .slider_box .swiper-slide .txt_box dl {
    margin: 2vw 0;
}
#topsec--topics .inbox .title_box .tih2 {
    font-size: 3.0em;
}
#topsec--topics .inbox ul li h4 {
    padding-left: 0;
    width: 100%;
    padding-right: 15px;
    line-height: 120%;
    margin-top: 1vw;
}
#topsec--topics .inbox ul li:hover h4 {
    padding-left: 0px;
    transform: translate(5px,0px);
}
#topsec--topics .inbox ul li {
    padding: 3vw 0;
}
#contact .tih2 {
    font-size: 3.8em;
}
#contact .inner {
    margin-top: 15vw;
    padding: 15vw 0;
}
#contact .inner::before {
    height: 7.5vw;
    top: -7.5vw;
}
#contact .inner::after {
    height: 7.5vw;
}
#contact .inner .inbox .tel dl dt {
    font-size: 2.2em;
}
#contact .inner .inbox .tel dl dt span {
    font-size: 1.5em;
    line-height: 100%;
    display: block;
}
#contact .inner .inbox .tel dl dd {
    font-size: 1.3em;
    margin-top: 2vw;
}
#contact .inner .inbox .contant_link a {
    padding: 3vw 0;
    font-size: 1.3em;
}
#contact .inner .inbox .contant_link {
    margin-top: 5vw;
}
footer .inbox .topbox .left img {
    width: 75vw;
}
footer .inbox .topbox .left h3 {
    margin-top: 2.5vw;
    font-size: 1.2em;
}
footer .inbox {
    padding: 10vw 0;
}
footer .inbox .topbox .right .sns {
    margin-top: 5vw;
}
footer .inbox .topbox .right p {
    margin-top: 5vw;
}
footer .inbox .topbox .right .sns a {
    width: 35px;
    height: 35px;
    padding: 0 10px;
}
footer .inbox .bottombox ul li:not(:last-of-type) {
    margin-bottom: 4vw;
}
/*SUB-----------------------*/
.sub_fv {
    margin-top: calc(5vw + 3vw);
    padding-top: 25vw;
}
.sub_fv .img {
    width: 80%;
    height: 35vw;
}
.sub_fv .txt {
    width: 1600px;
    max-width: 90%;
    margin: 0 auto;
    background-color: #ffffffbd;
    z-index: 1;
    position: relative;
    padding: 10px;
}
.sub_fv .txt h2 {
    font-size: 1.8em;
    margin-bottom: 4vw;
}
.sub_fv .txt p {
    line-height: 150%;
}
.sub_fv .txt h2 span {
    font-size: 0.5em;
}
.sub_fv.part2 {
    padding-top: 2vw;
}
#price_01 .sub_box h3 {
    font-size: 1.6em;
}
#price_02 .sub_box h3 {
    width: 100%;
    margin-bottom: 5px;
}
#price_02 .sub_box .table dl {
    width: 880px;
}
#price_02 .sub_box .table .inner .left {
    width: 70px;
}
#price_02 .sub_box .table .inner .right dl dt {
    padding-left: 75px;
}
#price_02 .sub_box .table dl dd h4 {
    font-size: 1.15em;
}
#price_02 .sub_box .table {
    overflow-x: scroll;
    margin-top: 10px;
}
#price_03 .sub_box .title {
    font-size: 1.8em;
}
#price_03 .sub_box .title span {
    font-size: 0.5em;
}
#price_03 .sub_box ul li {
    width: 100%;
    padding: 15px;
    border-radius: 15px;
    margin-bottom: 5vw;
}
#price_03 .sub_box ul li h3 {
    margin-left: 0;
    width: 100%;
}
#price_03 .sub_box ul li p.desc {
    line-height: 140%;
    margin: 10px 0;
}
#price_03 .sub_box ul li dl dd::before {
    top: 10px;
}
#price_03 .sub_box ul li p.price {
    font-size: 1.2em;
    padding-left: 15px;
    padding-top: 15px;
}
#price_03 .sub_box ul li p.price strong {
    font-size: 1.8em;
}
#todo_01 .sub_box form.add_box input[type="text"] {
    width: calc(100% - 80px);
    padding: 5px;
}
#todo_01 .sub_box form.add_box input[type="submit"] {
    width: 80px;
}
#todo_01 .sub_box ul {
    margin-top: 1.5rem;
}
#todo_01 .sub_box ul li {
    padding: 7px;
    font-size: 1em;
}
#todo_01 .sub_box ul li:not(:last-of-type) {
    margin-bottom: 5px;
}
#todo_01 .sub_box ul li .delete {
    width: 10px;
    height: 10px;
    right: 7px;
}
}
