/*
Theme Name: life_tpl_2024
Theme URI: 
Template: lightning
Description:Lifecommunication Theme
Author:Lifecommunication Co., Ltd
Tags: 
Version: 0.5.1
*/

body,div,dl,dt,dd,/*ul,ol,li,*/h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,blockquote,th,td,img {margin: 0; padding: 0;}
table {border-collapse: collapse; border-spacing: 0;}
fieldset,img {border: 0;}
img {display: block; max-width: 100%; height: auto;}
img a {border: none;}
address,caption,cite,code,dfn,em,th,var {font-style: normal; font-weight: normal;}
/*ol, ul {list-style: none;}*/
caption, th {text-align: left;}
h1,h2,h3,h4,h5,h6 {font-size: 100%; font-weight: normal; line-height: 1.0;}
q:before, q:after {content: "";}
a[href^="tel:"] {text-decoration: none;}
* {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
html {
    font-size: 62.5%;
    background-color: #f6f6f6;
}
body {
    -webkit-text-size-adjust: 100%;
    word-break: break-all;
    color: #333333;
    font-size: 1.6rem;
    font-family: '游ゴシック Medium','Yu Gothic Medium','YuGothic M','游ゴシック','Yu Gothic','游ゴシック体',YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "M+ 1p", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
a {text-decoration: none; -webkit-transition: all .3s; transition: all .3s;}
a:link {color: #333333;}
a:visited {color: #333333;}
a:hover { color: #2778BE; text-decoration: underline;}
a:active {color: #2778BE;}
p {line-height: 1.8;}
.site-body { padding: 0;}
.page_top_btn {
    right: 5px;
    bottom: 5px;
    width: 46px;
    height: 46px;
    background-color: rgba(27, 41, 94, 1);
    border-radius: 5px;
    box-shadow: none;
}



/* 各ページタイトル部分 */
.page-header {
    height: 300px;
    background-image: url(images/mv-lc-logo.svg);
    background-repeat: no-repeat;
    background-position: right 20px top;
    background-size: contain;
}
.page-header-title {
    font-size: 5.0rem !important;
    color: #1F2A66;
    text-align: left;
    line-height: 1.2 !important;
}
.page-header-title span {
    font-size: 2.8rem;
}
.page-header-title::before {
    display: block;
    font-size: 2.6rem;
    font-weight: bold;
    color: #1F2A66;
    line-height: 1;
    margin-bottom: 10px;
}
.page-id-31 .page-header-title::before {
    content: "\696d\52d9\7ba1\7406\306e\52b9\7387\3092\6975\9650\307e\3067\4e0a\3052\308b"; /*業務管理の効率を極限まで上げる*/
}
.page-id-63 .page-header-title::before,
.page-id-65 .page-header-title::before,
.page-id-67 .page-header-title::before {
    content: "\696d\52d9\7ba1\7406\30aa\30fc\30c0\30fc\30e1\30a4\30c9\30b7\30b9\30c6\30e0"; /*業務管理オーダーメイドシステム*/
}
.page-id-54 .page-header-title::before {
    content: "\30aa\30fc\30c0\30fc\30e1\30a4\30c9"; /*オーダーメイド*/
}
.page-id-71 .page-header-title::before,
.post-type-archive-web-works .page-header-title::before,
.single-web-works .page-header-title::before {
    content: "\30db\30fc\30e0\30da\30fc\30b8\5236\4f5c"; /*ホームページ制作*/
}
.page-header-title::after {
    display: block;
    font-size: 1.8rem;
    font-weight: bold;
    color: #2778BE;
    line-height: 1;
    margin-top: 10px;
}
.single-post .page-header-title::after,
.blog .page-header-title::after,
.category .page-header-title::after {
    content: "NEWS";
}
.page-id-31 .page-header-title::after,
.page-id-63 .page-header-title::after,
.page-id-65 .page-header-title::after,
.page-id-67 .page-header-title::after {
    content: "SUKETTO-KUN";
}
.page-id-54 .page-header-title::after {
    content: "ORDER MADE HOMEPAGE";
}
.page-id-71 .page-header-title::after {
    content: "FAQ";
}
.post-type-archive-web-works .page-header-title::after,
.single-web-works .page-header-title::after {
    content: "WORKS";
}
.page-id-56 .page-header-title::after {
    content: "COMPANY INFO";
}
.page-id-58 .page-header-title::after {
    content: "DOWNLOAD";
}
.page-id-73 .page-header-title::after {
    content: "OA EQUIPMENT";
}
.page-id-61 .page-header-title::after,
.page-id-1018 .page-header-title::after,
.page-id-1030 .page-header-title::after {
    content: "CONTACT";
}
.page-id-3 .page-header-title::after {
    content: "PRIVACY POLICY";
}
.page-header-inner {
    margin: 0 20px;
}
#breadcrumb {
    display: none;
}
@media (max-width: 991px) {
    .page-header-title {
        font-size: 4.0rem !important;
    }
    .page-header-title span {
        font-size: 2.4rem;
    }
    .page-header-title::before {
        font-size: 2.2rem;
        margin-bottom: 7px;
    }
    .page-header-title::after {
        font-size: 1.5rem;
        margin-top: 7px;
    }
}
@media (max-width: 768px) {
    .page-header {
        height: 200px;
        background-position: right 0px top;
    }
    .page-header-inner {
        margin: 0;
    }    
    .page-header-title {
        font-size: 3.0rem !important;
    }
    .page-header-title span {
        font-size: 2.0rem;
    }
    .page-header-title::before {
        font-size: 2.0rem;
    }
    .page-header-title::after {
        font-size: 1.4rem;
    }
}
@media (max-width: 575px) {
    .page-header {
        height: 160px;
    }
    .page-header-title {
        font-size: 2.3rem !important;
    }
    .page-header-title span {
        font-size: 1.5rem;
    }
    .page-header-title::before {
        font-size: 1.6rem;
    }
}





/* 背景色関連 */
.bg-grad-blue {
    background: rgb(224,236,242);
    background: linear-gradient(180deg, rgba(224,236,242,1) 50%, rgba(255,255,255,0) 100%);
    padding: 80px 15px;
}
.bg-grad-yellow {
    background: rgb(255,248,229);
    background: linear-gradient(180deg, rgba(255,248,229,1) 50%, rgba(255,255,255,0) 100%);
    padding: 80px 15px;
}
.bg-grad-yellow-white {
    background: rgb(255,248,229);
    background: linear-gradient(180deg, rgba(255,248,229,1) 50%, rgba(255,255,255,1) 100%);
    padding: 80px 15px;
}
.bg-gray-full {
    padding: 80px 15px;
}
.bg-white-full {
    background-color: #fff;
    padding: 80px 15px;
}
.bg-pink-full {
    background-color: #FFEBE9;
    padding: 80px 15px;
}
.bg-white-grad {
    max-width: 1440px;
    margin: 0 auto;
    border-radius: 15px;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,255,0) 100%);
    padding: 60px;
}
    @media (max-width: 991px) {
        .bg-white-grad {
            padding: 40px 30px;
        }
    }
    @media (max-width: 575px) {
        .bg-white-grad {
            padding: 30px 20px;
        }
    }
.bg-white {
    max-width: 1440px;
    margin: 0 auto;
    border-radius: 15px;
    background: rgb(255,255,255);
    padding: 60px;
}
    @media (max-width: 991px) {
        .bg-white {
            padding: 40px 30px;
        }
    }
    @media (max-width: 575px) {
        .bg-white {
            margin-bottom: 30px;
            padding: 30px 20px;
        }
    }


.headline01 {
    font-size: 3.2rem;
    line-height: 1.4;
    margin-bottom: 1.5em;
    color: #1B295E;
}
.hp-headline01 {
    font-size: 3.2rem;
    line-height: 1.4;
    margin-bottom: 1.5em;
    color: #FF5E3D;
}
    @media (max-width: 991px) {
        .headline01,
        .hp-headline01 {
            font-size: 2.6rem;
        }
    }
    @media (max-width: 575px) {
        .headline01,
        .hp-headline01 {
            font-size: 2.2rem;
        }
    }

.marker {
    background: linear-gradient(transparent 50%, #fff676 0%);
}

/*全幅設定*/
.full-width {
    margin: 0 calc(50% - 50vw);
    /*padding: 5em calc(50vw - 50%);*/
}

/* ヘッダーナビ */
.site-header {
    box-shadow: none;
}
.header_scrolled .site-header {
    box-shadow: none;
    background-color: #f6f6f6;
    width: 100%;
}
.header_scrolled .site-header-logo {
    display: block;
}
div#site-header-container {
    max-width: 100%;
    padding-right: 0;
    padding-left: 10px;
}
.site-header-logo img {
    margin: 0;
}
    @media (max-width:991px) {
        .site-header {
            position: fixed;
        }
        .header_scrolled.admin-bar .site-header {
            top:var(--vk-size-admin-bar);
        }
        .header_scrolled .site-header-logo {
            display: block;
        }
        .site-header + * {
            margin-top:66px !important;
        }
    }
.global-nav-list {
    height: 100%;
}
.global-nav-list li a:hover {
    color: #2778BE;
}
.global-nav-name {
    font-size: 1.7rem !important;
    font-weight: bold;
}
.global-nav-list .sub-menu li {
    font-size: 1.5rem !important;
}
.device-pc .global-nav-list > li > a {
    padding: 20px 1.5em;
}
.global-nav-list > li .global-nav-description {
    font-size: 1.3rem;
    font-weight: bold;
    color: #fff;
    opacity: 1;
}
#menu-item-86 {
    background-color: #2778BE;
}
#menu-item-87 {
    background-color: #1B295E;
}
#menu-item-86 a,
#menu-item-87 a {
    padding: 20px 2.0em;
}
#menu-item-86:hover,
#menu-item-87:hover {
    filter: brightness(1.1);
}
#menu-item-86 .global-nav-name,
#menu-item-87 .global-nav-name {
    font-size: 1.6rem !important;
    color: #fff;
}
.vk-mobile-nav-menu-btn {
    border: none;
    background-color: rgba(255,255,255,0);
    width: 50px;
    height: 50px;
}
.vk-mobile-nav-menu-btn.menu-open {
    border: none;
    background-color: rgba(255,255,255,0);
}
.vk-menu-acc .acc-btn {
    top: 7px;
    right: 7px;
    width: 34px;
    height: 34px;
}
@media (max-width: 1024px) {
    .device-mobile .global-nav {
        display: none !important;
    }
    .device-mobile .vk-mobile-nav-menu-btn {
        display: block !important;
    }
}



