@charset "UTF-8";

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;
    vertical-align:baseline;
    background:transparent;
    box-sizing: border-box;
}

body {
    font-family: kozuka-gothic-pro, sans-serif;
    color: #333333;
    position: relative;
    font-weight: 100;
    font-style: normal;
    text-align: justify;
}

img{
    width: 100%;
    display: block;
}

li{
    list-style: none;
}

a{
    text-decoration: none;
    color: #222222;
    box-sizing: border-box;
}

button {
    padding: 0;
    background-color: transparent;
    border: none;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
  }

/*---------------------------------------
    表示非表示共通設定
---------------------------------------*/
.sp-device, .sp-device2, .sp-device3 {
    display: none;
}
.top-br-block, .consultation-br-block {
    display: none;
}
.top-br-block {
    display: block;
}

/*---------------------------------------
    共通
---------------------------------------*/
/* header */
.header-wrapper {
    font-family: 'Noto Serif JP', serif;
    position: fixed;
    display: flex;
    width: 100%;
    height: 90px;
    top: 0;
    z-index: 100;
    background-color: #ffffff;
}
.header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 auto;
    padding: 16px 0;
    width: 85%;
    max-width: 1350px;
}
.header-nav-list {
    display: flex;
    gap: clamp(20px, 3.2vw, 42px);
}

/* footer */
.footer-outer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-family: 'Noto Serif JP', serif;
}
.footer-text1 {
    text-align: center;
    font-size: 20px;
    margin-bottom: 20px;
}
.footer-nav-list {
    display: flex;
    align-items: center;
    gap: clamp(20px, 2.4vw, 42px);
}
.footer-inner {
    max-width: 1350px;
    width: 90%;
    margin: auto;
    padding: 30px 0 50px 0;
    border-top: 1px solid #726f6f; 
}

/* wrapper */
.top-wrapper, .section-wrapper {
    max-width: 1350px;
    width: 85%;
    margin: auto;
}
.section-wrapper {
    padding: 200px 0 120px 0;
}
/* 見出し */
h1, h2 {
    letter-spacing: 0.05em;
    line-height: 1.5;
}
h3, h4 {
    line-height: 1.5;
}
p {
    letter-spacing: 0.05em;
    line-height: 1.75;
}
/* h1 */
.section-heading1 {
    font-family: 'Noto Serif JP', serif;
    font-size: 34px;
    font-weight: 400;
    margin-bottom: 80px;
}
.access-heading1 {
    text-align: center;
    font-weight: 400;
    margin-bottom: 40px;
}
/* h2 */
.top-heading2 {
    font-size: 34px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    margin-bottom: 40px;
    letter-spacing: normal;
}
.section-heading2 {
    font-family: 'Noto Serif JP', serif;
    font-size: 42px;
    font-weight: 400;
    margin-bottom: 40px;
}
.service-heading2 {
    text-align: center;
    margin-bottom: 40px;
}
/* h3 */
.top-heading3 {
    font-size: 42px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    margin-bottom: 40px;
    text-align: left;
}
.service-heading3, .consultation-heading3 {
    font-size: 34px;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 40px;
}
.about-heading3 {
    font-size: 34px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 400;
    margin-bottom: 40px;
}
/* h4 */
.service-heading4, .consultation-heading4 {
    font-size: 28px;
    font-weight: 700;
    font-family: 'Noto Serif JP', serif;
    background-color: #fcf1fb;
    padding: 40px;
    border-radius: 15px;
}
/* ボタン */
.link-btn {
    display: inline-block;
    text-align: center;
    line-height: 1;
    font-size: 20px;
    letter-spacing: 0.1em;
    padding: 25px;
    max-width: 320px;
    width: 100%;
    background-color: #ffd1fb;
    border-radius: 10px;
}
.link-btn:hover {
    background-color: #fcf1fb;
}
/* section */
.section-description-content {
    text-align: center;
    margin-bottom: 200px;
}
.section-description-content.access-description-content {
    margin: 0;
}
.section-description-lead {
    font-size: 20px;
    color: #726f6f;
}
.section-description-lead2 {
    font-size: 24px;
    padding: 40px 0 0 0;
    line-height: 1.5;
}
.section-description-lead3 {
    padding-top: 20px;
    font-size: 20px;
}
/* ロゴ */
.nav-list li a {
    font-size: 18px;
    color: #626262;
    white-space: nowrap;
}
.nav-list li a:hover {
    opacity: 0.6;
    transition: 0.6s;
}
.logo a {
    font-family: 'Noto Serif JP', serif;
    color: #626262;
    font-size: clamp(20px, 1.8vw, 24px);
    line-height: 1.2;
    white-space: nowrap;
}
.logo a:hover {
    color: #999999;
}
.logo span {
    font-size: 14px;
}
.logo {
    text-align: center;
}

