/*
*Theme Name: APC
*Author:TOIBOX
*Description: APC
*Version:1.0
*/

/*-----リセットCSS------*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    line-height: 1.5;
}

html {
    margin-top: 0 !important;
}

#wpadminbar {
    top: inherit !important;
    bottom: 0 !important;
}

h2,
h3,
h4 {
    font-family: "Noto Sans JP", sans-serif;
    color: #333;
}

h2 img {
    width: 14px;
    padding-bottom: 7px;
    margin-right: 5px;
}

.slick-dots li button {
    display: none !important;
}

.grecaptcha-badge {
    visibility: hidden;
}

body {
    line-height: 1.5;
    color: #333333;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
}

.lp-logo-wrapper {
    width: 250px !important;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

hr {
    background: #000;
    margin: 0 -20px !important;
}

nav ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

ul {
    padding-left: 0;
}

li {
    list-style: none;
    font-family: "Noto Sans JP", sans-serif;

}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    text-decoration: none;
    scroll-behavior: smooth;
    font-family: "Noto Sans JP", sans-serif;

}

/* change colours to suit your needs */
ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

/* change colours to suit your needs */
mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: 500;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}

p {
    font-family: "Noto Sans JP", sans-serif;
}

/*-----リセットCSSここまで------*/


.hamburger {
    display: none;
}


.pc {
    display: block;
}

.sp {
    display: none;
}



.maintenance-content-02-text-box-01.sp {
    display: none;
}

/*-----header------*/

html {
    background-color: #FFF;
    scroll-behavior: smooth;
    font-size: min(0.75vw, 10px);
}

.globalMenuSp {
    display: none;
}


.container {
    display: flex;
    width: 90%;
    margin: 0 auto;
    justify-content: space-between;
    background: #FFF;
    border-radius: 50px;
    height: 60px;
    box-shadow: rgba(0, 0, 0, 0.16) 0 3px 6px;

}

.logo img {
    width: 159px;
    margin: 15px 0 11px 25px;
}

.navbar {
    height: 60px;
    margin-top: 20px;
    z-index: 100;
    width: 100%;
    position: fixed;
}

.navbar-nav {
    display: flex;
    margin-right: 0;
    font-family: 'Hiragino Sans';
    align-items: center;
    height: 60px;
}

.logo {
    color: #FFF;
    font-size: 16px;
    display: flex;

}

.logo p {
    padding-top: 5px;
    font-size: 16px;
    font-weight: 500;
}



.navbar-nav li {
    list-style: none;
}

.navbar-nav .last {
    margin-right: 0;
}

.navbar-nav li a {
    color: #333;
    text-decoration: none;
    font-family: 'Hiragino Sans';
    font-size: 13px;
    font-weight: 500;
    line-height: 63px;
}

.navbar-nav .contact-menu a:hover {
    opacity: 1;
}

.navbar-nav .contact-menu a {
    color: #fff;
}

.contact-menu {
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 50px;
    padding: 0 30px;
}

.contact-menu.bg-extend-left {
    padding: 0 30px;
    background: linear-gradient(#2DC980, #4AC92B);

}



.navbar-nav li a span {
    color: red;
}

.sp-menu {
    display: none;
}


.navbar-nav li {
    list-style: none;
    height: 60px;
    margin-left: 15px;
}

.main-img-box {
    position: relative;
}

.main-img-box h1 {
    position: absolute;
    top: 225px;
    left: 150px;
    font-size: 38px;
    font-weight: 500;
    color: #FFF;
    z-index: 10;
}

.main-img-box h1 span {
    font-size: 64px;
    font-weight: 500;

}

.slider-box-pc {
    width: 100%;
    background-color: #707070;
}

.slider-box-pc img {
    width: 100%;
    height: auto;
    display: block;
    opacity: 0.7;
}








.main-img-box-sp {
    display: none;
}

.navbar-nav li .target {
    color: #E13650;
}

/*-----header end------*/


/*----- FV------*/

.top-fv-box {
    width: 100%;
    height: 100vh;
    position: relative;
    overflow: hidden;
}


.top-fv-img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}

/*-----FV end------*/

/*　上に上がる動き　*/

#mainNav.UpMove {
    position: fixed;
    width: 100%;
    animation: UpAnime 0.5s forwards;
}

@keyframes UpAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        transform: translateY(-100px);
    }
}

/*　下に下がる動き　*/

#mainNav.DownMove {
    position: fixed;
    width: 100%;
    animation: DownAnime 0.5s forwards;
}