/* フッター（お問い合わせエリア） */
.bg-footer-contact {
    background-image: url(images/bg-footer-contact.jpg);
    background-size: cover;
    background-position: center center;
    padding: 60px 15px;
}
.footer-contact {
    max-width: 1120px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.footer-contact > div {
    width: calc((100% - 20px) /2);
    margin-right: 20px;
    background-color: rgba(255,255,255,0.9);
    border-radius: 15px;
    padding: 25px 15px 15px;
}
.footer-contact > div:last-child {
    margin-right: 0;
}
.icon-footer-contact {
    max-width: 40px;
    margin: 0 auto 15px;
}
.caution{
	color: #770000;
	font-weight:bold;
}
.footer-contact > div > h3 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #1F2A66;
    text-align: center;
    margin-bottom: 1em;
    line-height: 1.3;
}
.footer-contact > div p {
    text-align: center;
}
.footer-contact-telnumber {
    font-size: 4.0rem;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 15px;
}
.footer-contact-telnumber a {
    color: #1F2A66;
}
.btn-footer-contact p a {
    display: block;
    max-width: 200px;
    margin: 0 auto;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1;
    border-radius: 30px;
    padding: 8px 10px;
    background-color: #1B295E;
    text-decoration: none !important;
}
.btn-footer-contact p a:hover {
    background-color: #2778BE;
    transform: translate(0, 3px);
}
@media (max-width: 768px) {
    .footer-contact > div {
        width: 100%;
        max-width: 510px;
        margin: 0 auto 15px;
    }
    .footer-contact > div:last-child {
        margin: 0 auto;
    }
    .footer-contact-telnumber {
        font-size: 3.2rem;
    }
}

