/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.12,
* Autoprefixer: v10.4.4
* Browsers: last 4 version
*/

@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
*/
/*-----------------BODY--------------------------------------------*/
/*Google Font*/
@import url('https://fonts.googleapis.com/css2?family=Zen+Antique+Soft&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Train+One&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Spartan:wght@100;200;300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Philosopher:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Sorts+Mill+Goudy&display=swap');
html {
    font-size: 62.5%;
}
body {
    font-size: 1.6rem;
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    font-weight: 400;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
    letter-spacing: 1px;
    height: 100%;
    overflow: visible;
}
body.mobile {
    overflow-x: hidden;
}
b, strong, .bold {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI semibold", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic", "Segoe UI", Verdana, Meiryo, sans-serif;
}
img {
    vertical-align: bottom;
}
#wrapper {
    padding: 0;
    width: 100%;
    overflow: visible;
    padding-top: 105px;
}
.post img {
    border: none !important;
    padding: 0;
    margin: 0 !important;
    vertical-align: bottom;
}
.home #content, .archive #content, .single #content, #content.wide {
    padding: 0;
    width: 100%;
}
.post {
    margin-bottom: 0;
    padding: 0;
}
.post p {
    padding: 0;
}
.post h2 span {
    padding: 0;
}
.post h2:after {
    content: none;
}
body.error404 .wide {
    width: 90%;
    margin: 0 auto;
    text-align: center;
    padding: 70px 0 0 0 !important;
}
#breadcrumb ul li span span {
    display: none;
}
.post .linkBtn .ajax-loader {
    display: none;
}
body.home #wrapper #content {
    float: none;
}
ul.postlist {
    margin: 0;
    text-align: left;
}
ul.postlist li {
    margin: 0;
    padding: 0;
}
ul.postlist .post_text {
    width: 100%;
    margin: 0;
}
ul.post4b {
    margin: 0;
    padding: 0;
    background: none;
}
.post4b li {
    margin: 0;
    padding: 0;
    border-bottom: none !important;
}
.post4b img {
    max-width: 100%;
}
body.home h2 {
    background: transparent;
    margin: 0;
    padding: 0;
    color: #fff;
}
i.fa-brands {
    font-style: normal;
}
* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
.pc_none {
    display: none;
}
a#scrollUp {
    z-index: 5 !important;
}
/*--------------------------------------------------------------------
ヘッダー
--------------------------------------------*/
#header {
    position: fixed;
    width: 100%;
    z-index: 100;
}
#header .inner {
    width: 100%;
}
/*-----HAMBURGER MENU-----start*/
/*menu trigger
--------------------------------------------------------*/
#hbNav {
    position: relative;
}
.menu-trigger, .menu-trigger span {
    display: inline-block;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 10;
}
.menu-trigger {
    position: absolute;
    width: 65px;
    height: 14px;
    top: 50%;
    right: 0;
    cursor: pointer;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 20;
}
.menu-trigger p.menutr {
    position: absolute;
    bottom: -82%;
    font-size: 80%;
    color: #f8d4da;
    z-index: 3;
}
#menu-trigger.active p.menutr {
    display: none;
}
.menu-trigger span {
    position: absolute;
    width: 100%;
    height: 2px;
    background-color: #000000;
}
.menu-trigger span:nth-of-type(1) {
    top: 0;
}
.menu-trigger span:nth-of-type(2) {
    bottom: 0;
}

/*menu trigger fix
--------------------------------------------------------*/
.menu-trigger-fix, .menu-trigger-fix span {
    display: inline-block;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    z-index: 13;
}
.menu-trigger-fix {
    position: fixed;
    width: 30px;
    height: 27px;
    left: 83%;
    top: 65px;
}
.menu-trigger-fix span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    background-color: #111;
    border-radius: 0px;
}
.menu-trigger-fix span:nth-of-type(1) {
    top: 0;
}
.menu-trigger-fix span:nth-of-type(2) {
    bottom: 0;
}
/*menu trigger effect
--------------------------------------------------------*/
#menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(5px) rotate(-45deg);
        -ms-transform: translateY(5px) rotate(-45deg);
            transform: translateY(5px) rotate(-45deg);
    background-color: #fff;
}
#menu-trigger.active span:nth-of-type(2) {
    background: #fff;
    -webkit-transform: translateY(-5px) rotate(45deg);
        -ms-transform: translateY(-5px) rotate(45deg);
            transform: translateY(-5px) rotate(45deg);
}
/* メインコンテンツ
--------------------------------------------------------*/
#all {
    position: relative;
    width: 100%;
    height: 100%;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    z-index: 2;
}
/* サイドオープン時にメインコンテンツを覆う部分
--------------------------------------------------------*/
.overlay {
    content: '';
    visibility: hidden;
    position: fixed;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0);
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
    z-index: 5;
}
.overlay::after {
    content: "";
    visibility: hidden;
    position: fixed;
    top: 40%;
    left: 0;
    display: block;
    width: 100%;
    height: 50px;
    color: rgba(255, 255, 255, 0);
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}
.side-open .overlay {
    visibility: visible;
    cursor: pointer;
    background: rgba(0, 0, 0, .7);
}
.side-open .overlay::after {
    visibility: visible;
    color: rgba(255, 255, 255, .8);
}
/* サイドメニュー ※リストのスタイルは省略
--------------------------------------------------------*/
#right-panel {
    width: 100%;
    height: 100vh;
    right: 0;
    background: url(/wp-content/uploads/bg_black.png) center repeat;
    background-size: 128px;
    padding: 0;
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    position: fixed;
    z-index: 10;
    top: 0;
    text-align: left;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    pointer-events: none;
    opacity: 0;
}
.hbMenuttl {
    color: #fff;
    font-family: 'Spartan';
    font-size: calc(3.5rem + (1vw - 1.92rem) * 0.6472); /*3.5 to 2.5*/
    font-weight: 700;
    margin-bottom: 25px;
}
.hbmenuWrap dl dt a, .hbmenuWrap dl dd a {
    color: #fff;
}
.hbMenuBox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #3e3e3e;
    gap: 40px;
}
.hbmenu_inner .hbmenuWrap:last-of-type {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.hbmenuWrap dl dt {
    margin-bottom: 20px;
}
.hbMenuBox dl dt {
    display: inline-block;
    font-family: 'Spartan';
    font-size: calc(2rem + (1vw - 1.92rem) * 0.1294); /*2.0 to 1.8*/
    font-weight: 600;
    color: #fff;
    position: relative;
    border-bottom: 2px solid;
    padding-bottom: 2px;
}
.hbmenuWrap dl dd {
    font-size: 1.4rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 10px;
    color: #fff;
}
.hbmenuWrap dl dd:before {
    content: '-';
    -webkit-margin-end: 5px;
            margin-inline-end: 5px;
    color: #fff;
}
.hbmenuWrap.wrap02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
}
.hbmenuWrap.wrap02 dl dt {
    margin-bottom: 20px;
}
.hbmenuWrap.wrap02 dl dt a {
    font-family: 'Spartan';
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff;
    padding-bottom: 2px;
}
/* サイドメニューオープン
--------------------------------------------------------*/
.side-open #right-panel {
    opacity: 1.0;
    pointer-events: auto;
    padding: 0 10%;
}
/*-----HAMBURGER MENU-----end*/
#header-layout {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 40px 3.125% 0;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.headlogo img {
    max-height: 65px;
}
nav#gNav {
    margin: 0 120px 0 auto;
}
ul.gNav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
}
li.gNav-item a {
    font-family: 'Spartan';
    font-weight: 500;
    font-size: 1.4rem;
}
@media screen and (max-width: 1200px) {
    ul.gNav-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 30px;
    }
    li.gNav-item a {
        font-size: 1.2rem;
    }
    .menu-trigger {
        width: 50px;
        cursor: pointer;
    }
    #menu-trigger.active span:nth-of-type(2) {
        -webkit-transform: translateY(-6px) rotate(45deg);
            -ms-transform: translateY(-6px) rotate(45deg);
                transform: translateY(-6px) rotate(45deg);
    }
}
@media print, screen and (max-width: 1023px) {
    ul.gNav-list {
        display: none;
    }
    .hbmenu_inner {
        overflow-y: scroll;
        max-height: calc( 100vh - 85px - 64px );
    }
    .mobile #header-layout {
        padding: 30px 6% 0;
    }
}
@media screen and (max-width: 959px) {
    .hbmenu_inner {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .hbMenuBox {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 20px;
    }
    .hbmenuWrap.wrap02 {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .hbmenuWrap.wrap02 dl {
        width: calc((100% - 80px) / 3);
    }
}
@media screen and (max-width: 750px) {
    #header {
        text-align: initial;
    }
}
@media screen and (max-width: 559px) {
    .side-open #right-panel {
        padding: 0 8%;
    }
    .mobile #header-layout {
        padding: 20px 6% 0;
    }
    .menu-trigger {
        width: 40px;
        height: 10px;
    }
    .headlogo img {
        max-height: 40px;
    }
    .pc_none {
        display: block;
    }
    #menu-trigger.active span:nth-of-type(1) {
        -webkit-transform: translateY(5px) rotate(-45deg);
            -ms-transform: translateY(5px) rotate(-45deg);
                transform: translateY(5px) rotate(-45deg);
    }
    #menu-trigger.active span:nth-of-type(2) {
        -webkit-transform: translateY(-3px) rotate(45deg);
            -ms-transform: translateY(-3px) rotate(45deg);
                transform: translateY(-3px) rotate(45deg);
    }
    .hbmenuWrap dl dt {
        margin-bottom: 15px;
    }
    .hbmenuWrap.wrap01 dl dd {
        font-size: 1.3rem;
    }
    .hbmenuWrap.wrap02 dl dt {
        margin-bottom: 15px;
    }
    .hbmenuWrap.wrap02 {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .hbmenuWrap.wrap02 dl {
        width: calc((100% - 40px) / 2);
    }
    .hbmenuWrap.wrap02 dl dd {
        font-size: 1.1rem;
    }
}
/*-----------------KeyVisual--------------------------------------------*/
#keyvisual {
    position: relative;
}
.keyvisual_inner {
    padding-top: 160px;
}
.kv-read.sonosaki {
    position: absolute;
    width: 11.66666666666667%;
    max-width: 224px;
    top: 30vh;
    left: -20px;
}
.kv-text {
    position: absolute;
    right: 7%;
    top: 160px;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
}
.kv-text p {
    -webkit-font-feature-settings: initial;
            font-feature-settings: initial;
}
.kv-text p:nth-of-type(1) {
    font-size: calc(1.5rem + (1vw - 1.92rem) * 0.1942); /* 1.5 to 1.2*/
    font-weight: bold;
    letter-spacing: 0.5rem;
    line-height: 2.2;
}
.kv-text p:nth-of-type(2) {
    font-size: calc(2.3rem + (1vw - 1.92rem) * 0.4531); /* 2.3 to 1.6*/
    font-weight: bold;
    letter-spacing: 0.5rem;
    line-height: 1.9;
    margin-right: 15px;
}
.kv-circle_img {
    position: relative;
}
.kvface-read01 {
    position: absolute;
    width: 25.72916666666667%;
    max-width: 494px;
    left: 11.45833333333333%;
    bottom: -5%;
}
.kvface-read02 {
    position: absolute;
    width: 25.72916666666667%;
    max-width: 494px;
    right: 11%;
    bottom: -5%;
}
.kvface-woman {
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 52.08333333333333%;
    max-width: 1000px;
    -webkit-transform: translate3d(-50%, 1px, 0);
            transform: translate3d(-50%, 1px, 0);
    text-align: center;
}
.kv-butterfly {
    position: absolute;
    width: 10%;
    max-width: 192px;
    left: 25%;
    top: 10%;
}
.kv-movie {
    position: relative;
    z-index: -1;
}