/* ========================================== 
    トップページ
========================================== */
/* fv */
.fv-slider-sp {
    display: none;
}
.fv {
    content: '';
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: calc(90vh - 90px);
    margin-top: 90px;
}
.fv-heading1 {
    font-size: 34px;
    position: absolute;
    right: 7.5%;
    bottom: 200px;
    z-index: 10;
    color: #ffffff;
    font-weight: 100;
    text-shadow: rgba(0, 0, 0, 0.16) 0px 0px 18px;
    font-family: 'Noto Serif JP', serif;
    letter-spacing: 0.12em;
}
.swiper {
    width: 90%;
    height: 100%;
}
.swiper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@keyframes zoomUp {
    0% {
      transform: scale(1);
    }
    100% {
      transform: scale(1.15);
    }
}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
    animation: zoomUp 10s linear 0s normal both;
}
.swiper-slide img {
    height: auto;
    width: 100%;
    height: 100%;
}

/* ページネーションのサイズと色 */
.swiper-pagination-bullet {
    background-color: #e8e8e8;
    width: 10px;
    height: 10px;
    opacity: 1;
}
.swiper-pagination-bullet-active{
    background-color: #ffc0cb;
}
.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
    width: auto;
    left: 50%;
    bottom: 20px;
    transform: translateX(-50%);
}
.swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet{
    margin: 0 10px;
}
.swiper-img {
    height: 100%;
}

/*スクロールダウン*/
.scrolldown2{
    position:absolute;
	bottom: -65px;
	left:50%;
    transform: translateX(-50%);
    z-index: 10;
}
/*Scrollテキストの描写*/
.scrolldown2 span{
    /*描画位置*/
    position: absolute;
    left:10px;
    bottom:10px;
    /*テキストの形状*/
    color: #333333;
    font-size: 12px;
    letter-spacing: 0.05em;
    /*縦書き設定*/
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode: vertical-rl;
    writing-mode: vertical-rl;
}
/* 丸の描写 */
.scrolldown2:before {
    content: "";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:-4px;
    /*丸の形状*/
    width:10px;
    height:10px;
    border-radius: 50%;
    background: #333333;
    /*丸の動き1.6秒かけて透過し、永遠にループ*/
    animation:
    circlemove 1.6s ease-in-out infinite,
    cirlemovehide 1.6s ease-out infinite;
}
/*下からの距離が変化して丸の全体が上から下に動く*/
@keyframes circlemove{
    0%{bottom:45px;}
    100%{bottom:-5px;}
}
/*上から下にかけて丸が透過→不透明→透過する*/
@keyframes cirlemovehide{
    0%{opacity:0}
    50%{opacity:1;}
    80%{opacity:0.9;}
    100%{opacity:0;}
}
/* 線の描写 */
.scrolldown2:after{
    content:"";
    /*描画位置*/
    position: absolute;
    bottom:0;
    left:0;
    /*線の形状*/
    width:2px;
    height: 50px;
    background: #333333;
}

/* top-about */
.container{
    position: relative;
    top: 100vh;
    z-index:10;
    padding-top: 200px;
    background-color: #ffffff;
}
.top-about {
    text-align: center;
    margin-bottom: 200px;
}
.top-about h1 {
    font-size: 42px;
    font-weight: 400;
    font-family: 'Noto Serif JP', serif;
    margin-bottom: 40px;
}
.top-about p {
    font-size: 20px;
    color: #726f6f;
    margin-bottom: 60px;
}