/* フッター（OA機器販売エリア） */
.bg-footer-oa {
    background-color: #fff;
    padding: 30px 15px;
    border-bottom: 1px solid #ccc;
}
.footer-oa {
    max-width: 960px;
    margin: 0 auto;
    background: rgb(224,236,242);
    background: linear-gradient(180deg, rgba(224,236,242,1) 50%, rgba(255,255,255,0) 100%);
    border-radius: 15px;
    padding: 20px 15px;
}
.footer-oa ul {
    max-width: 720px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.footer-oa ul li {
    list-style: none;
}
.footer-oa ul li h3 {
    font-size: 2.4rem;
    font-weight: bold;
    color: #1B295E;
    line-height: 1;
    margin-bottom: 10px;
}
.footer-oa ul li p {
    margin-bottom: 20px;
}
.footer-oa ul li:nth-child(2) {
    max-width: 360px;
}
.btn-footer-oa a {
    display: block;
    max-width: 200px;
    margin: 0;
    color: #fff;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    border-radius: 30px;
    padding: 8px 10px;
    background-color: #2778BE;
    text-decoration: none !important;
}
.btn-footer-oa a:hover {
    background-color: #1B295E;
    transform: translate(0, 3px);
}
@media (max-width: 768px) {
    .footer-oa {
        max-width: 510px;
        padding: 30px 15px;
    }
    .footer-oa ul {
        max-width: 320px;
        justify-content: center;
    }
    .footer-oa ul li {
        width: 100%;
        margin: 0 auto;
    }
    .footer-oa ul li h3 {
        font-size: 2.0rem;
        text-align: center;
        margin-bottom: 15px;
    }    
    .footer-oa ul li p {
        text-align: center;
        margin-bottom: 10px;
    }
    .btn-footer-oa a {
        margin: 0 auto;
    }
    .footer-oa-img {
        margin-top: 30px;
    }
}

/* フッター */
.footer-company-name {
    font-size: 1.6rem;
}
.footer-address p {
    font-size: 1.5rem;
}
.footer-address:where(.is-layout-flex) {
    gap: 2em;
}
.footer-navi {
    display: flex;
    flex-wrap: wrap;
}
.footer-navi li {
    list-style: none;
    font-size: 1.5rem;
    margin: 0 1.5em 1em 0;
}
.footer-navi li a {
    text-decoration: none;
    background-image: url(images/chevron-right-navy.svg);
    background-size: 5px auto;
    background-repeat: no-repeat;
    background-position: center left;
    padding-left: 10px;
}
@media (max-width: 768px) {
    .footer-navi {
        display: none;
    }
}

.site-footer-copyright p {
    font-size: 1.3rem !important;
}



/* トップページ */
.main-visual {
    background-image: url(images/mv-lc-logo.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right 20px top;
    padding: 60px 60px;
}
.main-visual .catchphrase {
    font-size: 6.2rem;
    font-weight: bold;
    color: #1B295E;
    line-height: 1.4;
    margin-bottom: 30px;
}
.main-visual .catchphrase span {
    color: #2778BE;
}
.main-visual .catchphrase-sub {
    font-size: 2.2rem;
    font-weight: bold;
    margin-bottom: 0;
}
    @media (max-width: 991px) {
        .main-visual .catchphrase {
            font-size: 5.0rem;
        }
        .main-visual .catchphrase-sub {
            font-size: 1.8rem;
        }
    }
    @media (max-width: 768px) {
        .main-visual {
            background-position: right 20px top;
            padding: 60px 30px 60px;
        }
        .main-visual .catchphrase {
            font-size: 4.0rem;
        }
    }
    @media (max-width: 575px) {
        .main-visual {
            background-position: center top;
            padding: 60px 20px 60px;
        }
        .main-visual .catchphrase {
            font-size: 3.4rem;
        }
        .main-visual .catchphrase-sub {
            font-size: 1.6rem;
        }
    }
.main-topics {
    width: 100%;
    background-color: #F2E0E0;
    border-radius: 15px;
    margin-top: 100px;
    padding: 20px;
}
.main-topics ul {
    margin: 0;
    padding: 0;
}
.main-topics ul a:hover {
    text-decoration: none;
}
.main-topics ul li {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
}
.main-topics ul li p {
    margin: 0;
    font-size: 1.5rem;
    line-height: 1.4;
}
.main-topics ul li p.topics-date {
    font-weight: bold;
    color: #777777;
    margin-right: 1em;
}
.main-topics ul li p.topics-title {
    font-weight: bold;
    color: #770000;
}
.main-topics .notice-no {
    font-size: 1.5rem;
    font-weight: bold;
    color: #666;
    margin: 0;
}
@media (max-width: 575px) {
    .main-topics {
        margin-top: 60px;
        padding: 15px;
    }
    .main-topics ul li p {
        font-size: 1.4rem;
    }
}

.pickup-service {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 20px;
    max-width: 2560px;
    margin: 0 auto 20px;
}
.pickup-service > div {
    width: calc((100% - 20px) / 2);
    background-color: #2778BE;
    padding-bottom: 50px;
}
    @media (max-width: 991px) {
        .pickup-service > div {
            padding-bottom: 40px;
        }
    }
    @media (max-width: 768px) {
        .pickup-service > div {
            width: 100%;
            max-width: 640px;
            background-color: #2778BE;
            padding-bottom: 50px;
        }
    }
.pickup-service > div:nth-child(1) {
    border-radius: 0 15px 15px 0;
}
.pickup-service > div:nth-child(1) img {
    border-radius: 0 15px 0 0;
    width: 100%;
}
.pickup-service > div:nth-child(2) {
    border-radius: 15px 0 0 15px;
}
.pickup-service > div:nth-child(2) img {
    border-radius: 15px 0 0 0;
    width: 100%;
}
    @media (max-width: 768px) {
        .pickup-service > div:nth-child(2) {
            margin-top: 20px;
            margin-left: auto;
        }
    }
    @media (max-width: 575px) {
        .pickup-service > div:nth-child(1),
        .pickup-service > div:nth-child(1) img,
        .pickup-service > div:nth-child(2),
        .pickup-service > div:nth-child(2) img {
            border-radius: 0;
        }
    }
.pickup-service-img {
    margin-bottom: 50px;
}
    @media (max-width: 991px) {
        .pickup-service-img {
            margin-bottom: 40px;
        }
    }
.pickup-service h2 {
    font-size: 3.2rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    margin-bottom: 30px;
    padding: 0 15px;
    line-height: 1.2;
}
.pickup-service h2 span {
    display: block;
    font-size: 2.0rem;
    margin-bottom: 10px;
}
.pickup-service h2 br {
    display: none;
}

.pickup-service p {
    font-size: 1.7rem;
    color: #fff;
    text-align: center;
    margin-bottom: 30px;
    padding: 0 15px;
}
    @media (max-width: 991px) {
        .pickup-service h2 {
            font-size: 2.4rem;
        }
        .pickup-service p {
            font-size: 1.6rem;
            margin-bottom: 20px;
        }
    }
    @media (max-width: 768px) {
        .pickup-service h2 span {
            font-size: 1.7rem;
        }
    }
    @media (max-width: 575px) {
        .pickup-service h2 {
            font-size: 2.2rem;
        }
        .pickup-service h2 br {
            display: block;
        }      
        .pickup-service p {
            font-size: 1.5rem;
            padding: 0 25px;
        }
        .pickup-service p br {
            display: none;
        }
    }
.pickup-btn {
    max-width: 300px;
    margin: 0 auto;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1;
}
.pickup-btn a {
    display: block;
    background-image: url(images/chevron-right-navy.svg);
    background-size: 6px auto;
    background-position: right 14px center;
    background-repeat: no-repeat;
    background-color: #fff;
    padding: 15px;
    color: #1B295E;
    text-align: center;
    border-radius: 40px;
}
.pickup-btn a:hover {
    text-decoration: none;
    color: #2778BE;
    transform: translate(0, 3px);
}
    @media (max-width: 991px) {
        .pickup-btn {
            font-size: 1.6rem;
        }
    }

.top-news {
    max-width: 960px;
    margin: 0 auto 100px;
}
.top-news-title h2 {
    font-size: 3.2rem;
    font-weight: bold;
    color: #1B295E;
    text-align: center;
    position: relative;
    margin-bottom: 50px;
}
.top-news-title h2::before {
    position: absolute;
    content: attr(data-word);
    top: 40px;
    left: 50%;
    font-size: 1.3rem;
    font-weight: bold;
    color: #666;
    transform: translateX(-50%);
}
    @media (max-width: 991px) {
        .top-news-title h2 {
            font-size: 2.4rem;
            margin-bottom: 50px;
        }
        .top-news-title h2::before {
            top: 30px;
        }
    }
.top-news-article ul {
    margin: 0;
    padding: 0;
}
.top-news-article ul a:hover {
    text-decoration: none;
}
.top-news-article ul li {
    background-color: #fff;
    margin-bottom: 15px;
    padding: 20px;
    border-radius: 15px;
    display: flex;
    flex-wrap: wrap;
}
.top-news-article ul li p {
    margin: 0;
}
.top-news-article ul li p.news-date {
    font-weight: bold;
    color: #1B295E;
    margin-right: 2em;
}
    @media (max-width: 575px) {
        .top-news-article ul li p.news-date {
            margin-right: 0;
            display: block;
            width: 100%;
        }
    }
.top-news-btn {
    font-weight: bold;
    text-align: center;
    padding: 5px 0 20px;
    border-bottom: 1px solid #1B295E;
}
.top-news-btn a {
    color: #1B295E;
    text-decoration: none;
}
.top-news-btn a:hover {
    color: #2778BE;
}

.bg-lifeinfo {
    max-width: 1440px;
    margin: 0 auto;
    border-radius: 15px;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,255,0) 100%);
    padding: 60px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
    @media (max-width: 991px) {
        .bg-lifeinfo {
            padding: 40px 30px;
        }
    }
    @media (max-width: 575px) {
        .bg-lifeinfo {
            margin-bottom: 30px;
            padding: 30px 20px;
        }
    }
.life-recruit {
    flex-direction: row-reverse;
}
    @media (max-width: 768px) {
        .life-recruit {
            flex-direction: row;
        }
    }
.lifeinfo-img {
    width: 40%;
}
    @media (max-width: 768px) {
        .lifeinfo-img {
            width: 100%;
            max-width: 400px;
            margin: 0 auto 40px;
        }
    }
.lifeinfo-txt {
    width: 56%;
}
    @media (max-width: 768px) {
        .lifeinfo-txt {
            width: 100%;
        }    
    }
.lifeinfo-txt h2 {
    font-size: 1.8rem;
    font-weight: bold;
    color: #1B295E;
    margin-bottom: 30px;
}
.lifeinfo-txt h2::before {
    content: "●";
    color: #2778BE;
    margin-right: 10px;
}
    @media (max-width: 991px) {
        .lifeinfo-txt h2 {
            font-size: 1.6rem;
            margin-bottom: 20px;
        }
        .lifeinfo-txt h2::before {
            margin-right: 5px;
        }    
    }
.lifeinfo-txt h3 {
    font-size: 3.4rem;
    font-weight: bold;
    line-height: 1.4;
    margin-bottom: 30px;
}
    @media (max-width: 991px) {
        .lifeinfo-txt h3 {
            font-size: 2.8rem;
            margin-bottom: 20px;
        }
    }
    @media (max-width: 768px) {
        .lifeinfo-txt h3 {
            font-size: 2.4rem;
        }
    }    
    @media (max-width: 575px) {
        .lifeinfo-txt h3 {
            font-size: 2.0rem;
        }
    }
.lifeinfo-txt p {
    margin-bottom: 30px;
}
    @media (max-width: 991px) {
        .lifeinfo-txt p {
            margin-bottom: 20px;
        }    
    }

.lifeinfo-btn {
    max-width: 300px;
    font-size: 1.7rem;
    font-weight: bold;
    line-height: 1;
}
.lifeinfo-btn a {
    display: block;
    background-image: url(images/chevron-right-white.svg);
    background-size: 6px auto;
    background-position: right 14px center;
    background-repeat: no-repeat;
    background-color: #2778BE;
    padding: 15px;
    color: #fff;
    text-align: center;
    border-radius: 40px;
}
.lifeinfo-btn a:hover {
    text-decoration: none;
    transform: translate(0, 3px);
}
    @media (max-width: 768px) {
        .lifeinfo-btn {
            margin: 0 auto;
        }
    }



/* 会社案内 */
.company-leadtxt {
    max-width: 990px;
    margin: 0 auto 80px;
    padding: 0 15px;
}
    @media (max-width: 768px) {
        .company-leadtxt p {
            text-align: left;
        }
        .company-leadtxt p br {
            display: none;
        }
    }
.company-leadtxt img {
    margin-top: 30px;
}
.company-philosophy {
    max-width: 960px;
    margin: 0 auto 60px;
    padding: 30px 15px;
    border: 1px solid #1B295E;
}
.company-philosophy p {
    font-size: 2.4rem;
    font-weight: bold;
    color: #1B295E;
    margin: 0;
}
    @media (max-width: 991px) {
        .company-philosophy p {
            font-size: 2.0rem;
        }
    }
    @media (max-width: 768px) {
        .company-philosophy {
            padding: 20px;
        }
        .company-philosophy p {
            font-size: 1.8rem;
        }
    }
.company-guideline-title {
    align-items: center;
    display: flex;
    justify-content: center;
    font-size: 2.4rem;
    font-weight: bold;
    color: #1F2A66;
    margin-bottom: 30px;
}
.company-guideline-title::before,
.company-guideline-title::after {
    background-color: #1F2A66; /* 横線の色 */
    content: "";
    height: 1px; /* 横線の高さ */
    width: 50px; /* 横線の長さ */
}
.company-guideline-title::before {
    margin-right: 15px; /* 文字との余白 */
}
.company-guideline-title::after {
    margin-left: 15px; /* 文字との余白 */
}
.company-guideline {
    text-align: center;
}
.company-guideline-txt {
    margin: 0;
    padding: 0;
    display: inline-block;
    text-align: left;
}
.company-guideline-txt li {
    font-size: 1.8rem;
    margin-bottom: 1em;
    padding-left: 1.3em;
    text-indent: -1.3em;
    list-style: none;
}
.company-guideline-txt li::before {
    content: "●";
    color: #2778BE;
    margin-right: 0.3em;
}
    @media (max-width: 991px) {
        .company-guideline-title {
            font-size: 2.0rem;
        }
        .company-guideline-title::before,
        .company-guideline-title::after {
            width: 40px; /* 横線の長さ */
        }
        .company-guideline-title::before {
            margin-right: 10px; /* 文字との余白 */
        }
        .company-guideline-title::after {
            margin-left: 10px; /* 文字との余白 */
        }
        .company-guideline-txt li {
            font-size: 1.7rem;
        }
    }

.company-photo {
    flex-wrap: wrap !important;
}
.company-photo > figure {
    width: calc(100% / 4);
}
.company-photo:where(.is-layout-flex) {
    gap: 0;
}
    @media (max-width: 768px) {
        .company-photo {
            display: flex !important;
            flex-wrap: wrap !important;
        }
        .company-photo > figure {
            width: 50%;
        }
    }

.company-profile {
    max-width: 1120px;
    margin: 0 auto 100px;
    padding: 30px;
    background-color: #fff;
    border-radius: 15px;;
}
.wp-block-table td {
    border: none;
}
.company-profile table {
    max-width: 960px;
    margin: 0 auto;
}
.company-profile table td {
    font-size: 1.6rem;
    padding: 15px 0;
    border-bottom: 1px solid #999;
}
.company-profile table td:nth-child(1) {
    white-space: nowrap;
    padding-right: 1em;
}
.company-profile .btn-googlemap {
    max-width: 200px;
    margin: 10px 0 0;
    font-size: 1.5rem;
    font-weight: bold;
    text-align: center;
}
.company-profile .btn-googlemap a {
    display: block;
    padding: 5px;
    background-color: #1B295E;
    color: #fff;
    border-radius: 40px;
}
.company-profile .btn-googlemap a:hover {
    background-color: #2778BE;
    text-decoration: none;
}
    @media (max-width: 768px) {
        .company-profile table td {
            display: block;
            width: 100%;
        }
        .company-profile table td:nth-child(1) {
            padding: 15px 0 0;
            border: none;
        }
    }

.company-mark {
    display: flex;
    flex-wrap: wrap;
    justify-content: normal !important;
    align-items: normal !important;
    max-width: 960px;
    margin: 0 auto;
}
.company-mark:where(.is-layout-flex) {
    gap: 0;
}
.company-mark figure {
    width: calc((100% - 80px) / 5);
    margin-right: 20px;
    margin-bottom: 30px;
}
.company-mark figure:last-child,
.company-mark figure:nth-child(5n) {
    margin-right: 0;
}
.company-mark img {
    width: 100%;
    margin: 0 auto;
    padding: 15px;
    border-radius: 15px;
    box-shadow: 0 3px 6px rgba(0,0,0,0.2);
    background-color: #fff;
}
.company-mark .wp-element-caption {
    font-size: 1.4rem;
    margin-top: 5px;
}
    @media (max-width: 768px) {
        .company-mark figure {
            width: calc((100% - 40px) / 3);
        }
        .company-mark figure:nth-child(5) {
            margin-right: 20px;
        }
        .company-mark figure:nth-child(3n) {
            margin-right: 0;
        }
        .company-mark img {
            border-radius: 10px;
        }
    }
    @media (max-width: 575px) {
        .company-mark {
            max-width: 320px;
        }
        .company-mark figure {
            width: calc((100% - 20px) / 2);
        }
        .company-mark figure:nth-child(3),
        .company-mark figure:nth-child(9) {
            margin-right: 20px;
        }
        .company-mark figure:nth-child(2n) {
            margin-right: 0;
        }
    }



/* 業務管理システム（お問い合わせボタン） */
.btn-suketto-contact {
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
}
.btn-suketto-contact a {
    width: 100%;
    font-size: 3.2rem;
    line-height: 1;
    color: #fff;
    padding: 30px 10px;
    background-image: url(images/chevron-right-white.svg);
    background-repeat: no-repeat;
    background-size: 10px auto;
    background-position: right 20px center;
}
.btn-suketto-contact a:hover {
    transform: translate(0, 3px);
}
.btn-suketto-contact .wp-block-button__link:hover {
    filter: brightness(1.1);
}
@media (max-width: 768px) {
    .btn-suketto-contact a {
        font-size: 2.6rem;
        padding: 24px 10px;
    }
}
@media (max-width: 575px) {
    .btn-suketto-contact a {
        font-size: 2.0rem;
    }
}


/* 業務管理システム（メインビジュアル） */
.suketto-mainvisual {
    position: relative;
    background-image: url(images/suketto-mainvisual.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center right 30%;
    padding-top: 30%;
    min-height: 500px;
}
.suketto-main-txt {
    position: absolute;
    top: 80px;
    left: 40px;
}
.suketto-main-logo {
    max-width: 320px;
    margin-bottom: 30px;
}
.suketto-main-txt h2 {
    font-size: 3.8rem;
    color: #fff;
    margin: 0;
    line-height: 1.4;
    text-shadow: 1px 1px 0 #000, -1px -1px 0 #000,
                 -1px 1px 0 #000, 1px -1px 0 #000,
                 0px 1px 0 #000,  0-1px 0 #000,
                 -1px 0 0 #000, 1px 0 0 #000;
}
.suketto-main-lead {
    position: relative;
    z-index: 1;
    max-width: 960px;
    margin: -50px auto 60px;
    padding: 20px 15px;
    border: 3px solid #fff;
    border-radius: 15px;
    background: rgb(0,93,171);
    background: linear-gradient(180deg, rgba(0,93,171,1) 0%, rgba(0,127,233,1) 100%);
    box-shadow: 0 6px 6px rgba(0,0,0,0.2);
}
.suketto-main-lead p {
    margin: 0;
    font-size: 2.4rem;
    color: #fff;
    line-height: 1.6;
}
.suketto-sub-lead {
    text-align: center;
	display: block;
    margin-bottom: 60px;
}
.suketto-sub-lead p {
    text-align: left;
	display: inline-block;
}
@media (max-width: 768px) {
    .suketto-mainvisual {
        min-height: 360px;
    }
    .suketto-main-txt {
        top: 40px;
    }
    .suketto-main-logo {
        max-width: 240px;
        margin-bottom: 20px;
    }
    .suketto-main-txt h2 {
        font-size: 3.0rem;
    }
    .suketto-main-lead p {
        font-size: 2.0rem;
    }
    .suketto-main-lead p br {
        display: none;
    }
}
@media (max-width: 575px) {
    .suketto-main-txt {
        left: 20px;
    }
    .suketto-main-txt h2 {
        font-size: 2.6rem;
    }
    .suketto-main-lead p {
        font-size: 1.7rem;
    }
}


/* 業務管理システム（お悩み） */
.suketto-worries-bg {
	position: relative;
	background: #2778BE;
    margin-top: 80px;
    margin-bottom: 80px;
    padding: 80px 15px;
}
.suketto-worries-bg::after {
	top: 100%;
	left: 50%;
	content: "";
	position: absolute;
    border-right: 80px solid transparent;
    border-left: 80px solid transparent;
    border-top: 30px solid #2778BE;
    margin-left: -80px;
}
.suketto-worries-img {
    width: 35%;
}
.suketto-worries-img .wp-block-image:where(figure) {
    margin: 0;
}
.suketto-worries-txt {
    width: 60%;
}
.suketto-worries-txt h3 {
    font-size: 2.4rem;
    line-height: 1.4;
    color: #fff;
    margin-bottom: 40px;
}
.suketto-worries-list {
    width: 100%;
    background-color: #fff;
    border-radius: 15px;
    box-shadow: 0 6px 6px rgba(0,0,0,0.2);
    padding: 30px 20px;
}
.suketto-worries-txt ul {
    padding-left: 0 !important;
    width: fit-content;
    margin: auto;
}
.suketto-worries-txt ul li {
    list-style: none;
    font-size: 1.8rem;
    font-weight: bold;
    text-indent: -1.5em;
    padding-left: 1.5em;
}
.suketto-worries-txt ul li::before {
    content: "\25cf";
    color: #C9003F;
    margin-right: 0.5em;
}
.suketto-worries-txt p {
    font-size: 1.8rem;
    color: #fff;
    margin-top: 30px;
}
@media (max-width: 768px) {
    .suketto-worries-img {
        width: 100%;
        max-width: 200px;
        margin: 0 auto 20px !important;
    }
    .suketto-worries-txt {
        width: 100%;
    }
    .suketto-worries-txt h3 {
        font-size: 2.0rem;
    }
    .suketto-worries-txt ul li {
        font-size: 1.7rem;
    }
    .suketto-worries-txt p {
        font-size: 1.6rem;
    }
    
}
@media (max-width: 575px) {
    .suketto-worries-txt h3 {
        font-size: 1.7rem;
    }
    .suketto-worries-txt ul li {
        font-size: 1.6rem;
    }
    .suketto-worries-txt p {
        font-size: 1.5rem;
    }
    .suketto-worries-txt p br {
        display: none;
    }
    
}


/* 業務管理システム（おすすめ！） */
.suketto-osusume {
    font-size: 3.4rem;
    line-height: 1.5;
}
.suketto-fukidashi-wrap {
    max-width: 800px;
    margin: 0 auto;
}
.suketto-fukidashi-wrap:where(.is-layout-flex) {
    gap: 0;
}
.suketto-fukidashi {
	position: relative;
	background: #FFEDB2;
    width: calc(100% - 100px - 30px);
    border-radius: 15px;
    padding: 20px;
}
.suketto-fukidashi::after {
	left: 100%;
	top: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-left-color: #FFEDB2;
	border-width: 10px;
	margin-top: -10px;
}
.suketto-fukidashi p {
    font-size: 2.4rem;
    margin: 0;
    line-height: 1.4;
}
.suketto-fukidashi p span {
    font-size: 1.7rem;
}
.suketto-kun-check {
    width: 100px;
    margin-left: 30px !important;
}
.suketto-kun-check :where(figure) {
    margin: 0 !important;
}
@media (max-width: 768px) {
    .suketto-osusume {
        font-size: 2.2rem;
    }
    .suketto-fukidashi {
        width: calc(100% - 60px - 20px);
    }    
    .suketto-fukidashi p {
        font-size: 1.8rem;
    }
    .suketto-fukidashi p span {
        font-size: 1.5rem;
    }
    .suketto-kun-check {
        width: 60px;
        margin-left: 20px !important;
    }
}
@media (max-width: 575px) {
    .suketto-fukidashi {
        width: 100%;
    }    
    .suketto-fukidashi::after {
        left: 50%;
        top: 100%;
        border-left-color: transparent;
        border-top-color: #FFEDB2;
        border-width: 10px;
        margin-left: -10px;
        margin-top: 0;
    }
    .suketto-fukidashi p {
        font-size: 1.6rem;
        line-height: 1.8;
    }
    .suketto-kun-check {
        width: 80px;
        margin: 20px auto 0 !important;
    }
}

/* 業務管理システム（メリット・デメリット） */
.suketto-merit-wrap {
    padding: 80px 0;
}
.suketto-merit-wrap .headline01 span {
    font-size: 1.8rem;
}
.suketto-merit {
    max-width: 100%;
    margin: 0 auto 40px;
}
.suketto-merit:where(.is-layout-flex) {
    gap: 0;
}
.suketto-merit > div {
    width: calc((100% - 20px) / 2);
    margin-right: 20px;
}
.suketto-merit > div:last-child {
    margin-right: 0;
}
.suketto-merit > div h3 {
    border-radius: 15px 15px 0 0;
    font-size: 1.8rem;
    color: #fff;
    padding: 15px 10px;
}
.suketto-merit .suketto-merit-list h3 {
    background-color: #FFC400;
}
.suketto-merit .suketto-demerit-list h3 {
    background-color: #21AAEF;
}
.suketto-merit > div ul {
    border-radius: 0 0 15px 15px;
    margin: 0;
    padding: 20px;
}
.suketto-merit > div ul li {
    list-style: none;
    font-size: 1.8rem;
    font-weight: bold;
    background-repeat: no-repeat;
    background-size: 18px auto;
    background-position: left top 4px;
    padding-left: 24px;
}
.suketto-merit .suketto-merit-list ul {
    background-color: #FFEDB2;
}
.suketto-merit .suketto-demerit-list ul {
    background-color: #E0ECF2;
}
.suketto-merit .suketto-merit-list ul li {
    background-image: url(images/check-square-orange.svg);
}
.suketto-merit .suketto-demerit-list ul li {
    background-image: url(images/check-square-blue.svg);
}
@media (max-width: 768px) {
    .suketto-merit > div {
        width: 100%;
        margin-right: 0px;
        margin-bottom: 20px;
    }
    .suketto-merit > div:last-child {
        margin-bottom: 0;
    }
    .suketto-merit > div ul li {
        font-size: 1.7rem;
    }
    .suketto-merit-message {
        text-align: left;
    }
}
@media (max-width: 575px) {
    .suketto-merit > div ul li {
        font-size: 1.6rem;
    }

}


/* 業務管理システム（4つのポイント） */
.suketto-about {
    margin: 80px auto 80px;
    align-items: stretch !important;
}
.suketto-about:where(.is-layout-flex) {
    gap: 0;
}
.suketto-about > div {
    width: calc((100% - 30px) / 4);
    margin-right: 10px;
}
.suketto-about > div:last-child {
    margin-right: 0;
}
.suketto-about-num {
    font-size: 1.8em;
    position: relative;
    margin-bottom: 25px;
}
.suketto-about-num::after {
    position: absolute;
    border-bottom: 1px solid #2778BE;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    content: "";
    width: 50px;
}
.suketto-about h3 {
    font-size: 2.2rem;
    margin: 0 0 20px;
    line-height: 1.4;
}
.suketto-about figure {
    max-width: 120px;
    margin: 0 auto 20px;
}
@media (max-width: 768px) {
    .suketto-about > div {
        width: 100%;
        margin-right: 0px;
        margin-bottom: 10px;
    }
    .suketto-about > div:last-child {
        margin-bottom: 0;
    }
    .suketto-about-num {
        font-size: 1.6em;
    }
    .suketto-about h3 {
        font-size: 2.0rem;
    }
    
}


/* 業務管理システム（機能紹介） */
.suketto-function-lead {
    font-size: 2.2rem;
    margin: -1em 0 10px;
}
.suketto-function {
    margin: 40px auto 80px;
    align-items: stretch !important;
}
.suketto-function:where(.is-layout-flex) {
    gap: 0;
}
.suketto-function > div {
    width: calc((100% - 40px) / 3);
    margin-right: 20px;
}
.suketto-function > div:last-child {
    margin-right: 0;
}
.suketto-function > div h3 {
    font-size: 2.2rem;
    margin-bottom: 20px;
}
.suketto-function-list {
    margin-bottom: 20px;
}
.suketto-function-list p {
    font-size: 1.4rem;
}
.suketto-function-list ul {
    margin: 0;
    padding: 0;
}
.suketto-function-list ul li {
    list-style: none;
    border-bottom: 1px dotted #999;
    margin: 0;
    padding: 5px 5px 5px 1.25em;
    text-indent: -1.25em;
    font-weight: bold;
}
.suketto-function-list ul li:first-child {
    border-top: 1px dotted #999;
}
.suketto-function-list ul li::before {
    content: "\30fb";
    margin-right: 0.25em;
}
.btn-suketto-function {
    width: 100%;
    margin: 0 auto;
}
.btn-suketto-function a {
    width: 100%;
    font-size: 1.8rem;
    line-height: 1;
    color: #fff;
    background-image: url(images/chevron-right-white.svg);
    background-repeat: no-repeat;
    background-size: 6px auto;
    background-position: right 15px center;
}
.btn-suketto-function a:hover {
    transform: translate(0, 3px);
}
.btn-suketto-function .wp-block-button__link:hover {
    filter: brightness(1.1);
}
@media (max-width: 768px) {
    .suketto-function-lead {
        font-size: 1.8rem;
    }
    .suketto-function > div {
        width: 100%;
        margin-right: 0px;
        margin-bottom: 30px;
    }
    .suketto-function > div:last-child {
        margin-bottom: 0;
    }
    .btn-suketto-function a {
        font-size: 1.6rem;
    }
}



/* 業務管理システム（お客様の声） */
.suketto-voice {
    max-width: 960px;
    margin: 0 auto 80px;
}
.suketto-voice-list {
    width: 100%;
    margin-bottom: 20px;
}
.suketto-voice-list h3 {
    font-size: 1.8rem;
    border-bottom: 1px solid #999999;
    text-indent: -2.5em;
    padding: 0 0 15px 2.5em;
    margin: 0 0 15px;
    line-height: 1.4;
}
.suketto-voice-list h3::before {
    content: "\8ab2\984c";
    font-size: 1.3rem !important;
    color: #fff;
    background-color: #2778BE;
    border-radius: 4px;
    margin-right: 10px;
    padding: 5px;
    line-height: 1;
}
@media (max-width: 575px) {
    .suketto-voice-list h3 {
        font-size: 1.6rem;
    }
    
}

/* 業務管理システム（システム構築の流れ） */
/*
.suketto-flow:where(.is-layout-flex) {
    gap: 0;
}
.suketto-flow {
    align-items: flex-start !important;
}
.suketto-flow > div {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
}
.suketto-flow > div:last-child {
    margin-right: 0;
}
*/
.suketto-flow-img {
    margin-bottom: 30px;
}
.suketto-flow-sp {
    display: none;
}
.suketto-flow-lead {
    font-size: 2.0rem;
}
.suketto-price {
    max-width: 300px;
    margin: 30px auto;
}
.suketto-price-month {
    font-size: 4.8rem;
    color: #2778BE;
    line-height: 1;
}
.suketto-price-month-sub {
    font-size: 1.6rem;
    margin-right: 10px;
}
.suketto-price-subtxt {
    font-size: 1.2rem;
}
@media (max-width: 768px) {
    /*
    .suketto-flow > div {
        width: 100%;
        margin-right: 0px;
        margin-bottom: 20px;
    }
    .suketto-flow > div:last-child {
        margin-bottom: 0;
    }
    */
    .suketto-flow-pc {
        display: none;
    }
    .suketto-flow-sp {
        display: block;
    }
    
    .suketto-flow-lead {
        font-size: 1.8rem;
    }
    .suketto-price-month {
        font-size: 4.0rem;
    }
    .suketto-price-contact {
        text-align: left;
    }
    .suketto-price-contact br {
        display: none;
    }
}
@media (max-width: 575px) {
    .suketto-flow-lead {
        font-size: 1.7rem;
        text-align: left;
    }
    .suketto-flow-lead br {
        display: none;
    }
}


/* 業務管理システム（導入後のサポート） */
.suketto-support-lead {
    margin: -1.5em 0 40px;
}
.suketto-support:where(.is-layout-flex),
.suketto-support-list:where(.is-layout-flex) {
    gap: 0;
}
.suketto-support {
    align-items: stretch !important;
    margin-bottom: 30px;
}
.suketto-support > div {
    width: calc((100% - 10px) / 2);
    margin: 0 10px 10px 0;
}
.suketto-support > div:nth-child(2n) {
    margin-right: 0;
}
.suketto-support-list-wrap {
    border: 3px solid #2778BE;
    border-radius: 15px;
    background-color: #fff;
    padding: 25px 20px 15px;
}
.suketto-support-list {
    align-items: flex-start !important;
}
.suketto-support-list > div:nth-child(1) {
    width: 100px;
    margin-right: 20px;
}
.suketto-support-list > div:nth-child(2) {
    width: calc(100% - 100px - 20px);
}
.suketto-support-list h3 {
    font-size: 2.0rem;
    color: #2778BE;
    margin-bottom: 10px;
}
@media (max-width: 768px) {
    .suketto-support > div {
        width: 100%;
        margin: 0 0 10px 0;
    }
    .suketto-support > div:last-child {
        margin-bottom: 0;
    }
    .suketto-support-list h3 {
        font-size: 1.8rem;
    }
}
@media (max-width: 575px) {
    .suketto-support-list > div:nth-child(1) {
        width: 80px;
        margin-right: 20px;
    }
    .suketto-support-list > div:nth-child(2) {
        width: calc(100% - 80px - 20px);
    }
    .suketto-support-list h3 {
        font-size: 1.7rem;
    }

}

/* 業務管理システム（よくあるご質問） */
.suketto-faq-lead {
    margin: -1.5em 0 60px;
}
.suketto-faq-list {
    max-width: 960px;
    margin: 0 auto 80px;
}
.suketto-faq-list details {
    width: 100%;
    margin-bottom: 10px;
    border: none;
    border-radius: 15px;
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    background-color: #fff;
}
.suketto-faq-list details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1.25em 1.5em 1.25em 3em;
    color: #333333;
    cursor: pointer;
    line-height: 1.5;
}
.suketto-faq-list details summary::-webkit-details-marker {
    display: none;
}
.suketto-faq-list details summary::before,
.suketto-faq-list details p::before {
    position: absolute;
    top: 16px;
    left: 1em;
    font-size: 2.0rem;
    font-weight: bold;
}
.suketto-faq-list details summary::before {
    color: #2778BE;
    content: "Q";
}
.suketto-faq-list details summary::after {
    font: var(--fa-font-solid);
    content: "\f078";
    margin-left: 1em;
    font-size: 1.3rem;
    color: #2778BE;
}
.suketto-faq-list details[open] summary::after {
    transform: rotate(180deg);
}

.suketto-faq-list details p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1.25em 3em 1.25em;
    color: #333;
    transition: transform .5s, opacity .5s;
    border-top: 1px dotted #ccc;
}
.suketto-faq-list details[open] p {
    transform: none;
    opacity: 1;
}
.suketto-faq-list details p::before {
    color: #C9003F;
    content: "A";
}
.suketto-faq-x {
    color: #C9003F;
}
@media (max-width: 768px) {
    .suketto-faq-list {
        margin: 0 auto 40px;
    }    
}