div#n2-ss-2-align {
    width: 52.083333%;
    max-width: 1000px;
    margin: 0px auto;
    -webkit-clip-path: circle(50% at 50% 50%);
            clip-path: circle(50% at 50% 50%);
}
div#n2-ss-5 .n2-ss-slider-2 {
    background-color: initial !important;
}
div#n2-ss-5 .n2-style-101dc56f5ae9a4601369d7b41db615b5-heading:Hover, div#n2-ss-5 .n2-style-101dc56f5ae9a4601369d7b41db615b5-heading:ACTIVE, div#n2-ss-5 .n2-style-101dc56f5ae9a4601369d7b41db615b5-heading:FOCUS {
    background: initial !important;
}
/* div#n2-ss-5 .n2-ss-slide {
    background: none !important;
} */
div#n2-ss-5 .n2-ss-slide {
    border-radius: 0 !important;
}

.kv-movie_inner {
    position: relative;
    width: 52.083333vw;
    height: 52.083333vw;
    max-width: 1000px;
    margin: 0px auto;
    -webkit-clip-path: circle(50% at 50% 50%);
            clip-path: circle(50% at 50% 50%);
}
.kv-movie_inner video {
    position: absolute;
    width: auto;
    height: 100%;
    opacity: 0;
    -webkit-animation: change-img-anim 30s infinite;
            animation: change-img-anim 30s infinite;
}
.kv_video:nth-of-type(1) {
	-webkit-animation-delay: 0s;
	        animation-delay: 0s;
}
.kv_video:nth-of-type(2) {
	-webkit-animation-delay: 10s;
	        animation-delay: 10s;
}
.kv_video:nth-of-type(3) {
	-webkit-animation-delay: 20s;
	        animation-delay: 20s;
}

@-webkit-keyframes change-img-anim {
	0%{ opacity: 0;}
	10%{ opacity: 1;}
	90%{ opacity: 1;}
	100%{ opacity: 0;}
}

@keyframes change-img-anim {
	0%{ opacity: 0;}
	10%{ opacity: 1;}
	90%{ opacity: 1;}
	100%{ opacity: 0;}
}

a.scroll-line {
    position: absolute;
    right: 3%;
    bottom: 0;
    -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
            writing-mode: vertical-rl;
    font-family: 'Spartan';
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.2rem;
    text-transform: uppercase;
    text-decoration: none;
    overflow: hidden;
    display: inline-block;
    padding: 0px 0 110px;
}
a.scroll-line:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 100px;
    background: #000;
    -webkit-animation: sdl 1.7s cubic-bezier(1, 0, 0, 1) infinite;
            animation: sdl 1.7s cubic-bezier(1, 0, 0, 1) infinite;
}
a.scroll-line:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 1px;
    height: 100px;
    background: #ccc;
}
@-webkit-keyframes sdl {
    0% {
        -webkit-transform: scale(1, 0);
                transform: scale(1, 0);
        -webkit-transform-origin: 0 0;
                transform-origin: 0 0;
    }
    50% {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: 0 0;
                transform-origin: 0 0;
    }
    50.1% {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: 0 100%;
                transform-origin: 0 100%;
    }
    100% {
        -webkit-transform: scale(1, 0);
                transform: scale(1, 0);
        -webkit-transform-origin: 0 100%;
                transform-origin: 0 100%;
    }
}
@keyframes sdl {
    0% {
        -webkit-transform: scale(1, 0);
                transform: scale(1, 0);
        -webkit-transform-origin: 0 0;
                transform-origin: 0 0;
    }
    50% {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: 0 0;
                transform-origin: 0 0;
    }
    50.1% {
        -webkit-transform: scale(1, 1);
                transform: scale(1, 1);
        -webkit-transform-origin: 0 100%;
                transform-origin: 0 100%;
    }
    100% {
        -webkit-transform: scale(1, 0);
                transform: scale(1, 0);
        -webkit-transform-origin: 0 100%;
                transform-origin: 0 100%;
    }
}

@media screen and (max-width: 1300px) {
    .kv-text {
        right: 3%;
        top: 18%;
    }
    .kv-text p:nth-of-type(1) {
        line-height: 1.6;
    }
    .kv-text p:nth-of-type(2) {
        line-height: 1.6;
    }
}
@media screen and (max-width: 1024px) {
    #keyvisual {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .keyvisual_inner {
        padding-top: 0;
    }
    /* .kv-circle {
        position: relative;
    } */
    .kv-circle_img {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
    .kvface-woman {
        left: 50%;
        width: 80vw;
        max-width: 2000px;
        -webkit-transform: translate3d(-50%, 1px, 0);
                transform: translate3d(-50%, 1px, 0);
    }
    /* div#n2-ss-2-align {
        width: 80%;
        max-width: 2000px !important;
        margin: 0px auto;
    } */
    .kv-movie_inner {
        width: 80vw;
        height: 80vw;
        max-width: 2000px !important;
        margin: 0px auto;
    }
    .kvface-read01 {
        position: absolute;
        width: 32%;
        max-width: 494px;
        left: 24%;
        bottom: 5%;
        z-index: 1;
    }
    .kvface-read02 {
        position: absolute;
        width: 32%;
        max-width: 494px;
        right: 6%;
        bottom: 5%;
        z-index: 1;
    }
    .kv-read.sonosaki {
        position: absolute;
        width: 20%;
        max-width: 224px;
        top: auto;
        left: auto;
        bottom: 22%;
        right: 3%;
        z-index: 1;
    }
    .kv-text {
        left: 6%;
        top: 16%;
        right: auto;
    }
    .kv-butterfly {
        left: 8%;
        top: 30%;
    }
}
@media screen and (max-width: 559px) {
    .kv-text {
        display: none;
    }
    .kv-movie_inner {
        width: 110vw;
        height: 110vw;
    }
    .kvface-woman {
        width: 110vw;
    }
    .kv-read.sonosaki {
        width: 26%;
        bottom: 17%;
        right: 3%;
    }
    .kvface-read01 {
        width: 40%;
        left: 10%;
        bottom: 5%;
    }
    .kvface-read02 {
        width: 40%;
        right: 6%;
        bottom: 5%;
    }
    a.scroll-line {
        display: none;
    }
}
/*--------------------------------------------------------------------
フッター
--------------------------------------------*/
#footers {
    background: #fcfcfc;
    height: 100vh;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 900px;
    clear: both;
}
#footers .inners {
    max-width: 1600px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    position: relative;
    width: 90%;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.footer_top {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom:5vw;
}
.footer_logo {
    width: 16.60561660561661%;
    max-width: 136px;
}
.footer_logo img {
    width: 100%;
}
.foot_navup {
    margin-bottom:2.5vw;
}
.foot_navup p.navttl {
    font-family: 'Spartan';
    font-size: 2.4rem;
    font-weight: 700;
    margin-bottom: 20px;
}
.foot_navup .navbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
}
.foot_navup dl dt {
    display: inline-block;
    margin-bottom: 20px;
    font-family: 'Spartan';
    font-size: 1.6rem;
    font-weight: 600;
    color: #666;
    position: relative;
    border-bottom: 2px solid;
    padding-bottom: 2px;
}