/* top-service */
.top-service {
    margin-bottom: 200px;
}
.top-service-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5%;
}
.top-service-img {
    width: 50%;
    max-width: 675px;
    height: auto;
}
.top-service-text {
    padding: 20px 0 0 0;
    margin-left: -80px;
    white-space: nowrap;
}
.top-service-text p {
    font-size: 20px;
    font-weight: 400;
    color: #726f6f;
    margin-bottom: 30px;
}

/* top-access */
.top-access {
    margin-bottom: 120px;
}
.top-access-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    gap: 5%;
}
.top-access-map {
    width: 50%;
}
.top-access-text {
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 10px;
}
.top-access-tel {
    font-size: 18px;
    margin-bottom: 60px;
}

/* ========================================== 
    博美について
========================================== */
.about-description {
    margin-bottom: 250px;
}
.about-description-area {
    display: flex;
    gap: 8%;
    align-items: center;
    justify-content: flex-start;
    padding: 0 10%;
    margin-bottom: 200px;
}
.about-description-text {
    width: 50%;
    font-size: 20px;
    line-height: 1.8;
}
.about-description-img {
    display: flex;
    flex-direction: column;
    gap: 25px;
    width: 50%;
}
.about-speech-img {
    position: relative;
}
.about-speech-outer {
    position: absolute;
    bottom: 0;
    right: 40px;
    background-color: #ffffff;
    max-width: 420px;
    padding: 20px 30px;
}
.about-speech-name {
    font-size: 32px;
    line-height: 1.15;
    margin-bottom: 20px;
}
.about-speech-name span {
    font-size: 16px;
}
.about-speech-lead {
    font-size: 16px;
    line-height: 1.2;
}
.about-speech-text {
    padding: 40px 10%;
    font-size: 20px;
    line-height: 1.8;
}
.about-speech-autograph {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    gap: 25px;
    padding-right: 10%;
}
.img-autograph1 {
    width: 10%;
    object-fit: contain;
}
.img-autograph2 {
    width: 25%;
    object-fit: contain;
}
.about-speech {
    margin-bottom: 200px;
}
.about-origin-text1 {
    font-size: 20px;
    margin-bottom: 80px;
    line-height: 1.8;
}
.about-origin-text2 {
    font-size: 28px;
    margin-bottom: 20px;
}
.about-origin-text2 span {
    font-size: 42px;
    font-family: 'Noto Serif JP', serif;
}
.about-origin-text3 {
    font-size: 20px;
    line-height: 1.8;
    margin-bottom: 100px;
}
.about-origin-wrapper {
    padding: 0 10%;
}
.about-link-btn {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 420px;
    height: 165px;
    align-items: center;
    background-color: #ffd1fb;
    border-radius: 10px;
    margin: auto;
}
.about-link-btn1 {
    font-size: 28px;
    margin-bottom: 20px;
    font-family: 'Noto Serif JP', serif;
}
.about-link-btn2 {
    font-size: 18px;
}
.about-link-btn2::before {
    content: '\025b6';
}
.about-link-btn:hover {
    background-color: #fcf1fb;
}