/* 製造業のお客様（業務管理システム） */
.suketto-submv {
    position: relative;
    background-repeat: no-repeat;
    background-position: top right;
    background-size: contain;
    padding-top: 31.25%;
    min-height: 400px;
}
.suketto-seizou {
    background-image: url(images/suketto-seizou-pho01.jpg);
}
.suketto-kenchiku {
    background-image: url(images/suketto-kenchiku-pho01.jpg);
}
.suketto-oroshi {
    background-image: url(images/suketto-oroshi-pho01.jpg);
}
.suketto-logo {
    position: absolute;
    top: 40px;
    left: 40px;
}
.suketto-logo p {
    font-size: 3.2rem;
    color: #005DAB;
    margin-bottom: 5px;
    line-height: 1;
    text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff,
                 -1px 1px 0 #fff, 1px -1px 0 #fff,
                 0px 1px 0 #fff,  0-1px 0 #fff,
                 -1px 0 0 #fff, 1px 0 0 #fff;
}
.suketto-logo .logo-suketto-kun {
    max-width: 560px;
}
@media (max-width: 1280px) {
    .suketto-submv {
        min-height: auto;
    }
}
@media (max-width: 991px) {
    .suketto-logo p {
        font-size: 2.2rem;
    }
    .suketto-logo .logo-suketto-kun {
        max-width: 320px;
    }
}
@media (max-width: 768px) {
    .suketto-submv {
        background-position: top center;
        background-size: cover;
        padding-top: 0;
        height: 240px;
    }
    .suketto-logo {
        top: 60px;
        left: 15px;
    }
}