.foot_st dl dd {
    font-size: 1.2rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 8px;
}
.foot_st dl dd:last-of-type {
    margin: 0;
}
.foot_st dl dd:before {
    content: '-';
    -webkit-margin-end: 2px;
            margin-inline-end: 2px;
}
.foot_navbot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 40px;
    margin-bottom: 5vw;
}
.foot_navbot dl dt {
    font-family: 'Spartan';
    font-weight: 700;
    margin-bottom: 15px;
}
.footer_bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    width: 100%;
}
.footer_bottom ul {
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 30px;
}
.footer_bottom ul li {
    font-size: 1rem;
    font-family: 'Spartan';
    font-weight: 700;
}
.footer_bottom ul li a {
    color: #888;
}

ul.foots_sns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 10px;
}
ul.foots_sns li {
    position: relative;
    font-family: 'FontAwesome';
    font-size: 2rem;
    font-style: normal;
    border: 1px solid #000;
    border-radius: 50%;
    width: 37px;
    height: 37px;
}
ul.foots_sns li i {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    width: 100%;
    margin: 0;
    padding: 0;
}
.foots_btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}
.foots_btns .linkbb {
    width: 296px;
    height: 65px;
    text-align: center;
    border-radius: 32.5px;
}
.foots_btns .linkbb a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    height: 100%;
    width: 100%;
    font-weight: bold;
    font-size: 1.8rem;
    position: relative;
}
.foots_btns .contbtns {
    border: 1px solid #000;
    margin-bottom: 15px;
}
.foots_btns .cussupbtns {
    background: #45c9ce;
    margin-bottom: 20px;
}
.foots_btns .cussupbtns a {
    color: #fff;
}
.foots_btns .contbtns a:before {
    content: '\f0e0';
    font-family: 'Font Awesome 5 Free';
    -webkit-margin-end: 5px;
            margin-inline-end: 5px;
    font-size: 1.9rem;
}
.foots_btns .cussupbtns a:before {
    content: '\f590';
    font-family: 'Font Awesome 5 Free';
    -webkit-margin-end: 8px;
            margin-inline-end: 8px;
    font-size: 2rem;
}
.foottels p.tels {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font-size: 2.8rem;
    font-weight: bold;
    font-family: 'Spartan';
    line-height: 1;
    margin-bottom: 4px;
}
.foottels p.tels img {
    width: 38px;
    height: 25px;
    margin-right: 5px;
}
.foottels p.times {
    font-size: 1.2rem;
    font-weight: bold;
}
p.copylights {
    font-family: 'Spartan';
    font-size: 1rem;
    font-weight: 600;
    color: #999;
}

@media screen and (max-width: 1300px) {
    .foot_st {
        width: 100%;
    }
    .footer_contact {
        width: 50%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .footer_bottom {
        width: 50%;
        -webkit-box-pack: end;
            -ms-flex-pack: end;
                justify-content: flex-end;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
    }
    .foottels p.times {
        text-align: center;
    }
    .footer_bottom ul {
        -ms-flex-item-align: end;
            align-self: flex-end;
        margin-bottom: 4rem;
    }
}
@media screen and (max-width: 1200px) {
    #footers {
        padding: 10vw 0 5vw;
    }
}
@media screen and (max-width: 959px) {
    #footers {
        height: auto;
        min-height: initial;
        padding: 8vw 0 5vw;
    }
    .foot_st {
        display: none;
    }
}
@media screen and (max-width: 767px) {
    .footer_contact {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        width: 100%;
    }
    .footer_bottom {
        width: 100%;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
    .footer_bottom ul {
        margin-top: 6rem;
        margin-bottom: 2rem;
        gap: 40px;
        -ms-flex-item-align: center;
            -ms-grid-row-align: center;
            align-self: center;
    }
}
/*--------------------------------------------------------------------
トップページコンテンツ
--------------------------------------------*/
/*-----------------body copy--------------------------------------------*/
#bodycopy {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 16rem 0 0;
    height: 100vh;
}
.bodycopy_inner p {
    font-size: calc(4rem + (1vw - 1.92rem) * 1.2945); /* 4.0 to 2.0*/
    line-height: 1.6;
    font-weight: bold;
    letter-spacing: 0.2rem;
    text-align: center;
}
.bodycopy_inner p.catch-en {
    font-family: 'Philosopher';
    font-size: calc(5.5rem + (1vw - 1.92rem) * 1.6181); /*5.5 to 3.0*/
    letter-spacing: 0.3rem;
    font-weight: normal;
    margin: 4rem 0 2rem;
    line-height: 1.0;
}
.bodycopy_inner p.catch-en span {
    font-family: 'Spartan';
    font-size: 60%;
    display: inline-block;
    padding: 0 5px;
}
.bodycopy_inner p.catch-en b {
    font-family: 'Sorts Mill Goudy', serif;
    font-weight: 400;
    letter-spacing: 0.1rem;
}
.bodycopy_inner p.catch-jp {
    font-family: 'Zen Antique Soft';
    font-size: calc(10rem + (1vw - 1.92rem) * 3.2362); /*10 to 5*/
    line-height: 1;
    font-weight: normal;
    letter-spacing: -0.3rem;
}
.bodycopy_inner p.catch-jp span {
    display: inline-block;
    -webkit-margin-start: -5%;
            margin-inline-start: -5%;
    -webkit-margin-end: -10%;
            margin-inline-end: -10%;
}
/*-----------------TOP WORKS--------------------------------------------*/
.bkbg {
    background: url(/wp-content/uploads/bg_black.png);
}
#top_works , #top_service , #top_recruit {
    position: relative;
    padding: 25vw 0 8vw;
}
 .top_inners {
    width: 80%;
    max-width: 1300px;
    margin: 0 auto;
    padding-bottom: 8vw;
}
.mttls {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-writing-mode: vertical-lr;
        -ms-writing-mode: tb-lr;
            writing-mode: vertical-lr;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    position: absolute;
    right: 10.15625%;
    top: calc(14rem + (1vw - 1.92rem) * 4.5307); /*14rem to 7rem*/
    gap: 10px;
    z-index: 1;
}
.mttls h2 {
    font-size: calc(8rem + (1vw - 1.92rem) * 2.5890); /*8rem to 4rem*/
    display: inline-block;
    font-weight: bold;
}
.mttls h2 span {
    display: block;
    color: rgba(0, 0, 0, .0);
    -webkit-text-stroke: 1px #fff;
}
.mttls h2 b {
    background: -webkit-gradient(linear, left top, left bottom, from(#d7ca77), to(#39a96b));
    background: -o-linear-gradient(top, #d7ca77, #39a96b);
    background: linear-gradient(180deg, #d7ca77, #39a96b);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.mttls p.entxts {
    text-align: right;
    font-family: 'Spartan';
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.3883); /*1.6rem to 1rem*/
    color: #fff;
    letter-spacing: 0.2rem;
    line-height: 1;
}
.works_tbox .cliptxts {
    position: absolute;
    left: -160px;
    top: 250px;
}
.works_tbox video.bkmask {
    -webkit-clip-path: url(#svgPath);
            clip-path: url(#svgPath);
    width: 100%;
}
clipPath#svgPath text {
    font-size: 42rem;
    font-weight: 100;
    letter-spacing: -8rem;
}
.masktxts {
    position: absolute;
    left: calc((8rem + (1vw - 1.92rem) * 2.5890) * -1); /*-8rem to -4rem*/
    top: 13vw;
}
.masktxts p.txts {
    font-size: calc(42rem + (1vw - 1.92rem) * 18.7702); /*42rem to 13rem*/
    font-weight: 100;
    letter-spacing: calc((8rem + (1vw - 1.92rem) * 3.8835) * -1);
    font-family: 'Spartan';
    line-height: 1.2;
    /* background: url(/wp-content/uploads/bkbg.jpg); */
    width: 105%;
    /* background-size: cover;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: maskanime 50s linear infinite; */
    color: #000;
    opacity: .5;
}
/* @keyframes maskanime {
    0% {
        background-position: left 0px top 0px;
    }
    100% {
        background-position: left 1000px top 0px;
    }
} */
#top_service .masktxts p.txts , #top_recruit .masktxts p.txts {
    color: #fff;
    opacity: .5;
}
#top_service .mttls h2 span , #top_recruit .mttls h2 span {
    display: block;
    color: rgba(0, 0, 0, .0);
    -webkit-text-stroke: 1px #000;
}
#top_service .mttls p.entxts , #top_recruit .mttls p.entxts {
    color: #000;
}
.works_tbox p.reads {
    position: relative;
    z-index: 5;
    color: #fff;
    font-size: calc(5rem + (1vw - 1.92rem) * 1.6181); /* 5rem to 2.5rem*/
    line-height: 1.5;
    font-weight: bold;
    letter-spacing: 0.3rem;
    margin-bottom: 3vw;
}
.works_tbox .txtsbox {
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 50px;
    position: relative;
    z-index: 5;
    padding-left: 4vw;
}
.works_tbox .txtsbox p.txts {
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.1294); /*1.6rem to 1.4rem*/
    line-height: 2.5;
    letter-spacing: 0.2rem;
}

.works_caption_type {
    font-size: 1.2rem;
    padding: 1rem 0;
}
.n2-ss-slider-pipeline {
    /* width: calc(100% / 4) !important; */
}

