/*
Theme Name: SMILE DENTAL CLINIC
Theme URI: https://www.sejuku.net/
Description: SAMURAI ENGINEERのWordPress化課題
Version: 1.0.0
Author: Ichiro Kobayashi
Author URI: https://www.sejuku.net/
*/

/*---------------------------------------- */
/* クリア */
/*---------------------------------------- */
body,header,footer,section,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,article,aside,
pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td,p{
    margin:0;padding:0;
}
table{border-collapse:collapse;border-spacing:0;}
img{margin:0;padding:0;border:none;}
li{list-style-type: none;}

h1,h2,h3,h4{
	font-weight: lighter;
	letter-spacing: 5px;
}

a{text-decoration:none;outline:none;}

/* PC SP 共通スタイル */
* {
    box-sizing: border-box;
}

body {
    margin: 0 auto 0 auto;
    font-family: "Zen Maru Gothic", sans-serif;
    font-weight: 400;
    font-style: normal;
    color: #333333;
}

/*---------------------------------------- */
/* PC */
/*---------------------------------------- */
@media screen and (min-width: 640px) {

    /* スマホ用非表示 */
    #nav-sp {
        display: none;
    }

    #menu-sp {
        display: none;
    }

    #footer-sp-box {
        display: none;
    }

    .entry-footer {
        display: none;
    }

    /* ヘッダー */
    header {
        justify-content: space-between;
        height: 120px;
        padding-top: 5px;
        background-color:#2C6586;
        border-top: #0B0198 solid 5px;
        position: relative;
    }

    header .logo h1 {
        width: 270px;
        height: 50px;
        margin: 0 auto;
        background: url('images/logo/logo1.png') no-repeat center center;
        background-size: cover;
        text-indent: -9999px;
    }

    header .contact {
        display: flex;
        position: absolute;
        top: 7px;
        left: 50%;
        margin-left: 130px;
    }

    header .contact-tel {
        margin-left: 32px;
    }

    header .contact-mail {
        margin-left: 2px;
    }

    #nav-pc ul {
        display: flex;
        padding-left: 0;
        width: 1080px;
        position: absolute;
        bottom: 0;
        left: 50%;
        margin-left: -540px;
    }

    #nav-pc ul .menu-space {
        width: 280px;
    }

    /* トップ画像 */
    #top-visual {
        display: flex;
        justify-content: center;
        margin-bottom: 80px;
    }

    .wp-block-image {
        margin-bottom: 80px;
    }

    .wp-block-image img {
        width: 100%;
    }

    /* #top-visual img {
        width: 100%;
    } */

    /* メインコンテンツ */
    #main {
        width: 1080px;
        margin: 0 auto;
    }

    /* コンテンツ　見出し */

    #post-21 > .contents { /* .page は固定ページにのみ適用するためのbodyクラス */
        display: none;
    }

    .contents {
        display: flex;
        width: 500px;
        border-bottom: 2px solid #5C8EAC;
        align-items: flex-end
    }

    h2 {
        font-size: 32px;
        font-weight: bold;
        color: #2C6586;
        letter-spacing: -0.5px;
        padding-left: 0;
        left: 0%;
        /* margin-top: 40px; */
    }

    .contents::before {
        content: '';
        display: inline-block;
        width: 50px;
        height: 50px;
        background-image: url(images/icon/whitening.svg);
        background-repeat: no-repeat;
        padding-right: 5px;
    }

    /* コンテンツ　中身 */
    .contents-message {
        width: 1080px;
        font-size: 20px;
        padding-top: 40px;
    }

    /* もっと見るボタン */
    .readmore-button {
        display: flex;
        justify-content: right;
        width: fit-content;
        margin-left: auto;
    }

    .readmore-button-space1 {
        padding-top: 40px;
    }

    .readmore-button-space2 {
        padding-bottom: 80px;
    }

    /* スタッフ */
    #staff {
        display: flex;
        flex-wrap: wrap;
    }

    .staff-flex {
        display: flex;
        flex-direction: column;
    }

    .staff-name {
        padding-bottom: 20px;
        border-bottom: 2px solid #5C8EAC;
    }

    .staff-flex img {
        margin-top: 40px;
        width: 300px;
        height: 300px;
        box-shadow: 0 5px 0 rgba( 92, 142, 172, 0.5);
    }

    .staff-flex .staff-post {
        padding-top: 20px;
        width: 300px;
        font-size: 20px;
        text-align: center;
    }

    .staff-name h3{
        padding-top: 20px;
        width: 300px;
        font-size: 24px;
        font-weight: bold;
        text-align: center;
    }

    .staff-message {
        padding-top: 20px;
        width: 300px;
        font-size: 20px;
    }

    .staff-space {
        width: 90px;
    }

    .staff-space-2 {
        width: 1080px;
        margin-bottom: 40px;
    }

    /* 患者様の声 */
    #patient {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 1080px;
    }

    .news_post_small {
        display: flex;
        align-items: baseline;
        gap: 0 30px;
        flex-wrap: wrap;
    }

    .patient-introduction {
        font-size: 20px;
        margin-top: 40px;
    }

    .date {
        padding-top: 40px;
        font-size: 20px;
        font-weight: bold;
        color: #2C6586;
        width: 120px;
        line-height: 42px;
    }

    .name-title {
        /* padding-bottom: 20px; */
        padding-top: 40px;
        font-size: 24px;
        font-weight: bold;
    }

    /* .name-title h3 {
        font-size: 24px;
        font-weight: bold;
        text-align: center;
        height: 30px;
    } */

    .name-title2 {
        font-size: 24px;
        font-weight: bold;
        text-align: center;
        height: 30px;
        color: #333333;
        letter-spacing: 5px;
    }

    .news_post_meta {
        padding-top: 40px;
    }

    .patient-message {
        padding-top: 20px;
        width: 100%;
        font-size: 20px;
        border-bottom: 2px solid #5C8EAC;
    }

    /* ブログ */
    /* 日付とテーマ（名前）は患者様の声と共用 */
    #blog {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 1080px;
    }

    .blog-message {
        padding-top: 20px;
        width: 1080px;
        font-size: 20px;
        border-bottom: 2px solid #5C8EAC;
    }

    .pagination {
        margin-top: 40px;
        height: 80px;
        text-align: center;
        letter-spacing: 5px;
    }

    /* 診療時間 */
    #business-hours {
        padding-top: 40px;
        padding-bottom: 80px;
    }

    /* アクセス */
    #access {
        display: flex;
        justify-content: space-between;
        flex-direction: row;
        width: 1080px;
        padding-bottom: 80px;
        margin: 0 auto;
    }

    .access-box {
        height: 640px;
        width: 500px;
    }

    .access-space {
        padding-top: 20px;
    }

    .access-title {
        padding-top: 20px;
        font-size: 20px;
        font-weight: bold;
        color: #2C6586;
    }

    .access-text {
        font-size: 20px;
    }

    .access-map {
        height: 640px;
        width: 500px;
        position: relative;
    }

    .access-map iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: 0;
    }

    /* フッター */
    /* スマホ用フッター非表示 */
    #footer-nav-sp {
        display: none;
    }

    .footer-contact-sp {
        display: none;
    }

    .sns-sp {
        display: none;
    }

    .footer-logo-sp {
        display: none;
    }

    .privacy-policy-sp {
        display: none;
    }

    .post-edit-link {
        display: none;
    }

    /* PC用フッター */
    footer {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: auto;
        padding-top: 40px;
        background-color:#2C6586;
        border-bottom: #0B0198 solid 5px;
        position: relative;
    }

    footer .footer-logo {
        width: 400px;
        height: 80px;
        margin: 0 auto;
        background: url('images/logo/logo1.png') no-repeat center center;
        background-size: cover;
        text-indent: -9999px;
    }

    footer #sns {
        display: flex;
        justify-content: space-between;
        flex-direction: row;
        width: 200px;
        gap: 40px;
        margin-top: 40px;
        margin-bottom: 40px;
    }

    footer .footer-contact {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        padding-bottom: 40px;
        margin: 0 auto;
    }

    footer .footer-contact-mail {
        margin: 0 30px;
    }

    footer .footer-contact-tel {
        margin: 0 30px;
    }

    footer .privacy-policy {
        text-align: center;
        margin: 0 auto;
        color: #ffffff;
    }

    footer .border {
        height: 2px;
        width: 1440px;
        margin-top: 40px;
        margin-bottom: 40px;
        border-bottom: 2px solid #ffffff;
    }

    footer #footer-nav-pc {
        flex-wrap: wrap;
    }
    
    footer #footer-nav-pc ul {
        display: flex;
        justify-content: center;
        width: auto;
        margin: 0 auto;
        padding: 0;
        flex-wrap: wrap;
    }

    footer #footer-nav-pc ul li {
        width: 135px;
        height: 40px;
        color: #ffffff;
    }

    footer #footer-nav-pc li a {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        width: 100%;
        height: 100%; 
        color: #ffffff;
        text-decoration: none;
    }

    footer .en-menu {
        font-size: 12px;
        font-weight: bold;
        color: #ffffff;
    }

    footer .jp-menu {
        font-size: 16px;
        font-weight: bold;
        color: #ffffff;
    }

    footer #copyright {
        font-size: 16px;
        letter-spacing: -0.1px;
        color: #ffffff;
        margin-top: 40px;
        margin-bottom: 20px;
    }

    /* 当院について */
    /* 院長 */
    #director {
        display: flex;
        justify-content: center;
    }

    .director-flex {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .director-name {
        padding-bottom: 40px;
    }

    .director-flex img {
        margin-top: 40px;
        width: 300px;
        height: 300px;
        box-shadow: 0 5px 0 rgba( 92, 142, 172, 0.5);
    }

    .director-flex .director-post {
        padding-top: 20px;
        width: 300px;
        font-size: 20px;
        text-align: center;
    }

    .director-name h3{
        padding-top: 20px;
        width: 300px;
        font-size: 24px;
        font-weight: bold;
        text-align: center;
    }

    .director-message1 {
        padding-top: 40px;
        padding-bottom: 40px;
        width: 1080px;
        font-size: 20px;
        border-top: 2px solid #5C8EAC;
    }

    .director-message2 {
        padding-top: 40px;
        padding-bottom: 80px;
        width: 1080px;
        font-size: 20px;
        border-top: 2px solid #5C8EAC;
    }
    .director-message2 span {
        font-weight: bold;
    }

    /* 当院について */
    /* 診療科目 */
    /* 最新技術 */
    #medical {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 1080px;
    }

    .medical-title h3 {
        padding-top: 40px;
        font-weight: bold;
        letter-spacing: -0.1px;
    }

    .medical-message {
        width: 1080px;
        font-size: 20px;
    }

    .medical-space {
        width: 1080px;
        padding-top: 80px;
    }
    /* Q&A */
    #qa {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        width: 1080px;
    }

    .qa-q h3 {
        padding-top: 40px;
        letter-spacing: -0.1px;
    }

    .qa-a {
        width: 1080px;
        font-size: 20px;
    }

    .qa-q span {
        color: #8D0000;
        font-weight: bold;
    }

    .qa-a span {
        color: #0B0198;
        font-weight: bold;
    }

    /* 概算費用 */
    .subjects h3 {
        padding-top: 40px;
        font-size: 24px;
        font-weight: bold;
        color: #0B0198;
    }

    .subjects p {
        font-size: 20px;
    }

    .subjects-type {
        font-size: 20px;
        margin-top: 20px;
    }

    .subjects-type span {
        font-weight: bold;
    }

    .subjects-cost {
        margin-top: 10px;
        padding: 5px 5px;
        font-size: 16px;
        background-color: #E9F7FF;
        border-radius: 7px;
    }

    .subjects-space-2 {
        height: 80px;
    }

    /* お問い合わせ */
    .contact-form {
        margin-top: 40px;
    }
 
    .contact-form > div {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        padding-bottom: 40px;
    }

    .contact-heading {
        width: 300px;
        align-self: center;
    }

    .contact-label {
        font-weight: bold;
    }

    .contact-span {
        color: #ce2222;
        margin: 0 0 0 20px;
        font-weight: bold;
    }

    .contact-textbox {
        border-top: 0px;
        border-left: 0px;
        border-right: 0px;
        border-bottom-width: 1px;
        border-bottom-color: #5C8EAC;
        border-style: solid;
        background-color: #fafafa;
        width: 400px;
        height: 30px;
    }
    
    .contact-textarea {
        border-top: 0px;
        border-left: 0px;
        border-right: 0px;
        border-bottom-width: 1px;
        border-bottom-color: #5C8EAC;
        background-color: #fafafa;
        width: 400px;
        height: 100px;
    }

    .contact-form input[type="radio"][value="tel"] + label {
        margin-right: 15px;
    }

    .checkbox > span{
        padding-right: 15px;
    }

    .send-button {
        display: flex;
        justify-content: right;
        padding-bottom: 80px;
    }

    input[type="submit"] {
        /* display: inline-block; */
        width: 140px;
        height: 40px;
        background-color: #5C8EAC;
        color: white; 
        font-size: 14px;
        text-align: center;
        border-width: 3px;
        border-style: solid;
        border-color: #0B0198;
        border-radius: 10px;
        cursor: pointer;
    }

    /* お問い合わせ（お礼） */
    #thanks {
        height: 700px;
        display: flex;
        justify-content: center;

        align-items: center;
        font-size: 50px;
        color: #0B0198;
        font-weight: bold;
    }

    /* 404 */
    #notfound {
        height: 700px;
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        font-size: 50px;
        color: #0B0198;
        font-weight: bold;
    }

}