/* ========================================== 
    博美のこだわり
========================================== */
.service-concept {
    margin-bottom: 200px;
}
.service-concept-wrapper {
    padding: 0 10%;
}
.service-concept-text, .consultation-support-text {
    font-size: 20px;
    padding: 20px 0 50px 0;
    text-align: justify;
    line-height: 1.5;
}
.service-content-outer1, .service-content-outer2, .service-content-outer3 {
    display: flex;
    position: relative;
    margin-bottom: 60px;
}
.service-content-outer2 {
    display: flex;
    flex-direction: row-reverse;
}
.service-content-outer1 img {
    width: 70%;
}
.service-content-outer1 p, .service-content-outer2 p, .service-content-outer3 p {
    font-size: clamp(20px, 2.5vw, 34px);
    font-family: 'Noto Serif JP', serif;
    position: absolute;
    font-weight: 700;
    top: 50%;
    transform: translateY(-50%);
    white-space: nowrap;
    z-index: 999;
}
.service-content-outer1 p {
    left: 65%;
}
.service-content-outer2 p {
    left: 5%;
}
.service-content-outer3 p {
    right: 0;
}
.img-service1 {
    margin-bottom: 60px;
}
.service-content-outer1 img, .service-content-outer2 img, .service-content-outer3 img {
    width: 60vw;
}
.service-content-outer1 p::before, .service-content-outer2 p::before, .service-content-outer3 p::before {
    content: "";
    background-color: #ffffff;
    width: 100%;
    height: 100%;
    display: block;
    z-index: -1;
    position: absolute;
    filter: blur(6px);
}
.service-content {
    margin-bottom: 200px;
}
.service-info-text, .consultation-info-text {
    padding: 0 10% 0 10%;
    font-size: 20px;
}
.service-info-outer, .consultation-info-outer {
    margin-bottom: 100px;
}
.section-info-phone {
    font-size: 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 420px;
    height: 165px;
    align-items: center;
    background-color: #ffd1fb;
    border-radius: 10px;
    margin: auto;
    letter-spacing: 0.05em;
    font-weight: 700;
    margin-bottom: 40px;
    padding: 10px;
}
.section-info-phone:hover {
    background-color: #fcf1fb;
}
.section-info-fax {
    font-size: 20px;
    text-align: center;
    margin-bottom: 40px;
}
.section-info-asterisk {
    font-size: 20px;
    text-align: center;
}
.service-content .service-heading3 {
    text-align: center;
}

/* ========================================== 
    地図と連絡先
========================================== */
.access-content iframe {
    width: 100%;
    height: 40vw;
}
.access-content-lead1 {
    font-size: 20px;
    margin-bottom: 40px;
}
.access-content-lead2 {
    font-size: 28px;
    line-height: 1.5;
    font-weight: 500;
    text-align: center;
}
.access-content-img {
    display: flex;
    padding: 0 10%;
    gap: 8%;
    margin: 0 auto 100px;
}
.access-content-img img {
    width: 46%;
}
.access-content-lead-inner {
    display: inline-block;
    text-align: left;
}
.access-content-lead {
    text-align: center;
    padding: 100px 10% 100px;
}
.top-access-logo {
    font-size: 28px;
    line-height: 1.2;
    margin-bottom: 40px;
    letter-spacing: normal;
}
.top-access-logo span {
    font-size: 16px;
}

/* ========================================== 
    ライフサポート博美
========================================== */
.section-heading1 span {
    font-size: 16px;
}
.consultation-heading1 {
    line-height: 1.2;
}

.consultation-support-outer {
    padding: 0 10%;
}
.consultation-content-support {
    margin-bottom: 100px;
}
.consultation-support-general {
    margin-bottom: 200px;
}
.consultation-content-img {
    display: flex;
    gap: 5%;
    margin-bottom: 200px;
}
.consultation-img-outer {
    width: 50%;
}
.consultation-img-heading4 {
    font-size: 28px;
    padding: 40px 0 0 0;
    font-weight: 400;
}
.consultation-img-text {
    font-size: 18px;
}

/* ========================================== 
    求人募集
========================================== */
.recruit-content-img {
    display: flex;
    padding: 0 10%;
    gap: 8%;
    justify-content: space-between;
    margin-bottom: 200px;
}
.recruit-content-img1, .recruit-content-img2 {
    width: 50%;
}
.recruit-content-table {
    border: 1px solid #726f6f;
    border-collapse: collapse;
    margin-bottom: 100px;
    width: 100%;
}
.recruit-content-table th {
    border: 1px solid #726f6f;
    background-color: #fcf1fb;
    width: 20%;
    vertical-align: middle;
    text-align: center;
    padding: 20px;
    font-size: 20px;
}
.recruit-content-table td {
    border: 1px solid #726f6f;
    padding: 40px 20px;
    font-size: 20px;
}
.recruit-table-list {
    display: flex;
    gap: 5%;
}
.recruit-table-bracket {
    display: inline-block;
    padding: 0 20px;
    position: relative;
}
.recruit-table-bracket::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 20px;
    height: 100%;
    border-top: 1px solid #555;
    border-left: 1px solid #555;
    border-bottom: 1px solid #555;
}
.recruit-table-bracket::after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 20px;
    height: 100%;
    border-top: 1px solid #555;
    border-right: 1px solid #555;
    border-bottom: 1px solid #555;
}
.recruit-content .service-info-outer .service-info-text {
    padding: 0;
}
.item-nowrap {
    white-space: nowrap;
}