#top_service .works_tbox p.reads , #top_recruit .works_tbox p.reads {
    color: #000;
}
#top_service .works_tbox .txtsbox p.txts , #top_recruit .works_tbox .txtsbox p.txts {
    color: #000;
}
.circlebtn {
    width: 105px;
    height: 105px;
    border: 1px solid #000;
    border-radius: 50%;
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
    position: relative;
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.circlebtn.bklink {
    border: 1px solid #fff;
    -ms-flex-negative: 0;
        flex-shrink: 0;
}
.circlebtn a {
    color: #000;
    text-align: center;
    font-family: 'Spartan';
    font-size: 1.4rem;
    line-height: 1.5;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-weight: 500;
}
.circlebtn.bklink a {
    color: #fff;
}
.btn_spBlock {
    display: none;
}
#works_btns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
#works_btns ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    width: 80%;
    max-width: 1100px;
}
#works_btns ul li {
    width: 46%;
    max-width: 500px;
    margin-bottom: 0;
}
#works_btns h2 {
    margin-top: -30px;
    text-align: center;
    font-size: calc(2.2rem + (1vw - 1.92rem) * 0.2589); /* 2.2rem to 1.8rem */
    letter-spacing: 0.2rem;
    margin-bottom: 30px;
    color: #fff;
}
#works_btns h2 span {
    display: block;
    font-family: 'Spartan';
    font-size: calc(6rem + (1vw - 1.92rem) * 1.2945); /* 6rem to 4rem */
    font-weight: 600;
    margin-bottom: 5px;
    letter-spacing: 0;
}
#works_btns p.txts {
    line-height: 2.1;
    letter-spacing: 0.2rem;
    color: #fff;
}
#works_lists {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto;
    padding: 4vw 0 0;
    position: relative;
}
/* #works_lists:before {
    content: 'WORKS';
    position: absolute;
    font-family: 'Spartan';
    font-size: 42rem;
    font-weight: 200;
    letter-spacing: -8rem;
    color: #fff;
    left: -150px;
    top: 100px;
    line-height: 1;
} */
#works_lists ul {
    max-width: 1460px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: 0 auto;
    position: relative;
}
.n2-ss-slider .n2-ss-item-image-content picture {
    aspect-ratio: 16 / 9;
    overflow: hidden;
}
.post4b_text {
    padding-top: 20px;
}
.post4b_text p.cat_names {
    font-size: 1.2rem;
    line-height: 1;
}
.post4b_text p.cat_names a {
    color: #14d300;
}
.post4b_text h2 {
    padding-top: 10px !important;
    padding-bottom: 2px !important;
}
.post4b_text h2 a {
    font-size: 1.8rem;
}
.post4b_text p.tag_names {
    font-size: 1.2rem;
    color: #666;
}
@media screen and (max-width: 1200px) {
    #top_works , #top_service , #top_recruit {
        padding: 20vw 0 10vw;
    }
    .works_tbox .txtsbox {
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
}
@media screen and (max-width: 1024px) {
    .circlebtn {
        width: 90px;
        height: 90px;
    }
    .circlebtn a {
        font-size: 1.2rem;
    }
    .works_tbox .txtsbox {
        padding-left: 0;
        width: 100%;
    }
    .works_tbox .txtsbox p.txts br {
        display: none;
    }
    #bodycopy {
        margin: 0 0 18vw 0;
        height: auto;
    }
}
@media screen and (max-width: 959px) {
    .top_inners {
        width: 90%;
    }
    .mttls {
        right: 5%;
    }
}
@media screen and (max-width: 767px) {
    #works_btns ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
    #works_btns ul li {
        width: 100%;
        margin-bottom: 2rem;
    }
    #works_btns ul li figure {
        width: 90%;
        margin: 0 auto;
    }
    .btn_spBlock {
        display: block;
        margin: 3rem 5% 0 auto;
    }
    .btn_spNone {
        display: none;
    }
    .masktxts p.txts {
        display: none;
    }
    .mttls {
        top: 6rem;
    }
    #works_btns h2 {
        margin-bottom: 2rem;
    }
}
@media screen and (max-width: 559px) {
    #top_works , #top_service , #top_recruit {
        padding: 14rem 0 8rem;
    }
    .top_inners {
        padding: 0 0 2rem 0;
        position: relative;
    }
    .mttls {
        right: 5%;
        gap: 5px;
    }
    .circlebtn {
        width: 70px;
        height: 70px;
    }
    .circlebtn a {
        font-size: 1rem;
    }
    .works_tbox .txtsbox p.txts {
        line-height: 2.0;
    }
    .works_tbox p.reads {
        margin-bottom: 2rem;
    }
}

/*-----------------TOP SERVICE--------------------------------------------*/
#top_service .inners {
    padding: 460px 0 240px 300px;
    position: relative;
}
#top_service .mttls h2 b {
    background: -webkit-gradient(linear, left top, left bottom, from(#ffb696), to(#ff7a95));
    background: -o-linear-gradient(top, #ffb696, #ff7a95);
    background: linear-gradient(180deg, #ffb696, #ff7a95);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#service-lists ul {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
#service-lists ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
    width: calc(100% / 4);
    position: relative;
    z-index: 0;
    overflow: hidden;
}

#service-lists ul li .plan_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 3rem;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

#service-lists ul li .plan_bg {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    -webkit-transform: skewY(-28deg);
        -ms-transform: skewY(-28deg);
            transform: skewY(-28deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
    z-index: -1;
    width: 100%;
    height: 89%;
    overflow-y: hidden;
}

#service-lists ul li.plan01 .plan_bg {
    background: #a1a500;
}
#service-lists ul li.plan01 .plan_bg:after {
    position: absolute;
    content: "";
    background: url(/wp-content/uploads/planbg01_pat.png) no-repeat center;
    background-size: 602px auto;
    width: 100%;
    height: 100%;
    -webkit-transform: skewY(28deg);
        -ms-transform: skewY(28deg);
            transform: skewY(28deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
}
#service-lists ul li.plan02 .plan_bg {
    background: #e5bdd6;
}
#service-lists ul li.plan02 .plan_bg:after {
    position: absolute;
    content: "";
    background: url(/wp-content/uploads/planbg02.png) no-repeat left bottom;
    background-size: 210px auto;
    width: 100%;
    height: 100%;
    -webkit-transform: skewY(28deg);
        -ms-transform: skewY(28deg);
            transform: skewY(28deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
}
#service-lists ul li.plan03 .plan_bg {
    background: #45c9ce;
}
#service-lists ul li.plan03 .plan_bg:after {
    position: absolute;
    content: "";
    background: url(/wp-content/uploads/planbg03_pat.png) no-repeat top center;
    background-size: 501px auto;
    width: 100%;
    height: 100%;
    -webkit-transform: skewY(28deg);
        -ms-transform: skewY(28deg);
            transform: skewY(28deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
    bottom: -50%;
}
#service-lists ul li.plan04 .plan_bg {
    background: #dd4c3d;
}
#service-lists ul li.plan04 .plan_bg:after {
    position: absolute;
    content: "";
    background: url(/wp-content/uploads/planbg04_pat.png) no-repeat center bottom;
    background-size: 1062px auto;
    width: 100%;
    height: 100%;
    -webkit-transform: skewY(28deg);
        -ms-transform: skewY(28deg);
            transform: skewY(28deg);
    -webkit-transform-origin: top right;
        -ms-transform-origin: top right;
            transform-origin: top right;
}

#service-lists h3 {
    padding: 0;
    margin: 0;
    font-size: 1.6rem;
    text-align: left;
    letter-spacing: 0;
}
#service-lists h3:before {
    display: none;
}
#service-lists h3 span {
    font-family: 'Spartan';
    font-weight: 400;
    letter-spacing: -0.05rem;
    display: block;
    font-size: 3rem;
    padding: 0 0 10px 0;
    position: relative;
}
#service-lists h3 span:before {
    content: '';
    position: absolute;
    background: #a1a500;
    width: 30px;
    height: 2px;
    left: 0;
    bottom: -35px;
}
#service-lists li.plan01 h3 {
    color: #a1a500;
}
#service-lists li.plan02 h3 {
    color: #e5bdd6;
}
#service-lists li.plan03 h3 {
    color: #45c9ce;
}
#service-lists li.plan04 h3 {
    color: #dd4c3d;
}
#service-lists li.plan02 h3 span:before {
    background: #e3a6cd;
}
#service-lists li.plan03 h3 span:before {
    background: #45c9ce;
}
#service-lists li.plan04 h3 span:before {
    background: #dd4c3d;
}
#service-lists ul li .plan_ttl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
}
#service-lists ul li .plan_number {
    color: #a1a500;
    font-size: 10rem;
    font-family: 'Spartan';
    font-weight: 600;
    line-height: 1;
}
#service-lists ul li.plan02 .plan_number {
    color: #e5bdd6;
}
#service-lists ul li.plan03 .plan_number {
    color: #45c9ce;
}
#service-lists ul li.plan04 .plan_number {
    color: #dd4c3d;
}

#service-lists ul li figure {
    position: relative;
    z-index: 5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 4rem 2rem;
}
#service-lists ul li p.txts {
    color: #000;
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.1294);/* 1.6 to 1.4*/
    line-height: 1.8;
    font-weight: bold;
    position: relative;
    z-index: 5;
}
/* #service-lists ul li:not(:first-of-type) p.txts {
    color: #000;
} */
#service-lists ul li .planlinks {
    margin-top: auto;
    padding-top: calc(6rem + (1vw - 1.92rem) * 1.9417); /*60 to 30*/
    text-align: right;
    position: relative;
    z-index: 5;
}
#service-lists ul li .planlinks a {
    font-family: 'Spartan';
    font-size: 1.2rem;
    font-weight: 700;
}