/*---------------------------------------- */
/* スマートフォン */
/*---------------------------------------- */
@media screen and (max-width: 639px) {

    /* PC用ナビゲーション非表示 */
    #nav-pc {
        display: none;
    }

    /* PC用コンタクト非表示 */
    .contact-mail {
        display: none;
    }

    .contact-tel {
        display: none;
    }

    /* ヘッダー */
    header {
        justify-content: space-between;
        height: 70px;
        padding-top: 5px;
        background-color:#2C6586;
        border-top: #0B0198 solid 5px;
        position: relative;
    }

    header .logo h1 {
        width: 270px;
        height: 50px;
        margin: 0 auto;
        background: url('images/logo/logo1.png') no-repeat center center;
        background-size: cover;
        text-indent: -9999px;
    }

    .nav-sp-box {
        display: flex;
        width: 275px;
        height: 400px;
        background-color:#2C6586;
    }

    /* ハンバーガーメニュー */
    #menu-sp {
        position: absolute;
        top: 20px;
        right: 10px;
        display: block;
        background-color: #2C6586;
        padding: 0;
        border: none;
    }

    /* スマホ用ナビゲーションの表示切替 */
    /* 初期状態、レイアウトと非表示設定 */
    #nav-sp {
    background-color: #2C6586;
    position: absolute;
    right: 0;
    top: 5px;
    height: 408px;
    width: 285px;
    display: none;
    z-index: 100;
    border: 5px solid #0B0198;
    border-radius: 7px;
    }

    #nav-sp > ul {
        margin-top: 60px;
    }

    #nav-sp > ul > li {
        margin-bottom: -5px;
    }

    /* スマホ用トップ画像 */
    #top-visual {
        margin-bottom: 20px;
    }

    #top-visual img {
        width: 100%;
    }

    /* スマホ用コンテンツ */
    #main {
        width: 90%;
        margin: 0 auto;
    }

    /* スマホ用コンテンツ　見出し */
    .contents {
        display: flex;
        width: 300px;
        border-bottom: 2px solid #5C8EAC;
        align-items: flex-end
    }

    h2 {
        font-size: 20px;
        font-weight: bold;
        color: #2C6586;
        letter-spacing: -0.5px;
        padding-left: 0;
        left: 0%;
    }

    h3 {
        font-size: 16px;
        font-weight: bold;
        padding-left: 0;
        left: 0%;
    }

    .contents::before {
        content: '';
        display: inline-block;
        width: 33px;
        height: 33px;
        background-image: url(images/icon/whitening.svg);
        background-repeat: no-repeat;
        padding-right: 5px;
    }

    /* スマホ用コンテンツ　中身 */
    .contents-message {
        width: 100%;
        font-size: 14px;
        padding-top: 10px;
    }

    /* スマホ用もっと見るボタン */
    .readmore-button {
        display: flex;
        justify-content: right;
        padding-top: 20px;
        padding-bottom: 20px;
    }

    /* スマホ用スタッフ */
    .staff-flex {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .staff-name {
        padding-bottom: 10px;
        border-bottom: 2px solid #5C8EAC;
    }

    .staff-flex img {
        margin-top: 10px;
        width: 300px;
        height: 300px;
        box-shadow: 0 5px 0 rgba( 92, 142, 172, 0.5);
    }

    .staff-flex {
        margin-bottom: 20px;
    }

    .staff-flex .staff-post {
        padding-top: 10px;
        width: 300px;
        font-size: 11px;
        text-align: center;
    }

    .staff-name h3{
        padding-top: 5px;
        width: 300px;
        font-size: 16px;
        font-weight: bold;
        text-align: center;
    }

    .staff-message {
        padding-top: 10px;
        width: 300px;
        font-size: 14px;
    }

    .staff-space-2 {
        height: 10px;
    }

    /* スマホ用患者様の声 */
        .patient-introduction {
        font-size: 14px;
        margin-top: 10px;
        margin-bottom: 20px;
    }

    #patient {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        width: 100%;
    }

    .date {
        padding-top: 10px;
        font-size: 14px;
        font-weight: bold;
        color: #2C6586;
        width: 80px;
    }

    .name-title {
        padding-bottom: 10px;
        font-weight: bold;
    }

    .name-title h3{
        font-size: 14px;
        font-weight: bold;
        text-align: center;
        height: 30px;
        letter-spacing: 1px;
    }

    .patient-message {
        width: 100%;
        font-size: 14px;
        border-bottom: 2px solid #5C8EAC;
    }

    /* スマホ用ブログ */
    /* 日付とテーマ（名前）は患者様の声と共用 */
    #blog {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        width: 100%;
    }

    .blog-message {
        width: 100%;
        font-size: 14px;
        border-bottom: 2px solid #5C8EAC;
    }

    /* スマホ用次へボタン */
    .space {
        height: 20px;
    }

    /* スマホ用診療時間 */
    #business-hours {
        padding-top: 10px;
        padding-bottom: 40px;
    }

    #business-hours img {
        width: 100%;
    }

    /* スマホ用アクセス */
    #access {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        margin: 0 auto;
    }

    .access-box {
        height: auto;
        width: 100%;
    }

    .access-title {
        padding-top: 10px;
        font-size: 14px;
        font-weight: bold;
        color: #2C6586;
    }

    .access-text {
        font-size: 14px;
    }

    .access-map {
        height: auto;
        width: 100%;
        position: relative;
        margin-bottom: 40px;
    }

    .access-map iframe {
        margin-top: 20px;
        width: 100%;
        height: 300px;
        border: 0;
    }

    /* スマホ用当院について */
    .director-flex {
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    .director-name {
        padding-bottom: 10px;
        border-bottom: 2px solid #5C8EAC;
    }

    .director-flex img {
        margin-top: 10px;
        width: 300px;
        height: 300px;
        box-shadow: 0 5px 0 rgba( 92, 142, 172, 0.5);
    }

    .director-flex .director-post {
        padding-top: 10px;
        width: 300px;
        font-size: 11px;
        text-align: center;
    }

    .director-name h3{
        padding-top: 5px;
        width: 300px;
        font-size: 16px;
        font-weight: bold;
        text-align: center;
    }

    .director-message1 {
        padding-top: 10px;
        width: 300px;
        font-size: 14px;
    }

    .director-message-space {
        margin-top: 5px;
        height: 10px;
        width: 300px;
        border-bottom: 2px solid #5C8EAC;
    }

    .director-message2 {
        padding-top: 10px;
        width: 300px;
        font-size: 14px;
        margin-bottom: 40px;
    }

    .director-message2 span {
        font-weight: bold;
    }

    /* スマホ用診療科目 */
    .medical-title h3 {
        margin-top: 10px;
        font-size: 14px;
    }

    .medical-message {
        width: 100%;
        font-size: 14px;
        padding-bottom: 10px;
    }

    .medical-space {
        margin-top: 20px;

    }

    /* スマホ用Q&A */
    .qa-q h3 {
        padding-top: 10px;
        font-size: 14px;
        letter-spacing: -0.1px;
    }

    .qa-a {
        font-size: 14px;
    }

    .qa-q span {
        color: #8D0000;
        font-weight: bold;
    }

    .qa-a span {
        color: #0B0198;
        font-weight: bold;
    }

    /* スマホ用概算費用 */
    .subjects h3 {
        margin-top: 10px;
        font-size: 16px;
        color: #0B0198;
    }

    .subjects p {
        font-size: 14px;
    }

    .subjects-type {
        font-size: 14px;
        margin-top: 10px;
    }

    .subjects-type span {
        font-weight: bold;
    }

    .subjects-cost {
        margin-top: 10px;
        padding: 5px 5px;
        font-size: 10px;
        background-color: #E9F7FF;
        border-radius: 7px;
    }

    .subjects-space {
        height: 10px;
    }

    .subjects-space-2 {
        margin-bottom: 40px;
    }

    /* スマホ用ブログ */

    .pagination {
        margin-top: 20px;
        margin-bottom: 20px;
        height: 20px;
        text-align: center;
        letter-spacing: 5px;
    }

    /* スマホ用お問い合わせ */
    .contact-form {
        margin-top: 40px;
    }
 
    .contact-form > div {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        padding-bottom: 20px;
    }

    .contact-heading {
        width: 300px;
        align-self: center;
    }

    .contact-label {
        font-weight: bold;
        font-size: 14px;
    }

    .contact-span {
        color: #ce2222;
        margin: 0 0 0 20px;
        font-weight: bold;
    }

    .contact-textbox {
        border-top: 0px;
        border-left: 0px;
        border-right: 0px;
        border-bottom-width: 1px;
        border-bottom-color: #5C8EAC;
        border-style: solid;
        background-color: #fafafa;
        width: 335px;
        height: 30px;
    }
    
    .contact-textarea {
        border-top: 0px;
        border-left: 0px;
        border-right: 0px;
        border-bottom-width: 1px;
        border-bottom-color: #5C8EAC;
        background-color: #fafafa;
        width: 335px;
        height: 100px;
    }

    .contact-form label {
        font-size: 14px;
        margin-right: 15px;
    }

    .radio-options {
        width: 335px;
    }

    .checkbox {
        width: 335px;
    }

    .checkbox > span{
        padding-right: 15px;
        font-size: 14px;
    }

    .send-button {
        display: flex;
        justify-content: right;
        margin-bottom: 40px;
    }

    input[type="submit"] {
        /* display: inline-block; */
        width: 140px;
        height: 40px;
        background-color: #5C8EAC;
        color: white; 
        font-size: 14px;
        text-align: center;
        border-width: 3px;
        border-style: solid;
        border-color: #0B0198;
        border-radius: 10px;
        cursor: pointer;
    }

    /* PC用フッターパーツ非表示 */
    #footer-nav-pc {
        display: none;
    }

    .footer-contact {
        display: none;
    }

    .privacy-policy {
        display: none;
    }

    .footer-logo {
        display: none;
    }

    #sns {
        display: none;
    }

    /* スマホ用フッター */
    footer {
        height: auto;
        background-color:#2C6586;
        border-bottom: #0B0198 solid 5px;
        position: relative;
    }

    #footer-sp-box {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 auto;
        width: auto;
        height: auto;
    }

    #footer-nav-sp {
        margin-top: 40px;
    }

    #footer-nav-sp > ul > li {
        margin-bottom: -5px;
    }

    .footer-contact-sp {
        display: flex;
        flex-direction: column;
        align-items: center;
        margin: 0 auto;
    }

    .footer-contact-sp-tel {
        margin-top: 40px;
    }

    .footer-contact-sp-mail {
        margin-top: 40px;
    }

    .sns-sp {
        margin-top: 40px;
    }

    .sns-sp .sns-icon {
        margin-left: 10px;
        margin-right: 10px;
    }

    .footer-logo-sp {
        margin-top: 40px;
    }

    .privacy-policy-sp {
        font-size: 16px;
        letter-spacing: -0.1px;
        color: #ffffff;
        margin-top: 40px;
    }

    #copyright {
        font-size: 16px;
        letter-spacing: -0.1px;
        color: #ffffff;
        margin-top: 40px;
        margin-bottom: 20px;
        text-align: center;
    }

    #notfound {
        height: 300px;
        display: flex;
        justify-content: center;
        flex-direction: column;
        align-items: center;
        font-size: 24px;
        color: #0B0198;
        font-weight: bold;
    }

}