.suketto-detail-lead {
    margin-bottom: 80px;
}
.suketto-detail-lead h2 {
    font-size: 3.2rem;
    color: #1F2A66;
    line-height: 1.4;
    margin-bottom: 20px;
}
.suketto-detail-lead p {
    font-size: 1.8rem;
    font-weight: bold;
}
@media (max-width: 768px) {
    .suketto-detail-lead h2 {
        font-size: 2.4rem;
    }
    .suketto-detail-lead h2 br {
        display: none;
    }
    .suketto-detail-lead p {
        font-size: 1.7rem;
    }
}
@media (max-width: 575px) {
    .suketto-detail-lead h2 {
        font-size: 1.8rem;
    }
    .suketto-detail-lead p {
        font-size: 1.6rem;
    }
}

.suketto-detail-intro-img {
    margin: 0 auto 40px;
}
.suketto-detail-intro-img:where(.is-layout-flex) {
    gap: 0;
}
.suketto-detail-intro-img figure:nth-child(1) {
    width: 40%;
}
.suketto-detail-intro-img figure:nth-child(2) {
    width: 60%;
}
@media (max-width: 768px) {
    .suketto-detail-intro-img figure:nth-child(1) {
        width: 100%;
        max-width: 320px;
        margin: 0 auto 15px;
    }
    .suketto-detail-intro-img figure:nth-child(2) {
        width: 100%;
    }
}