@media screen and (min-width: 1921px) {
    #service-lists h3 {
        font-size: 1.6rem;
    }
    #service-lists h3 span {
        font-size: 3rem;
    }
    #service-lists ul li .plan_number {
        font-size: 10rem;
    }
}
@media screen and (min-width: 1025px) {
    #service-lists h3 {
        font-size: calc(1.6rem + (1vw - 1.92rem) * 0.4464); /*1.6 to 1.2*/
    }
    #service-lists h3 span {
        font-size: calc(3rem + (1vw - 1.92rem) * 1.1161);/*3rem to 2rem*/
    }
    #service-lists ul li .plan_number {
        font-size: calc(10rem + (1vw - 1.92rem) * 5.5804);/*10rem to 5rem*/
    }
}
@media screen and (max-width: 1024px) {
    #service-lists ul li {
        width: calc(100% / 2);
    }
    #service-lists ul li:nth-child(-n+2) {
        margin-bottom: 4rem;
    }
    #service-lists ul li .plan_bg {
        height: 86%;
    }
    #service-lists ul li .plan_number {
        font-size: calc(10rem + (1vw - 1.02rem) * 11.7188);/*10rem to 7rem*/
    }
}
@media screen and (max-width: 767px) {
    #service-lists ul {
        width: 80%;
    }
    #service-lists ul li {
        width: 100%;
    }
    #service-lists ul li:nth-child(-n+3) {
        margin-bottom: 3rem;
    }
    #service-lists ul li .plan_number {
        font-size: calc(10rem + (1vw - 0.77rem) * 7.6531);/*10rem to 7rem*/
    }
    #service-lists ul li figure {
        padding: 2rem 4rem;
    }
}

/*-----------------TOP ARTICLE--------------------------------------------*/
#top_article {
    position: relative;
}
#top_article h2 {
    font-family: 'Spartan';
    font-size: calc(5rem + (1vw - 1.92rem) * 1.5534); /*5 to 2.6*/
    font-weight: 700;
    text-align: center;
    line-height: 1.2;
    margin-bottom: 2vw;
    letter-spacing: .08rem;
}
nav.tart_nav {
    width: 90%;
    position: relative;
    max-width: 1500px;
    margin: 0 auto;
}
nav.tart_nav ul {
    margin: 60px 0 6vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 120px;
    position: relative;
}
nav.tart_nav ul li {
    margin: 0;
    font-family: 'Spartan';
    font-size: calc(1.2rem + (1vw - 1.92rem) * 0.1294); /*1.2 to 1.0*/
    font-weight: 600;
}
nav.tart_nav ul li a {
    color: #fff;
}
nav.tart_nav ul:before {
    content: '';
    background: #fff;
    width: 700px;
    position: absolute;
    height: 1px;
    bottom: -25px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
}
.article_links {
    border: 1px solid #ccc;
    position: absolute;
    top: -180px;
    right: 0;
}
.article_listWrap {
    width: 90%;
    max-width: 1500px;
    margin: 0 auto;
}
.article_list {
    width: 100%;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.article_list .stickyitem {
    position: sticky;
    top: 6rem;
    width: 56%;
}
.article_list .rightWrap {
    width: 40%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 40px 0;
}
.article_list .rightWrap .items {
    width: 47.5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.article_list .rightWrap .items a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}
.article_list .rightWrap .items a .item_body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}
.article_list .item_imgs img {
    width: 100%;
    height: auto;
}
.article_list .stickyitem p.item_ttls {
    font-size: calc(3.4rem + (1vw - 1.92rem) * 1.2153); /*3.4 to 2.0*/
    line-height: 1.4;
    font-weight: bold;
    padding: 40px 0 30px;
    letter-spacing: 0.2rem;
}
.article_list .item_metas {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: calc(1.1rem + (1vw - 1.92rem) * 0.0647);/*1.1 to 1.0*/
    color: #fff;
    font-family: 'Spartan';
    line-height: 1;
    margin-top: auto;
}
.article_list .stickyitem .item_metas {
    font-size: calc(1.3rem + (1vw - 1.92rem) * 0.1942);/*1.3 to 1.0*/
}
.article_list .item_metas p.item_cats {
    color: #fff;
    border-right: 1px solid #fff;
    padding-right: 15px;
    margin-right: 15px;
}
.article_list .rightWrap p.item_ttls {
    font-size: calc(1.8rem + (1vw - 1.92rem) * 0.3236); /*1.8 to 1.3*/
    font-weight: bold;
    padding: 20px 0 20px;
    line-height: 1.3;
    letter-spacing: 0.2rem;
}
.article_list p.item_ttls {
    color: #fff;
}
#top_article > .copys {
    color: #fff;
    text-align: center;
    margin: 0 auto 70px;
    line-height: 2;
    letter-spacing: 0.3em;
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.1294);
    width: 90%;
    max-width: 1100px;
}
@media screen and (min-width: 1921px) {
    .article_list .stickyitem p.item_ttls {
        font-size: 3.4rem;
    }
    .article_list .rightWrap p.item_ttls {
        font-size: 2rem;
    }
}
@media screen and (max-width: 1024px) {
    nav.tart_nav ul {
        margin: 40px 0 100px;
        gap: 60px;
    }
    nav.tart_nav ul:before {
        width: 450px;
    }
}
@media screen and (max-width: 959px) {
    .article_list .stickyitem {
        margin-bottom: 4rem;
    }
    .article_list .stickyitem p.item_ttls {
        font-size: calc(2.4rem + (1vw - 0.77rem) * 1.5306);/* 2.4 to 1.8 */
    }
    .article_list .rightWrap p.item_ttls {
        font-size: calc(1.8rem + (1vw - 0.77rem) * 1.0204);/* 1.8 to 1.4 */
    }
    .article_list .stickyitem {
        position: initial;
        width: 100%;
    }
    .article_list .rightWrap {
        width: 100%;
    }
}
@media screen and (max-width: 767px) {
    .article_links {
        position: relative;
        top: 0;
    }
    #top_article > .copys p {
        text-align: left;
    }
    #top_article > .copys p br {
        display: none;
    }
    #top_article > .copys {
        margin-bottom: 4rem;
    }
}
@media screen and (max-width: 559px) {
    .article_list .stickyitem {
        margin-bottom: 3rem;
    }
    .article_list .rightWrap {
        gap: 30px 0;
    }
    .article_list .item_metas p.item_cats {
        padding-right: 5px;
        margin-right: 5px;
    }
    .article_list .stickyitem p.item_ttls {
        padding: 30px 0 20px;
    }
    .article_list .rightWrap p.item_ttls {
        padding: 20px 0 10px;
    }
    #top_article h2 {
        margin-bottom: 2rem;
    }
}

/*-----------------TOP RECRUIT--------------------------------------------*/
#top_recruit .top_inners {
    position: relative;
    padding-bottom: 0;
}
#top_recruit .mttls h2 b {
    background: -webkit-gradient(linear, left top, left bottom, from(#8353d7), to(#8ed9e7));
    background: -o-linear-gradient(top, #8353d7, #8ed9e7);
    background: linear-gradient(180deg, #8353d7, #8ed9e7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
/*-----------------TOP CTA--------------------------------------------*/
#top_cta ul {
    margin: 0 auto;
    max-width: 1600px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
#top_cta ul li {
    margin: 0;
    width: 50%;
    position: relative;
    padding: 0 5rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}
#top_cta ul li h2 {
    font-size: calc(1.8rem + (1vw - 1.92rem) * 0.2589); /*1.8 to 1.4*/
    font-weight: bold;
    margin-bottom: 50px;
}
#top_cta ul li h2 span {
    font-family: 'Spartan';
    font-size: calc(5rem + (1vw - 1.92rem) * 1.5534); /*5 to 2.6*/
    display: block;
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    letter-spacing: .08rem;
}
#top_cta ul li p.copys {
    font-size: calc(3rem + (1vw - 1.92rem) * 0.7767);/*3 to 1.8*/
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 20px;
    color: #fff;
}
#top_cta ul li p.txts {
    line-height: 1.8;
    color: #fff;
    font-size: calc(1.6rem + (1vw - 1.92rem) * 0.1294);
}

#top_cta ul li:first-of-type:before {
    content: '';
    position: absolute;
    background: #fff;
    width: 1px;
    height: 120%;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}

#top_article , #top_cta {
    padding: 8vw 0;
}