/* =============================================
    spサイズここから  1024px以下の幅に適用される
============================================= */
@media screen and (max-width: 1024px) {
    /* 共通 */
    .pc-device, .sp-device2, .sp-device3 {
        display: none;
    }
    .sp-device {
        display: block;
    }
    .br-block {
        display: ;
    }

    h1, h2 {
        letter-spacing: normal;
        line-height: 1.5;
    }
    h3, h4 {
        line-height: 1.5;
    }
    p {
        letter-spacing: normal;
    }

    .section-heading1 {
        font-size: 24px;
        margin-bottom: 40px;
    }
    .section-heading2 {
        font-size: 26px;
        margin-bottom: 20px;
    }
    .section-description-lead {
        font-size: 16px;
    }
    .section-description-lead2 {
        font-size: 16px;
    }
    .section-description-content {
        margin-bottom: 100px;
        padding: 0 8%;
    }
    
    .service-heading3, .consultation-heading3 {
        font-size: 24px;
        margin-bottom: 20px;
        text-align: center;
    }
    .service-heading4, .consultation-heading4 {
        font-size: 20px;
        padding: 25px;   
    }
  
    /* ハンバーガーメニュー */
    .header-nav {
        position: fixed;
        z-index: 999;
        top: 0;
        right: -120%;
        width: 60%;
        height: 100vh;
        background-color: #ffffff;
        transition: all 0.6s;    
    }
    /* アクティブクラスがついたら位置を０に */
    .header-nav.panelactive {
        right: 0;
    }
    /* ナビゲーション */
    .header-nav-list {
        padding: 56px 25px 56px;
        flex-direction: column;
    }
    /* リストのレイアウト */
    .header-nav li a {
        display: block;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 18px;
        padding: 15px 0;
    }
    .header-nav li a:hover {
        color: #999999;
    }
    /* ボタン */

    .openbtn span:nth-of-type(1) {
        top: 6px;
    }
    .openbtn span:nth-of-type(2) {
        top: 14px;
    }
    .openbtn span:nth-of-type(3) {
        top: 22px;
    }
    .openbtn-menu::before {
        content: "メニュー";
        position: absolute;
        left: 50%;
        transform: translate(-50%);
        bottom: 0;
        text-transform: uppercase;
        font-size: 12px;
        letter-spacing: 0.05em;
        white-space: nowrap;
        color: #626262;
    }
    .openbtn.active .openbtn-menu::before {
        content:"とじる";
    }
    .openbtn span:not(.openbtn-menu) {
        display: inline-block;
        transition: all .4s;
        position: absolute;
        left: 0;
        height: 2px;
        border-radius: 2px;
        background-color: #626262;
        width: 100%;
    }
    .header-nav-list {
        gap: 10px;
    }

    .logo {
        text-align: center;
        margin: auto;
    }
    .logo a {
        font-size: 18px;
    }
    .logo a span {
        font-size: 12px;
    }
    .openbtn {
        position: relative;
        z-index: 9999;
        cursor: pointer;
        width: 45px;
        height: 45px;
    }
    .openbtn.active span:nth-of-type(1) {
        top: 6px;
        transform: translateY(6px) rotate(-30deg);
    }
    .openbtn.active span:nth-of-type(2) {
        opacity: 0;
    }
    .openbtn.active span:nth-of-type(3) {
        top: 6px;
        transform: translateY(6px) rotate(30deg);
    }
    .header-wrapper {
        height: 56px;
    }
    .header-inner {
        width: 90%;
        padding: 0;  
    }
    .header-logo a {
        font-size: 18px;
    }
    .header-logo span {
        font-size: 12px;
    }

    /* フッター */
    .footer-outer {
        flex-direction: column;
        gap: 20px;
    }   
    .footer-nav-list {
        flex-direction: column;
    } 
    .footer-nav-list li a {
        display: block;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 18px;
        padding: 5px 0 5px 0;
        padding-left: 0;
    }
    .footer-nav-list {
        gap: 5px;
    }
    .footer-text1 {
        font-size: 18px;
    }
    .footer-inner {
        padding: 20px 0 40px 0;
    }

    /*---------------------------------------
        トップページ
    ---------------------------------------*/
    .fv-heading1 {
        font-size: 24px;
        writing-mode: vertical-rl;
        bottom: 20px;
        right: 10%;
    }
    .fv {
        height: calc(90vh - 56px);
        margin-top: 56px;
    }
    .swiper {
        width: 100%;
        height: 100%;
    }
    .scrolldown2 {
        bottom: 50px;
    }
    .scrolldown2:before, .scrolldown2:after {
        background: #e8e8e8;
    }
    .scrolldown2 span {
        color: #e8e8e8;
    }
   
    /* リード */
    .container {
        padding-top: 80px;
    }
    .top-about {
        text-align: center;
        margin-bottom: 120px;
        padding: 0 8%;
    }
    .top-about h1 {
        font-size: 26px;
    }
    .top-about p {
        font-size: 16px;
    }
    .top-heading3 {
        text-align: center;
    }
    .link-btn {
        font-size: 18px;
    }
    .top-heading2 {
        font-size: 24px;
        margin-bottom: 20px;
        text-align: center;
    }
    .top-access-logo {
        font-size: 24px;
    }
    .top-access-logo span {
        font-size: 14px;
    }
    .top-service-wrapper{
        flex-wrap: wrap;
    }    

    /*---------------------------------------
        博美について
    ---------------------------------------*/
    .section-wrapper {
        width: 100%;
        padding: 120px 0 100px;
    }
    .about-description-area {
        flex-direction: column;
        padding: 0;
    }
    .about-description-img {
        flex-direction: row;
    }
    .about-description-img {
        gap: 0;
        width: 100%;
    }
    .about-description-img img {
        width: 50%;
    }
    .about-description-text {
        width: 100%;
        font-size: 16px;
        padding: 40px 8% 0;
        text-align: justify;
    }
    .about-speech-outer {
        position: unset;
        padding: 40px 8% 0;
        max-width: unset;
    }
    .about-description {
        margin-bottom: 120px;
    }
    .about-heading3 {
        font-size: 24px;
        margin-bottom: 20px;
        text-align: center;
    }
    .about-speech-text {
        padding: 20px 8% 0;
        font-size: 16px;
        text-align: justify;
    }
    .about-speech-lead {
        font-size: 14px;
        line-height: 1.5;
        text-align: justify;
    }
    .about-speech {
        margin-bottom: 100px;
    }
    .about-origin-wrapper {
        padding: 0;
    }
    .about-origin-text1 {
        font-size: 16px;
        text-align: justify;
        margin-bottom: 40px;
    }
    .about-origin {
        padding: 0 8%;
    }
    .about-origin-text2 span {
        font-size: 26px;
    }
    .about-origin-text3 {
        font-size: 16px;
        text-align: justify;
        margin-bottom: 50px;
    }
    .about-origin-text2 {
        font-size: 18px;
    }
    .about-link-btn1 {
        font-size: 24px;
    }
    .about-link-btn2 {
        font-size: 16px;
    }
    .about-description-area {
        margin-bottom: 100px;
    }

    /*---------------------------------------
        博美のこだわり
    ---------------------------------------*/
    .top-wrapper {
        width: 100%;
    }
    .top-service-img {
        width: 100%;
        height: auto;
        max-width: unset;
    }
    .top-service-text {
        position: static;
        width: 100%;
        margin: auto;
        text-align: center;
        padding: 40px 5% 0 5%;
    }
    .top-heading3 {
        font-size: 26px;
    }
    .top-service-text p {
        font-size: 16px;
    }
    .top-service {
        margin-bottom: 120px;
    }
    .service-concept-wrapper {
        padding: 0;
    }
    .service-concept {
        margin-bottom: 100px;
        padding: 0 8%;
    }
    .service-concept-text {
        font-size: 16px;
    }
    .img-service1 {
        margin-bottom: 30px;
    }
    .service-content-outer1, .service-content-outer2, .service-content-outer3 {
        margin-bottom: 30px;
    }
    .service-content {
        margin-bottom: 100px;
        padding: 0 8%;
    }
    .service-info-text, .consultation-info-text {
        padding: 0;
        font-size: 16px;
    }
    .service-info-outer, .consultation-info-outer {
        margin-bottom: 50px;
    }
    .service-info-outer {
        padding: 0 8%;
    }
    .section-info-fax {
        font-size: 16px;
    }
    .section-info-asterisk {
        font-size: 16px;
    }
    .service-content-outer1 p {
        left: unset;
        right: 0;
    }
    .section-info-phone {
        font-size: 24px;
    }
    .service-concept-text, .consultation-support-text {
        padding: 20px 0 20px 0;
    }

    /*---------------------------------------
        地図と連絡先
    ---------------------------------------*/
    .top-access {
        padding: 0 8%;
    }
    .top-access-wrapper {
        flex-direction: column;
        align-items: center;
        gap: 40px;
    }
    .top-access-map {
        width: 100%;
    }
    .top-access-address {
        text-align: center;
        width: 100%;
    }
    .top-access-text {
        font-size: 16px;
    } 
    .top-access-tel {
        font-size: 14px;
    }
    .access-content-lead2 {
        font-size: 20px;
        text-align: center;
    }
    .access-content-img {
        gap: 0;
        padding: 0;
    }
    .access-content-img img {
        width: 50%;
    }
    .access-content-lead {
        padding: 40px 8% 50px;
    }
    .access-content-lead1 {
        font-size: 16px;
    }
    .access-content iframe {
        padding: 0 8%;
    }

    /*---------------------------------------
        ライフサポート博美
    ---------------------------------------*/
    .consultation-content-img {
        flex-direction: column;
    }
    .consultation-img-outer {
        width: 100%;
        margin-bottom: 50px;
    }
    .consultation-description-lead2 {
        font-size: 16px;
    }
    .consultation-support-text {
        font-size: 16px;
    }
    .consultation-support-outer {
        padding: 0;
    }
    .consultation-img-heading4 {
        font-size: 20px;
        padding: 20px 0 0 0;
    }
    .consultation-img-text {
        font-size: 14px;
    }
    .consultation-content-support {
        margin-bottom: 50px;
    }
    .consultation-support-general {
        margin-bottom: 100px;
    }
    .consultation-content-img {
        margin-bottom: 50px;
    }
    .consultation-content {
        padding: 0 8%;
    }
    .consultation-info-outer {
        padding: 0 8%;
    }
    .section-info-contact {
        padding: 0 8%;
    }

    /*---------------------------------------
        求人募集
    ---------------------------------------*/
    .recruit-table-list {
        display: flex;
        flex-direction: column;
    }
    .consultation-description-lead3 {
        font-size: 16px;
    }
    .recruit-content-table th {
        padding: 5px;
        font-size: 16px;
    }
    .recruit-content-table td {
        padding: 15px 10px;
        font-size: 16px;
    }
    .recruit-content-table th {
        width: 25%;
    }
    .recruit-content-img {
        margin-bottom: 100px;
        padding: 0;
        gap: 0;
    }
    .recruit-content-table {
        width: auto;
        margin: 0 8% 100px;
    }
    .section-description-lead3 {
        font-size: 16px;
    }
}

/* =============================================
    spサイズ  768px以下の幅に適用される
============================================= */
@media screen and (max-width: 768px) {
    .service-content-outer1 p, .service-content-outer2 p, .service-content-outer3 p {
        font-size: 20px;
        z-index: 1;
    }
    .access-content iframe {
        height: 60vw;
    }
    .top-br-none {
        display: block;
    }
    .fv-slider {
        display: none;
    }
    .fv-slider-sp {
        display: block;
    }
    .sp-device2 {
        display: block;
    }
}

/* =============================================
    spサイズ  480px以下の幅に適用される
============================================= */
@media screen and (max-width: 480px) {
    .sp-device3 {
        display: block;
    }
    .top-br-none {
        display: none;
    }
    .top-br-block, .consultation-br-block {
        display: block;
    }
    .service-content-outer1 p {
        left: unset;
        right: 0;
    }
    .service-content-outer2 p {
        left: 0;
    }
    .top-access-text br {
        display: none;
    }
    .sp-device3 {
        display: block;
    }
    .access-content-lead1 br {
        display: none;
    }
}
/* spサイズここまで */