.suketto-detail-function-list {
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
}
.suketto-detail-function-list li {
    width: calc((100% - 45px) / 4);
    margin: 0 15px 10px 0;
    list-style: none;
    text-indent: -1.25em;
    padding-left: 1.25em;
}
.suketto-detail-function-list li:nth-child(4n) {
    margin-right: 0;
}
.suketto-detail-function-list li::before {
    content: "●";
    font-size: 1.4rem;
    color: #2778BE;
    margin-right: 0.25em;
}
@media (max-width: 768px) {
    .suketto-detail-function-list li {
        width: calc((100% - 15px) / 2);
    }
    .suketto-detail-function-list li:nth-child(2n) {
        margin-right: 0;
    }
}

.suketto-detail-system-lead {
    margin: -1.5em 0 60px;
}
.suketto-detail-system-img {
    align-items: flex-start !important;
}
.suketto-detail-system-img:where(.is-layout-flex) {
    gap: 0;
}
.suketto-detail-system-img figure {
    width: calc((100% - 40px) /2);
    margin: 0 40px 40px 0;
}
.suketto-detail-system-img figure:nth-child(2n) {
    margin-right: 0;
}
.suketto-detail-system-img figure .wp-element-caption {
    font-size: 1.6rem;
}
@media (max-width: 768px) {
    .suketto-detail-system-img figure {
        width: 100%;
        margin: 0 0 30px;
    }
    .suketto-detail-system-img figure:last-child {
        margin-bottom: 0;
    }
    .suketto-detail-system-img figure .wp-element-caption {
        font-size: 1.5rem;
    }
}

.suketto-detail-result {
    max-width: 1440px;
    border: 1px solid #707070;
    border-radius: 15px;
    margin: 80px auto;
    padding: 60px;
}
.suketto-detail-result-list {
    display: flex;
    flex-wrap: wrap;
}
.suketto-detail-result-list li {
    width: calc((100% - 6em) / 4);
    margin: 0 2em 10px 0;
}
.suketto-detail-result-list li:nth-child(4n) {
    margin-right: 0;
}
@media (max-width: 768px) {
    .suketto-detail-result {
        padding: 30px 20px;
    }
    .suketto-detail-result-list li {
        width: calc((100% - 2em) / 2);
    }
    .suketto-detail-result-list li:nth-child(2n) {
        margin-right: 0;
    }
}
@media (max-width: 575px) {
    .suketto-detail-result-list li {
        width: 100%;
        margin: 0 0 5px;
    }
}

.btn-suketto-about-mtb {
    margin-top: 30px;
    margin-bottom: 80px;
}
.btn-suketto-about {
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
}
.btn-suketto-about a {
    width: 100%;
    font-size: 3.2rem;
    line-height: 1;
    padding: 30px 10px;
    color: #fff;
}
.btn-suketto-about a:hover {
    transform: translate(0, 3px);
}
.btn-suketto-about .wp-block-button__link:hover {
    filter: brightness(1.1) saturate(1);
}
@media (max-width: 768px) {
    .btn-suketto-about-mtb {
        margin-top: 20px;
        margin-bottom: 80px;
    }    
    .btn-suketto-about a {
        font-size: 2.6rem;
        padding: 24px 10px;
    }
}
@media (max-width: 575px) {
    .btn-suketto-about a {
        font-size: 2.0rem;
    }
}




/* ホームページ（緑ボタン） */
.hp-btn {
    width: 100%;
    max-width: 320px;
    margin: 0 auto;
}
.hp-btn a {
    width: 100%;
    font-size: 1.8rem;
    line-height: 1;
    padding: 15px 10px;
    color: #fff;
}
.hp-btn a:hover {
    transform: translate(0, 3px);
}
.hp-btn .wp-block-button__link:hover {
    filter: brightness(1.1) saturate(1);
}

/* ホームページ（お問い合わせボタン） */
.btn-hp-contact {
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
}
.btn-hp-contact a {
    width: 100%;
    font-size: 3.2rem;
    line-height: 1;
    color: #fff;
    padding: 30px 10px;
    background-image: url(images/chevron-right-white.svg);
    background-repeat: no-repeat;
    background-size: 10px auto;
    background-position: right 20px center;
}
.btn-hp-contact a:hover {
    transform: translate(0, 3px);
}
.btn-hp-contact .wp-block-button__link:hover {
    filter: brightness(1.1);
}
@media (max-width: 768px) {
    .btn-hp-contact a {
        font-size: 2.6rem;
        padding: 24px 10px;
    }
}
@media (max-width: 575px) {
    .btn-hp-contact a {
        font-size: 2.0rem;
    }
}

.hp-lead {
    margin: -1.5em 0 40px;
}


/* ホームページ（メイン） */
.hp-main {
    position: relative;
    background: url(images/hp-main-illust.svg) no-repeat, linear-gradient(132deg, rgba(255,153,75,1) 0%, rgba(250,192,61,1) 100%);
    background-size: auto 460px, cover;
    background-position: right 40px center, 0;
    height: 500px;
}
.hp-main-txt {
    position: absolute;
    top: 80px;
    left: 40px;
    font-size: 3.6rem;
}
.hp-main-txt span {
    display: inline-block;
    background-color: #fff;
    border-radius: 15px;
    margin-bottom: 15px;
    padding: 24px;
}
@media (max-width: 768px) {
    .hp-main {
        background-size: auto 360px, cover;
        background-position: right 20px center, 0;
        height: 400px;
    }    
    .hp-main-txt {
        top: 60px;
        left: 20px;
        font-size: 2.8rem;
    }
    .hp-main-txt span {
        background-color: rgba(255,255,255,0.9);
        margin-bottom: 10px;
        padding: 18px;
    }
}
@media (max-width: 575px) {
    .hp-main {
        background-position: center center, 0;
    }
    .hp-main-txt {
        position: static;
        font-size: 1.8rem;
        padding-top: 40px;
    }
    .hp-main-txt span {
        margin-bottom: 5px;
        padding: 15px;
    }

}


/* ホームページ（ポイント） */
.hp-point-list {
    position: relative;
    align-items: stretch !important;
    margin-top: -150px;
    margin-bottom: 80px;
}
.hp-point-list:where(.is-layout-flex) {
    gap: 0;
}
.hp-point-list > div {
    width: calc((100% - 60px) / 3);
    box-shadow: 0 6px 6px rgba(0,0,0,0.2);
    margin-right: 30px;
}
.hp-point-list > div:last-child {
    margin-right: 0;
}
.hp-point-list > div h3 {
    margin-bottom: 30px;
    padding: 15px 10px;
    background-color: #fff;
    border-radius: 15px;
    font-size: 2.2rem;
    line-height: 1.4;
}
.hp-point-list > div figure {
    max-width: 150px;
    margin: 0 auto 30px;
}
.hp-point-list > div p {
    margin-bottom: 0;
}
.hp-point-txt {
    font-size: 1.8rem;
}
@media (max-width: 768px) {
    .hp-point-list {
        margin-bottom: 40px;
    }
    .hp-point-list > div {
        width: 100%;
        margin-right: 0px;
        margin-bottom: 30px;
    }
    .hp-point-list > div h3 {
        font-size: 2.0rem;
    }
    .hp-point-list > div figure {
        max-width: 120px;
        margin: 0 auto 30px;
    }
    .hp-point-txt {
        font-size: 1.6rem;
        text-align: left;
    }
}
@media (max-width: 575px) {
    .hp-point-list > div h3 {
        font-size: 1.7rem;
    }

}



/* ホームページ（特長） */
.hp-tokucho-list {
    align-items: stretch !important;
}
.hp-tokucho-list:where(.is-layout-flex) {
    gap: 0;
}
.hp-tokucho-list > div {
    width: calc(100% / 4);
    border-right: 1px solid #999;
}
.hp-tokucho-list > div:first-child {
    border-left: 1px solid #999;
}
.hp-tokucho-list > div figure {
    max-width: 120px;
    margin: 0 auto;
}
.hp-tokucho-list > div figure + h3 {
    margin-top: 1em;
}
.hp-tokucho-list > div h3 {
    font-size: 1.8rem;
    margin-bottom: 15px;
    line-height: 1.3;
}
.hp-tokucho-list > div p {
    margin-bottom: 0;
}
.hp-tokucho-list > div p span {
    font-size: 1.3rem;
}

@media (max-width: 768px) {
    .hp-tokucho-list > div {
        width: calc(100% / 2);
        margin-bottom: 10px;
    }
    .hp-tokucho-list > div:nth-child(3) {
        border-left: 1px solid #999;
    }
    .hp-tokucho-list > div figure {
        max-width: 100px;
    }
}
@media (max-width: 575px) {
    .hp-tokucho-list > div {
        width: 100%;
        margin-bottom: 0;
        border: none;
        border-bottom: 1px solid #999;
    }
    .hp-tokucho-list > div:first-child {
        border-top: 1px solid #999;
    }    
    .hp-tokucho-list > div:first-child,
    .hp-tokucho-list > div:nth-child(3) {
        border-left: none;
    }
}

/* ホームページ（オーダーメイド） */
.hp-ordermade-illust {
    max-width: 480px;
    margin: 0 auto 40px;
}
.hp-ordermade-type h3 {
    font-size: 2.2rem;
    line-height: 1.4;
    margin-bottom: 40px;
}
.hp-ordermade-type-list {
    max-width: 940px;
    margin: 0 auto 40px;
    align-items: stretch !important;
}
.hp-ordermade-type-list:where(.is-layout-flex) {
    gap: 0;
}
.hp-ordermade-type-list > div {
    width: calc((100% - 40px) / 5);
    margin-right: 10px;
    background-color: #fff;
}
.hp-ordermade-type-list > div:last-child {
    margin-right: 0;
}
.hp-ordermade-type-list > div figure {
    max-width: 60px;
    margin: 0 auto 15px;
}
.hp-ordermade-type-list > div p {
    line-height: 1.3;
    margin: 0;
}
@media (max-width: 768px) {
    .hp-ordermade-type h3 {
        font-size: 1.8rem;
    }
    .hp-ordermade-type-list > div {
        width: calc((100% - 20px) / 3);
        margin-bottom: 10px;
    }
    .hp-ordermade-type-list > div:nth-child(3n) {
        margin-right: 0;
    }
    .hp-ordermade-type-list > div p {
        font-size: 1.5rem;
    }
}
@media (max-width: 575px) {
    .hp-ordermade-type h3 {
        font-size: 1.7rem;
    }
    .hp-ordermade-type-list > div {
        width: calc((100% - 10px) / 2);
    }
    .hp-ordermade-type-list > div:nth-child(2n) {
        margin-right: 0px;
    }
    .hp-ordermade-type-list > div:nth-child(3) {
        margin-right: 10px;
    }

}