.top_cta_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    height: 100%;
}
.top_cta_inner_txt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -ms-flex-item-align: start;
        align-self: flex-start;
}
#top_cta .circlebtn {
    margin-left: 3rem;
}
@media screen and (max-width: 1200px) {
    #top_article , #top_cta {
        padding: 10vw 0;
    }
    #top_cta ul li p.copys br {
        display: none;
    }
    #top_cta ul li p.txts br {
        display: none;
    }
    #top_cta ul li:first-of-type:before {
        height: 100%;
    }
}
@media screen and (max-width: 1024px) {
    .top_cta_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
    #top_cta .circlebtn {
        margin-left: 0;
        margin-top: 3rem;
    }
}
@media screen and (max-width: 767px) {
    #top_cta ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
    #top_cta ul li {
        width: 90%;
        margin: 0 auto;
        padding: 0;
    }
    #top_cta ul li:first-child .top_cta_inner {
        margin-bottom: 10vw;
        padding-bottom: 10vw;
        border-bottom: 1px solid #fff;
    }
    #top_cta ul li:first-of-type:before {
        display: none;
    }
    .top_cta_ttl {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    #top_cta .circlebtn {
        margin: 0 0 0 auto;
    }
    #top_cta ul li h2 {
        margin-bottom: 4rem;
    }
    #top_cta ul li h2 span {
        margin-bottom: 0.5rem;
    }
    #top_article , #top_cta {
        padding: 8rem 0;
    }
}
/*--------------------------------------------------------------------
下層ページ
--------------------------------------------*/
/*共通
---------------*/
.lowEntrys #breadcrumb {
    width: 100%;
}
.lowEntrys #breadcrumb ul {
    width: 100%;
}
.lowEntrys #breadcrumb ul li, .lowEntrys #breadcrumb ul li a {
    color: #aaa;
}
.lowEntrys #breadcrumb ul li:first-of-type {
    margin-left: 0;
}
.lowPage > .inners {
    max-width: 1500px;
    margin: 0 auto;
    padding-bottom: 140px;
    width: 100%;
}
.wp-pagenavi {
    text-align: center;
    margin: 60px 0 0;
}
.wp-pagenavi span.pages {
    display: none;
}
.wp-pagenavi span, .wp-pagenavi a {
    display: inline-block;
    padding: 10px 16px;
    margin: 0 6px;
    background: #111;
    border: none;
    color: #fff;
}
.wp-pagenavi span.current {
    background: #fff;
    border: 1px solid #ccc;
    color: #000;
}
.wp-pagenavi a.nextpostslink, .wp-pagenavi a.previouspostslink {
    color: #000;
    background: transparent;
}
.wp-pagenavi a:hover {
    opacity: 0.8;
    text-decoration: underline;
}
.zoomIn img {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    -webkit-transform-origin: top;
        -ms-transform-origin: top;
            transform-origin: top;
}
.zoomIn a:hover img {
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2);
}
.mask {
    display: block;
    line-height: 0;
    overflow: hidden;
}
a.decoline:hover {
    text-decoration: underline;
}
.opa_s {
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
}
.opa_s:hover {
    opacity: 0.8;
}
/*--------------------
お問い合わせ
-------------------*/
#wrapper-full {
    padding-top: 105px;
}
#lowContact p.info {
    font-size: 1.7rem;
    line-height: 1.8;
}
#lowContact p.info span {
    color: #c6001e;
}
.lowFormBox {
    margin-top: 50px;
}
.wpcf7-form {
    padding: 0;
}
.wpcf7-form span.musts {
    color: #c6001e;
    -webkit-padding-start: 3px;
            padding-inline-start: 3px;
}
.wpcf7-form dt {
    font-size: 1.6rem;
    color: #333;
    padding: 0 0 10px;
}
.wpcf7-form dd {
    margin-bottom: 38px;
    padding: 0;
}
.wpcf7-form dd:last-of-type {
    margin: 0;
}
.wpcf7-form .linkBtn {
    margin: 50px auto 0;
    width: 560px;
    display: block;
    padding: 0;
    height: 90px;
    border-radius: 45px;
    background: #222;
}
.wpcf7-form .linkBtn input[type="submit"] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    padding: 0;
    font-size: 1.8rem;
    font-family: 'Yu Gothic';
    font-weight: bold;
}
.post .linkBtn::after {
    content: none;
}
input[type="text"], input[type="tel"], input[type="email"], input[type="date"], input[type="url"], input[type="number"], select, textarea {
    height: 50px;
    margin: 0;
    border-radius: 0;
    padding: 0 10px;
    border: none;
    background: #f5f5f5;
    font-size: 90%;
}
textarea {
    height: auto;
    padding: 10px;
}
.wpcf7-form select option {
    font-size: 1.8rem;
}
::-webkit-input-placeholder {
    color: #bbb;
}
::-moz-placeholder {
    color: #bbb;
}
:-ms-input-placeholder {
    color: #bbb;
}
::-ms-input-placeholder {
    color: #bbb;
}
::placeholder {
    color: #bbb;
}
dd.select_dd {
    position: relative;
}
dd.select_dd:before {
    content: '\f107';
    font-family: 'FontAwesome';
    color: #111;
    position: absolute;
    z-index: 5;
    right: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 140%;
    pointer-events: none;
}
dd.select_dd select {
    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}
.contactus_pp {
    margin-top: 70px;
}
.contactus_pp p.info {
    margin-bottom: 8px;
}
.contactus_pp p.info a {
    font-weight: bold;
    text-decoration: underline;
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
}
.contactus_pp p.info a:hover {
    opacity: 0.6;
}
@media (max-width:768px) {
    .wpcf7-form .linkBtn {
        width: 100%;
        margin-top: 40px;
    }
    .wpcf7-form dt {
        padding-bottom: 5px;
    }
    .wpcf7-form dd {
        margin-bottom: 20px;
    }
}
/*--------------------
プライバシーポリシー
-------------------*/
section.privacy-policy-area .anchor-point {
    margin-top: -70px;
    padding-top: 70px;
}
section.privacy-policy-area p + h2, section.privacy-policy-area div.anchor-point + h2 {
    margin-top: 20px;
}
section.privacy-policy-area ol + h2, section.privacy-policy-area div.anchor-point + h2 {
    margin-top: 35px;
}
section.privacy-policy-area ol.circle {
    position: relative;
    margin: 10px 0 0 0;
}
section.privacy-policy-area ol.circle li {
    list-style: none;
    margin: 0;
    padding-left: 25px;
    margin-bottom: 5px
}
section.privacy-policy-area ol.circle li span {
    position: absolute;
    left: 0;
}
section.privacy-policy-area ol.circle {
    margin-top: 10px;
}
section.privacy-policy-area ol.lower li {
    list-style: lower-roman;
    padding-left: 5px;
}
section.privacy-policy-area ol.lower {
    margin-left: 18px;
}
section.privacy-policy-area ul.desc li {
    list-style: disc;
    margin-left: 16px;
    margin-bottom: 0;
    padding: 5px 0;
    border: none;
}
section.privacy-policy-area h2 {
    background: #222;
    color: #fff;
    padding: 18px 20px;
    line-height: 1.5;
    font-size: 2rem;
}
section.privacy-policy-area ol {
    margin-top: 10px;
    margin-bottom: 0;
}
section.privacy-policy-area ol li {
    margin-bottom: 5px;
}
section.privacy-policy-area ol li:last-of-type {
    margin: 0;
}
section.privacy-policy-area ul {
    margin-top: 10px;
}
@media (max-width: 767px) {
    section.privacy-policy-area li {
        font-size: 0.8rem;
    }
    .post section.privacy-policy-area ol {
        margin-left: 15px;
    }
    section.privacy-policy-area ol.circle {
        margin-left: 0;
    }
    section.privacy-policy-area ol.circle li {
        padding-left: 15px;
    }
    section.privacy-policy-area ol.lower li {
        padding-left: 5px;
    }
}
/*--------------------
article一覧
-------------------*/
#wrapper.article_wraps {
    max-width: 1440px;
    margin: 0 auto;
    padding-bottom: 120px;
    display: flow-root;
}
#wrapper.article_wraps #content {
    float: left;
    width: 1060px;
    padding: 0;
}
.lowcat_mttls {
    margin: 100px auto 50px;
    position: relative;
}
.lowcat_mttls .ttls {
    font-size: 2.1rem;
    font-weight: bold;
    margin-bottom: 20px;
}
.lowcat_mttls .ttls span {
    font-family: 'Spartan';
    font-size: 4rem;
    font-weight: 600;
    line-height: 1;
    vertical-align: middle;
    padding-right: 15px;
}
#wrapper.article_wraps #breadcrumb {
    padding: 0;
}
#wrapper.article_wraps #breadcrumb ul {
    max-width: 100%;
    margin: 0;
    padding: 0;
}
#sidebar {
    float: right;
    width: 330px;
    padding: 0;
    font-size: 100%;
}
nav.articles_navi {
    position: relative;
    margin: 0 0 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
}
nav.articles_navi ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 28px;
    line-height: 1;
    margin: 0;
    position: relative;
    font-size: 1.3rem;
    font-weight: 600;
    -webkit-margin-start: 50px;
            margin-inline-start: 50px;
    letter-spacing: 0.2rem;
}
nav.articles_navi ul:before {
    content: '\f009';
    font-family: 'FontAwesome';
    position: absolute;
    left: -50px;
}
nav.articles_navi ul li {
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
    position: relative;
}
nav.articles_navi ul li a:after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #333;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
}
nav.articles_navi ul li a {
    position: relative;
}
nav.articles_navi ul li a:after {
    content: '';
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 1px;
    background: #333;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    -o-transition: transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    -webkit-transform: scale(0, 1);
        -ms-transform: scale(0, 1);
            transform: scale(0, 1);
    -webkit-transform-origin: right top;
        -ms-transform-origin: right top;
            transform-origin: right top;
}
nav.articles_navi ul li a:hover::after {
    -webkit-transform: scale(1, 1);
        -ms-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
}
.article_lowlists ul.post2b {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0;
    gap: 40px;
    padding: 0;
}
.article_lowlists ul.post2b li {
    margin: 0;
    width: calc((100% - 80px) / 3);
    border: none !important;
    background: #fff;
    -webkit-box-shadow: 5px 5px 10px 5px rgb(0 0 0 / 5%);
            box-shadow: 5px 5px 10px 5px rgb(0 0 0 / 5%);
}
.post2b span.mask {
    aspect-ratio: 16 / 9;
}
.post2b img {
    max-width: 100%;
    height: 100%;
    border: none !important;
    padding: 0;
}
.article_lowlists .post2b_text {
    padding: 20px 20px 30px;
    border-radius: 0 0 10px 10px;
}
.article_lowlists h2.item_ttls {
    padding: 0;
    background: transparent;
    margin: 0 0 20px;
}
.article_lowlists h2.item_ttls a {
    font-size: 1.7rem;
    letter-spacing: 0.2rem;
    line-height: 1.5;
}
#content .item_meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #999;
    font-family: 'Spartan';
    font-size: 1.1rem;
    font-weight: 500;
    margin-bottom: 10px;
    line-height: 1;
}
#content .item_meta p.item_cats a {
    font-weight: 800;
    color: #333;
    padding-right: 10px;
    border-right: 1px solid #999;
    margin-right: 10px;
}
.article_lowlists .item_tags span {
    font-size: 1rem;
    border-radius: 0;
    padding: 3px;
    background: #111;
}
.article_lowlists .item_tags span a {
    color: #fff;
}
.article_lowlists .item_tags span:before {
    content: none;
}
.custom-html-widget {
    padding: 40px;
    border: 1px solid #ccc;
}
.side_contact p.sttls {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 15px;
}
.side_contact p.sttls span {
    display: block;
    font-family: 'Spartan';
    font-weight: 800;
    font-size: 1.9rem;
    line-height: 1;
    padding-bottom: 3px;
}
.side_contact p.side_tel {
    font-family: 'Spartan';
    font-size: 2.3rem;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 15px;
}
.side_contact .linkbtns {
    background: #000;
}
.side_contact .linkbtns a {
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    font-size: 1.4rem;
    padding: 12px 0;
}
#searchform span {
    position: relative;
    padding-left: 30px;
}
#searchform span:before {
    content: '\f002';
    font-family: 'FontAwesome';
    position: absolute;
    left: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