@keyframes DownAnime {
    from {
        opacity: 0;
        transform: translateY(-100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*----- box-1 ------*/

.box-1 {
    position: absolute;
    bottom: 42vh;
    left: 5vw;
    color: #FFF;
    z-index: 20;
}

.box-1 h1 {
    font-size: 80px;
    line-height: 1.2;
    font-family: "Roboto", serif;
    font-weight: 500;
    text-shadow: rgba(0, 0, 0, 0.16) 0 3px 6px;
}

.box-1 p {
    font-size: 20px;
    font-weight: 500;
    line-height: 56px;
    letter-spacing: 2.3px;

}

.box-2 {
    position: fixed;
    right: 0;
    top: 280px;
    text-align: center;
    color: #FFF;
    z-index: 1000;
}

.box-2 .btn-01 {
    width: auto;
    height: auto;
    background-color: #01009A;
    padding: 25px 15px;
}

.box-2 .btn-02 {
    width: auto;
    height: auto;
    background-color: #292929;
    padding: 25px 15px;
}

.box-2 .btn-03 {
    width: auto;
    height: auto;
    background-color: #5f5f5f;
    ;
    padding: 25px 15px;
}

.box-2 .btn-01,
.box-2 .btn-02,
.box-2 .btn-03 {
    font-size: 12px;
    display: block;
}

.box-2 .btn-03 span {
    display: block;
}

/*----- box-1 end------*/

/*----- top-about ------*/
.top-about {
    max-width: 1080px;
    margin: 100px auto 150px;
    font-family: 'BIZ UDPMincho', serif;
}

.top-about h2 {
    font-size: 24px;
    font-weight: 500;
}

.top-about h2 span {
    font-size: 14px;
    color: #333;
}



.top-about p {
    color: #333;
    padding-top: 50px;
    font-size: 14px;
    line-height: 34px;
}


.top-about-box {
    display: flex;
    justify-content: space-between;
    position: relative;
}

.vison-text-box {
    width: 48%;
}

.vison-text-box .vison-img {
    max-width: 404px;
    margin-top: 50px;
}

.vison-img-02 {
    max-width: 538px;
    position: absolute;
    right: -90px;
}

.vison-img-03 {
    width: 85%;
}


.look {
    text-align: end;
    width: 40%;
}

.look a {
    margin-top: 20px;
    display: block;
    text-align: center;

}

.look a span {
    background: #01009A;
    color: #FFF;
    padding: 25px 65px;
    border-radius: 50px;
    text-decoration: none;
}


.top-about-img {
    max-width: 80%;
    margin-left: 0;
    margin-top: 100px;
    font-family: 'BIZ UDPMincho', serif;

}

.top-about-img img {
    width: 100%;
}

/*----- box-1 end------*/

/*----- top-mission------*/
.top-mission {
    max-width: 980px;
    margin: 150px auto 100px;
}

.top-mission-box {
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}

.top-mission-text-box {
    width: 51%;
}

.top-mission h2 {
    font-size: 24px;
    font-weight: 500;
}

.top-mission h2 span {
    font-size: 14px;
    color: #333;
    letter-spacing: 0;
}

.top-mission-text-box h3 {
    font-size: 24px;
    line-height: 44px;
    font-weight: 500;

}

.top-mission-text-box p {
    color: #333;
    padding-top: 40px;
    font-size: 14px;
    line-height: 34px;
}

.mission-img-01 {
    width: 40%;
}

/*----- top-mission end------*/



/*----- top-group------*/

.top-group {
    background: #FAFAFA;
    padding-top: 150px;
    padding-bottom: 100px;
}

.top-group-box {
    max-width: 980px;
    margin: 0 auto;
}

.top-group-box h2 {
    font-size: 24px;
    font-weight: 500;
}

.top-group-box h2 span {
    font-size: 14px;
    color: #333;
}

.top-group-sab-box {
    display: flex;
    justify-content: space-between;
    margin: 100px auto 50px;
}

.top-group-sab-box h3 {
    font-size: 30px;
    font-weight: 500;
    line-height: 32px;
    width: 38%;
}

.top-group-sab-box p {
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    width: 60%;
}

.top-group-box-2 {
    background: #FFF;
    max-width: 980px;
    margin: 0 auto;
    padding: 50px;
}

.top-group-box-2-sab {
    display: flex;
    justify-content: space-between;
}

.top-group-box-2-img {
    width: 46%;
}

.top-group-box-2-text-box {
    width: 46%;
}

.top-group-box-2-text-box h3 {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 50px;
}

.top-group-box-2-text-box h3 span {
    font-size: 14px;
    color: #333;
    font-weight: 300;
}

.top-group-box-2-text-box p {
    font-size: 14px;
    font-weight: 300;
    line-height: 26px;
}


.button-1 {
    margin-left: 54%;
    margin-top: 50px;
    width: 200px;
}

.button-2 {
    margin-top: 50px;
    width: 200px;
}

.button-3 {
    margin-left: 54%;
    margin-top: 50px;
    width: 200px;
}

.button-5 {
    margin-left: 54%;
    margin-top: 50px;
    width: 210px;
}


.sab-link div .button-4 {
    width: 220px;
    margin-bottom: 28px;
}


.button-link {
    display: block;
    text-align: center;
    text-decoration: none;
    color: #fff;
    transition: .3s;
}

.button-text {
    font-size: 14px;
    font-weight: 500;
}

.np-img {
    width: 20px;
    margin-left: 40px;
}


.bg-extend-left {
    color: #fff;
    overflow: hidden;
    position: relative;
    z-index: 1;
    border-radius: 50px;
    background: linear-gradient(#00BBFF, #009BFF);
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
    padding: 17px 0;
    border-radius: 50px;
}


.bg-extend-left::before {
    content: '';
    width: 100%;
    height: 100%;
    background-color: #ff701e;
    position: absolute;
    left: -100%;
    top: 0;
    transition: .4s;
    z-index: -1;

}


.bg-extend-left:hover::before {
    left: 0;
}



.top-group-box-3 {
    background: #FFF;
    max-width: 980px;
    margin: 50px auto 0;
    padding: 50px;
}

.top-group-box-3-btn {
    display: block;
    margin-top: 50px;
}

.top-group-box-3-btn span {
    color: #fff;
    background: linear-gradient(#00BBFF, #009BFF);
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
    padding: 19px 34px;
    border-radius: 50px;
}

.top-group-box-4 {
    max-width: 980px;
    margin: 0 auto;
}

/*----- top-point end------*/

/*----- top-services------*/

/*----- top-service end------*/

/*----- top-contact------*/
.top-contact {
    background: #56688D;
}

.top-contact-box {
    max-width: 980px;
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    padding: 100px 0;
}

.top-contact-text-box {
    width: 45%;
}

.top-contact-text-box h2 {
    font-size: 24px;
    font-weight: 500;
    line-height: 34px;
    color: #fff;
}

.top-contact-text-box h2 span {
    font-size: 14px;
}

.top-contact-text-box p {
    font-size: 16px;
    font-weight: 300;
    line-height: 34px;
    color: #FFF;
    margin-top: 60px;
}

.top-contact-img-box {
    width: 50%;
    position: relative;
}

.top-message-img-01 {
    width: 100%;
}

.top-message-img-02 {
    width: 100px;
    position: absolute;
    z-index: 10;
    top: 30%;
    right: -50px;
    background: #00BBFF;
    padding: 42px 40px;
    border-radius: 50%;
}


.top-message-img-02 img {
    width: 20px;
}


/*----- top-contact end------*/



/*----- footer------*/

.footer {
    display: flex;
    max-width: 92%;
    margin: 100px auto 60px;
    justify-content: space-between;
}

.footer-logo-box img {
    width: 245px;
}

.footer-logo-box .footer-x-icon {
    width: 16%;
    margin-top: 20px;
    border-radius: 10px;
}

.footer-copy-box img {
    width: 184px;
}

.footer-logo-box a {
    margin-bottom: 30px;
    display: block;
}

.footer-logo-box h2 {
    font-size: 12px;
    font-weight: 500;
    line-height: 20px;
    margin-bottom: 15px;
}

.footer-logo-box p {
    font-size: 12px;
    font-weight: 300;
    line-height: 20px;
}

.footer-menu-01,
.footer-menu-02 {
    margin-top: 20px;
}

.footer-menu-01 ul li {
    font-size: 12px;
    font-weight: 500;
    line-height: 24px;
    transform: 0.5s;
}

.footer-menu-01 ul li:hover,
.footer-menu-02 ul li:hover,
.footer-x-icon:hover,
.footer-privacy:hover {
    opacity: 0.6;
    transition: 0.5s;
}



.footer-menu-02 ul p {
    font-size: 12px;
    font-weight: 500;
    line-height: 24px;
}

.footer-menu-02 ul li {
    font-size: 12px;
    font-weight: 300;
    line-height: 24px;
}

.footer-copy-box {
    text-align: end;
    margin-top: 20px;
}

.footer-copy-box img {
    margin-bottom: 45px;
}

.footer-copy-box p {
    font-size: 10px;
    font-weight: 300;
    line-height: 17px;
    margin-bottom: 5px;
}

.footer-link-img {
    width: 12px;
    margin: 0 0 5px 5px;
}

/*----- footer end------*/

/*----- maintenance ------*/


.maintenance-top-fv-box {
    width: 100%;
    height: 100vh;
    position: relative;
}


/* 複数画像切り替え---------------------------------------------- */
.slider-container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}


.slideimg {
    position: absolute;
    /* 位置を絶対指定で重ねて配置 */
    inset: 0;
    /*親要素内にフルサイズで配置*/
    opacity: 0;
    /* 初期状態で透明に */
    background-size: cover;
    /* 画像をスライド全体にカバー */
    animation: slideAnime 15s infinite;
    /* 9秒で1サイクル */
}

@keyframes slideAnime {

    0%,
    63%,
    100% {
        opacity: 0;
    }

    /* スライドの非表示タイミング */
    20%,
    33% {
        opacity: 1;
    }

    /* スライドの表示タイミング */
}

/* 各スライドのアニメーションタイミングを均等にずらす */
.slideimg:nth-of-type(1) {
    background-image: url('./img/maintenance_fv_01.png');
    animation-delay: 0s;
    background-position: 100%;
    border-radius: 0 0 0 50px;
}

.slideimg:nth-of-type(2) {
    background-image: url('./img/maintenance_fv_02.png');
    animation-delay: 6s;
    background-position: 10%;
    border-radius: 0 0 0 50px;

}

.slideimg:nth-of-type(3) {
    background-image: url('./img/maintenance_fv_03.png');
    animation-delay: 12s;
    background-position: 0%;
    border-radius: 0 0 0 50px;

}


.maintenance-top {
    position: relative;
    width: 95%;
    height: 90vh;
    margin: 0 0 0 auto;
    background: #fff;
    border-radius: 0 0 0 50px;
}

.maintenance-top-fv-box button {
    display: none !important;
}


.maintenance-top-fv div img {
    width: 100%;
}

.maintenance-fv-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 20%;
    height: 130%;
    background: linear-gradient(#2BC980, #49C92B);
    z-index: -1;
}


.maintenance-top-fv-box .box-1 {
    position: absolute;
    width: 35%;
    bottom: 80px;
    left: 5vw;
}

.maintenance-top-fv-box .box-1 h1 img {
    width: 100%;
}


/*----- maintenance end------*/

/*----- maintenance-content-01------*/

.maintenance-content-01 {
    max-width: 88%;
    margin: 100px auto 0;
}

.maintenance-content-01-box {
    display: flex;
    justify-content: space-between;
}

.maintenance-content-01-img-box {
    width: 40%;
    position: relative;
}

.maintenance-content-img-01 {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 97px;
}


.maintenance-content-img-02 {
    width: 100%;
}

.maintenance-content-title-img {
    width: 236px;
}

.maintenance-content-01-text-box {
    width: 55%;
    margin-top: 70px;
}

.maintenance-content-01-text-box h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 41px;
    letter-spacing: .5px;
    padding: 47.5px 0 30px;
}

.maintenance-content-01-text {
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
    width: 75%;
}

.maintenance-content-01-btn {
    display: block;
    margin-top: 75px;
}

.maintenance-content-01-btn.sab-link-btn-img {
    width: 350px;
}



.all-btn {
    background: linear-gradient(#2BC980, #49C92B);
    padding: 20px 30px 20px 58px;
    border-radius: 50px;
    color: #FFF;
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
}

.all-btn span::after {
    content: "	\03e";
    display: inline-block;
    vertical-align: middle;
    /* transform: scale(0.5); */
    padding-left: 30px;
    margin-top: -3px;
}

.all-btn span.np::after {
    content: url(./img/np_img.png);
    width: 20px;
    height: 20px;
    transform: scale(0.07);
    margin-top: -20px;
    padding-left: 0;
    padding-right: 40px;
}

.button-text.np::after {
    content: url(./img/np_img.png);
    width: 20px;
    height: 20px;
    transform: scale(0.07);
    margin-top: -20px;
    padding-left: 0;
    padding-right: 40px;
}

.link-img {
    width: 16px;
    margin: 0 0 2px 8px;
}

/*----- maintenance-content-01 end------*/

/*----- maintenance-content-02------*/



.maintenance-content-02 {
    max-width: 1057px;
    background: linear-gradient(#2BC980, #49C92B);
    margin: 100px auto;
    border-radius: 0 0 0 50px;
    position: relative;
    padding: 50px 50px 50px 100px;
}

.maintenance-content-02-img-l {
    position: absolute;
    top: -34px;
    left: -34px;
    width: 97px;
}

.maintenance-content-02-box {
    display: flex;
    justify-content: space-between;
}

.maintenance-content-02-text-box {
    width: 15%;
}

.maintenance-content-02-title-img {
    width: 101px;
    margin-bottom: 50px;
}

.maintenance-content-02-text-box-01 {
    display: flex;
    justify-content: left;
}


.maintenance-content-02-text {
    color: #FFF;
    writing-mode: vertical-rl;
    font-size: 24px;
    font-weight: 500;
    line-height: 29px;
    margin-right: 30px;
    letter-spacing: 3px;
}

.maintenance-content-02-img-box {
    width: 30%;
    position: relative;
}

.maintenance-content-02-img-box a:hover {
    opacity: 0.7;
}

.maintenance-content-02-img-box-img {
    width: 100%;
}

.maintenance-content-02-img-box-img-1 {
    position: absolute;
    bottom: 36px;
    right: 20px;
    width: 70px;
}

.maintenance-content-02-img-box h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 41px;
    color: #fff;
    margin-top: 31px;
}

.maintenance-ber {
    width: 100%;
}


/*----- maintenance-content-02 end------*/

/*----- maintenance-content-03------*/
.maintenance-content-03 {
    background-color: #FAF7EC;
    border: 1px solid #E2E2E2;
    border-bottom: 0;
    padding-bottom: 100px;
}

.maintenance-content-03-box {
    max-width: 980px;
    margin: 0 auto;
    padding-top: 87px;
}

.maintenance-content-03-top-box {
    display: flex;
    justify-content: space-between;
    height: 20px;
}

.maintenance-content-03-title {
    width: 101px;
}

.maintenance-content-03-top-sab-box {
    display: flex;
    position: relative;
    margin-right: 55px;
}

.maintenance-content-03-top-sab-box:hover {
    opacity: 0.6;
    transform: 0.5s;
}

.maintenance-content-03-top-sab-box span {
    font-size: 14px;
    font-weight: 500;
    line-height: 24px;
    width: 88px;
    border-bottom: 1px solid #333;
    display: block;
    margin-bottom: -7px;
}

.maintenance-03-btn {
    width: 40px;
    height: 40px;
    position: absolute;
    top: -5px;
    right: -55px;
}

.maintenance-content-03-main-box {
    max-width: 980px;
    margin: 0 auto;
}

.maintenance-content-03-main-box .post_list .cat-sab {
    font-weight: 300;
}

.maintenance-content-03-post_list {
    display: block;
    margin-top: 30px;
    border-top: 1px solid #CCCCCC;
}

.maintenance-content-03-post_list li {
    height: 81px;
    border-bottom: 1px solid #CCCCCC;
    position: relative;
}

.maintenance-content-03-post_list li a {
    position: relative;
    padding-bottom: 2px;
}



.maintenance-content-03-post_list li a .ttl {
    position: relative;
    padding-bottom: 0px;
}

.maintenance-content-03-post_list li a .ttl::before {
    position: absolute;
    left: 0;
    content: '';
    width: 100%;
    border-bottom: 0.5px solid #333333;
    bottom: -2px;
    /*アンダーラインがaタグの下端から現れる*/
    transform: scale(0, 1);
    /*アンダーラインの縮尺比率。ホバー前はx方向に0*/
    transform-origin: left top;
    /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の左端*/
    transition: transform 0.3s;
    /*変形の時間*/
}

.maintenance-content-03-post_list li a .ttl:hover::before {
    transform: scale(1, 1);
    /*ホバー後、x軸方向に1（相対値）伸長*/
}

.maintenance-content-03-post_list li a {
    /* 垂直方向の中央揃え */
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    border-bottom: 1px solid rgba(0, 0, 0, 0);
}

.maintenance-content-03-post_list li a .date {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    margin-right: 30px;
    width: 100px;
}

.maintenance-content-03-post_list li a .cat-sab {
    font-size: 10px;
    font-weight: 300;
    line-height: 34px;
    padding: 10px 15px;
    width: 130px;
    letter-spacing: 1px;

}

.maintenance-content-03-post_list li a .ttl {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    width: 400px;
}

/*----- maintenance-content-03 end------*/




.sab-page {
    background-color: #FFF;
}

.sab-page .top-fv-img {
    height: auto;
}

.sab-page .navbar {
    position: fixed;
    top: 0;
    height: 76px;
    margin-top: 0;
    background: #FFF;
}

.sab-page .container {
    height: 76px;
}

.sab-page .container .logo p {
    color: #000;
    font-weight: 500;
    line-height: 76px;
}

.sab-page .container .logo a img {
    padding-top: 14px;
}

.sab-page .navbar-nav {
    padding-top: 34px;
    font-weight: 500;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.single-sab-page .logo p {
    font-weight: 500;
}

.single-sab-page .navbar-nav {
    font-weight: 500;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}


.sab-page .navbar-nav li a {
    color: #000;
    font-weight: 500;
}

.sab-page .navbar-nav .contact-menu a {
    color: #fff;
}

.about-fv {
    margin-top: 80px;
}

.about-fv-box {
    position: relative;
}


/*----- ABOUT------*/

/*----- fv------*/

.about-fv-tetle-box {
    text-align: left;
    width: 980px;
    margin: 0 auto;
    position: absolute;
}

.about-fv-tetle {
    font-size: 30px;
    font-weight: 500;

    color: #FFF;
    position: absolute;
    bottom: 120px;
    left: 150px;
    z-index: 100;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.about-fv-tetle {
    font-size: 30px;
    font-weight: 500;
}

.about-fv-tetle span {
    font-size: 16px;
}

.about-fv-tetle-sab {
    font-size: 26px;
    font-weight: 500;
    color: #FFF;
    text-align: center;
}

.philosophy-text-box .about-tb {
    font-size: 20px;
    font-weight: 500;
}

/*----- FV end ------*/


/*----- ABOUTUS ------*/

.aboutus-01 {
    width: 100%;
}

.aboutus-01 h2 {
    font-family: "Akshar", serif;
    font-family: "DIN Alternate", serif;
    font-size: 60px;
    font-weight: 500;
    line-height: 48px;
    max-width: 980px;
    margin: 0 auto 80px;
    padding: 160px 0 0 0;
}

.aboutus-01 h2 span {
    font-size: 16px;
    font-weight: 600;
    font-family: "DIN Alternate";
}

.aboutus-fv-img {
    width: 100%;
}

.aboutus-02-box {
    width: 88%;
    margin: 120px 0 0 auto;
    display: flex;
    justify-content: space-between;
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 0 0 0 50px;
    padding: 90px 50px 80px 64px;
    position: relative;

}

.aboutus-02-box-img {
    width: 30%;
}

.aboutus-02-box-img img {
    width: 100%;
}

.aboutus-02-text-box {
    width: 60%;
    margin-right: 5.5%;
}

.aboutus-02-text-box img {
    width: 117px;
}

.aboutus-02-text-box h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 41px;
    color: #fff;
    margin: 30px 0;
}

.aboutus-02-text-box p {
    font-size: 16px;
    line-height: 40px;
    color: #FFF;
}

.maru {
    position: absolute;
    top: -33px;
    left: -33px;
    width: 97px;
}

.aboutus-02-sab-box {
    max-width: 80%;
    margin: 84px auto;
    padding: 0 120px 0 100px;
}

.aboutus-02-sab-box img {
    width: 100px;
    margin-bottom: 30px;
}

.aboutus-02-sab-box-text {
    font-size: 24px;
    font-weight: 500;
    line-height: 41px;
}

.kodawari {
    background: linear-gradient(#2DC980, #4AC92B);
    padding: 100px 0;
}

.kodawari-box {
    max-width: 980px;
    margin: 0 auto;
}

.kodawari-box img {
    width: 144px;
}

.kodawari-text-box {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

.kodawari-text-sab-box {
    background: #FFF;
    border-radius: 10px;
    padding: 30px;
    width: 32%;
    color: #333;

}

.kodawari-text-sab-box p {
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
}

.kodawari-text-sab-box h4 {
    font-size: 24px;
    font-weight: 500;
    line-height: 30px;
    margin: 16px 0 20px;
}


.torikumi {
    max-width: 980px;
    margin: 100px auto;
}

.torikumi-title {
    border-bottom: 1px solid #CCC;
    padding-bottom: 20px;
}

.torikumi-title img {
    width: 303px;
}

.torikumi h3 {
    font-size: 24px;
    font-weight: 600;
    line-height: 40px;
    margin: 50px 0;
}

.torikumi-box {
    display: flex;
    justify-content: space-between;
}

.torilkumi-sab-box {
    width: 48%;
}

.torilkumi-sab-box p {
    font-size: 18px;
    font-weight: 500;
    line-height: 24px;
}

.torilkumi-sab-box .tirikumi-main-text {
    font-size: 24px;
    font-weight: 500;
    line-height: 40px;
    margin: 20px 0;
}

.torilkumi-sab-box .tirikumi-main-text span {
    font-size: 20px;
}

.torilkumi-img-box {
    width: 40%;
    margin-right: 0;
}

.torilkumi-img-box img {
    width: 100%;
}



.message {
    background: #FAF7EC;
    margin-top: 150px;
    padding: 120px 0;
}

.message-title {
    max-width: 980px;
    margin: 0 auto;
}

.message-title img {
    width: 101px;
}

.message-box {
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    margin-top: 40px;
}

.message-text {
    width: 48%;
}

.message-text h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 40px;
    margin-bottom: 40px;
}


.message-text p {
    font-size: 13px;
    font-weight: 300;
    line-height: 33px;

}

.message-img-box {
    width: 45%;
    margin-right: -12%;
    position: relative;
}

.message-img-box .message-img {
    width: 100%;
}

.message-img-maru {
    position: absolute;
    top: -30px;
    right: -34px;
    width: 97px;
}


/*----- company------*/
.company {
    max-width: 980px;
    margin: 100px auto 0;
}

.company img {
    width: 101px;
}

.company-box {
    display: flex;
    margin: 30px 0 0;
    justify-content: space-between;
}

.company-title-box {
    border-top: 1px solid #ccc;
    width: 20%;
}

.company-title-box p {
    padding: 30px 0;
    border-bottom: 1px solid #ccc;
    color: #2DC980;
    font-size: 16px;
    font-weight: 600;
    line-height: 27px;
}

.company-text-box {
    border-top: 1px solid #ccc;
    width: 70%;
}

.company-title-box .company-title-box-last {
    padding-bottom: 57px;
    border-bottom: 1px solid #ccc;
}


.company-text-box p {
    padding: 30px 0;
    border-bottom: 1px solid #ccc;
    color: #333;
    font-size: 16px;
    font-weight: 600;
    line-height: 27px;
}

/*----- company end ------*/


/*----- Access ------*/
.access {
    max-width: 980px;
    margin: 50px auto 100px;
}

.access-title {
    margin-bottom: 40px;
}

.access img {
    width: 101px;
}

.access-text-box {
    display: flex;
    margin-top: 30px;
}

.access-text-box p {
    width: 50%;
    font-size: 12px;
    font-weight: 300;
    line-height: 20px;
}

.access-text-box p span {
    font-weight: 600;
    letter-spacing: 1px;
}

.sab-link {
    border-top: 1px solid #E2E2E2;
    border-bottom: 1px solid #E2E2E2;
    padding: 0 50px;
    display: flex;
    justify-content: space-between;
}

.sab-link .sab-link-box,
.sab-link .line-s {
    width: 47%;
    margin: 50px 0;
}

.sab-link div.line-s {
    width: 1px;
    margin: 0 auto;
    border-left: 1px solid #E2E2E2;
}

.sab-link div div {
    width: 100%;
    margin-bottom: 28px;
}


.sab-link-main-img {
    width: 100%;
    margin-bottom: 0;
}

.sab-link-sab-img {
    height: 20px;
    margin-bottom: 0;
}

.sab-link-btn-img {
    width: 280px;
    display: block;
}

/*----- Access end ------*/

/*----- Client ------*/

.client {
    background-color: #FAFAFA;
    padding: 150px 0;
}

.client h2 {
    max-width: 980px;
    margin: 0 auto;
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 50px;
}

.client h2 span {
    font-size: 16px;
    color: #01009A;
}

.client-box {
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.client-box p {
    width: 47%;
    font-size: 18px;
    font-weight: 500;
    border-top: 1px solid #333;
    padding: 36px 0 34px;
}

.client-box-text {
    border-bottom: 1px solid #333;
}

/*----- Client end ------*/



/*----- Product & Services ------*/

.product_services_box {
    background-color: #fafafa;
    padding: 150px 0;
}

.product_services_box01 {
    width: 980px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;

}


.product_services_menu {
    width: 25%;
}

.product_services_menu p {
    font-size: 12px;
    font-weight: 500;
    background: #EAEAEA;
    margin-bottom: 5px;
    color: #01009A;
    padding: 20px;
}

.product_services_menu p:hover {
    color: #FFF;
    background: #01009A;
    transition: 0.5s;
}

#product_services-main-box {
    width: 70%;
}

#product_services-main-box h2 {
    font-size: 24px;
    font-weight: 500;
    color: #01009A;
}

#product_services-main-box h2 span {
    font-size: 4px;
    font-weight: 100;
    padding-right: 10px;
}


.sab-page .top-practical_example-box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 53px;
}

.sab-page .practical_example_link {
    width: 31%;
}

.sab-page .practical_example_link .practical_example_link_img {
    border: 1px solid #CCCCCC;
}

.practical_example_link_img img {
    width: 100%;
    height: 100%;
}

.top-practical_example-box::after {
    content: "";
    display: block;
    width: 66%;
}

.sab-page .name-box {
    padding: 0;
    margin-top: 20px;
    margin-bottom: 30px;
}

.sab-page .practical_example_title {
    font-size: 16px;
    font-weight: 500;
    ;
}

/*----- Product & Services end ------*/

/*----- customized_products ------*/

#customized_products,
#follow-up {
    display: flex;
    max-width: 100%;
    justify-content: space-between;
    margin: 0 auto;
}

.customized_products-img-box {
    width: 50%;
}

.customized_products-img {
    width: 100%;
}

.customized_products-box {
    width: 45%;
    display: flex;
    justify-content: center;
    align-items: center;
}



.customized_products-text h2 {
    font-size: 24px;
    font-weight: 500;
    color: #01009A;
}

.customized_products-text h2 span {
    font-size: 30px;
    font-weight: 100;
    padding-right: 10px;
}

.customized_products-text p {
    width: 80%;
    margin-top: 40px;
    font-size: 14px;
    margin-bottom: 70px;
    line-height: 2;
}

.customized_products-text a span {
    background-color: #01009A;
    border-radius: 50px;
    font-size: 14px;
    color: #FFF;
    padding: 28px 72px;
}

/*----- customized_products end ------*/



/*----- utility ------*/
#utility {
    background-color: #fafafa;
    padding-top: 150px;
}

.urtlity-main-box {
    width: 980px;
    margin: 0 auto;
    display: block;
}

.utility-box {
    width: 750px;
    margin: 0 0 0 auto;
    padding: 0 0 150px;
}

.utility-box h2 {
    font-size: 24px;
    font-weight: 500;
    ;
    color: #01009A;
}

.utility-box h2 span {
    font-size: 30px;
    font-weight: 100;
    padding-right: 10px;
}

.utility-sab-box {
    display: flex;
    justify-content: space-between;
}


/*-----utility end ------*/


/*-----archive ------*/

.news {
    max-width: 980px;
    margin: 100px auto;
}

.cat.bold {
    display: flex;
}



.post_list {
    margin-top: 50px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.post_list::after {
    display: block;
    content: "";
    width: 30%;
}

.post_list ul {
    display: flex;
    justify-content: space-between;
}

.post_list li {
    width: 30%;
    margin-bottom: 50px;
}

.post_list li:hover {
    opacity: 0.6;
    transition: 0.5s;
}

.img-icon {
    width: 100%;
    display: block;
}

/* .img-icon .sab-img {
    width: 66%;
    margin: 82px 50px;
    display: block;
} */

.img-icon img {
    width: 100%;
    height: 100%;
}

.post_list .ttl {
    font-size: 16px;
    font-weight: 700;
    line-height: 23px;
    margin: 20px 0;
    display: block;
    letter-spacing: 1px;
}


.post_list .ttl:hover {
    opacity: 0.6;
    transition: 0.5s;
}

.cat-sab {
    font-size: 10px;
    font-weight: bold;
    line-height: 34px;
    color: #fff;
    background: linear-gradient(90deg, #2DC980, #4AC92B);
    padding: 5px 10px;
    border-radius: 50px;
    margin-right: 15px;
    letter-spacing: 1px;
}

.date {
    font-size: 12px;
    font-weight: 300;
    line-height: 34px;
    letter-spacing: 1px;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
}

.cat.bold li a {
    font-size: 12px;
    font-weight: bold;
    line-height: 34px;
    color: #333;
    border: 1px solid #CCC;
    border-radius: 50px;
    padding: 9px 24px;
    margin-right: 30px;
    -webkit-transition: 0.5s all;
    transition: 0.1s all;
    letter-spacing: 1px;
}



article.news ul.cat li a:hover,
article.news ul li.current-cat a {
    color: #fff;
    background: linear-gradient(#2DC980, #4AC92B);
    border: 1px solid #4AC92B;

}

.p-single-content-pagers {
    margin-top: 100px;
    border-top: 1px solid #ccc;
}

.p-single-content-pager__inner {
    display: flex;
    justify-content: space-between;
    margin: 100px auto;
    position: relative;
}

.p-single-content-pager__inner a {
    font-size: 14px;
    font-weight: 600;
    margin: 5px 5px 0;
}

.p-single-content-pager__inner a:hover {
    opacity: 0.6;
    transition: 0.5s;
}


.nf-btn {
    text-align: center;
}


/*-----archive  end ------*/



/*----- single ------*/

.single-box {
    max-width: 800px;
    margin: 0 auto;
}

.single-title {
    font-size: 24px;
    font-weight: 600;
    line-height: 34px;
    letter-spacing: 1px;
    padding-bottom: 50px;
    margin-bottom: 50px;
    border-bottom: 1px solid #ccc;
}

.single-box p {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    margin-bottom: 80px;
    letter-spacing: 1px;
    font-family: hiragino-kaku-gothic-pron, sans-serif;
}

.single-box .nf-btn {
    width: 65%;
    margin-bottom: 0;
}

.single-box img {
    margin-bottom: 80px;
}

.single-box h2 {
    color: #E95A0E;
    font-size: 20px;
    font-weight: 500;
    line-height: 34px;
    margin-bottom: 50px;
}

.single-box h2::before {
    content: url(./img/leaf_g.png);
    display: inline-block;
    vertical-align: middle;
    transform: scale(0.5);
}

.single-box p a {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    color: #2E954D;
    border-bottom: 1px solid #2E954D;
}

.single-box p a:hover {
    opacity: 0.6;
    transition: 0.5s;
}

.single-box p .m-btn {
    color: #FFF;
    position: absolute;
    top: 5px;
    left: 50%;
    transform: translate(-50%, -50%);
    border-bottom: 0;
    width: auto;
}

.single-box p .m-btn:hover {
    opacity: 1;
}

.single-box .retop-btn a {
    color: #FFF;
}

.page-numbers {
    text-align: center;
    list-style-position: inside;
    list-style-type: none;
    padding: 0;
}

.page-numbers.current {
    background: linear-gradient(#2DC980, #4AC92B);
    color: #FFF;
    padding: 11px 14px;
}

.page-numbers li {
    display: inline-block;
}

.page-numbers:hover {
    background: linear-gradient(#2DC980, #4AC92B);
    color: #FFF;
    transition: 0.1s all;
}

.page-numbers a {
    display: inline-block;
    padding: 5px;
    margin: 0 2px 2px 0;
    background: #fff;
    border: 1px solid #ccc;
}

.page-numbers span {
    display: inline-block;
    padding: 5px;
    margin: 2px;
    border: 1px solid #ccc;
}

/*----- single end ------*/
/*----- flow ------*/
.flow {
    background: #FAFAFA;
    padding-top: 150px;
    padding-bottom: 150px;
}

.flow-box {
    max-width: 980px;
    margin: 0 auto;
}

.flow-box h2 {
    max-width: 980px;
    margin: 0 auto;
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 50px;
}

.flow-box h2 span {
    font-size: 16px;
    color: #01009A;
}

.flow-sab-box {
    display: flex;
    justify-content: space-between;
}

.flow-sab-box-title {
    width: 50%;
    border-top: 1px solid #cccccc;
}

.flow-sab-last-box {
    border-bottom: 1px solid #cccccc;
}

.flow-sab-box-title p {
    color: #01009A;
    font-size: 20px;
    font-weight: 500;
    ;
    padding-top: 39px;
    padding-bottom: 36px;
}

.flow-sab-boxtext {
    width: 50%;
    border-top: 1px solid #cccccc;
}

.flow-sab-boxtext p {
    font-size: 14px;
    padding-top: 30px;
    padding-bottom: 30px;
    line-height: 2;
}


/*----- flow end ------*/






.text-1 {
    font-size: 22px;
    font-family: 'BIZ UDPMincho', serif;
    padding-bottom: 20px;
}

.text-2 {
    font-size: 16px;
    ;
    font-weight: normal;
}

.list {
    margin-top: 40px;
}

.zisseki {
    border-bottom: 1px solid;
}

.aboutus-img {
    width: 46%;
    position: absolute;
    right: 0px;
    top: 39%;
}

/*-----ABOUTUS end ------*/

/*----- companyprofile ------*/




/*----- companyprofile end ------*/


/*----- services ------*/

.services {
    position: relative;
    width: 1320px;
    margin: 0 auto;
    margin-top: 80px;
}

.services-2 {
    position: relative;
    width: 1320px;
    margin: 0 auto;
    margin-top: 180px;
    display: flex;
}

.test {
    width: 50%;
}

.services-text-box {
    background-color: #F4F4F4;
    width: 60%;
    margin-left: 40px;
}

.services-text-box-r {
    background-color: #F4F4F4;
    width: 60%;
    margin-right: 40px;
}


.services-text {
    padding-left: 80px;
    padding-bottom: 40px;
    padding-right: 150px;
    padding-top: 40px;
}

#manabi {
    margin-top: 100px;
}

.services-text H3 {
    font-size: 32px;
    font-family: 'BIZ UDPMincho', serif;
    position: absolute;
    top: -25px;
}



/* .text-2 a{
    border-bottom: 1px solid;
}
 */


.dan {
    padding-left: 185px;
}

.services-img {
    width: 45%;
    position: absolute;
    right: 30px;
    top: 19%;
}

.services-img-2 {
    width: 46%;
    position: absolute;
    left: 40px;
    top: 19%;
}

/*-----services end ------*/

/*----- companyprofile ------*/




/*----- companyprofile end ------*/


/*----- profiler ------*/

.profiler-box {
    width: 1280px;
    margin-left: 40px;
    display: flex;
    margin-top: 80px;
}

.profiler-text-box {
    background-color: #F4F4F4;
    padding-left: 80px;
    padding-bottom: 60px;
    width: 100%;
    position: relative;
}

.sv-btn {
    margin: 40px auto;
    display: block;
}

.sv-btn img {
    width: 100%;
}

.sv-box {
    width: 70%;
    margin: 0 auto;
    background: #152d61;
    padding: 20px;
    border-radius: 10px;
}

.sv-box h3 {
    font-size: 64px;
    color: #fdf35c;
    font-weight: 500;
    padding-bottom: 20px;
}

.sv-box p {
    font-size: 18px;
    color: #fff;
}


.profiler-text-box h2 {
    font-size: 32px;
    position: absolute;
    top: -30px;
    font-family: 'BIZ UDPMincho', serif;
}

.profiler-text-1 {
    width: 100%;
    margin-top: 60px;
    font-size: 22px;
    font-family: 'BIZ UDPMincho', serif;
}

.profiler-text-2 {
    width: 580px;
    font-size: 16px;
    padding-top: 40px;
}

.profiler-text-2 a {
    background-color: #000;
    color: #FFF;
    padding: 10px 20px;
    border-radius: 10px;
}

.member-img {
    position: absolute;
    width: 40%;
    height: auto;
    top: 680px;
    right: 40px;
}


/*----- profiler end ------*/

.sab-page-single .top-practical_example-box {
    display: block;
}

/*----- portfolio ------*/

/*----- singlepage ------*/

.single-sab-page .practical_example_link_box {
    width: 100%;
    height: 75%;
    display: flex;
    backdrop-filter: blur(20px);
    background-color: rgba(255, 255, 255, 0.1);
    justify-content: space-between;
}

.single-sab-page .practical_example_link_box::after {
    filter: blur(3px);
}

.single-sab-page .practical-example-fv-tetle-box {
    text-align: left;
    width: 980px;
    height: 600px;
    position: absolute;
    top: 20%;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;

}

.single-sab-page .practical_example_link_box .practical_example_title,
.single-sab-page .practical_example_link_box .practical_example_year {
    font-size: 24px;
    font-weight: 500;
    color: #FFF;
}

.single-sab-page .name-box {
    width: 50%;
    text-align: center;
    background: none;
}

.single-sab-page .practical_example_link_img img {
    width: auto;
    height: 100%;
    margin: 0 auto;
    display: block;
}

.single-sab-page .practical_example_link_img {
    width: 50%;
}

/*----- singlepageend ------*/

.portfolio-top-title {
    width: 1280px;
    margin: 0 auto;
    font-size: 24px;
    margin-top: 80px;
}

.portfolio-box {
    width: 1358px;
    margin: 0 auto;
    background-color: #F4F4F4;
    margin-top: 100px;
    padding: 60px;
    position: relative;
}

.portfolio-sab-box {
    display: flex;
    margin-bottom: 100px;
}

.portfolio-sab-box-1 {
    width: 50%;
}

/* .bottoms{
	padding-bottom:100px;
} */

.book-link-a {
    width: 50%;
}

.book-link-a img {
    width: 100%;
    height: 100%;
    padding-top: 0;
}

.portfolio-sab-box-2 {
    width: 50%;
    height: 50%;
    padding-top: 130px;
}

.portfolio-sab-box-1 a span {
    background-color: #000;
    color: #FFF;
    padding: 10px 20px;
    border-radius: 10px;
}

.portfolio-sab-box-1 a .yume,
.yume {
    background-color: #F4F4F4;
    color: #0073aa;
    padding-left: 0;
    border-bottom: 1px solid;
    border-radius: initial;
}

.portfolio-box h2 {
    position: absolute;
    top: -30px;
    font-size: 32px;
    font-family: 'BIZ UDPMincho', serif;
}

.portfolio-box h3 {
    font-size: 24px;
    font-family: 'BIZ UDPMincho', serif;
}

.portfolio-box h4 {
    font-size: 24px;
    font-family: 'BIZ UDPMincho', serif;
}

.portfolio-box p {
    font-size: 16px;
}

.portfolio-box .link-2 {
    padding-top: 10px;
}

.link-2 img {
    padding-right: 10px;
}

.portfolio-sab-box-1 a .link-3 {
    color: #000;
    background-color: inherit;

}

.portfolio-sab-box .link-2 {
    padding-top: 10px;
}

.portfolio-box p img {
    width: 10%;
}

.portfolio-box .bottom {
    padding-top: 0px;
    padding-bottom: 60px;
}

.portfolio-box .bottom-2 {
    padding-top: 0px;
    padding-bottom: 0px;
}

.gengou {
    font-size: 18px;
}

/*----- portfolio end------*/
/*-----  ------*/
/*----- portfolio end------*/






/*----- NEWS 本文------*/

.sab-page-news-box {
    max-width: 980px;
    margin: 0 auto;
    background-color: #FFF;
}

.sab-page-news-box .news_text_box {
    width: 940px;
    margin: 0 auto;
    padding-top: 98px;
}

.sab-page nav.globalMenuSp ul li a .sab-page-news-box .news_text_box .news_text_box_cont .news_time,
.sab-page-news-box .news_text_box .news_text_box_cont .news_cotegory {
    font-size: 16px;
    font-weight: 500;
    color: #999999;
}

.news_time {
    padding-bottom: 40px;
}

.sab-page-news-box .news_text_box .top_news_title {
    font-size: 24px;
    font-weight: 500;
    padding-bottom: 24px;

}

.sab-page-news-box .news_text_box .news_link_img,
.sab-page-news-box .news_text_box .news_link_img img {
    width: 100%;
    height: auto;
}

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

.sab-page-news-box .news_text_box .news_link_img {
    padding-bottom: 60px;
}

.sab-page-news-box .news_text_box p {
    font-size: 16px;
    font-weight: normal;
}

.back-btn {
    display: block;
    text-align: center;
    padding-top: 80px;
    padding-bottom: 65px;
}

.back-btn span {
    font-size: 14px;
    font-weight: 500;
    text-decoration: none;
    color: #FFF;
    background: #01009A;
    padding: 28px 30px;
    border-radius: 50px;
}

/*----- NEWS 本文 end------*/

/*----- practical_example_text_box ------*/

.single-sab-page .navbar {
    height: 76px;
    margin-top: 0;
    position: fixed;
    background: #FFF;
}

.single-sab-page .logo {
    padding-top: 20px;
    color: #000;
    font-weight: 500;
}

.single-sab-page .navbar-nav li a {
    color: #000;
}

.navbar-nav li a:hover,
.recruit-menu-box li a:hover {
    opacity: 0.6;
    transition: 0.5s;
}

.single-sab-page #navbarResponsive {
    margin-top: 30px;
}

.practical-example-fv {
    width: 100%;
}

.practical-example-fv-box {
    position: relative;
    width: 100%;
}

.practical-example-fv-tetle-box {
    text-align: left;
    width: 980px;
    margin: 0 auto;
    position: absolute;
    top: 220px;
    left: 150px;
}

.practical-example-fv-tetle {
    font-size: 30px;
    font-weight: 500;
    color: #FFF;
    z-index: 100;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}


.single-sab-page .practical-example-fv-tetle {
    margin-bottom: 46px;
}

.practical-example-fv-tetle span {
    font-size: 16px;
}

.practical-example-fv-tetle-sab {
    font-size: 26px;
    font-weight: 500;
    color: #FFF;
    text-align: center;
}

.sab-page-structure-box {
    max-width: 980px;
    margin: 0 auto;
}

.single-sab-page .sab-page-structure-box {
    max-width: 100%;
}

.single-sab-page .sab-page-news-box {
    width: 800px;
}


.neo-name-box {
    width: 50%;
    text-align: left;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
}

.point-01 h3 span,
.point-02 h3 span,
.point-03 h3 span {
    font-size: 30px;
    font-weight: 100;
    padding-right: 10px;
}

.single-sab-page .point-02 {
    max-width: 800px;
}

.single-sab-page .sab-page-news-box h2 {
    font-size: 24px;
    color: #01009A;
    font-weight: 500;
    margin-bottom: 40px;
    margin-top: 100px;
}

.single-sab-page .sab-page-news-box .bg {
    background-color: #FAFAFA;
    padding: 30px;
    margin-bottom: 30px;
    font-size: 16px;
}

.single-sab-page .sab-page-news-box .bg strong {
    color: #01009A;
}

.single-sab-page .sab-page-news-box p {
    margin-top: 20px;
    font-size: 12px;
}

.single-sab-page .sab-page-news-box .news_text_box p {
    font-size: 16px;
    font-weight: 500;
}

.single-sab-page .sab-page-news-box table {
    width: 100%;
}

.single-sab-page .sab-page-news-box tbody {
    width: 100%;
}

.single-sab-page .sab-page-news-box table tr {
    width: 100%;
    border-top: 1px solid #000;
}

.single-sab-page .sab-page-news-box table .end {
    border-bottom: 1px solid #000;
}

.table-title {
    background-color: #FAFAFA;
    font-size: 16px;
    font-weight: 500;
    width: 240px;
    padding: 20px 0 20px 20px;
}

.table-3 .table-text {
    width: 280px;
    padding: 20px;
    font-size: 14px;
    font-weight: 500;

}

.le {
    border-left: 1px solid #000;
}

.blue .table-text {
    color: #01009A;
    font-size: 16px;

}

.table-2 .table-text {
    width: 560px;
    padding: 20px 0;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}

.single-sab-page .sab-page-news-box table .table-5,
.single-sab-page .sab-page-news-box table .table-7 {
    border-top: none;
}

.table-4 .table-text {
    width: 560px;
    padding: 20px 0;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
}

.table-5 .table-text {
    width: 280px;
    padding: 20px;
    font-size: 14px;
    font-weight: 500;
    border-top: 1px solid #000;
}

.table-6 .table-text {
    width: 280px;
    padding: 20px;
    font-size: 14px;
    font-weight: 500;
}


.table-7 .table-text {
    width: 560px;
    padding: 20px 0;
    font-size: 16px;
    font-weight: 500;
    text-align: center;
    border-top: 1px solid #000;
}



.single-sab-page .sab-page-news-box div {
    margin-top: 40px;
}

.single-sab-page .sab-page-news-box div a {
    background-color: #01009A;
    padding: 28px 30px;
    font-size: 14px;
}

.practical_example_program {
    width: 100%;
}

.practical_example_link {
    /* max-width: 800px; */
    margin: 0 auto;
}

.practical_example_text_box h3 {
    font-size: 24px;
    font-weight: 500;
    ;
    color: #01009A;
    width: 800px;
    margin: 0 0 40px;
}

.single-sab-page .point-01 .name-box {
    width: 800px;
    margin: 0 0 30px;
    background: #FAFAFA;
    padding: 30px;
    text-align: left;
}

.practical_example_title {
    font-size: 16px;
    font-weight: 500;
    ;
    color: #01009A;
}

.practical_example_year {
    font-size: 14px;
    ;
    white-space: pre-wrap;

}

.practical_example_program {
    max-width: 800px;
    margin: 60px auto;
    display: block;
}

/*----- 実践校end------*/


/*----- 他の製品・サービス------*/
.other {
    max-width: 980px;
    margin: 0 auto;
}

.other-box {
    margin: 160px auto;
}

.other-box h2 {
    font-size: 30px;
    font-weight: 500;
}

.other-box h2 span {
    font-size: 16px;
    font-weight: 500;
    color: #01009A;
}

.other-box div {
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    justify-content: space-between;
}

.other-box div a {
    color: #01009A;
    background: #FAFAFA;
    text-align: center;
    font-size: 1.4px;
    font-weight: 500;
    width: 49%;
    margin-bottom: 10px;
    height: 70px;
}

.other-box div a:hover {
    color: #FFF;
    background: #010094;
    transition: 0.5s;
}


.other-box div a p {
    line-height: 70px;
}


/*----- 他の製品・サービスend------*/






.member-text-box {
    /* width: 700px; */
    margin-right: 0px;
    padding: 93px 100px;
    padding-bottom: 85px;
    background-color: #FFF;
    margin-top: 180px;
}

.member-title {
    color: #E13650;
    font-size: 24px;
    font-weight: 500;
}

.sab-text {
    font-size: 14px;
    font-weight: normal;
}

.member-title span {
    border-bottom: 1px solid #E13650;
}

.member-name {
    font-size: 32px;
    font-weight: 500;
    padding-top: 18px;
}

.member-name span {
    font-size: 12px;
    font-weight: 500;
    padding-left: 20px;
}

.member-sab-title {
    padding-top: 18px;
    font-size: 16px;
    font-weight: 500;
}

.member-text {
    padding-top: 18px;
    font-size: 16px;
    font-weight: 500;
    ;
}

.member-pv {
    display: flex;
    padding-top: 20px;
}

.member-pv a {
    text-decoration: none;
    color: #000;
    width: 70%;
}

.member-text-box h3 {
    padding-top: 30px;
    font-size: 18px;
}

.member-pv-img-box {
    display: flex;
    justify-content: space-between;
    padding-top: 70px;
}

.member-pv-img {
    width: 30%;
}

.member-pv-img img {
    width: 100%;
}

.member-pv img {
    width: 20%;
}

/*----- メンバーend------*/


/*----- conyact------*/


.contact-pg-box {
    max-width: 980px;
    margin: 100px auto;
    background-color: #FFF;
    font-size: 18px;
    font-weight: normal;
    letter-spacing: 1px;
}


.contact-pg-box a {
    margin: 3px auto 0;
}

.contact_pg_txt {
    text-align: center;
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    color: #333;
    margin-bottom: 100px;
}

.contact_pg_txt p {
    text-align: center;
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
    color: #333;
}



.contact_pg_txt .contact-red {
    margin-top: 50px;
    font-size: 13px;
    font-weight: 300;
    line-height: 34px;
    color: #FF0000;
}

.contact-main-box {
    background: #FAF7EC;
    padding: 100px 0;
}


.cf_7_box {
    max-width: 980px;
    margin: 0 auto;
    background-color: #fff;
    padding: 90px;
}

.contact-text-img {
    width: 117px;
    margin-bottom: 50px;
}


.wpcf7-radio {
    display: flex;
    flex-wrap: wrap;
}

.cont-content,
.cont-co,
.cont-name,
.cont-tel,
.cont-mail,
.cont-text {
    display: flex;
}

.cont-co,
.cont-name,
.cont-tel,
.cont-mail,
.cont-text {
    border-top: 1px solid #CCC;
    padding: 30px 0;
}

.cont-title {
    width: 25%;
    color: #333;
    font-size: 14px;
    font-weight: 600;
    line-height: 34px;
    padding-top: 12px;
    letter-spacing: 1px;
}

.cont-txt {
    display: flex;
    width: 75%;
}

.hisu {
    width: 11%;
    padding-top: 12px;
}

.hisu span {
    font-size: 12px;
    font-weight: 300;
    line-height: 34px;
    color: #FFF;
    background: linear-gradient(#2DC980, #4AC92B);
    padding: 8px;
    border-radius: 5px;
}

.hisu-no {
    width: 11%;
    color: #FFF;
}

.cont-send {
    text-align: center;
    margin-bottom: 50px;
}


.submit-btn-wrapper {
    text-align: center;
}

.submit-btn {
    display: inline-block;
    /*インラインブロック要素にする*/
    position: relative;
    color: #FFF;
    background: linear-gradient(#2DC980, #4AC92B);
    padding: 28px 111px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
}

.submit-btn::after {
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content: "\03e";
    /* transform: scale(0.5); */
    font-weight: 900;
    color: #fff;
    right: 38px;
    top: 38%;
}

.wpcf7-spinner {
    display: none !important;
}

.contact_pg_txt h3 {
    font-size: 16px;
    font-weight: 500;
    color: #01009A;
    margin-bottom: 33px;
}

.retop-btn {
    margin-top: 75px;
    text-align: center;
}

.retop-btn a {
    color: #FFF;
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 50px;
    padding: 28px 75px;
    font-size: 14px;
    position: relative;
}

.retop-btn a::before {
    position: absolute;
    font-family: "Font Awesome 6 Free";
    content: "▶︎";
    font-weight: 900;
    color: #fff;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.contact-text-box {
    text-align: center;
    margin: 40px 0 60px;
}

.contact-text-01 {
    font-size: 14px;
    font-weight: 600;
    line-height: 34px;
    margin-bottom: 20px;
}

.contact-text-02 {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
}

.cont-send {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
}


/*-------- privacy ---------- */
.privacy-box {
    width: 800px;
    margin: 100PX auto;
    letter-spacing: 1px;
}

.privacy-text-01 {
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    margin-bottom: 50px;
}

.privacy-text-02 {
    margin-bottom: 30px;
}

.privacy-text-03 .lift {
    margin-left: 3em;
    text-indent: -3em;
}

.privacy-text-03 {
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    max-width: 760px;
    margin: 0 0 30px auto;
}

.privacy-text-03 ul li {
    line-height: 24px;
    line-height: 24px;
    padding-bottom: 5px;
    margin-left: 3em;
    text-indent: -3em;
}

.privacy-text-03 ul .li-p {
    margin-left: 3em;
}

.privacy-box h4 {
    font-size: 16px;
    font-weight: 500;
    line-height: 27px;
    margin-bottom: 20px;
}

.privacy-box .privacy-text-no {
    margin-right: 17px;

}

.privacy-text-03 p {
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    max-width: 760px;
    margin: 20px 0;
}

.privacy-text-03 .privacy-text-04 {
    max-width: 720px;
    margin: 0 0 0 auto;
}

.privacy-text-sab {
    display: block;
    max-width: 720px;
    margin: 0 0 0 auto;
    line-height: 30px;
}



.indent {
    text-indent: -40px;
    padding-left: 40px;
}

.single-y {
    font-size: 14px;
    font-weight: 300;
    line-height: 34px;
}

.single-box .single-y span a {
    margin-left: 30px;
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 50px;
    padding: 9px 15px;
    font-size: 12px;
    color: #FFF;
    border-bottom: 0;
}

.nav-links {
    margin-top: 100px;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
}

.prev.page-numbers {
    color: #333;
    background: #fff
}

.page-numbers {
    color: #333;
    background: #EBEBEB;
    padding: 7px 15px;
    border-radius: 50px;
    margin: 0 10px;
}

.prev.page-numbers {
    color: #333;
    background: #EBEBEB;
    padding: 7px 15px;
    border-radius: 50px;
    margin: 0 10px;
}

/*-------- privacy end ---------- */
/*-------- BIOGRAPHY ---------- */

.bio-section {
    background-color: #F4F4F4;
    width: 1358px;
    margin: 0 auto;
    margin-top: 100px;
    position: relative;
}


.bio-section h2 {
    position: absolute;
    font-size: 24px;
    top: -12px;
    left: 80px;
}

.bio-section .long {
    font-size: 16px;
    font-weight: normal;
    padding-bottom: 20px;
    padding-left: 80px;
    padding-right: 80px;
}

.last-img {
    width: 100%;
    height: 500px;
    object-fit: cover;
    object-position: center;
}


.bio-1 {
    display: flex;
    justify-content: space-between;
    padding: 60px 80px;
}

.bio-2 {
    display: flex;
    justify-content: space-between;
    padding: 60px 80px;
    padding-bottom: 0;
}

.bio-3 {
    display: flex;
    justify-content: space-between;
    padding: 60px 80px;
    padding-top: 0;
}

.bio-4 {
    display: flex;
    justify-content: space-between;
    padding: 60px 80px;
    padding-top: 20px;
    padding-bottom: 20px;
}

.bio-5 {
    padding: 60px 80px;
    padding-top: 20px;
}

.bio-5 p {
    font-size: 16px;
    font-weight: normal;
    padding-bottom: 20px;
}

.bio-6 {
    padding: 60px 80px;
    padding-top: 20px;
}

.bio-7 {
    padding: 60px 80px;

}

.bio-7 p {
    font-size: 16px;
    font-weight: normal;
    padding-bottom: 20px;
}

.bio-box-1 {
    width: 30%;
}

.bio-box-1 img {
    width: 100%;
}

.bio-box-2 {
    width: 68%;
}

.bio-box-2 p {
    font-size: 16px;
    font-weight: normal;
    padding-bottom: 20px;
}

.bio-6 p {
    padding-bottom: 40px;
}

.bio-6 .dai {
    font-size: 24px;
    font-weight: normal;
    padding-bottom: 20px;

}

.koko {
    border-bottom: 1px solid #000;
}


.cyap {
    font-size: 14px;
    ;
    padding: 10px 0;
}

.ao {
    color: #0073aa;
    border-bottom: 1px solid;
}

.bio-box-2 .biodai {
    font-size: 18px;
    font-weight: 500;
}

/*-------- BIOGRAPHY end---------- */


/*-------- Contact Form 7---------- */
table {
    border: none !important;
}

.table-res-form {
    display: inline-block;
    color: black !important;
    margin: 0 auto !important;
    max-width: 100% !important;

    border: none !important;
    /* 枠線の色 */
    border-color: red;

}

/* 入力項目を見やすくする */

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
    width: 100%;
}


input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
    width: 100%;
    padding: 15px;
    margin-top: 0px;
    border-radius: 0;
    clear: left;
    font-size: 16px;
    background: #FAFAFA;
    border: 1px solid #ccc;
    border-radius: 10px;
}

.table-res-form th,
.table-res-form td {
    border: none;
    padding-top: 20px;
}


.name {
    padding-top: 60px !important;
}

.name2 {
    padding-top: 60px !important;
}

.sita {
    padding-bottom: 30px !important;
    margin-left: 10%;
}


.table-res-form th {
    padding-left: 0px;

}

.red {
    color: red;
    padding-right: 20px;
}

.min {
    font-size: 10px;
}

.reft {
    text-align: right;
    margin-right: 10px;
}

.scroll-box {
    font-size: 13px;
}

.scroll-box a {
    color: red;
}

.saite-info {
    display: none;
}

td.margin {
    display: block;
    /*     margin-left: 30px;
    width: 375px; */
}



/*プライバシーポリシー*/
.scroll-box {
    max-width: 530px;
    height: 280px;
    overflow-y: scroll;
    border: 1px solid #ddd;
    background-color: #fff;
    text-align: left;
}


span.wpcf7-list-item {
    display: block;
    margin: 0 0 1em 1em;
}


/* スクロールバーの幅 */
.scroll-box::-webkit-scrollbar {
    width: 10px;
}

/* スクロールバー背景色 */
.scroll-box::-webkit-scrollbar-track {
    background: #f1f1f1;
}

/* スクロールバーのつまみの色 */
.scroll-box::-webkit-scrollbar-thumb {
    border-radius: 6px;
    background: #c1c1c1;
}

/* 本文調整 */
.bs {
    text-align: right;
}



/*確認ボタン*/
.wpcf7-box {
    margin: 0 auto;
    /* 	width: 100%; */
    margin-left: 30px;
}


.wpcf7-list-item last {
    margin-bottom: 30px !important;
    padding-bottom: 60px;
}

/*　ContactForm7のテーブル化レスポンシブ調整　*/


/*テーブルを親要素の幅いっぱいに伸ばす*/
.table-res-form {
    display: block;
    max-width: 950px;
    position: top;
    margin: 0 auto;
    margin-bottom: 130px;
}

tbody {
    display: block;
    width: 1180px;
}

tr {
    padding-bottom: 50px;
}

/*thとtd内の余白指定*/
.table-res-form th,
.table-res-form td {
    color: #262626;
    height: auto;
    font-size: 16px;


}

/*th（項目欄）は30%幅、テキストを右寄せ*/
.table-res-form th {
    color: #262626;
    width: 30%;
    height: 18px;
    text-align: left;
    vertical-align: top;
}

.table-res-form td .radio-127,
.radio-282 {
    margin-bottom: 100px;
    font-size: 12px;
}

.wpcf7-list-item .last {
    padding-bottom: 100px;
}

.scroll-box {
    padding: 20px;
}



.wpcf7c-btn-back {
    margin: 0 auto;
    margin-top: 10px;
}

.mar {
    width: 75% !important;
    margin-left: 30px !important;
    font-size: 0.8vw;
    display: inline-block;
}


.kibou {
    margin-bottom: 0px !important;
}



div.wpcf7-mail-sent-ok {
    background-color: #56b379;
    color: #ffffff;
    font-weight: 500;
    font-size: 120%;
    padding: 10px;
}

/*ここから入力欄のスタイル指定*/

/*各入力フォームスタイリング*/
/* .table-res-form input[type="text"], input[type="email"], input[type="tel"],  textarea, checkbox {
   border-radius: 5px;
    width: 70%;
	margin-bottom:30px;
	margin-left:30px;
} */


checkbox {
    border-radius: 5px;
    width: 70%;
    margin-bottom: 30px;
    margin-left: 30px;
}


.check .margin {
    padding-left: 30px;
}


/*入力欄にフォーカスしたら変化*/
.table-res-form input[type="text"]:focus,
textarea:focus {
    background: #EEFFFF;
    box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
}

/*送信ボタンスタイリング*/
.table-res-form input[type="submit"] {
    /*     border: 1px #89BDDE solid; */
    padding: 2em 6em;
    /*     border-radius: 5px; */
    /* background: #555; */
    color: #000;
    box-shadow: 0 0 2px 0 rgba(0, 0, 0, 1);
    font-weight: 500;
}

/*送信ボタン・マウスオーバー時スタイリング*/
.table-res-form input[type="submit"]:hover {
    background: #999;
    box-shadow: none;
}

/* .sita{
	margin-left:15%;
} */



textarea.wpcf7-form-control.wpcf7-textarea {
    height: 250px;
    width: 100%;
}




/* エラーメッセージを見やすくする */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
    color: red;
    font-weight: 500;
}

.reCAPTCHA {
    font-size: 10px;
    margin-top: 50px;
}


/*ここから768px以下の指定*/



@media only screen and (max-width: 650px) {

    /*thとtdをブロック化して幅100％にして、縦積み*/
    .table-res-form th,
    .table-res-form td {
        /*  width: 85%!important; */
        margin: 0 auto !important;
        margin-bottom: 30px;
        margin-left: 10px !important;
        display: block;

    }

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }

    .maintenance-content-02-text-box-01.pc {
        display: none;
    }

    #top-program h2 {
        width: 100%;
    }

    .table-res-form th {
        width: 100% !important;
        display: block;
        margin: 0 auto;
    }

    .wpcf7 input[type="url"],
    .wpcf7 input[type="email"],
    .wpcf7 input[type="tel"] {
        margin-top: 30px;
    }

    .table-res-form td {
        /* 		width:100%!important;*/
        display: block;
        margin: 0 auto;
    }

    .table-res-form {
        max-width: 100% !important;
        margin: 0 auto !important;
        /* 			margin-left:-10px!important; */
    }

    .mar {
        width: 90% !important;
        /* 		margin:0 auto !important; */
        margin-left: 10px !important;
        font-size: 2.8vw;
        display: inline-block;
    }



    /*th（項目名）欄の不要な余白削除・テキスト左寄せ*/
    .table-res-form th {
        width: 100% !important;
        padding-top: 0;
        /* 	 padding-left:10px; */
        text-align: left;
        margin-bottom: 30px;
    }



    /*不要な最終行の左のthを非表示にする*/
    .table-res-form .empty {
        display: none;
    }

    .sita {
        margin-left: 0px !important;
    }

    /*各入力フォームスタイリング*/
    .table-res-form input[type="text"],
    input[type="email"],
    textarea,
    checkbox {
        display: inline-block;
        /*    border-radius: 5px; */
        /* width: 80%!important;
	margin-left:10px !important; */




    }

    /*入力欄にフォーカスしたら変化*/
    .table-res-form input[type="text"]:focus,
    textarea:focus {
        background: #EEFFFF;
        box-shadow: 0 0 1px 0 rgba(0, 0, 0, 0.5);
        width: 85% !important;
        margin-left: 30px;
    }

    /* 	
	.name2  {
	padding-top:20px !important;
} */

    .sita {
        margin: 0 auto;
        width: 95%;
    }

    .table-res-form input[type="submit"] {
        padding: 10px 0;
    }

    .wpcf7c-btn-back {
        margin-left: 12%;
        margin-top: 10px;
    }

    .wpcf7c-elm-step1 {
        width: 100%;
    }

    .wpcf7c-elm-step2 {
        width: 100%;
    }

    .wpcf7c-btn-back {
        margin: 0 auto !important;
    }

    /* 	.table-res-form td{
		margin-left:20px;
		width:90%;
	} */
    .scroll-box {
        width: 95%;
        margin: 10px !important;
    }

    .check {
        display: inline-block;
        width: 70%;
    }


}


/*========= 上部固定させるためのCSS ===============*/

/*==ふわっと出現させるためのCSS*/

/*　上に上がる動き　*/
#mainNav-2 {
    display: none;
}