/* ホームページ制作（制作実績） */
.hp-works-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 0 40px;
    padding: 0;
}
.hp-works-list li {
    width: 23%;
    list-style: none;
    margin: 0;
    border: 1px solid #ccc;
    background-color: #fff;
}
@media (max-width: 768px) {
    .hp-works-list li {
        width: 48%;
        margin: 0 0 4%;
    }
    
}






/* ホームページ制作（制作の流れ） */
.hp-flow-list {
    align-items: flex-start !important;
}
.hp-flow-list:where(.is-layout-flex) {
    gap: 0;
}
.hp-flow-list > div {
    width: calc((100% - 40px) / 3);
    margin: 0 20px 30px 0;
}
.hp-flow-list > div:nth-child(3n) {
    margin-right: 0;
}
.hp-flow-step-num {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.5rem;
    font-weight: bold;
}
.hp-flow-step-num::before,
.hp-flow-step-num::after {
	content: '';
	width: 20px;
	height: 1px;
	background-color: #707070;
}
.hp-flow-step-num::before {
	margin-right: 10px;
}
.hp-flow-step-num::after {
	margin-left: 10px;
}
.hp-flow-icon {
    max-width: 100px;
    margin: 0 auto 15px;
}
.hp-flow-list h3 {
    background-color: #FCE09E;
    border-radius: 10px;
    margin-bottom: 15px;
    padding: 10px;
}
@media (max-width: 768px) {
    .hp-flow-list > div {
        width: calc((100% - 20px) / 2);
        margin: 0 20px 30px 0;
    }
    .hp-flow-list > div:nth-child(2n) {
        margin-right: 0;
    }
    .hp-flow-list > div:nth-child(3) {
        margin-right: 20px;
    }
    
}


/* ホームページ制作（よくあるご質問） */
.hp-top-faq-fukidashi-list {
    margin-bottom: 40px;
}
.hp-top-faq-fukidashi-list:where(.is-layout-flex) {
    gap: 0;
}
.hp-top-faq-fukidashi-list > div {
    width: calc((100% - 30px) / 3);
    margin-right: 15px;
}
.hp-top-faq-fukidashi-list > div:last-child {
    margin-right: 0;
}
.hp-top-faq-fukidashi {
	position: relative;
    background-repeat: no-repeat;
    background-size: auto 100px;
	background-color: #ffffff;
    border-radius: 15px;
    padding: 20px;
}
.hp-top-faq-fukidashi::after {
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 255, 255, 0);
	border-top-color: #ffffff;
	border-width: 10px;
	margin-left: -10px;
}
.hp-top-faq-fukidashi p {
    margin-bottom: 0;
}
.fukidashi1 {
    background-image: url(images/hp-top-faq-fukidashi1.svg);
    background-position: left bottom;
}
.fukidashi2 {
    background-image: url(images/hp-top-faq-fukidashi2.svg);
    background-position: center bottom;
}
.fukidashi3 {
    background-image: url(images/hp-top-faq-fukidashi3.svg);
    background-position: right bottom;
}
@media (max-width: 768px) {
    .hp-top-faq-fukidashi p {
        text-align: left;
    }
    .hp-top-faq-fukidashi p br {
        display: none;
    }
}
@media (max-width: 575px) {
    .hp-top-faq-fukidashi-list > div {
        width: calc((100% - 20px) / 3);
        margin-right: 10px;
    }
    .hp-top-faq-fukidashi {
        padding: 15px;
    }
    
    .hp-top-faq-fukidashi p {
        font-size: 1.5rem;
        line-height: 1.5;
    }
}



/* 制作実績（ホームページ） */
.web-works-list-wrap {
    max-width: 1120px;
    margin: 0 auto;
}
.web-works-list-wrap .pagination {
    display: flex;
    justify-content: center;
}
.web-works-list-wrap .pagination .page-numbers li {
    background: #fff;
}

/*  制作実績（ホームページ） 一覧 */
.web-works-lead {
    text-align: center;
    margin-bottom: 40px;
}
.web-works-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
.web-works-list li {
    width: calc((100% - 60px) / 3);
    margin: 0 30px 60px 0;
    list-style: none;
}
.web-works-list li:nth-child(3n) {
    margin-right: 0;
}
.web-works-list li a {
    text-decoration: none !important;
}
.web-works-list .web-works-list-img {
    border: 1px solid #ccc;
    background-color: #fff;
}
.web-works-list .web-works-list-title {
    font-weight: bold;
    line-height: 1.3;
    color: #1F2A66;
    margin-top: 10px;
}
.web-works-list-wrap .pagination {
    margin-bottom: 40px;
}
.web-works-list-wrap .hp-btn a {
    display: block;
    background-color: #53B5B0;
    text-align: center;
    border-radius: 40px;
}
.web-works-list-wrap .hp-btn a:hover {
    text-decoration: none;
    filter: brightness(1.1);
}
@media (max-width: 768px) {
    .web-works-list li {
        width: calc((100% - 30px) / 2);
    }
    .web-works-list li:nth-child(3n) {
        margin-right: 30px;
    }
    .web-works-list li:nth-child(2n) {
        margin-right: 0px;
    }
    .web-works-list .web-works-list-title {
        font-size: 1.5rem;
    }
}
@media (max-width: 575px) {
    .web-works-list li {
        width: 100%;
        max-width: 320px;
        margin: 0 auto 60px;
    }
    .web-works-list li:nth-child(3n),
    .web-works-list li:nth-child(2n) {
        margin-right: auto;
    }
}

/*  制作実績（ホームページ） 記事 */
.web-works-wrap {
    max-width: 960px;
    margin: 0 auto;
}
.web-works-title {
    font-size: 1.8rem;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
    margin-bottom: 20px;
    padding: 15px;
    border-radius: 15px;
    background-color: #FAC03D;
}
.web-works-point {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 0;
}
.web-works-point li {
    list-style: none;
    font-size: 1.1rem;
    line-height: 1.1;
    margin: 0 5px 5px 0;
    padding: 5px;
    background-color: #fff;
    border: 1px solid #999;
    border-radius: 3px;
}
.web-works-description {
    margin-top: 20px;
}
.web-works-img-pc,
.web-works-img-sp li {
    border: 1px solid #ccc;
    background-color: #fff;
}
.web-works-img-pc {
    margin: 40px auto 0;
}
.web-works-img-sp {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    max-width: 800px;
    margin: 40px auto 0;
    padding: 0;
}
.web-works-img-sp li {
    list-style: none;
    width: 46.875%;
    margin-right: 6.25%;
}
.web-works-img-sp li:last-child {
    margin-right: 0;
}
.web-works-subtxt {
    font-size: 1.4rem;
    text-align: center;
    margin-top: 40px;
    margin-bottom: 40px;
}
.web-works-wrap .hp-btn a {
    display: block;
    background-color: #53B5B0;
    text-align: center;
    border-radius: 40px;
}
.web-works-wrap .hp-btn a:hover {
    text-decoration: none;
    filter: brightness(1.1);
}
@media (max-width: 768px) {
    .web-works-title {
        font-size: 1.7rem;
    }
}
@media (max-width: 575px) {
    .web-works-img-sp li {
        width: auto;
        margin-right: 0;
        margin-bottom: 40px;
    }
}





/* よくあるご質問（ホームページ制作） */
.hp-faq h2 {
    font-size: 2.4rem;
    line-height: 1.3;
    margin-bottom: 40px;
    color: #FF5E3D;
}
.hp-faq-img {
    max-width: 140px;
    margin: 0 auto 40px;
}
.hp-faq-list {
    max-width: 960px;
    margin: 0 auto 80px;
}
.hp-faq-list details {
    width: 100%;
    margin-bottom: 10px;
    border: none;
    border-radius: 15px;
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    background-color: #fff;
}
.hp-faq-list details summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1.25em 1.0em 1.25em 3em;
    color: #333333;
    cursor: pointer;
    line-height: 1.5;
}
.hp-faq-list details summary::-webkit-details-marker {
    display: none;
}
.hp-faq-list details summary::before,
.hp-faq-list details p::before {
    position: absolute;
    top: 16px;
    left: 1em;
    font-size: 2.0rem;
    font-weight: bold;
}
.hp-faq-list details summary::before {
    color: #2778BE;
    content: "Q";
}
.hp-faq-list details summary::after {
    font: var(--fa-font-solid);
    content: "\f078";
    margin-left: 1em;
    font-size: 1.3rem;
    color: #2778BE;
}
.hp-faq-list details[open] summary::after {
    transform: rotate(180deg);
}
.hp-faq-list details p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 1.25em 3em 1.25em;
    color: #333;
    transition: transform .5s, opacity .5s;
    border-top: 1px dotted #ccc;
}
.hp-faq-list details[open] p {
    transform: none;
    opacity: 1;
}
.hp-faq-list details p::before {
    color: #C9003F;
    content: "A";
}
@media (max-width: 768px) {
    .hp-faq h2 {
        font-size: 2.0rem;
        margin-bottom: 20px;
    }
    .hp-faq-lead {
        text-align: left;
    }
    .hp-faq-list {
        margin: 0 auto 40px;
    }    
}