#searchform input[type="text"] {
    border: 1px solid #ccc;
    width: 220px;
    background: transparent;
    font-size: 1.2rem;
    height: 28px;
}
@media (max-width:1600px) {
    #wrapper.article_wraps {
        width: 90%;
    }
    #wrapper.article_wraps #content {
        width: calc(100% - 350px);
    }
    .article_lowlists ul.post2b {
        gap: 30px;
    }
    .article_lowlists ul.post2b li {
        width: calc((100% - 60px) / 3);
    }
    #sidebar {
        width: 310px;
    }
}
@media (max-width:1360px) {
    #wrapper.article_wraps #content {
        width: calc(100% - 310px);
    }
    .article_lowlists ul.post2b {
        gap: 20px;
    }
    .article_lowlists ul.post2b li {
        width: calc((100% - 40px) / 3);
    }
    #sidebar {
        width: 280px;
    }
    .custom-html-widget {
        padding: 40px 30px;
    }
}
@media (max-width:1024px) {
    #wrapper.article_wraps #content {
        float: none;
        width: 100%;
    }
    #sidebar {
        width: 100%;
        float: none;
        margin-top: 60px;
    }
}
@media (max-width:768px) {
    .lowcat_mttls .ttls span {
        line-height: 1.2;
        font-size: 4.7rem;
        padding: 0;
        display: block;
    }
    #wrapper.article_wraps {
        padding-bottom: 40px;
    }
    #wrapper.article_wraps #breadcrumb {
        display: none;
    }
    .lowcat_mttls {
        margin: 0 auto 30px;
    }
    nav.articles_navi {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        -webkit-box-align: start;
            -ms-flex-align: start;
                align-items: flex-start;
        gap: 30px;
        margin-bottom: 40px;
    }
    nav.articles_navi ul {
        gap: 18px;
        -webkit-margin-start: 40px;
                margin-inline-start: 40px;
    }
    nav.articles_navi ul:before {
        left: -40px;
    }
    form#searchform {
        width: 100%;
    }
    #searchform span {
        display: block;
        width: 100%;
    }
    #searchform input[type="text"] {
        width: 100%;
    }
    .article_lowlists ul.post2b li {
        width: 100%;
    }
    #content .post2b_img {
        max-width: 100%;
        padding: 0;
    }
    #content .post2b_img img {
        max-width: 100%;
    }
    #content .post2b_text70 {
        width: 100%;
        padding: 20px;
    }
    .article_lowlists h2.item_ttls a {
        font-size: 1.6rem;
    }
    .wp-pagenavi {
        margin-top: 40px;
    }
    #sidebar {
        margin-top: 40px;
    }
    .custom-html-widget {
        padding: 30px;
    }
}
/*--------------------
article詳細
-------------------*/
body.single #wrapper.article_wraps .lowcat_mttls {
    padding-bottom: 70px;
    margin-bottom: 80px;
}
body.single #wrapper.article_wraps .lowcat_mttls:before {
    content: '';
    background: #e5e5e5;
    width: 100vw;
    height: 1px;
    position: absolute;
    bottom: 0;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    left: 50%;
}
header.single_heads {
    margin-bottom: 45px;
}
header.single_heads h1 {
    text-align: left;
    padding: 0;
    font-size: 3.8rem;
    margin-bottom: 30px;
    line-height: 1.4;
}
body.single .post {
    position: relative;
    border-bottom: 1px solid #ccc;
    padding-bottom: 120px;
}
.pagenav {
    height: auto;
    margin: 0;
}
header.single_heads .item_meta {
    margin-bottom: 12px;
}
.single .post img {
    margin-bottom: 30px !important;
}
.single .post h2 {
    background: #222;
    color: #fff;
    margin: 50px 0 30px;
    padding: 40px 30px;
    line-height: 1.4;
	font-size: 2.5rem;
}
.single .post h3 {
    margin: 20px 0 15px;
    border: 1px solid #ccc;
    padding: 30px 20px;
    font-size: 1.8rem;
    line-height: 1.4;
}
.single .post h3:before {
    content: '';
    background: #222;
    width: 2px;
    height: 50%;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
}
.single .post h4 {
    font-weight: bold;
    border-left: 3px solid #1a1a1a;
    border-bottom: none;
    margin-block: 35px 15px;
    font-size: 1.8rem;
    padding-inline-start: 15px;
}
.single .post p {
    line-height: 2.5;
    font-size: 1.7rem;
}
.relatedlists.listarticle.singles {
    width: 100%;
    margin: 120px 0 0;
}
.relatedlists.listarticle.singles ul li {
    width: 31%;
}
.relatedlists.listworks.singles {
    margin: 80px 0 0;
}
.relatedlists.listworks.singles ul li {
    width: 31%;
}
.article_lowlists .post ul {
    margin: 25px 0;
}
.article_lowlists .post ul li {
    margin-bottom: 1.5em;
    padding: 1.5em;
    border: 2px solid;
    box-sizing: border-box;
}
.article_lowlists .post ul li b {
    font-size: 110%;
}
.article_lowlists .post a {
    text-decoration: underline;
    -webkit-transition: all ease 0.3s;
    -o-transition: all ease 0.3s;
    transition: all ease 0.3s;
}
.article_lowlists .post a:hover {
    opacity: 0.6;
}
.single table th {
    color: inherit;
    font-weight: bold;
}
.single table td {
    color: inherit;
}
.blogbtn {
    background: #000;
    width: 70%;
    margin: 80px auto 0;
    border-radius: 40px;
}
.blogbtn a {
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    padding: 30px 0;
    font-size: 1.8rem;
    font-weight: bold;
}
@media (max-width:1600px) {
    header.single_heads h1 {
        font-size: 3.5rem;
    }
}
@media (max-width:1024px) {
    .article_wraps aside#sidebar {
        margin-top: 80px;
    }
}
@media (max-width:768px) {
    body.single #wrapper.article_wraps .lowcat_mttls {
        padding-bottom: 30px;
        margin-bottom: 40px;
    }
    header.single_heads h1 {
        font-size: 2.8rem;
    }
    .single .post h2 {
        font-size: 1.8rem;
		padding: 30px 20px;
    }
    body.single .post {
        padding-bottom: 60px;
    }
	.single .post p {
		font-size: 1.5rem;
	}
    .relatedlists.listarticle.singles {
        margin-top: 80px;
    }
    .relatedlists.listworks.singles {
        margin-top: 40px;
    }
    .article_wraps aside#sidebar {
        margin-top: 50px;
    }
}
/*--------------------
article検索結果
-------------------*/
ul.s_resultlist {
    margin-top: 30px;
    border-top: 1px solid #ddd;
    padding-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 30px;
}
ul.s_resultlist li a {
    font-size: 2.2rem;
    font-weight: bold;
    position: relative;
    margin-left: 20px;
}
ul.s_resultlist li a:before {
    content: '\f105';
    font-family: 'FontAwesome';
    position: absolute;
    left: -20px;
    font-size: 80%;
}
ul.s_resultlist li a:after {
    content: '';
    background: #111;
    width: 100%;
    height: 1px;
    bottom: -5px;
    left: 0;
    position: absolute;
    -webkit-transition: all 0.3s;
    -o-transition: all 0.3s;
    transition: all 0.3s;
    opacity: 0;
}
ul.s_resultlist li a:hover::after {
    opacity: 1;
}
/*--------------------
works
-------------------*/
#wrapper.works_wraps {
    padding-bottom: 0;
    overflow: hidden;
}
#wrapper.works_wraps .lowcat_mttls {
    width: 1440px;
    margin-bottom: 80px;
}
#wrapper.works_wraps .lowcat_mttls .ttls span {
    display: block;
    margin-bottom: 10px;
}
#wrapper.works_wraps #content {
    float: none;
    width: 100%;
}
#works_archive > .inners {
    width: 1440px;
    margin: 0 auto;
}
ul.workslist {
    display: grid;
    grid-template-columns: repeat(auto-fill,minmax(337.5px,1fr));
    gap: 45px 30px;
}
ul.workslist li figure {
    overflow-y: hidden;
    display: block;
    margin-bottom: 25px;
    aspect-ratio: 1 / 0.7;
    -webkit-box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
            box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}