#mainNav-2.UpMove {
    position: fixed;
    width: 100%;
    animation: UpAnime 0.5s forwards;
    margin-top: 0;
}

@keyframes UpAnime {
    from {
        opacity: 1;
        transform: translateY(0);
    }

    to {
        opacity: 0;
        transform: translateY(-100px);
    }
}

/*　下に下がる動き　*/

#mainNav-2.DownMove {
    position: fixed;
    width: 100%;
    animation: DownAnime 0.5s forwards;
    background-color: #FFF;
    margin-top: 0;
    color: #000;
    z-index: 500;
    display: inline-block;
    padding: 30px 0;
}

s #mainNav-2.DownMove .logo {
    color: #000;
}

#mainNav-2.DownMove .navbar-nav li a {
    color: #000;
    font-weight: 500;
}

@keyframes DownAnime {
    from {
        opacity: 0;
        transform: translateY(-100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/*以下は検証用のレイアウトのためのCSS*/
nav ul {
    list-style: none;
    display: flex;
    justify-content: center;
}

nav ul li a {
    text-decoration: none;
    color: #666;
    padding: 10px;
}


/*ここまで768px以下の指定---終わり*/

/*====Contact Form 7ここまで====*/

/*----- contact end------*/


/*----- industrial ------*/
.industrial-01 {
    max-width: 980px;
    margin: 100px auto;
}

.industrial-01-title img {
    width: 117px;
}

.industrial-01-box {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

.industrial-01-title-box {
    width: 30%;
}

.industrial-01-title-box h3 {
    font-size: 24px;
    font-weight: 500;
    line-height: 41px;
}

.industrial-01-title-box p {
    font-size: 16px;
    padding-top: 10px;
}


.industrial-01-text-box {
    width: 66%;
}

.industrial-01-text-01 {
    font-size: 24px;
    font-weight: 500;
    line-height: 41px;
    margin-bottom: 40px;
}

.industrial-01-text-02 {
    font-size: 16px;
    font-weight: 300;
    line-height: 34px;
}

.industrial-ber-img {
    width: 100%;
}

.industrial-02 {
    background: linear-gradient(rgba(45, 201, 128, 0.2), rgba(74, 201, 43, 0.2));
    padding: 100px 0;
}

.industrial-02-box {
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    background: #fff;
}

.industrial-02-sab-box-01 {
    width: 50%;
    padding: 40px 100px;
}

.industrial-02-text {
    font-size: 24px;
    font-weight: 500;
    line-height: 41px;
    text-align: center;
    margin-bottom: 30px;
}

.industrial-02-sab-box-02 {
    width: 50%;
}

.industrial-02-sab-box-02 img {
    width: 100%;
}

.industrial-03-box {
    display: flex;
    justify-content: space-between;
    max-width: 980px;
    margin: 130px auto 100px;
}

.industrial-03-img-box {
    width: 46%;
    position: relative;
}

.industrial-03-img-box .maru {
    position: absolute;
    width: 97px;
    top: -30px;
    left: -30px;
}

.industrial-03-img-box img {
    width: 100%;
}

.industrial-03-text-box {
    width: 50%;
}

.industrial-03-text {
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    margin-bottom: 50px;
}

.industrial-03-title img {
    width: 133px;
    margin-bottom: 30px;
}

.industrial-03-list {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.industrial-03-list p {
    text-align: center;
    padding: 20px 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 12px;
    border: 1px solid #707070;
    width: 32%;
    margin-bottom: 20px;
    line-height: 20px;
}

.industrial-04 {
    text-align: center;
}

.industrial-04 img {
    width: 317px;
}

.industrial-04-text {
    text-align: left;
}

.industrial-04-text h4 {
    height: 90px;
}

.industrial-05 {
    background: #FAF7EC;
}

.industrial-05-box {
    max-width: 980px;
    margin: 0 auto;
    padding: 150px 0;
}

.industrial-05-box img {
    width: 133px;
    margin-bottom: 30px;
}

.industrial-05-text-box {
    display: flex;
    justify-content: space-between;
}

.industrial-05-text {
    width: 32%;
    background: #fff;
    border-radius: 10px;
    position: relative;
}

.industrial-05-text:hover {
    opacity: 0.6;
    transition: 0.5s;
}



.industrial-05-text img {
    width: 100%;
    border-radius: 0 0 0 50px;
}

.industrial-05-text a .yt-icon {
    position: absolute;
    top: 25%;
    left: 40%;
    width: 18%;
    border-radius: 0;
    margin-bottom: 0;
}

.industrial-05-text h4 {
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    margin: 0 30px 30px;

}


.industrial-06 {
    background: #FAF7EC;
}

.industrial-06-box {
    max-width: 980px;
    margin: 0 auto;
    padding: 100px 0;
}

.industrial-06-box img {
    width: 74px;
    display: block;
    margin: 0 auto 30px;
}

.accordion {
    max-width: 700px;
    background: #FFF;
    margin: 0 auto 20px;
    padding: 30px;
    border-radius: 10px;
}

.accordion-header {
    font-size: 16px;
    font-weight: 600;
    line-height: 30px;
    letter-spacing: .5px;
    color: #43C93F;
    position: relative;
    /* 矢印アイコンの位置調整のため */
    list-style: none;
    /* デフォルトの矢印を消す */
}

.accordion-content {
    font-size: 14px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: .5px;
    margin-top: 10px;
}


/* カスタム矢印のスタイル */
.accordion-header::after,
.accordion-header::before {
    content: '';
    /* ここに好きなアイコンを設定できます */
    position: absolute;
    right: 10px;
    top: 3px;
    width: 3px;
    height: 25px;
    background-color: #E95A0E;
    transition: all 0.3s;
}

.accordion-header::after {
    transform: rotate(90deg);
}

/* アコーディオンが開いている時の矢印のスタイル */
.accordion[open] .accordion-header::before {
    transform: rotate(90deg);
    /* 矢印を180度回転 */
}

/* WebKitベースのブラウザでデフォルトの矢印を消す */
.accordion .accordion-header::-webkit-details-marker {
    display: none;
}




.menu-btn {
    width: 60px;
    height: 60px;
    position: absolute;
    top: 1px;
    right: 1px;
    background-color: #fff;
    outline: initial;
}

.menu-btn:focus-visible {
    box-shadow: 0 0 0 2px blue;
}

.inn {
    margin: auto;
    position: absolute;
    width: 30px;
    height: 30px;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
}

.line {
    position: absolute;
    display: inline-block;
    background-color: #000;
    height: 2px;
    left: 0;
    width: 100%;
    transition: 0.3s;
}

.line:nth-of-type(1) {
    top: 50%;
    transform: rotate(90deg);
}

.line:nth-of-type(2) {
    top: 50%;
}



.menu-btn.is-open .inn .line:nth-of-type(1) {
    opacity: 0;
}









.industrial-07 {
    background-image: url('./img/industrial_img_05.png');
    background-size: cover;

}

.industrial-07-box {
    max-width: 980px;
    margin: 0 auto;
    padding: 80px 0;
}

.industrial-07-box h3 {
    font-size: 40px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 84px;
    color: #fff;
    font-family: "DIN Alternate", "Oswald", sans-serif;
}

.industrial-07-box h3 span {
    font-size: 20px;
    font-weight: bold;
}

.industrial-07-box p {
    font-size: 16px;
    font-weight: 500;
    line-height: 30px;
    letter-spacing: .5px;
    color: #fff;
    margin-bottom: 50px;
}



/*----- industrial end------*/


/*----- residential ------*/
.industrial-03-list .residential-li {
    padding: 10px 0;
}

.residential-kodawari-box {
    text-align: left;
}

/*----- residential end------*/


/*----- apchousing ------*/
.apchousing-01 {
    max-width: 100%;
    margin: 0 auto;
    text-align: center;
    background: linear-gradient(to left, #ED1C24, #962E2A);
}

.apchousing-01-title {
    padding: 100px 0 50px;
    margin: 0 auto;
    max-width: 800px;
}

.apchousing-01 div .industrial-01-text-01 {
    color: #fff;
}

.apchousing-01-text {
    color: #FFF;
    text-align: left;
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
    letter-spacing: .6px;
    padding-bottom: 100px;
    max-width: 800px;
    margin: 0 auto;
}

.apchousing-top-title {
    display: flex;
    line-height: 48px;
    max-width: 980px;
    margin: 0 auto 80px;
    padding: 160px 0 0 0;
}

.fine-logo-img {
    width: 76px;
    height: 59.68px;
    margin-right: 20px;
}

.title-2.apchousing-top {
    font-family: "DIN Alternate", "Oswald", sans-serif;
    font-weight: bold;
    margin: 8px 0 0;
    padding: 0;
    font-size: 36px;
}

.apchousing-02 {
    display: flex;
}

.apchousing-02-text-box {
    width: 50%;
    height: 700px;
    padding: 100px 95px 90px;
}

.apchousing-02-img-box {
    width: 50%;
    height: 700px;
}

.apchousing-02-text-box {
    background: #FFF2F2;
}

.apchousing-02-text-box img {
    width: 101px;
    margin-bottom: 30px;
}

.apchousing-02-text-box h3 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: .5px;
    margin-bottom: 40px;
    line-height: 41px;
}

.apchousing-02-text-box p {
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
    letter-spacing: .5px;
}

.apchousing-02-img-box img {
    width: 100%;
    height: 700px;
    object-fit: cover;

}

.apchousing-03-box {
    max-width: 980px;
    margin: 130px auto 100px;
    display: flex;
    justify-content: space-between;
}

.apchousing-03-img-box {
    width: 40%;
    position: relative;
}

.apchousing-03-img-box img {
    width: 100%;
}

.apchousing-03-img-box .apchousing-03-img-box-maru {
    width: 97px;
    position: absolute;
    top: -30px;
    right: -18px;
}

.apchousing-03-text-box {
    width: 49%;
}

.apchousing-03-text-box img {
    width: 117px;
    margin-bottom: 30px;
}

.apchousing-03-text-box p {
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
    letter-spacing: .5px;
}

.apchousing-03-text-list {
    margin-top: 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px;
}

.apchousing-03-text-list::after {
    display: block;
    content: "";
    width: 150px;
}

.apchousing-03-text-list p {
    width: 150px;
    color: #fff;
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 5px;
    text-align: center;
    padding: 24px 0;
    margin-bottom: 20px;
    font-size: 12px;
    font-weight: 500;
}

.kodawari.apchousing-04 {
    background: linear-gradient(to left, #ED1C24, #962E2A);
}

.kodawari.apchousing-04 h4 {
    height: 60px;
}

.company-title-box.apchousing-05-title p {
    color: #ED1C24;
}

.apchousing-05 {
    height: 141px;
}

.company-text-box.pc.apchousing-06 p {
    font-size: 16px;
    font-weight: 300;
    line-height: 27px;
}


/*----- apchousing end------*/


/*----- recruit ------*/
.recruit-content-03-title {
    width: 194px;
}

.recruit-00.maintenance-content-03 {
    background: #fff;
}

.recruit-btn-01 {
    margin: 30px auto 0;
}

.industrial-02-sab-box-01 a img {
    width: 44px;
}

.line-btn {
    padding: 14px 30px 14px 20px;
}

.line-text-box {
    padding: 30px 48px;
}

.line-text-box a img {
    margin-right: 10px;
}

.line-text-box a .button-text {
    line-height: 45px;
}

.line-text-box .industrial-02-text {
    font-size: 20px;
    line-height: 34px;
    margin-bottom: 30px;
}

.line-text-box a {
    margin: 0 auto;
}


.recruit-01 {
    max-width: 980px;
    margin: 100px auto;
    display: flex;
    justify-content: space-between;
}

.recruit-01-title {
    width: 30%;
}

.recruit-01-title img {
    width: 133px;
}

.recruit-01-text {
    width: 70%;
    padding-right: 100px;
}

.accordion.recruit-01-box {
    padding: 0;
    margin-bottom: 0;
}

.accordion-header.recruit-01-header {
    font-size: 24px;
    font-weight: 300;
    line-height: 30px;
    letter-spacing: .5px;
    color: #000;
    border-top: 1px solid #CCC;
    border-bottom: 1px solid #CCC;
    padding: 30px 0;
}

.accordion-header.recruit-01-header::before {
    content: '\02228';
    position: absolute;
    right: 30px;
    top: 30px;
    width: 0;
    height: 0;
    color: #E95A0E;
    transition: all 0.3s;
    font-weight: bold;
    font-size: 18px;
}


.accordion[open] .recruit-01-header::before {
    transform: rotate(0deg);
}

.accordion-header.recruit-01-header::after {
    display: none;
}

.accordion-content.recruit-01-content {
    margin-top: 0;
    margin-bottom: 20px;
}

.recruit-01-content-01 {
    display: flex;
    border-bottom: 1px solid #CCC;
}

.recruit-01-content-01-title {
    width: 116px;
    padding-top: 28px;
    font-weight: bold;
    text-align: center;
    background: #FAFAFA;
}

.recruit-01-content-01-text {
    padding: 28px 0 28px 34px;
}

.recruit-01-content-01-title.last {
    padding-top: 14px;
}

.recruit-02 {
    background: linear-gradient(rgba(45, 201, 128, 0.2), rgba(74, 201, 43, 0.2));
}

.recruit-02-box {
    max-width: 980px;
    margin: 0 auto;
    padding: 90px 0 80px;
}

.recruit-02-title img {
    width: 149px;
}

.recruit-02-sab-box {
    display: flex;
    justify-content: space-between;
    margin-top: 30px;
}

.recruit-02-cont-01-sab {
    display: flex;
}

.recruit-02-cont-01 {
    width: 47%;
}

.recruit-02-cont-01-text {
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
}

.recruit-02-cont-01-sab {
    margin-top: 34px;

}

.recruit-02-cont-01-sab-01 {
    background: #2DC980;
    color: #fff;
    width: 60px;
    padding: 21px 24px;
    border-radius: 5px 0 0 5px;
    font-size: 18px;
    font-weight: 600;
}

.recruit-02-cont-01-sab-02 {
    font-size: 20px;
    font-weight: 500;
    line-height: 28px;
    background: #FFF;
    border-radius: 0 5px 5px 0;
    padding: 20px 0 20px 30px;
}

.recruit-02-cont-01-sab-03 {
    background: #E95B10;
    color: #fff;
    width: 60px;
    padding: 21px 24px;
    border-radius: 5px 0 0 5px;
    font-size: 18px;
    font-weight: 600;
}

.recruit-02-cont-02 {
    background: #fff;
    width: 45%;
}

.recruit-02-cont-02 img {
    width: 100%;
}

.recruit-02-cont-02 p {
    margin: 30px auto;
    font-size: 20px;
}

.recruit-02-cont-02 a {
    margin: 0 auto 30px;
}

.recruit-02-cont-02 a img {
    width: 44px;
    margin-right: 10px;
}

.recruit-02-cont-02 .button-text {
    line-height: 46px;
}

.recruit-03 {
    background: url(./img/recruit_img_03.png);
    background-size: cover;
    padding: 100px 0;
    text-align: center;
}



.recruit-03-title span {
    font-size: 40px;
    font-weight: bold;
    line-height: 84px;
    color: #FFF;
    padding: 7px 10px;
    background: linear-gradient(#2DC980, #4AC92B);
    margin: 0 auto;
}

.recruit-03-text {
    font-size: 18px;
    font-weight: 600;
    line-height: 34px;
    color: #FFF;
    margin: 50px 0 60px;
}

.recruit-03-box {
    max-width: 980px;
    border-radius: 10px;
    background: #FFF;
    margin: 0 auto;
    padding: 100px 180px;
}

.recruit-03-sab-box {
    display: flex;
    justify-content: space-between;
}

.recruit-03-cont-01 {
    width: 22.5%;
}

.recruit-03-cont-01 span {
    background: linear-gradient(#2DC980, #4AC92B);
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
    line-height: 34px;
    color: #FFF;
    padding: 6px 0;
    width: 140px;
    display: block;
    letter-spacing: 1px;
}

.recruit-03-cont-02 {
    width: 72.5%;
    text-align: left;
    margin-bottom: 20px;
    font-size: 13px;
    font-weight: 300;
    line-height: 23px;
    padding-top: 10px;
    letter-spacing: 1px;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
}

.recruit-03 .line-btn {
    margin: 50px auto 0;
}

.line-btn img {
    width: 44px;
    margin-right: 10px;
}

.line-btn span {
    line-height: 45px;
}

.recruit-menu-telitori {
    position: relative;
}


.recruit-menu-00 {
    display: block;
    max-width: 980px;
    margin: 0 auto;
}


.sikaku_box {
    position: sticky;
    top: -160px;
    left: 100%;
    width: 60px;
    height: 0px;
}

.recruit-menu-box {
    width: 60px;
}

.recruit-menu-box ul {
    margin: 0 auto;
    list-style: none !important;
    padding-top: 160px;
}

.recruit-menu-box ul li {
    width: 60px;
    text-align: center;
    margin-bottom: 2px;
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    line-height: 20px;
    letter-spacing: 1px;

}

.recruit-menu-box ul li a {
    writing-mode: vertical-rl;
    text-orientation: upright;
}


.recruit-menu-box-01 {
    background: #E95A0E;
    padding: 20px 0;
    height: 145px;
}

.recruit-menu-box-02 {
    background: linear-gradient(#2DC980, #4AC92B);
    padding: 20px 0;
    height: 235px;
}

.recruit-menu-box-02 span {
    padding-top: 20px;
    line-height: 40px;
}

.recruit-menu-box-02 img {
    width: 38px;
}

.recruit-menu-box-03 img {
    width: 60px;
}

.recruit-menu-box-04 img {
    width: 60px;
}

.recruit-menu-box-04 {
    height: 60px;
}

.recruit-menu-box ul li.recruit-menu-box-03 {
    height: 60px;
}

.maintenance-content-03.cont-01 {
    border: none;
}

.wp-block-embed iframe {
    width: 100%;
    height: 450px;
}

/*----- recruit end------*/


/*----- SP版 CSS------*/

@media only screen and (max-width: 1250px) {
    .vison-img-02 {
        max-width: 50%;
        position: relative;
        right: 0;
    }

    .top-message-img-02 {
        right: 0;
    }

    .container {
        width: auto;
    }

    .navbar-nav li a {
        font-size: 12px;
    }
}

@media only screen and (max-width: 900px) {

    .sp {
        display: block;
    }

    .pc {
        display: none;
    }


    #menu-btn-check:checked~.menu-content {
        left: 0;
        /*メニューを画面内へ*/
    }


    h2 img {
        width: 14px;
        padding-bottom: 6px;
        margin-right: 5px;
    }


    .container {
        width: 100%;
    }

    /* .main-img-box-sp img{
    height: 100%;
} */
    .top-group-box-2 {
        width: auto;
        padding: 16px 13px;
        margin: 0 21px 0 27px;
        border-radius: 10px;
    }

    .top-group-box-2-img {
        width: 100%;
    }

    .top-group-box-2-text-box {
        width: 100%;
    }

    .top-group-box-2-text-box h3 {
        margin: 27px 0 30px;
        font-size: 17px;
        font-weight: 600;
        letter-spacing: 1.5px;
    }

    .top-group-box-2-text-box h3 span {
        font-size: 12px;
        letter-spacing: 1px;
    }

    .top-group-box-2-text-box p {
        font-size: 14px;
        letter-spacing: 1px;
        line-height: 26px;
    }

    /* 
    .top-group-box-2 a,
    .top-group-box-3-btn {
        width: fit-content;
        padding: 15px 22px;
        margin: 0 auto;
    } */

    .top-group-box-2 a span,
    .top-group-box-3-btn span {
        font-size: 12px;
    }

    .button-1,
    .button-2,
    .button-3,
    .button-5 {
        margin: 30px auto;
    }

    .top-group-box-4 {
        margin: 80px 50px 0;
    }


    .top-group-box-2-sab {
        display: block;
    }

    .button-text {
        font-size: 12px;
    }


    .vison-img-02 {
        position: unset;
        max-width: 100%;
        margin-top: 40px;
    }

    .top-group-box-3 {
        padding: 40px 20px;
        margin: 50px 21px 0 27px;
        border-radius: 10px;
    }



    .vison-img-03 {
        width: 100%;
    }

    .top-mission {
        margin: 70px 40px 50px;
    }

    .top-mission h2 {
        font-size: 24px;
        letter-spacing: 1px;
        font-weight: 600;
    }

    .top-mission h2 span {
        font-size: 14px;
    }

    .top-mission-text-box {
        width: 100%;
    }

    .top-mission-text-box h3 {
        font-size: 21px;
        font-weight: 600;
    }

    .top-mission-text-box p {
        font-size: 14px;
        line-height: 34px;
        letter-spacing: 1px;
    }

    .mission-img-01 {
        width: 100%;
        margin-top: 50px;
    }

    .top-mission-box {
        margin-top: 30px;
    }

    .top-group {
        padding-top: 70px;
    }

    .top-group-box {
        margin: 0 50px;
    }

    .top-group-box h2 {
        font-size: 24px;
        font-weight: 600;
        letter-spacing: 1px;
    }

    .top-group-box h2 span {
        font-size: 14px;
    }

    .top-mission-box {
        display: block;
    }

    .top-group-sab-box {
        display: block;
        margin: 40px 0;
    }

    .top-group-sab-box h3 {
        font-size: 30px;
        width: 100%;
        font-weight: 600;
        letter-spacing: 1.5px;
    }

    .top-group-sab-box p {
        font-size: 14px;
        width: 100%;
        margin-top: 30px;
        line-height: 30px;
        letter-spacing: 1.5px;
    }

    .menu-content {
        width: 100%;
        height: 100%;
        position: fixed;
        top: 0;
        left: 100%;
        /*leftの値を変更してメニューを画面外へ*/
        z-index: 80;
        background-color: #3584bb;
        transition: all 0.5s;
        /*アニメーション設定*/
    }

    .menu-content ul {
        padding: 70px 10px 0;
    }

    .menu-content ul li {
        border-bottom: solid 1px #ffffff;
        list-style: none;
    }

    .menu-content ul li a {
        display: block;
        width: 100%;
        font-size: 15px;
        box-sizing: border-box;
        color: #ffffff;
        text-decoration: none;
        padding: 9px 15px 10px 0;
        position: relative;
    }

    .menu-content ul li a::before {
        content: "";
        width: 7px;
        height: 7px;
        border-top: solid 2px #ffffff;
        border-right: solid 2px #ffffff;
        transform: rotate(45deg);
        position: absolute;
        right: 11px;
        top: 16px;
    }

    /* .slick-track{
        width: 100% !important;
    } */
    .sp-menu {
        display: block;
    }

    /*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
    .openbtn1 {
        position: relative;
        /*ボタン内側の基点となるためrelativeを指定*/
        background: black;
        cursor: pointer;
        width: 50px;
        height: 50px;
        border-radius: 5px;
    }

    /*ボタン内側*/
    .openbtn1 span {
        display: inline-block;
        transition: all 0.4s;
        /*アニメーションの設定*/
        position: absolute;
        left: 14px;
        height: 3px;
        border-radius: 2px;
        background: #fff;
        width: 45%;
    }

    .openbtn1 span:nth-of-type(1) {
        top: 15px;
    }

    .openbtn1 span:nth-of-type(2) {
        top: 23px;
    }

    .openbtn1 span:nth-of-type(3) {
        top: 31px;
    }

    /*activeクラスが付与されると線が回転して×に*/

    .openbtn1.active span:nth-of-type(1) {
        top: 18px;
        left: 18px;
        transform: translateY(6px) rotate(-45deg);
        width: 30%;
    }

    .openbtn1.active span:nth-of-type(2) {
        opacity: 0;
        /*真ん中の線は透過*/
    }

    .openbtn1.active span:nth-of-type(3) {
        top: 30px;
        left: 18px;
        transform: translateY(-6px) rotate(45deg);
        width: 30%;
    }

    .menu-ul {
        padding-top: 0px;
        display: block;
    }

    .logo img {
        margin-top: 33px;
        margin-left: 20px;
        width: 88.13px;
    }

    .slick-slide img {
        height: auto;
        width: 100%;
    }

    .main-img-box {
        display: none;
    }

    .main-img-box-sp {
        display: block;
        width: 100%;
        overflow: hidden;
    }

    .bg-nemu {
        margin-left: 25px;
        display: block;
        font-size: 24px;
        font-weight: 500;
        ;
        position: absolute;
        bottom: 55px;
        z-index: 100;
        color: #FFF;
    }

    .bg-nemu span {
        font-size: 36px;
        ;
    }

    .name-sab {
        font-size: 8vw;
    }

    .name-sab2 {
        font-size: 33px;
        margin-left: 38px;
    }

    .bg-text {
        margin-left: 25px;
        font-size: 3.3vw;
        font-weight: 500;
    }

    .open {
        background-color: #ffe33a;
        text-align: center;
        color: black;
        font-weight: 500;
        width: 100%;
        padding: 0px;
        padding-top: 27px;
        padding-bottom: 27px;
        font-size: 6vw;
        font-family: "Futura";
        ;
    }

    .main-img {
        height: 693px;
        max-height: 100vh;
    }

    .main-img-box {
        display: none;
    }

    .main-img-box-sp {
        display: block;
        height: 100%;
        position: relative;
    }

    .bout-img {
        position: absolute;
        bottom: 10px;
        z-index: 10;
        font-size: 30px;
    }

    .main-img-box h1 {
        font-size: 20px;
        ;
    }


    /* .container{
        display: none;
    } */

    .collapse {
        display: none;
    }

    #top-flab {
        padding: 0 20px;
    }

    .navbar {
        margin: 0;
        display: none;
    }

    .container {
        margin: 0;
    }

    .navbar .logo img {
        width: 100%;
    }

    .navbar .logo a {
        width: 50%;
    }

    .single-sab-page .practical_example_link_img {
        width: 100%;
        height: 75%;
    }

    .navbar .logo p {
        font-size: 30px;
        padding: 36px 0 0 10px;
    }

    .single-sab-page .navbar .logo p {
        font-size: 30px;
        padding: 6px 0 0 10px;
    }


    .top-flab-box {
        display: block;
        width: auto;
        padding-top: 20px;
    }

    .top-flab-txt {
        width: 100%;
    }

    .top-flab-img {
        width: 100%;
        height: 30vh;
    }

    .top-flab-txt h2 {
        font-size: 20px;
    }

    .news_text_box .top_news_title {
        font-size: 22px;
        font-weight: 500;
    }

    .top-flab-txt p {
        font-size: 16px;
        ;
    }

    .news_text_box {
        padding: 0 20px;
    }

    .news-box {
        width: 100%;
    }

    .top-news-box {
        display: block;
        width: 100%;
    }

    .top-news-box li {
        width: 100%;
    }

    .top-news-sab-box {
        width: 100%;
        display: block;
        padding-top: 20px;
    }

    .single-sab-page .navbar .logo img {
        width: 100%;
        margin-top: 0;
    }


    .book {
        width: 100%;
    }

    .top-program-box {
        width: auto;
        display: block;
        padding-top: 0;
    }

    .top-program-txt,
    .top-program-img {
        width: auto;
        padding-top: 20px;
    }

    .top-practical-example-box {
        width: auto;
        padding: 0 20px;
    }

    .top-practical-example-sab-box {
        width: auto;
        justify-content: space-between;
    }

    .top-practical-example-sab-box p {
        width: 47%;
        padding-bottom: 10px;
        ;
    }

    .media-time-box {
        display: block;
    }

    .mov {
        width: auto;
    }

    .event,
    .book {
        width: auto;
        padding: 0 20px;
        padding-top: 20px;
    }

    #top-program {
        padding: 0 20px;
    }

    #top-program h2 {
        padding-top: 10px;
    }

    .top-program-txt h3 {
        font-size: 20px;
    }

    .top-practical-example-box h3 {
        font-size: 20px;
    }

    #practical-example {
        padding-top: 30px;
    }

    .media-main-box {
        padding: 0;
        padding-top: 20px;
        display: block;
    }

    .media-box {
        width: auto;
    }

    .top-contact-text-box {
        width: 100%;
    }

    .top-contact-text-box h2 {
        font-size: 24px;
    }

    .top-contact-text-box h2 span {
        font-size: 14px;
    }

    .top-contact-text-box p {
        font-size: 16px;
        margin-bottom: 50px;
    }

    .top-contact-img-box {
        width: 85%;
        margin-top: 20px;
    }

    .top-message-img-02 {
        width: 35%;
        right: -55px;
        top: 15%;
    }


    .top-contact-box {
        display: block;
        padding: 40px 20px;
    }

    .footer-logo-box .footer-x-icon {
        width: 10%;
    }

    .footermenu-box {
        width: auto;
        display: block;
        padding: 20px 20px;
    }

    .footermenu-sab-box {
        width: auto;
        padding-bottom: 10px;
        display: block;
    }

    .footermenu-sab-box .logo {
        width: 100%;
    }

    .footermenu-sab-box-2 {
        width: 50%;
    }

    .footer-text {
        border-left: 0;
        padding-left: 0;
    }

    .footer {
        width: 100%;
        margin: 40px auto 0;
        padding-bottom: 100px;
        display: block;
    }

    .footer-logo-box a {
        margin-bottom: 10px;
    }

    .footer-logo-box h2 {
        font-size: 12px;
    }

    .footer-logo-box p {
        font-size: 12px;
    }


    .footer-logo-box .sp {
        display: inline-block;
        white-space: nowrap;
        width: 345px;
    }


    .footer-sp-box {
        display: flex;
        flex-wrap: nowrap;
    }

    .footer-sp-box p {
        width: 120px;
        position: relative;
        padding-left: 32px;
    }

    .footer-sp-box-tel::before {
        content: 'TEL';
        display: block;
        position: absolute;
        left: 0;
        font-size: 12px;
    }

    .footer-sp-box-fax::before {
        content: 'FAX';
        display: block;
        position: absolute;
        left: 0;
        font-size: 12px;
    }

    .footer-menu-01 ul li {
        font-size: 12px;
    }

    .footer-menu-02 ul p {
        font-size: 12px;
    }

    .footer-menu-02 ul li {
        font-size: 12px;
    }

    .footer-copy-box {
        text-align: left;
    }

    .footer-copy-box p {
        font-size: 10px;
    }


    .about-fv-tetle {
        font-size: 100px;
        left: 20px;
        bottom: 0;
        top: -160px;
    }

    .philosophy-box {
        display: block;
        width: auto;
        padding: 0 20px;
        padding-top: 20px;
    }

    .about-fv-tetle span {
        font-size: 50px;
    }

    .philosophy-text-box {
        width: auto;
    }

    .philosophy-title-box {
        text-align: center;
        padding-bottom: 20px;
    }

    .philosophy-text-box .top-text {
        font-size: 16px;

    }

    .Power-box {
        display: block;
        padding: 0 20px;
        width: auto;
        padding-top: 20px;
    }

    .philosophy-title-box h3,
    .Power-title-box h3 {
        font-size: 18px;
        text-align: center;
    }

    .Powery-text-box {
        width: auto;
    }

    .Power-title-box {
        padding-bottom: 20px;
    }

    .power-text {
        padding: 20px;
        display: block;
    }

    .philosophy-text-box p span {
        font-size: 16px;
    }

    .power-text-box {
        width: auto;
    }

    .power-text-box h3 {
        font-size: 25px;
    }

    .power-text-box h3 span {
        font-size: 30px;
    }

    .power-img-box-2 {
        width: auto;
        padding-top: 20px;
    }

    .powery-cont-title {
        ;
    }

    /* メンバー */
    .member-box {
        width: auto;
        padding: 0 20px;
    }

    .member-img {
        position: unset;
        width: 100%;
        height: auto;

    }

    .member-text-box {
        width: auto;
        padding: 50px 20px;
    }

    .member-name {
        font-size: 28px;
    }

    /* 実践例 */

    .p-box {
        width: auto;
        padding: 50px 20px;

    }

    .top-practical_example-box {
        display: block;
    }

    .practical_example_link {
        width: auto;
        margin-bottom: 0;
    }

    .name-box {
        display: block;
    }

    /* お知らせ */

    .sab-page .sab-news-box {
        width: auto;
    }

    .news-box-cont {
        padding: 40px 20px;
    }

    .sab-page .top-news-box {
        width: auto;
    }

    .sab-page .news_link {
        display: block;
    }

    #contact-pg {
        width: auto;
    }

    /* #mainNav{
        display: none;
    } */

    .logo-sp img {
        width: 60%;
        padding: 30px 0 24px 30px;
    }

    .program-cont-sab-box {
        display: block;
    }

    .program-cont-2-text {
        width: auto;
    }

    .program-cont-text {
        width: auto;
    }

    .slick-list img {
        width: 100%;
    }

    .footer-text {
        width: auto;
    }

    .sonota-end {
        width: auto;
        text-align: right;
    }

    .sv-main-box {
        width: 100%;
    }

    .sv-btn img {
        object-fit: cover;
        width: 100%;
        height: 55vw;
    }

    .sv-box {
        width: 100%;
        margin: 0 auto;
        background: #152d61;
        padding: 20px;
        border-radius: 10px;
    }

    .sv-box h3 {
        font-size: 45px;
        color: #fdf35c;
        font-weight: 500;
        padding-bottom: 20px;
    }

    .sv-box p {
        font-size: 18px;
        color: #fff;
    }


    .top-logo-sp {
        position: absolute;
        top: 10px;
        left: 10px;
        width: 20%;
        height: auto;
        z-index: 105;
    }


    .ws-video {
        display: block;
    }

    .ws-video iframe {
        width: 100%;
        height: auto;
    }

    .box-1,
    .top-about,
    .top-services,
    .top-news {
        width: auto;
        margin: 40px;
    }

    .top-about {
        margin-top: 50px;
    }

    .box-1 {
        margin-top: 40px;
    }

    .box-1 h1 {
        font-size: 60px;
    }

    .top-about p {
        font-size: 14px;
        padding-top: 30px;
        line-height: 34px;
    }

    .top-services-box div {
        width: 100%;
    }

    .top-services-box {
        display: block;
    }

    .menu-ul {
        flex-wrap: wrap;
    }



    .top-services-box h3 {
        margin: 10px 0;
        font-size: 22px;


    }

    .top-services-box p {
        padding-bottom: 20px;
        font-size: 16px;
    }

    .news_text_box a {
        padding-top: 40px;
        padding-bottom: 60px;
    }

    .about-fv-tetle-box {
        margin-top: 40px;
        width: 100%;
    }

    .about-text H3 {
        font-size: 24px
    }

    .aboutus {
        position: ;
        width: auto;
    }

    .aboutus-text-box {
        width: auto;
        margin-left: 0;
    }

    .aboutus-img {
        width: 100%;
        position: unset;
        margin-top: 60px;
    }

    .text-1 {
        font-size: 18px;
    }

    .company {
        display: block;
        width: auto;
        padding: 60px 20px;
        margin: 0;
    }

    .apchousing-company {
        padding-top: 100px;
    }

    .apchousing-03-img-box img {
        width: 90%;
        margin: 0 auto;
    }



    .company h2 {
        font-size: 100px;
    }

    .company h2 span {
        font-size: 50px;
    }

    .company H3 {
        font-size: 26px;
    }

    .company-title-box-last {
        line-height: 27px;
    }

    .services-text-box {
        width: 100%;
        margin-left: 0;

    }

    .about-text,
    .services-text {
        padding: 0 20px;
        padding-top: 60px;
    }

    .services-text H3 {
        font-size: 24px;
    }

    .services {
        width: auto;
    }

    .services-2 {
        position: unset;
        width: auto;
        display: block;
        margin-right: 0;
        margin-top: 60px;
    }

    .services-img {
        position: unset;
        margin-top: 60px;
        width: 100%;
    }

    .services-img-2 {
        display: block;
        position: unset;
        width: 100%;
    }

    .test {
        width: 100%;
    }

    .services-text-box-r {
        width: auto;
        margin-right: 0px;
    }


    .list {
        padding-bottom: 20px;
    }

    .f-lab span {
        padding: 10px 5px;
    }

    .profiler-box {
        width: auto;
        display: block;
        margin-left: 0;
    }

    .profiler-text-box {
        padding: 20px;
    }

    .name {
        font-size: 18px;
    }



    .profiler-text-1 {
        padding-top: 20px;
        font-size: 18px;
    }

    .profiler-text-2 {
        width: auto;
    }

    .profiler-text-2 a {
        text-align: center;
        display: block;
    }

    .portfolio-box h2 {
        font-size: 26px;
    }

    .name p {
        padding-bottom: 20px;
    }

    .portfolio-box {
        width: auto;
        padding: 20px;
    }

    .portfolio-sab-box {
        display: block;
    }

    .portfolio-sab-box-1 {
        width: auto;
        padding-top: 20px;
    }

    .portfolio-sab-box-1 a span {
        font-size: 12px;
        padding: 10px;

    }

    .portfolio-sab-box-1 a .yume {
        background-color: #F4F4F4;
        color: #0073aa;
        padding-left: 0;
        border-bottom: 1px solid;
        border-radius: initial;
    }

    .yume {
        background-color: #F4F4F4;
        color: #0073aa;
        padding-left: 0;
        border-bottom: 1px solid;
        border-radius: initial;
        font-size: 12px;
    }

    .portfolio-box p {
        padding-top: 0px;
    }

    .portfolio-box p img {
        width: 20%;
    }


    .portfolio-sab-box-2 {
        width: 100%;
        margin-top: 0px;
        padding-top: 0;
    }

    .portfolio-box h3 {
        font-size: 32px;
        padding-top: 30px;
        padding-bottom: 20px;
    }

    .portfolio-top-title {
        width: auto;
    }


    .portfolio-sab-box-1 a .link-3 {
        font-size: 22px;
        ;
    }

    .betu {
        padding-top: 80px;
    }

    .sab-page .news_text_box {
        width: 100%;
    }

    .top-fv img {
        width: 100%;
        object-fit: cover;
        object-position: center;
    }

    .vison-text-box {
        width: 100%;
    }

    .footer-inn {
        display: block;
        margin: 100px auto;
        width: 100px;
    }

    .del {
        display: none;
    }

    .profiler-text-box h2 {
        font-size: 32px;
        position: absolute;
        top: -16px;
        font-family: 'BIZ UDPMincho', serif;
    }


    input.wpcf7-form-control.wpcf7-text,
    textarea.wpcf7-form-control.wpcf7-textarea {
        width: 100% !important;
        margin: 0;
    }

    .table-res-form tbody {
        width: auto;
    }

    #contact-pg {
        width: auto;
    }

    .scroll-box {
        width: 80%;
    }

    .conpany-text-1 {
        width: 100%;
    }

    .top-services-box .look {
        text-align: end;
    }

    .bio-section {
        width: auto;
    }

    .bio-section h2 {
        left: 20px;
    }

    .bio-1,
    .bio-3,
    .bio-5,
    .bio-6,
    .bio-7 {
        display: block;
        padding: 60px 20px;
    }

    .bio-3 {
        padding-top: 0;
    }

    .bio-2 {
        display: block;
        padding: 60px 20px;
        padding-bottom: 0px;
    }

    .bio-4 {
        display: block;
        padding: 60px 20px;
        padding-top: 0px;
        padding-bottom: 0;
    }

    .bio-box-1 {
        width: 100%;
        padding-top: 20px;
    }

    .bio-box-2 {
        width: 100%;
        padding-top: 20px;
    }

    .bio-section .long {
        padding-left: 20px;
        padding-right: 20px;
    }

    .bio-6 .dai {
        font-size: 18px;
    }

    .top-fv {
        height: 700px;
        width: auto;
        object-fit: cover;

    }

    .top-fv-img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

    .top-about h2,
    .top-point h2,
    .top-services h2,
    .top-news h2 {
        text-align: left;
        font-size: 24px;
        letter-spacing: 1px;
        font-weight: 600;
    }

    .top-about h2 span,
    .top-point h2 span,
    .top-services-sab-box h2 span {
        font-size: 14px;
    }

    .vison-text-box .vison-img {
        width: 299px;
    }

    .top-fv-box {
        height: auto;
    }

    .box-1 {
        left: 38px;
        bottom: 48vh;
        right: 0;
        margin: 0;
    }

    .box-1 p {
        font-size: 15px;
        line-height: 25px;
    }

    .box-2 {
        top: auto;
        bottom: 0;
        width: 100%;
        display: flex;
        justify-content: space-between;
    }

    .retop-btn a {
        font-size: 50px;
    }

    .box-2 .btn-01,
    .box-2 .btn-02,
    .box-2 .btn-03 {
        font-size: 40px;
        width: 50%;
        padding: 15px;
    }

    .box-2 .btn-01,
    .box-2 .btn-02 {
        padding: 25px;
    }

    .top-about-box {
        display: block;
        font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    }

    .top-about p {
        width: 100%;
    }

    .top-point {
        margin: 40px 20px 0;
    }

    .top-services-sab-box li .left {
        font-size: 50px;
    }

    #mainNav-2 {
        display: none;
    }

    .top-client-box h2 {
        font-size: 100px;
    }

    .top-client-box h2 span {
        font-size: 50px;
    }

    .top-point h3 {
        font-size: 55px;
        text-align: left;
        ;
    }

    .top-services-sab-box .top-services-text {
        font-size: 50px;
    }

    .top-point-sab-box p {
        font-size: 60px;
        margin-top: 10px;
    }

    .top-point-box {
        display: block;
    }

    .top-point .haikei {
        display: none;
        width: 100%;
        height: 100vh;
        object-fit: cover;
        margin-top: -760px;
    }

    .point-look span {
        font-size: 50px;
    }

    .top-point-sab-box {
        width: 100%;
    }

    .top-point-sab-box {
        padding-bottom: 40px;
    }

    .top-services-img-box img {
        margin-bottom: 40px;
    }

    .top-services-sab-box li a {
        padding: 31px 25px 6px;
    }

    .top-client {
        padding: 40px 20px;
    }

    .top-co div h2,
    .top-ac div h2 {
        font-size: 70px;
        margin-bottom: 20px;
    }

    .top-co div h2 span,
    .top-ac div h2 span {
        font-size: 40px;
    }

    .top-co div p span,
    .top-ac div p span {
        font-size: 80px;
        padding: 5px 8px;
        font-size: 12px;
    }

    .top-client-sab-box {
        display: block;
    }

    .top-client-sab-box p {
        width: 100%;
        font-size: 50px;
    }

    .top-co-ac {
        margin: 0;
        width: 90%;
        margin: 0 auto 100px;
    }


    .cont-text-box {
        width: 100%;
        left: 20px;
        top: 20px;
    }

    .cont-title-box {
        display: block;
        margin: 0 20px;
    }

    .cont-title-box h2 {
        width: 100%;
        font-size: 100px;
    }

    .cont-sab-title {
        font-size: 80px;
    }

    .cont-title-box p {
        font-size: 50px;
    }


    .cont-title-box h2 span {
        font-size: 50px;
    }

    .cont-fv-img {
        height: 524px;
    }

    .cont-title-sab-box {
        display: block;
        margin: 40px 0;
    }

    .cont-title-sab-sab-box {
        width: 100%;
        padding: 0 20px;
    }

    .cont-title-sab-sab-box div {
        display: block;
    }

    .cont-title-sab-sab-box div .tel {
        width: 100%;
        font-size: 100px;
    }

    .cont-title-sab-sab-box div .tel span {
        padding-top: 20px;
        font-size: 50px;
    }

    .footer-text-box {
        display: block;
        font-size: 40px;
        padding: 0 20px;
    }

    .topic {
        font-size: 50px;
    }

    .footer-contact {
        max-height: 900px;
        padding: 40px 0;
    }

    .cont-btn span {
        font-size: 50px;
    }

    .cont-btn {
        text-align: center;
    }

    .footermenu-sab-box .logo a {
        width: 50%;
    }

    .footermenu-sab-box .logo a img {
        width: 100%;
        margin: 20px 0;
        padding: 0;
    }

    .footermenu-sab-box .logo p {
        font-size: 50px;
        padding: 20px 0 20px 10px;
    }

    .footermenu-sab-box .collapse {
        width: 100%;
    }

    .footermenu-sab-box .navbar-nav {
        padding: 0;
        justify-content: left;
    }

    .footermenu-sab-box .navbar-nav li a {
        font-size: 40px;
    }

    .footer-text-box div {
        width: 100%;
        margin-top: 0;
    }

    .footer-text-box div p {
        font-size: 40px;
    }

    .footer-text-box .footer-btn {
        display: block;
    }

    .footer-btn01,
    .footer-btn02,
    .footer-btn03 {
        text-align: center;
        margin: 0 auto 50px;
        display: none;
    }

    .footer-btn01 span,
    .footer-btn02 span,
    .footer-btn03 span {
        font-size: 50px;
    }


    .about-fv {
        margin: 0;
    }

    .sab-page .top-fv-img {
        height: 130px;
    }

    .ourstrength {
        margin: 40px 20px;
    }

    .ourstrength h2 {
        font-size: 100px;
    }

    .ourstrength h2 span {
        font-size: 50px;
    }

    .ourstrength-box {
        display: block;
        margin: 20px 0;
    }

    .ourstrength-img-box {
        width: 100%;
    }

    .ourstrength-text-box {
        width: 100%;
    }

    .ourstrength-text-box h3 {
        font-size: 50px;
        padding: 20px 0 0;
    }

    .ourstrength-text-box p {
        font-size: 50px;
    }

    .ourstrength-text-box .ourstrength-text-sab {
        font-size: 50px;
    }

    .message {
        margin: 40px 0;
        padding: 80px 20px;
    }

    .message h2 {
        font-size: 100px;
    }

    .message h2 span {
        font-size: 50px;
    }

    .message-box {
        display: block;
    }

    .message-text {
        width: 100%;
    }

    .message-text p {
        font-size: 14px;
        letter-spacing: .2px;
    }

    .message-img-box {
        width: 100%;
        margin-bottom: 40px;
    }

    .message-img-box p {
        font-size: 50px;
    }

    .company .tr-name {
        font-size: 50px;
        width: 18%;
    }

    .company .tr-text {
        font-size: 50px;
        width: 72%;
    }

    .company .tr-text01 {
        font-size: 50px;

    }

    .company .tr-text02 {
        font-size: 50px;
    }


    .access-box {
        display: block;
        margin: 0;
    }

    .access-img {
        width: 100%;
    }

    .access-text {
        width: 100%;
        margin: 0;
        padding: 0 20px;
    }

    .access-text h2 {
        font-size: 100px;
    }

    .access-text h2 span {
        font-size: 50px;
    }

    .access-text .p-blue01 {
        font-size: 50px;
    }

    .access-text .p-text {
        font-size: 50px;
    }

    .access-text .p-blue {
        font-size: 50px;
    }

    .access-text .p-bold {
        font-size: 50px;
    }

    .access-img {
        padding: 40px 0;
    }

    .product_services_box {
        padding: 40px 0;
    }

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

    .product_services_menu {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        padding: 0 20px;
    }

    .product_services_menu a {
        width: 48%;
    }

    .product_services_menu p {
        font-size: 40px;
    }

    #product_services-main-box {
        width: 100%;
        margin: 40px 0 0;
    }

    #product_services-main-box h2 {
        font-size: 100px;
        padding: 0 0 0 20px;
    }

    #product_services-main-box h2 span {
        font-size: 120px;
    }

    .practical-example-sab-box {
        padding: 0 20px;
    }


    #customized_products {
        display: block;
    }

    .customized_products-img-box {
        width: 100%;

    }

    .customized_products-box {
        width: 100%;
        margin: 40px 0 0;
    }

    .customized_products-text h2 {
        font-size: 100px;
        padding: 0 0 20px 20px;
    }

    .customized_products-text h2 span {
        font-size: 120px;
    }

    .customized_products-text p {
        width: 100%;
        padding: 0 20px;
        font-size: 50px;
    }

    .customized_products-text a span {
        display: block;
        margin: 0 auto;
        width: 55%;
        font-size: 50px;
    }

    .utility-box {
        width: 100%;
        padding: 0 0 40px;
    }

    .utility-box h2 {
        font-size: 80px;
        padding: 0 0 20px 20px;
    }

    .utility-box h2 span {
        font-size: 120px;
    }

    .utility-sab-box {
        display: block;
        padding: 0 20px;
    }


    .sab-page .practical_example_link {
        width: 100%;
    }

    .sab-page .practical_example_title {
        font-size: 50px;
    }

    .practical_example_year {
        font-size: 50px;
    }

    #utility {
        padding: 40px 0;
        margin: 40px 0;
    }

    .urtlity-main-box {
        width: 100%;
    }

    .sab-page .top-practical_example-box {
        display: block;
    }

    #customized_products,
    #follow-up {
        margin: 0 auto 40px;
    }


    .flow {
        padding: 40px 20px;
    }

    .flow-box h2 {
        font-size: 100px;
    }


    .flow-box h2 span {
        font-size: 50px;
    }

    .flow-sab-box-title p {
        font-size: 50px;
    }


    .flow-sab-box {
        display: block;

    }

    .flow-sab-box-title {
        width: 100%;
    }

    .flow-sab-boxtext {
        width: 100%;
    }

    .flow-sab-boxtext p {
        font-size: 50px;
    }

    .single-sab-page .practical-example-fv-tetle-box {
        width: 100%;
        top: 0;

    }

    .single-sab-page .top-fv-img {
        height: 100vh;
    }

    .single-sab-page .practical-example-fv-tetle-box {
        top: 0;
    }

    .single-sab-page .practical-example-fv-tetle {
        font-size: 70px;
        padding: 0 20px;
    }

    .single-sab-page .practical-example-fv-tetle span {
        font-size: 50px;
    }

    .single-sab-page .practical_example_link_box {
        display: block;
    }

    .single-sab-page .practical_example_link_box .practical_example_title,
    .single-sab-page .practical_example_link_box .practical_example_year {
        font-size: 50px;
        padding: 0 0 0 20px;
    }

    .neo-name-box {
        width: 100%;
    }

    .single-sab-page .sab-page-news-box {
        width: 100%;
    }

    .neo-name-box {
        width: 100%;
    }

    .single-sab-page .sab-page-news-box h2 {
        font-size: 100px;
        padding-left: 20px;
    }

    .single-sab-page .sab-page-news-box .bg {
        padding: 20px;
        font-size: 50px;
    }

    .wp-block-image img {
        padding: 0;
        margin-bottom: 20px;
    }

    .table-title {
        font-size: 40px;
        width: 30%s;
    }

    .blue .table-text {
        font-size: 40px;
    }

    .table-3 .table-text {
        font-size: 40px;
        width: 30%;
        padding: 10px;
    }

    .table-2 .table-text {
        font-size: 40px;
        width: 70%;
    }

    .single-sab-page .sab-page-news-box p {
        font-size: 30px;
        padding: 20px 10px;
    }

    .single-sab-page .sab-page-news-box div a {
        font-size: 50px;
    }


    .other-box {
        margin: 40px 20px;
    }

    .other-box div a {
        font-size: 40px;
    }

    .other-box div a p {
        padding: 30px 0;
        line-height: normal;
    }

    .contact-pg-box {
        padding: 40px 0;
        margin: 0 20px;
    }


    .contact_pg_txt {
        font-size: 14px;
        margin-bottom: 50px;
    }

    .contact_pg_txt p {
        font-size: 13px;
    }

    .cont-content,
    .cont-co,
    .cont-name,
    .cont-tel,
    .cont-mail,
    .cont-text {
        display: block;
    }

    .cont-title {
        width: 100%;
        font-size: 14px;
        padding: 0 10px 20px;
        display: flex;
    }

    .cont-title span {
        font-size: 12px;
        font-weight: 300;
        line-height: 16px;
        color: #FFF;
        background: linear-gradient(#2DC980, #4AC92B);
        padding: 8px;
        border-radius: 5px;
        margin-left: 20px;
    }

    .cont-txt p {
        width: 100%;
    }

    .cont-txt .hisu {
        width: 20%;
    }

    .cont-txt .hisu-no {
        width: 20%;
    }

    .hisu span {
        font-size: 12px;
    }

    .wpcf7-form-control-wrap {
        font-size: 13px;
    }

    .cont-txt {
        width: 100%;
    }

    .contact-main-box {
        padding: 50px 0;
    }

    .cf_7_box {
        padding: 50px 20px;
    }

    .contact-text-01 {
        font-size: 14px;
    }

    .contact-text-02 {
        font-size: 13px;
    }

    .has-spinner {
        font-size: 14px;
    }

    .message-text h3 {
        font-size: 24px;
    }

    .wpcf7 input[type="url"],
    .wpcf7 input[type="email"],
    .wpcf7 input[type="tel"] {
        margin-top: 0;
    }

    .contact_pg_txt h3 {
        font-size: 60px;
    }

    .sp-menu-box {
        position: fixed;
        top: 0;
        z-index: 1200;
        width: 100%;
        height: 60px;
        display: flex;
        justify-content: space-between;
        background-color: #FFF;
        box-shadow: rgba(0, 0, 0, 0.16) 0 3px 6px;

    }

    .sp-menu-box a {
        display: block;
        width: 115px;
        margin: 15px 0 15px 10px;
    }

    .sp-menu-box a img {
        width: 100%;
    }

    .sab-link .sab-link-box,
    .sab-link .line-s {
        width: auto;
    }

    /*　ハンバーガーメニューボタン　*/
    .hamburger {
        display: block;
        position: relative;
        /* z-index: 1200; */
        margin: 9px 10px 9px 0;
        width: 42px;
        height: 42px;
        cursor: pointer;
        text-align: center;
        background: linear-gradient(#2DC980, #4AC92B);
        border-radius: 50%;
    }

    .hamburger span {
        display: block;
        position: absolute;
        width: 22px;
        height: 2px;
        left: 10px;
        background: #ffffff;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    .hamburger span:nth-child(1) {
        top: 12px;
    }

    .hamburger span:nth-child(2) {
        top: 20px;
    }

    .hamburger span:nth-child(3) {
        top: 28px;
    }

    /* スマホメニューを開いてる時のボタン */
    .hamburger.active span:nth-child(1) {
        top: 20px;
        left: 10px;
        background: #ffffff;
        -webkit-transform: rotate(-45deg);
        -moz-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }

    .hamburger.active span:nth-child(2),
    .hamburger.active span:nth-child(3) {
        top: 20px;
        background: #ffffff;
        -webkit-transform: rotate(45deg);
        -moz-transform: rotate(45deg);
        transform: rotate(45deg);
    }


    .globalMenuSp {
        display: block;
    }

    .globalMenuSp .logo-sp {
        background: #FFF;
    }

    /* メニュー背景　*/
    nav.globalMenuSp {
        position: fixed;
        z-index: 2;
        top: 0;
        left: 0;
        color: #333;
        background: #FFF;
        text-align: center;
        width: 100%;
        transform: translateX(100%);
        transition: all 0.6s;
    }

    nav.globalMenuSp ul {
        margin: 0 auto;
        padding: 120px 30px 50px;
        width: 100%;
        height: 100vh;
        display: block;
    }

    nav.globalMenuSp ul li {
        list-style-type: none;
        padding: 0;
        width: 100%;
        transition: .4s all;
        margin-left: 0;
    }

    nav.globalMenuSp ul li:last-child {
        padding-bottom: 0;
        margin-top: 14px;
    }

    nav.globalMenuSp ul li:hover {
        background: #000;
    }

    nav.globalMenuSp ul li a {
        display: block;
        color: #333;
        padding: 0 0 35px 0;
        text-decoration: none;
        font-size: 20px;
        text-align: center;
    }

    /* クリックでjQueryで追加・削除 */
    nav.globalMenuSp.active {
        opacity: 100;
        display: block;
        transform: translateX(0%);
        z-index: 1100;
        text-align: left;
    }

    /*---ハンバーガーここまで---*/

    .slideimg:nth-of-type(1),
    .slideimg:nth-of-type(2),
    .slideimg:nth-of-type(3) {
        background-position: 30% top;
        background-size: cover;
    }



    .slideimg:nth-of-type(1) {
        background-image: url('./img/maintenance_fv_01_sp.png');
    }

    .maintenance-top {
        width: 88%;
    }

    .sp-logo {
        position: absolute;
        z-index: 200;
        top: 32px;
        left: 20px;
    }

    .sp-logo a img {
        width: 50%;
    }

    .sp-logo p {
        font-size: 30px;
    }

    .sab-page .container .logo a img {
        padding-top: 0px;
    }

    .sab-page .container .logo p {
        padding: 4px 10px;
    }

    .sab-page .navbar {
        position: fixed;
        top: 0;
        height: 76px;
        margin-top: 0;
        background: #FFF;
        z-index: 500;
    }

    .about-fv {
        margin-top: 76px;
    }

    /*2024.07.18追加*/
    .top-about-img {
        width: 100%;

    }

    .reCAPTCHA {
        font-size: 10px;
        text-align: left;
        padding-top: 30px;
    }

    .reCAPTCHA a {
        text-decoration: underline;
    }

    .top-about-img {
        max-width: 100%;
    }

    .top-services {
        margin-top: 100px;
    }

    br.bsp {
        display: none;
    }

    iframe {
        width: auto;
    }

    .cat-item {
        width: 47%;
    }

    .apchousing-top-title {
        padding: 100px 0 30px 40px;
        margin: 0 auto;
    }

    .fine-logo-img {
        width: 50px;
        height: 39px;
    }

    .aboutus-01 h2 {
        margin: 0;
        font-size: 50px;
        line-height: 30px;
        padding: 100px 20px 30px;
    }

    .aboutus-01 h2.title-2 {}

    .title-2.apchousing-top {
        font-size: 30px;
    }

    .aboutus-01 .nf-page {
        line-height: 56px;
    }

    .aboutus-01 h2 span {
        font-size: 16px;
    }

    .aboutus-02-box {
        width: auto;
        margin: 80px 0 20px 20px;
        display: block;
        padding: 20px 20px 0 20px;
    }

    .aboutus-02-box-img {
        width: 100%;
    }

    .aboutus-02-text-box {
        width: auto;
        margin-right: 0;
        margin-top: 30px;
    }

    .aboutus-02-text-box img {
        width: 124px;
        margin-left: 0;
    }

    .aboutus-02-box-img.sp img {
        margin-top: 0;
        margin-left: 0;
        width: 100%;
    }

    .aboutus-02-text-box h3 {
        font-size: 24px;
        margin: 30px 0;
    }

    .aboutus-02-text-box p {
        font-size: 16px;
        margin-top: 30px;
        font-weight: 300;
        letter-spacing: .5px;
        padding-bottom: 70px;
    }


    .torikumi-box {
        display: block;
    }

    .torilkumi-sab-box {
        width: auto;
        margin-left: 10px;
    }

    .torilkumi-img-box {
        width: auto;
    }

    .torikumi {
        padding: 0 30px;
    }

    .torilkumi-img-box img {
        margin-bottom: 40px;
    }

    .message-title {
        width: auto;
    }

    .company-box {
        display: block;
    }

    .company-title-box {
        width: auto;
    }

    .company-title-box p {
        font-size: 16px;
        font-weight: 300;
        line-height: 27px;
    }

    .company-title-box p span {
        font-size: 16px;
        font-weight: 300;
        line-height: 20px;
        color: #333;
    }

    .access {
        padding: 0 20px;
        margin: 20px 0;
    }

    .access iframe {
        width: 100%;
    }

    .access-text-box {
        display: block;
    }

    .access-text-box p {
        width: auto;
        font-size: 12px;
        padding-bottom: 20px;
    }

    .sab-link {
        display: block;
        padding: 20px;
    }

    .sab-link div {
        width: auto;
        margin-bottom: 20px;
    }

    .sab-link div div {
        width: auto;
    }

    .sab-link-sab-img {
        height: 15px;
    }

    .sab-link a {
        display: block;
        text-align: center;
        margin: 0 auto;
        padding: 10px 5px 10px 40px;
    }

    .apchousing-05 {
        height: auto;
    }

    .message-img-maru {
        right: -14px;
        top: -20px;
        width: 63px;
    }

    .aboutus-02-sab-box {
        padding: 0 20px;
        margin: 50px 0;
        max-width: 100%;
    }

    .maru {
        top: -28px;
        left: -10px;
        width: 60px;
    }

    .aboutus-02-sab-box-text {
        font-size: 20px;
    }

    .kodawari {
        padding: 80px 20px;
    }

    .torikumi-title {
        padding-bottom: 30px;
    }

    .kodawari-text-box {
        display: block;
    }

    .kodawari-text-sab-box {
        width: auto;
        margin-bottom: 20px;
        padding: 20px;
    }

    .kodawari-text-sab-box p {
        font-size: 13px;
    }

    .kodawari-text-sab-box h4 {
        font-size: 24px;
    }

    .kodawari.apchousing-04 h4 {
        height: auto;
    }

    .kodawari-text-sab-box p {
        font-size: 13px;
    }

    .torikumi h3 {
        font-size: 20px;
        margin: 50px 0 40px;
    }

    .torilkumi-sab-box p {
        font-size: 17px;
        margin-bottom: 20px;
    }

    .torilkumi-sab-box .tirikumi-main-text {
        font-size: 18px;
    }

    .torilkumi-sab-box .tirikumi-main-text span {
        font-size: 20px;
    }

    .maintenance-top-fv-box .box-1 {
        bottom: 28px;
        width: 275px;
    }

    .maintenance-fv-bg {
        width: 266px;
        height: 120%;
    }

    .maintenance-content-01 {
        margin: 50px 26px 50px 36px;
    }

    .maintenance-content-img-01 {
        width: 64px;
    }

    .maintenance-content-01-box {
        display: block;
    }

    .maintenance-content-01-img-box {
        width: auto;
    }

    .maintenance-content-01-text-box {
        width: auto;
        margin: 50px auto 30px;
    }

    .maintenance-content-01-text-box h3 {
        font-size: 24px;
        font-weight: 600;
        letter-spacing: 1.5px;
        padding: 30px 0;
    }

    .maintenance-content-01-text {
        font-size: 13px;
        letter-spacing: .5px;
        width: auto;
    }

    .maintenance-content-01-btn {
        margin-top: 50px;
        display: block;
        text-align: center;
    }

    .maintenance-content-02 {
        margin: 100px 0 100px 20px;
        padding: 23px 20px 20px;
    }

    .maintenance-content-02-img-l {
        left: -28px;
        top: -28px;
        width: 79px;
    }

    .maintenance-content-02-text-box-01.sp {
        display: block;
    }

    .maintenance-content-02-box {
        display: block;
    }

    .maintenance-content-02-text-box {
        width: auto;
        margin-bottom: 20px;
    }

    .maintenance-content-02-title-img {
        margin-bottom: 34px;
        margin-top: 30px;
    }

    .maintenance-content-02-text {
        writing-mode: unset;
        font-size: 18px;
        letter-spacing: 1px;
        padding-bottom: 5px;
    }

    .maintenance-content-02-img-box {
        width: 47%;
        margin: 0 0 10px 0;
    }

    .maintenance-content-02-img-box-sp {
        display: flex;
        justify-content: space-between;
    }

    .maintenance-content-02-img-box-img-1 {
        width: 25%;
        bottom: 60px;
        right: 15px;
    }

    .maintenance-content-02-img-box h3 {
        font-size: 16px;
        margin: 20px 0;
        letter-spacing: 1px;
    }

    .maintenance-content-03-box {
        margin-top: 50px;
        padding: 0 20px;
    }

    .maintenance-content-03-top-sab-box {
        display: block;
        margin-right: 40px;
    }

    .maintenance-content-03-top-sab-box span {
        font-size: 14px;
    }

    .maintenance-03-btn {
        right: -45px;
    }

    .maintenance-content-03-main-box {
        padding: 0 20px;
    }

    .maintenance-content-03-post_list li {
        height: 140px;
        padding: 20px 0;
    }

    .maintenance-content-03-post_list li a .date {
        font-size: 14px;
    }

    .maintenance-content-03-post_list li a .cat-sab {
        font-size: 12px;
    }

    .maintenance-content-03-post_list li a .ttl {
        font-size: 14px;
        line-height: 24px;
        display: block;
        padding-top: 20px;
        width: 100%;

    }

    .single-title {
        font-size: 18px;
        margin-bottom: 20px;
        padding-bottom: 20px;
    }

    .single-box .single-y span a {
        margin-left: 15px;
        font-size: 10px;
        border-bottom: 0;
    }

    .single-box p {
        font-size: 14px;
        margin-bottom: 20px;
    }

    .single-box h2 {
        font-size: 18px;
        margin-bottom: 20px;
        line-height: 24px;
    }

    .single-box p a {
        font-size: 14px;
    }

    .single-box p .m-btn {
        font-size: 14px;
        width: 200px;
        padding: 5px;
    }

    .wp-block-embed iframe {
        width: 100%;
        height: 200px;
    }

    .news {
        margin: 20px 20px 100px 20px;
    }

    .cat.bold {
        flex-wrap: wrap;
        justify-content: space-between;
    }

    .cat.bold li {
        width: 48%;
    }

    .current-cat {
        width: 48%;
    }

    .cat.bold li a {
        font-size: 12px;
        margin-right: 0;
        width: 100%;
        text-align: center;
        display: block;
        line-height: 12px;
        margin-bottom: 20px;
        padding: 9px 0px;
    }

    .post_list {
        display: block;
    }

    .post_list li {
        width: auto;
        margin-bottom: 50px;
    }

    .post_list .ttl {
        font-size: 16px;
        margin: 10px 0;
    }

    .privacy-box {
        width: auto;
        margin: 50px 20px;
    }

    .privacy-text-01 {
        font-size: 14px;
    }

    .privacy-box h4 {
        font-size: 16px;
    }

    .privacy-text-03 {}

    .privacy-text-03 p {
        font-size: 14px;
        word-break: break-all;
    }

    .privacy-text-03 .privacy-text-04 {
        word-break: break-all;
    }

    .privacy-box {
        font-size: 12px;
    }


    .single-box h2::before {
        margin-left: -12px;
    }

    .all-btn {
        padding: 20px 5px 20px 40px;
    }

    .industrial-06-box {
        margin: 0 20px;
    }

    .accordion {
        padding: 30px 10px;
    }

    .p-single-content-pager__inner {
        font-size: 15px;
    }

    .p-single-content-pagers .sp {
        border-top: 1px solid #ccc;
    }

    .p-single-content-pagers {
        border-top: 0;
    }


    .maintenance-content-01-btn.sab-link-btn-img {
        width: 300px;
        margin: 40px auto;
        padding: 25px 5px 25px 30px;
    }

    .industrial-01 {
        margin: 40px;
    }

    .apchousing-01 {
        margin: 0;
        padding: 0 40px;
    }

    .industrial-01-box {
        display: block;
    }

    .industrial-01-title-box {
        width: auto;
    }

    .industrial-01-text-box {
        width: auto;
        margin-top: 20px;
    }

    .industrial-02-box {
        display: block;
        padding-bottom: 20px;
    }

    .industrial-03-list p {
        width: 30%;
    }

    .industrial-02-sab-box-01 {
        padding: 20px;
    }

    .industrial-02-sab-box-01 a {
        margin: 0 auto;
        padding: 10px 5px 10px 40px;
        width: 96%;
    }

    .industrial-02-sab-box-01 {
        width: auto;
    }

    .industrial-02-sab-box-02 {
        width: auto;
    }

    .industrial-03-box {
        display: block;
    }

    .industrial-03-img-box {
        width: auto;
    }

    .industrial-03-text-box {
        width: auto;
        margin: 40px 40px 0;
    }

    .industrial-03-list p {
        font-size: 10px;
    }

    .industrial-04-text h4 {
        display: block;
        height: auto;
    }

    .industrial-05-box {
        margin: 0 40px;
        padding: 80px 0;
    }

    .industrial-05-text-box {
        display: block;
    }

    .industrial-05-text {
        width: auto;
    }

    .industrial-05-text h4 {
        padding-bottom: 30px;
    }

    .accordion-header::after,
    .accordion-header::before {
        right: 6px;
        top: 6px;
        width: 3px;
        height: 18px;
    }

    .industrial-07-box {
        padding: 80px 40px;
    }

    .industrial-07-box h3 {
        line-height: 55px;
    }

    .industrial-07-box p {
        margin-top: 30px;
    }

    .industrial-01-title-box p {
        font-size: 16px;
    }

    .industrial-01-text-01 {
        text-align: left;
        margin-bottom: 20px;
    }

    .industrial-02-sab-box-02 img {
        display: block;
        width: 100%;
        margin: 0 auto;
        padding: 0 30px;
    }

    .apchousing-02 {
        display: block;
    }

    .apchousing-02-text-box {
        width: auto;
        height: auto;
        padding: 100px 40px;
    }

    .apchousing-02-img-box img {
        object-position: right;
        height: 500px;
    }

    .apchousing-02-img-box {
        width: auto;
        height: 500px;
    }

    .apchousing-03-box {
        display: block;
        margin-top: 80px;
    }

    .apchousing-03-img-box {
        width: auto;
    }

    .apchousing-03-img-box .apchousing-03-img-box-maru {
        right: 0;
    }

    .apchousing-03-text-box {
        width: auto;
        margin: 40px;
    }

    .apchousing-03-text-list p {
        width: 48%;
    }

    .recruit-menu-box ul {
        display: flex;
        padding-top: 0;
    }

    .sikaku_box {
        width: 100%;
        top: 92.5vh;
        z-index: 10;
    }

    .recruit-menu-box {
        width: 100%;
    }

    .recruit-menu-box ul .recruit-menu-box-01 {
        width: 100%;
        margin-top: -1px;
    }

    .recruit-menu-box-02 {
        margin-top: -1px;
    }

    .recruit-menu-box ul li.recruit-menu-box-03 {
        margin-top: -1px;
    }

    .recruit-menu-box ul .recruit-menu-box-04 {
        height: 60px;
        margin-top: -1px;
        width: 60px;
        background: linear-gradient(to right,
                rgba(247, 207, 0, 0.7),
                rgba(246, 37, 2, 0.7) 45%,
                rgba(182, 47, 82, 0.7) 75%,
                rgba(113, 58, 166, 0.7));
        background-size: cover;
    }

    .recruit-menu-box-04 img {
        height: 60px;
    }


    .recruit-menu-box ul li {
        width: auto;
        height: 60px;
        margin-bottom: 0;
    }



    .recruit-03 .line-btn {
        padding: 10px 5px 10px 40px;
    }

    .recruit-menu-box-02 span {
        display: none;
    }



    .recruit-menu-box ul .recruit-menu-box-02 {
        width: 60px;
        padding: 0;
    }

    .recruit-menu-box-02 img {
        width: 60px;
    }

    .recruit-menu-box ul li a {
        writing-mode: horizontal-tb;
    }

    .line-text-box .industrial-02-text {
        font-size: 16px;
    }

    .recruit-02-cont-02 a {
        padding: 10px 40px 10px 10px;
        width: 82%;
        margin: 0 30px 30px;
    }


    .recruit-01 {
        display: block;
        margin: 40px;
    }

    .recruit-01-text {
        width: auto;
        padding-top: 40px;
        padding-right: 0;
    }

    .recruit-02-box {
        padding: 90px 0px 80px;
    }

    .recruit-02-title {
        padding: 0 40px;
    }



    .recruit-02-sab-box {
        display: block;
    }

    .recruit-02-cont-01 {
        width: auto;
        padding: 0 40px 100px;
    }

    .recruit-02-cont-02 img {
        padding: 0 30px;
    }

    .recruit-02-cont-02 {
        width: auto;
        margin-top: 40px;
        padding-bottom: 5px;
    }

    .recruit-02-cont-02 p {
        font-size: 15px;
    }

    .recruit-03-title {
        background: linear-gradient(#2DC980, #4AC92B);
        width: 82%;
        margin: 0 auto;
        border-radius: 10px;
        padding: 25px 5px;
    }

    .recruit-03-title span {
        background: none;
        line-height: 35px;
        font-size: 24px;
    }

    .recruit-03-text {
        margin: 50px 35px 60px;
        text-align: left;
        width: auto;
    }

    .recruit-03-box {
        padding: 80px 40px;
    }

    .recruit-03-sab-box {
        display: block;
    }

    .recruit-03-cont-01,
    .recruit-03-cont-02 {
        width: auto;
    }

    .all-btn span::after {
        padding-left: 20px;
    }
}