/* ダウンロード */
.download-lead {
    margin-bottom: 70px;
}
.download-subtxt {
    margin-top: -2em;
}
.download-list {
    max-width: 840px;
    margin: 0 auto;
    flex-wrap: wrap !important;
}
.download-list:where(.is-layout-flex) {
    gap: 0;
}
.download-list > div {
    width: calc((100% - 40px) /2);
    margin-right: 40px;
    margin-bottom: 40px;
    border: 1px solid #999;
    border-radius: 15px;
    padding: 20px;
}
.download-list > div:nth-child(2n),
.download-list > div:last-child {
    margin-right: 0;
}
.download-list .download-icon {
    max-width: 80px;
    margin: 0 auto;
}
.download-btn {
    width: 100%;
}
.download-btn a {
    display: block;
    color: #fff;
    border-radius: 40px !important;
    font-size: 1.7rem;
    line-height: 1 !important;
    max-width: 300px;
    margin: 0 auto;
}
.download-filesize {
    font-size: 1.4rem;
}
@media (max-width: 768px) {
    .download-subtxt {
        margin-top: -1em;
    }
    .download-list > div {
        width: 100%;
        margin-right: 0;
    }
    
}



/* OA機器 */
.oa-lead {
    margin-bottom: 70px;
}
.oa-info {
    flex-wrap: wrap !important;
    align-items: flex-start !important;
}
.oa-info:where(.is-layout-flex) {
    gap: 0;
}
.oa-info > figure {
    width: 28%;
}
.oa-info > div {
    width: calc(100% - 28% - 40px);
    margin-left: 40px;
}
.oa-info > div .headline01 {
    margin-bottom: 0.5em;
}
.oa-table {
    width: 100%;
}
.oa-table td {
    padding: 10px;
    font-size: 1.6rem;
    border: 1px solid #999;
}
.oa-table td:nth-child(1) {
    background-color: #2778BE;
    color: #fff;
    width: 10em;
}
@media (max-width: 991px) {
    .oa-info > figure {
        width: 100%;
        max-width: 280px;
        margin: 0 auto 30px;
    }
    .oa-info > div {
        width: 100%;
        margin-left: 0px;
    }
}
@media (max-width: 768px) {
    .oa-table {
        border-bottom: 1px solid #999;
    }
    .oa-table td {
        display: block;
        width: 100%;
        border-bottom: none;
    }
    .oa-table td:nth-child(1) {
        width: 100%;
    }
}



/* お問い合わせ */
.contact-lead {
    color: #1F2A66;
    font-size: 1.8rem;
}
.contact-info {
    margin: 60px auto;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}
.contact-info:where(.is-layout-flex) {
    gap: 0;
}
.contact-info > div {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
    border: 1px solid #1F2A66;
    border-radius: 15px;
    padding: 25px 15px 20px;
}
.contact-info > div:last-child {
    margin-right: 0;
}
.contact-info > div figure {
    max-width: 40px;
}
.contact-info > div h3 {
    font-size: 1.8rem;
    color: #1F2A66;
    margin-bottom: 1em;
    line-height: 1.3;
}
.contact-telnumber {
    font-size: 4.0rem;
    line-height: 1;
    margin-bottom: 15px;
}
.contact-telnumber a {
    color: #1F2A66;
    text-decoration: none;
}
@media (max-width: 768px) {
    .contact-lead {
        font-size: 1.7rem;
        text-align: left;
    }    
    .contact-info > div {
        width: 100%;
        margin-right: 0;
        margin-bottom: 20px;
        padding: 15px 10px 10px;
    }
    .contact-info > div:last-child {
        margin-bottom: 0;
    }
    .contact-telnumber {
        font-size: 3.2rem;
    }
    
}

.contact-privacypolicy {
    background-color: #f6f6f6;
	height: 240px;
	overflow: auto;
	overflow-y: scroll;
	overflow-x: hidden;
	margin: 15px auto;
	padding: 20px;
}
.contact-privacypolicy h3 {
    font-weight: bold;
    text-align: center;
    color: #1F2A66;
    margin-bottom: 1.5em;
}

.mailform-inner {
	max-width: 960px;
	margin: 0 auto;
}
.mailform-area table {
	width: 100%;
    margin-bottom: 40px;
}
.mailform-area:where(:not(.wp-block-table))>table {
    border: none !important;
}
.mailform-area table tr {
	border-bottom: 1px dotted #ccc;
}
.mailform-area table th p,
.mailform-area table td p {
    margin: 0;
}
.mailform-area table th,
.mailform-area table td {
	font-size: 1.6rem;
	padding: 20px 0;
    border: none;
}
.mailform-area table th {
	width: 240px;
	font-weight: bold;
	color: #1F2A66;
}
.contact-required {
	margin-right: 10px;
	font-size: 1.0rem;
	color: #fff;
	background: #FF7474;
	padding: 2px 6px;
	border-radius: 3px;
}
.contact-optionaly {
	margin-right: 10px;
	font-size: 1.0rem;
	color: #fff;
	background: #999;
	padding: 2px 6px;
	border-radius: 3px;
}
.mailform-area .input01,
.mailform-area .input02 {
	width: 100%;
    margin: 0;
	padding: 6px 8px;
	font-size: 1.6rem;
    font-family: '游ゴシック Medium','Yu Gothic Medium','YuGothic M','游ゴシック','Yu Gothic','游ゴシック体',YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "M+ 1p", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.mailform-area .contact-btn {
    text-align: center;
    max-width: 300px;
    margin: 0 auto;
}
.mailform-area .contact-btn input {
    width: 100%;
    font-size: 1.7rem;
    font-family: '游ゴシック Medium','Yu Gothic Medium','YuGothic M','游ゴシック','Yu Gothic','游ゴシック体',YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "M+ 1p", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-weight: bold;
    line-height: 1;
    border: none;
    border-radius: 40px;
    padding: 15px 10px;
}
.wpcf7-spinner {
    display: none !important;
}
@media (max-width: 768px) {
    .mailform-area table th,
	.mailform-area table td {
		display: block;
		width: 100%;
		padding: 15px 0;
	}
	.mailform-area table th {
		padding-bottom: 0;
	}
}

.contact-privacy-mark:where(.is-layout-flex) {
    gap: 0;
}
.contact-privacy-mark {
    margin-top: 40px;
}
.contact-privacy-mark > figure {
    width: 80px;
    margin-right: 20px;
}
.contact-privacy-mark > div {
    width: calc(100% - 80px - 20px);
}
.contact-privacy-mark > div p {
    font-size: 1.4rem;
    margin: 0;
}
.contact-thanks-img {
    max-width: 400px;
    margin: 40px auto 0;
}
.download-check-list .wpcf7-list-item {
    display: block;
}
.download-check {
    display: none;
}



/* 個人情報保護方針 */
.p-mark {
    max-width: 640px;
    margin: 40px auto;
    padding: 30px 15px;
    border: 1px solid #999;
}
.p-mark img {
    max-width: 180px;
    margin-bottom: 20px;
}
.privacy-h3 {
    font-size: 2.0rem;
    margin-bottom: 1em;
    line-height: 1.4;
    text-indent: -1em;
    padding-left: 1em;
}
.privacy-h3::before {
    content: "■";
    color: #2778BE;
}
.privacy-h4 {
    font-size: 1.8rem;
    margin-bottom: 1em;
    line-height: 1.4;
    text-indent: -1.5em;
    padding-left: 1.5em;
}
.privacy-indent {
    padding-left: 1.5em;
}
.privacy-table {
    width: 100%;
}
.privacy-table td {
    padding: 10px;
    font-size: 1.6rem;
    border: 1px solid #999;
}
.privacy-table td:nth-child(1) {
    background-color: #2778BE;
    color: #fff;
    width: 260px;
}
.privacy-list-style-disc {
    list-style: disc;
}
@media (max-width: 768px) {
    .privacy-h3 {
        font-size: 1.7rem;
    }
    .privacy-h4 {
        font-size: 1.6rem;
    }
    .privacy-table {
        border-bottom: 1px solid #999;
    }
    .privacy-table td {
        display: block;
        width: 100%;
        border-bottom: none;
    }
    .privacy-table td:nth-child(1) {
        width: 100%;
    }
    
}


/* お知らせ（一覧） */
.blog .site-body,
.category .site-body {
    background-color: #fff;
    padding: 80px 0;
}
.blog a.btn,
.category a.btn {
    color: #fff;
}
.category .archive-header-title {
    font-size: 2.0rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
    margin-bottom: 1.5em;
    color: #1B295E;
}


/* お知らせ（記事） */
.single-post .site-body {
    background: rgb(224,236,242);
    background: linear-gradient(180deg, rgba(224,236,242,1) 50%, rgba(255,255,255,0) 100%);
    padding: 80px 0;
}
.single-post .entry-full {
    width: 100%;
    margin: 0 auto 40px;
    border-radius: 15px;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,255,0) 100%);
    padding: 60px;
}
.single-post h1.entry-title {
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.4;
    border-bottom: 3px solid #999;
    padding-bottom: 10px;
    margin-bottom: 10px;
    position: relative;
}
.single-post h1.entry-title::after {
    content: '';
    background-color: #2778BE;
    width: 80px;
    height: 3px;
    position: absolute;
    bottom: -3px;
    left: 0;
    z-index: 1;
}
.single-post .entry-meta {
    font-size: 1.5rem;
}
.single-post .entry-meta-item-updated,
.single-post .entry-meta-item-author {
    display: none;
}
.single-post .entry-footer {
    margin-top: 60px;
}
.single-post .entry-meta-data-list dt {
    background-color: #1b295e;
}
.card-intext .card-intext-inner .vk_post_body {
    background-color: rgba(27, 41, 94, 0.8);
}
@media (max-width: 768px) {
    .single-post .entry-full {
        padding: 20px;
    }
    .single-post h1.entry-title {
        font-size: 1.8rem;
    }
    .single-post .entry-meta {
        font-size: 1.4rem;
    }
}
@media (max-width: 575px) {
    .single-post h1.entry-title {
        font-size: 1.7rem;
    }

}


/* 404ページ */
.error404 .site-body {
    background: rgb(224,236,242);
    background: linear-gradient(180deg, rgba(224,236,242,1) 50%, rgba(255,255,255,0) 100%);
    padding: 80px 15px;
}
.error404 .site-body-container {
    width: 100%;
    margin: 0 auto 40px;
    border-radius: 15px;
    background: rgb(255,255,255);
    padding: 60px;
}
.error404 .main-section-no-posts p {
    text-align: center;
}
@media (max-width: 768px) {
    .error404 .site-body-container {
        padding: 30px 15px;
    }
    
}