ul.workslist li figure img {
    width: 100%;
    height: auto;
    display: block;
}
ul.workslist h2 {
    font-size: 1.4rem;
    position: relative;
    line-height: 1.4;
}
ul.workslist h2 a {
    color: #333;
}
.works_footnavi {
    background: #191b1f;
    margin-top: 120px;
}
.works_footnavi .inners {
    width: 1440px;
    margin: 0 auto;
    padding: 100px 0;
}
.wfn_box:not(:last-of-type) {
    margin-bottom: 30px;
}
.wfn_box h3 {
    color: #fff;
    font-size: 1.5rem;
    margin-bottom: 7px;
}
.wfn_box ul.wfn_tags {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.wfn_box ul.wfn_tags li {
    background: #fff;
    font-size: 1.4rem;
    padding: 2px 10px;
    font-weight: bold;
    line-height: 1.6;
}
figure.works_sinpic {
    width: 100%;
    overflow-y: hidden;
    max-height: 900px;
    margin-bottom: 120px;
    -webkit-box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
            box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}
figure.works_sinpic img {
    width: 100%;
    height: auto;
}
.works_sinttls {
    margin-bottom: 70px;
}
.works_sinttls h1 {
    font-size: 4.2rem;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.2;
}
p.works_sintype span a {
    font-size: 1.7rem;
    color: #666;
}
.works_sindescription {
    margin-bottom: 40px;
}
.works_sindescription h2 {
    font-size: 2.4rem;
    margin-bottom: 20px;
    font-weight: bold;
}
.works_sindescription p.txts {
    line-height: 1.9;
    font-size: 1.6rem;
    letter-spacing: 0.2rem;
}
section.works_sindetail {
    margin-bottom: 80px;
}
section.works_sindetail dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px 0;
}
section.works_sindetail dt {
    width: 10%;
    font-weight: bold;
}
section.works_sindetail dd {
    width: 90%;
}
.works_sinsubcap ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 50px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.works_sinsubcap ul li:first-of-type {
    width: 60%;
}
.works_sinsubcap ul li img {
    width: 100%;
    -webkit-box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
            box-shadow: rgba(50, 50, 93, 0.25) 0px 13px 27px -5px, rgba(0, 0, 0, 0.3) 0px 8px 16px -8px;
}
.works_sinbtns {
    margin: 100px auto 0;
}
.works_sinbtns .sublinks {
    width: 500px;
    border: 2px solid #ccc;
    margin: 0 auto 30px;
}
.works_sinbtns .sublinks a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    padding: 20px 0;
    font-weight: bold;
    font-size: 1.7rem;
}
.works_sinbtns .ctalinks {
    width: 720px;
    background: #111;
    margin: 0 auto;
}
.works_sinbtns .ctalinks a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
    height: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 2.2rem;
    padding: 32px 0;
}
.relatedlists {
    text-align: center;
}
.relatedlists.listworks {
    margin: 160px 0 130px;
}
.relatedlists h3 {
    font-size: 3.2rem;
    font-weight: bold;
    margin-bottom: 60px;
}
.relatedlists ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
}
.relatedlists ul li {
    width: 23%;
    text-align: left;
}
.relatedlists ul li figure {
    margin-bottom: 22px;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    -webkit-box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
            box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
}
.relatedlists ul li figure img {
    width: 100%;
    height: auto;
}
p.worklist_tag {
    font-size: 1.3rem;
    margin-bottom: 5px;
    line-height: 1.3;
}
.relatedlists ul li h4 {
    font-weight: bold;
    font-size: 1.7rem;
    margin-bottom: 8px;
}
.relatedlists.listarticle {
    margin: 140px auto;
    width: 1440px;
}
@media (max-width:1600px) {
    #wrapper.works_wraps .lowcat_mttls {
        width: 90%;
        margin-bottom: 60px;
    }
    #works_archive > .inners {
        width: 90%;
    }
    .works_footnavi .inners {
        width: 90%;
    }
    section.relatedlists.listarticle {
        width: 90%;
    }
}
@media (max-width:768px) {
    #wrapper.works_wraps .lowcat_mttls {
        margin-bottom: 40px;
        padding-bottom: 20px;
    }
    #wrapper.works_wraps .lowcat_mttls:before {
        content: '';
        position: absolute;
        background: #ddd;
        height: 1px;
        width: 100vw;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
        bottom: 0;
    }
    #wrapper.works_wraps .lowcat_mttls .ttls span {
        margin-bottom: 5px;
    }
    #wrapper.works_wraps #breadcrumb {
        display: none;
    }
    ul.workslist {
        gap: 30px;
    }
    ul.workslist li {
        width: 100%;
    }
    ul.workslist li figure {
        margin-bottom: 20px;
    }
    .works_footnavi {
        margin-top: 40px;
    }
    .works_footnavi .inners {
        padding: 40px 0;
    }
    .wfn_box:not(:last-of-type) {
        margin-bottom: 20px;
    }
    .works_sindescription h2 {
        line-height: 1.3;
    }
    .relatedlists h3 {
        margin-bottom: 40px;
        font-size: 2.6rem;
    }
    .relatedlists ul {
        display: flex;
        display: -webkit-box;
        display: -ms-flexbox;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 20px;
    }
    .relatedlists.listarticle.singles ul li {
        width: 100%;
    }
    .relatedlists.listworks.singles ul li {
        width: 100%;
    }
    .works_sinttls h1 {
        font-size: 2.8rem;
        margin-bottom: 5px;
    }
    .works_sinttls {
        margin-bottom: 30px;
    }
    figure.works_sinpic {
        aspect-ratio: 16 / 9;
        margin-bottom: 50px;
    }
    section.works_sindetail dl {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
        gap: 5px;
    }
    section.works_sindetail dt, section.works_sindetail dd {
        width: 100%;
    }
    section.works_sindetail dd:not(:last-of-type) {
        margin-bottom: 10px;
    }
    .works_sindescription p.txts {
        line-height: 1.7;
        font-size: 1.5rem;
    }
    .works_sinsubcap ul {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
        gap: 30px 0;
    }
    .works_sinsubcap ul li:first-of-type {
        width: 100%;
    }
    .works_sinsubcap > ul li:not(:first-of-type) {
        width: 46%;
    }
    section.works_sindetail {
        margin-bottom: 50px;
    }
    .works_sinbtns {
        margin-top: 60px;
    }
    .works_sinbtns .sublinks {
        width: 80%;
        margin-bottom: 20px;
    }
    .works_sinbtns .ctalinks {
        width: 100%;
    }
    .relatedlists.listworks {
        margin: 70px 0 0;
    }
    .relatedlists ul li {
        width: 100%;
    }
    section.relatedlists.listarticle {
        margin: 60px auto;
    }
}
/*--------------------
solutionworks
-------------------*/
figure.works_sinpic.solutionsingle {
    margin-bottom: 60px;
}
.solutionworks_subimg {
    margin-bottom: 80px;
}
.solutionworks_subimg ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
}
.solutionworks_subimg ul li {
    width: calc((100% - 60px) / 4);
    overflow-y: hidden;
    -webkit-box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
            box-shadow: rgb(0 0 0 / 10%) 0px 4px 12px;
    aspect-ratio: 16 / 9;
}
.solutionworks_subimg ul li img {
    width: 100%;
    height: auto;
}
.works_sinfaq {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 35px;
}
.works_sinfaq dl dt {
    background: #222;
    color: #fff;
    margin-bottom: 17px;
    padding: 20px;
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
}
.works_sinfaq dl dt:before {
    content: 'Q.';
    font-family: 'Spartan';
    padding-right: 10px;
    display: inline-block;
}
.works_sinfaq dl dd p {
    line-height: 1.6;
    font-size: 1.6rem;
}
section.works_sindetail.solutionsingle {
    margin-bottom: 70px;
}
@media (max-width:768px) {
    figure.works_sinpic.solutionsingle {
        aspect-ratio: 16 / 9;
        margin-bottom: 30px;
    }
    .solutionworks_subimg ul {
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
    .solutionworks_subimg ul li {
        width: calc((100% - 20px) / 2);
    }
    .solutionworks_subimg {
        margin-bottom: 40px;
    }
    section.works_sindetail.solutionsingle {
        margin-bottom: 50px;
    }
    .works_sinfaq dl dt {
        font-size: 1.6rem;
    }
    .works_sinfaq dl dd p {
        font-size: 1.5rem;
        line-height: 1.4;
    }
    .works_sinfaq {
        gap: 25px;
    }
}