body {
    font-size: 15px;
    font-family: "Noto Serif JP";
}

/* 要素の表示、非表示ここから */
.sp-only {
    display: none;
}

.hidden {
    opacity: 0;
}

@media screen and (max-width: 1110px) {
    .pc-only {
        display: none;
    }

    .sp-only {
        display: block;
    }
}

/* 要素の表示、非表示ここまで */
.inner {
    width: 1500px;
    max-width: 89.3333333333vw;
    margin: auto;
}

/* ヘッダーここから */
.header {
    background-color: #fff;
    padding: 40px 0;
    position: fixed;
    width: 100%;
    height: 100px;
    z-index: 9999;
}

.header-pc {
    align-items: center;
}

.header-pc-nav {
    display: flex;
    list-style: none;
    align-items: center;
    justify-content: space-between;
    margin-right: 80px;
}

.header-pc-logo {
    float: left;
    margin-top: -20px;
    margin-right: 50px;
}

.header-pc-logo img {
    width: 80px;
}

.nav-link.is-active {
    color: #6f004c;
    transition: all 0.3s 0s ease;
}

.nav-link.is-active:hover {
    color: #da54af;
}

.nav-link {
    transition: all 0.3s 0s ease;
}

.nav-link:hover {
    color: #1f7037;
}

/* オンラインショップアイコンここから */
.shop-icon {
    font-family: "Noto Sans JP", sans-serif;
}

.online-button {
    justify-content: center;
    align-items: center;
    width: 200px;
    padding: 0.9em 2em;
    border: none;
    border-radius: 5px;
    box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4), 0 2px 3px -2px rgba(0, 0, 0, 0.3);
    background-color: #ffffff;
    color: #000;
    font-weight: 600;
    font-size: 1em;
    transition: all 0.3s 0s ease;
}

.online-button:hover {
    background-color: #efefef;
}

/* オンラインショップアイコンここまで */
/* SNSアイコンここから */
.sns-icon {
    display: flex;
    justify-content: flex-end;
    margin-top: -30px;
}

.facebook-icon {
    width: 35px;
    position: relative;
    top: 0px;
    transition: all .3s;
    margin-right: 30px;
}

.facebook-icon:hover {
    top: -5px;
}

.header .facebook-icon {
    margin-top: 3px;
    margin-left: 50px;
}

/* SNSアイコンここまで */
/* ヘッダーレスポンシブここから */
@media screen and (max-width: 1110px) {
    .header {
        text-align: center;
        font-family: "Noto Sans JP", sans-serif;
        background-color: transparent;
        padding: 0px;
    }

    .outside-header-logo {
        text-align: left;
        margin-left: 20px;
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .outside-header-logo img {
        width: 120px;
    }

    .header-back {
        position: static;
        background-image: url(../images/header_illust.png);
        background-position: bottom right;
        background-repeat: no-repeat;
        background-size: 30vh;
        margin-right: -50px;

    }

    .header-sp-nav {
        text-align: left;
        line-height: 3em;
    }

    .header-sp-logo {
        display: flex;
        justify-content: center;
        margin-top: 50px;
    }

    .header-sp-logo img {
        max-width: 100%;
    }

    .header-sp-button {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-top: 20px;
        margin-bottom: 30px;
        padding-right: 10vw;
    }

    .shop-icon,
    .facebook-icon {
        display: flex;
        align-items: center;
    }

    .header .online-button {
        padding: 0.3em 2em;
        width: auto;
    }

    .header-address {
        line-height: 2em;
    }

    /* ハンバーガーメニューここから */
    .hamburger-menu {
        background-color: #fff;
    }

    .menu-button {
        position: fixed;
        top: 15px;
        right: 10px;
        display: flex;
        height: 50px;
        width: 50px;
        justify-content: center;
        align-items: center;
        z-index: 90;
    }

    .menu-button:hover {
        cursor: pointer;
    }

    .menu-span,
    .menu-span:before,
    .menu-span:after {
        content: "";
        display: block;
        height: 2px;
        width: 40px;
        background-color: #333;
        position: absolute;
    }

    .menu-span:before {
        bottom: 10px;
    }

    .menu-span:after {
        top: 10px;
    }

    #menu-button-check {
        display: none;
    }

    #menu-button-check:checked ~ .menu-button .menu-span {
        background-color: rgba(255, 255, 255, 0);
    }

    #menu-button-check:checked ~ .menu-button .menu-span::before {
        bottom: 0;
        transform: rotate(45deg);
    }

    #menu-button-check:checked ~ .menu-button .menu-span::after {
        top: 0;
        transform: rotate(-45deg);
    }

    .menu-content {
        width: 100%;
        height: 100vh;
        position: absolute;
        top: 0;
        left: -100%;
        padding: 0 100px 0 50px;
        z-index: 80;
        transition: all 0.5s;
        overflow-y: auto;
        background-color: #eaddc4;
    }

    #menu-button-check:checked ~ .menu-content {
        left: 0;
    }

    /* ハンバーガーメニューここまで */
    /* Googleマップここから */
    .google-button {
        display: inline-block;
        text-align: center;
        transition: 0.5s;
        background-size: 200% auto;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
        background-image: linear-gradient(to right,
                #d5bf98 0%,
                #ab905f 51%,
                #d5bf98 100%);
        text-decoration: none;
        padding: 5px 70px 5px 70px;
        font-family: "Noto Serif JP";
        margin-top: 20px;
        margin-bottom: 180px;
    }

    .google-button:hover {
        background-image: linear-gradient(to right,
                #d3b279 0%,
                #ad863d 51%,
                #dcb571 100%);
    }

    /* Googleマップここまで */
}

/* ヘッダーレスポンシブここまで */
/* ヘッダーここまで */
/* メインビジュアルここから */
.main-visual {
    background-image: url(../images/main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.main-visual .inner {
    padding: 10px;
}

.main-visual-text {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    margin: 250px auto 0px;
    font-weight: bold;
    font-size: 20px;
    line-height: 4em;
}

/* オンラインショップバナー,イラストここから */
.main-visual-banner-and-illustration-pc {
    margin-top: -100px;
}

.main-visual .main-visual-onlineshop-banner-pc {
    margin-bottom: 100px;
}

/* オンラインショップバナー,イラストここまで */
/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .main-visual {
        background: none;
        position: relative;
    }

    .main-back-sp {
        height: 600px;
        width: 100%;
        object-fit: cover;
    }

    .main-visual-text {
        line-height: 10vw;
        margin-top: 100px;
    }

    .main-visual-onlineshop-banner-sp {
        text-align: center;
    }

    .main-visual-onlineshop-banner-sp img {
        width: 100%;
        height: 100%;
    }

    .main-sp-illust {
        position: absolute;
        width: 300px;
        height: auto;
        top: 320px;
        left: 50%;
        transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
    }
}

.heading-img {
    width: 100%;
    max-width: 386px;
    margin: 0 auto;
    display: block;
}

@media screen and (max-width: 1110px) {
    .heading-img {
        max-width: 220px;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */
/* moto葡萄ここから */
.moto-grape {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 6rem 2rem 2rem 2rem;
    max-width: 1140px;
}

.moto-grape-content,
.moto-maincontents-heading {
    position: relative;
    width: 100%;
}

.moto-grape-column-details {
    display: flex;
    flex-direction: row-reverse;
    text-align: left;
}

.moto-grape .grape-img {
    width: 100%;
}

.moto-grape-lead {
    color: #6F004C;
    font-size: 28px;
    font-weight: bold;
    line-height: 1.7em;
    margin: 2rem 0;
    text-align: center;
}

.moto-wine-content {
    width: 100%;
}

.moto-maincontents-text {
    line-height: 1.7em;
    margin: 2rem 0;
}

.moto-grape-illust {
    position: absolute;
    bottom: 40px;
    right: 0;
    width: 320px;
    height: auto;
    z-index: -1;
    opacity: 0.5;
}

/* 詳しく見るボタンここから */
.see-details-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 200px;
    padding: 1rem;
    background-color: #fff;
    color: #fff;
    background: #333;
    margin: 0 auto;
    transition: all 0.5s 0s ease;
    border-radius: 6px;
}

.see-details-button:hover {
    background: #6F004C;
}

.see-details-button::after {
    transform: rotate(45deg);
    width: 6px;
    height: 6px;
    margin-left: 10px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    content: '';
}

/* 詳しく見るボタンここまで */
/* moto葡萄レスポンシブここから */
@media screen and (max-width: 1110px) {
    .moto-grape {
        display: block;
    }

    .moto-grape-column-details {
        display: block;
        position: relative;
    }

    .moto-grape-column {
        text-align: left;
        padding: 0px;
    }

    .grape-img {
        width: 100vw !important;
        margin: 0 -2rem;
    }

    .moto-grape-lead {
        font-size: 1.2rem;
    }

    .moto-grape-illust {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
    }
}

/* moto葡萄レスポンシブここまで */
/* moto葡萄ここまで */

/* しらはたmoto農園ここから */
.shirahata-moto {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 10rem 2rem 2rem 2rem;
    max-width: 1140px;
}

.shirahata-moto-content {
    width: 100%;
}

.shirahata-moto .farm-img {
    width: 100%;
}

.shirahata-moto-lead {
    color: #6F004C;
    font-size: 2rem;
    font-weight: bold;
    line-height: 2rem;
    margin: 2rem 0;
    text-align: center;
}

.shirahata-moto-illust {
    position: absolute;
    bottom: 40px;
    right: 0;
    width: 320px;
    height: auto;
    z-index: -1;
    opacity: 0.5;
}

/* しらはたmoto農園レスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahata-moto {
        display: block;
    }

    .shirahata-moto-column-details {
        display: block;
        position: relative;
    }

    .farm-img {
        width: 100vw !important;
        margin: 0 -2rem;
    }

    .shirahata-moto-lead {
        font-size: 1.2rem;
    }

    .shirahata-moto-illust {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
    }
}

/* しらはたmoto農園レスポンシブここまで */
/* しらはたmoto農園ここまで */
/* 直売所ここから */
.direct-sales-office {
    margin-top: 50px;
    background-color: #F1E9D8;
    padding-top: 60px;
    padding-bottom: 60px;
}

.direct-sales-office-content {
    display: flex;
    gap: 0 50px;
}

.direct-sales-office-detail {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    margin: 0 auto;
}

.direct-sales-office-img {
    width: 50%;
    height: 100%;
}

.direct-sales-office-title {
    font-size: 28px;
    margin: 0;
}

.direct-sales-office-text {
    font-size: 1rem;
    line-height: 2em;
    margin: 2rem 0;
    text-align: justify;
}

.business-hours-text {
    font-size: 1.4rem;
    text-align: left;
    margin: 0;
    line-height: 2rem;
    font-weight: bold;
}

/* 直売所レスポンシブここから */
@media screen and (max-width: 1110px) {
    .direct-sales-office {}

    .direct-sales-office-content {
        position: relative;
        flex-direction: column-reverse;
    }

    .direct-sales-office-img {
        width: 100%;
        margin: 0 auto;
        display: block;
    }

    .business-hours-text {
        font-size: 1.2rem;
        margin: 0 0 2rem 0;
    }
}

/* 直売所レスポンシブここまで */
/* 直売所ここまで */
/* motoワインここから */
.moto-wine {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 10rem 2rem 2rem 2rem;
    max-width: 1140px;
}

.moto-wine .wine-img {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 30px 0;
}

.moto-wine-lead {
    color: #6F004C;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 2.8rem;
    margin: 2rem 0;
    text-align: center;
}

.moto-wine-column-details {
    display: flex;
    flex-direction: row-reverse;
    text-align: left;
    align-items: flex-end;
}

.moto-wine-illust {
    position: absolute;
    bottom: 90px;
    right: 0;
    width: 220px;
    height: auto;
    z-index: -1;
    opacity: 0.5;
}

/* ボタンここから */
.moto-wine-content .see-details-button {
    margin: 0;
}

.win-btn {
    display: flex;
    flex-direction: row;
    gap: 0 40px;
    justify-content: center;
    align-items: center;
}

.moto-wine-button {
    text-align: center;
}

.moto-wine .online-button {
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: 1rem;
    border: none;
    border-radius: 6px;
    box-shadow: none;
    background-color: #6F004C;
    color: #ffffff;
    font-weight: 600;
    font-size: 1em;
    transition: all .3s;
    text-align: center;
}

.online-button:hover {
    top: -5px;
}

/* ボタンここまで */
/* motoワインレスポンシブここから */
@media screen and (max-width: 1110px) {
    .moto-wine {
        display: flex;
        flex-direction: column;
        gap: 20px 0;
        padding: 5rem 2rem 2rem 2rem;
    }

    .moto-wine .moto-maincontents-heading {
        display: block;
    }

    .moto-wine-column-details {
        display: block;
        position: relative;
    }

    .wine-img {
        width: 100vw !important;
        margin: 0 -2rem;
        order: 4;
    }

    .moto-wine-lead {
        font-size: 1rem;
        line-height: 1.6rem;
        margin: 2rem 0 0 0;
    }

    .moto-wine .moto-maincontents-text {
        margin: 0 0 2rem 0;
    }

    .win-btn {
        display: flex;
        flex-direction: column;
        gap: 20px 0;
        order: 5;
    }

    .moto-wine-illust {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
    }

    .moto-wine .wine-img {
        gap: 20px 0;
        margin: 0 0 2rem 0;
    }
}

/* motoワインレスポンシブここまで */
/* motoワインここまで */
/* 農園ブログここから */
.blog-and-facebook {
    display: flex;
    margin-top: 200px;
    justify-content: space-evenly;
}

.blog {
    position: relative;
}

.blog-illust {
    position: absolute;
    top: -100px;
    left: 250px;
    z-index: -9999;
}

.blog-lead {
    margin-top: 30px;
    font-size: 16px;
}

.blog-content {
    margin-top: 50px;
    width: 120%;
    padding-bottom: 10px;
}

.blog-content-img {
    width: 300px;
    height: auto;
}

.blog-content-img:hover {
    filter: brightness(0.6);
    transition: all 0.5s 0s ease;
}

.blog-content-title {
    font-size: 26px;
    margin-top: 20px;
}

.blog-content-date {
    font-family: "Noto Sans JP", Sans-serif;
    font-size: 17px;
    margin-top: 5px;
}

.blog-content-text {
    margin-top: 20px;
    color: #777;
    border-bottom: #000 1px solid;
    width: 80%;
    padding-bottom: 10px;
    margin-bottom: 30px;
}

/* ボタンここから */
.blog-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 180px;
    margin: 50px auto 0px;
    padding: .9em 1em;
    border: 1px solid #000000;
    border-radius: 5px;
    background-color: #000;
    color: #fff;
    font-family: "Noto Sans JP", Sans-serif;
    position: relative;
    top: 0px;
    transition: all .3s;
}

.blog-button::after {
    transform: rotate(45deg);
    width: 5px;
    height: 5px;
    margin-left: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    content: '';
}

.blog-button:hover {
    top: -5px;
}

/* ボタンここまで */
/* 農園ブログレスポンシブここから */
@media screen and (max-width: 1110px) {
    .blog-and-facebook {
        display: block;
    }

    .blog {
        margin-left: 20px;
        margin-right: 20px;
    }

    .blog-heading {
        text-align: center;
    }

    .blog-heading img {
        width: 60%;
    }

    .blog-illust {
        position: absolute;
        top: -50px;
        left: auto;
        right: 0px;
        width: 40%;
    }

    .blog-lead {
        text-align: center;
    }

    .blog-content {
        width: 100%;
    }

    .blog-content-img img {
        width: 50%;
    }

    .blog-content-text {
        width: 100%;
    }
}

/* 農園ブログレスポンシブここまで */
/* 農園ブログここまで */

/* Facebookここから */
.facebook-heading {
    text-align: center;
    font-size: 28px;
}

.facebook-post {
    margin-top: 50px;
}

/* Facebookレスポンシブここから */
@media screen and (max-width: 1110px) {
    .facebook {
        margin-top: 100px;
        width: 100%;
    }

    .facebook-post {
        margin: 30px auto 0px;
    }
}

/* Facebookレスポンシブここまで */
/* Facebookここまで */
/* フッターここから */
.footer-global {
    margin-top: 100px;
    background-color: #231815;
    display: flex;
    padding: 50px 20px;
    justify-content: center;
    align-items: center;
}

.footer-logo {
    width: 90%;
    height: 90%;
}

.footer-content {
    display: flex;
}

.footer-address {
    color: #dadada;
    margin-left: 50px;
    margin-right: 50px;
    font-size: 16px;
    line-height: 1.7em;
}

.footer-nav {
    color: #fff;
    display: flex;
    width: 600px;
    justify-content: space-between;
}

.footer-nav-link.is-active {
    color: #BC8F83;
    transition: all 0.3s 0s ease;
}

.footer-nav-link.is-active:hover {
    color: #9c746a;
}

.footer-nav-link {
    transition: all 0.3s 0s ease;
}

.footer-nav-link:hover {
    color: #bd82aa;
}

.footer-button-icon {
    display: flex;
    margin-top: 30px;
    align-items: center;
}

/* ボタンここから */
.footer-button {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 180px;
    color: #000;
    font-family: "Noto Sans JP", Sans-serif;
    position: relative;
    top: 0px;
    transition: all .3s;
    margin-right: 30px;
}

.footer-button:hover {
    top: -5px;
}

/* ボタンここまで */

/* コピーライトここから */
.copy-writer {
    font-family: "Noto Sans JP", Sans-serif;
    text-align: center;
    padding: 10px;
}

/* コピーライトここまで */
/* フッターレスポンシブここから */
@media screen and (max-width: 1110px) {
    .footer-global {
        display: block;
        text-align: center;
    }

    .footer-logo {
        width: 150px;
    }

    .footer-content {
        display: block;
        margin-top: 30px;
    }

    .footer-nav {
        width: 90%;
        margin: 0 auto;
        flex-wrap: wrap;
        justify-content: space-evenly;
        margin-top: 10px;
    }

    .footer-nav .footer-nav-link {
        padding-left: 10px;
        padding-right: 10px;
        padding-top: 15px;
    }

    .footer-button-icon {
        margin-top: 30px;
        justify-content: space-between;
        margin-left: 10vw;
        margin-right: 10vw;
    }

}

/* フッターレスポンシブここまで */
/* フッターここまで */

/* トップここまで */
/* 葡萄ページここから */
/* メインビジュアルここから */
.motogrape-main-visual {
    background: url(../images/motogrape_main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 800px;
    padding: 300px 10% 0px;
}

.motogrape-main-heading {
    max-width: 45%;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .motogrape-main-visual {
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .motogrape-main-heading {
        max-width: 65%;
        height: auto;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */
/* aboutここから */
.motogrape-about {
    margin-top: 100px;
}

.motogrape-about-lead {
    font-size: 26px;
}

.motogrape-about-text {
    line-height: 1.7em;
    margin-top: 20px;
}

.motogrape-about-concept {
    text-align: center;
}

.motogrape-about-img {
    width: 60%;
    height: 100%;
}

.motogrape-about-item1 {
    margin-top: 150px;
    display: flex;
}

.motogrape-about-item2 {
    margin-top: 100px;
    display: flex;
    flex-direction: row-reverse;
}

.motogrape-about-item-content {
    margin-left: 50px;
    margin-right: 50px;
}

/* aboutレスポンシブここから */
@media screen and (max-width: 1110px) {
    .motogrape-about-lead {
        font-size: 22px;
    }

    .motogrape-about-concept {
        margin-left: 20px;
        margin-right: 20px;
    }

    .motogrape-about-img {
        width: 100%;
        height: 100%;
    }

    .motogrape-about-item1 {
        display: block;
    }

    .motogrape-about-item2 {
        display: block;
    }

    .motogrape-about-item-content {
        margin: 10px 20px 0;
    }
}

/* aboutレスポンシブここまで */
/* aboutここまで */
/* ラインナップここから */
.motogrape-list {
    background-color: #F2E9D8;
    margin: 100px 0 -100px;
    padding: 100px 0 200px;
    position: relative;
    z-index: 100;
}

.motogrape-list-title {
    text-align: center;
    font-size: 30px;
}

.motogrape-list-illust {
    width: 300px;
    position: absolute;
    z-index: -150;
    top: 0;
    right: 20%;
}

.motogrape-lineup {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.motogrape-lineup-wrapper {
    display: flex;
}

.motogrape-lineup-content {
    margin-top: 100px;
    margin-left: 20px;
    margin-right: 20px;
}

.motogrape-lineup-product-name {
    font-size: 26px;
    margin-top: 20px;
}

.motogrape-lineup-img {
    width: 500px;
    height: auto;
}

.motogrape-lineup-text {
    width: 500px;
    margin-top: 20px;
}

/* ラインナップレスポンシブここから */
@media screen and (max-width: 1110px) {
    .motogrape-list-illust {
        width: 200px;
        top: 30px;
        left: 30px;
    }

    .motogrape-lineup {
        display: block;
    }

    .motogrape-lineup-wrapper {
        display: block;
    }

    .motogrape-lineup-content {
        margin-top: 100px;
        margin-left: 0px;
        margin-right: 0px;
    }

    .motogrape-lineup-product-name {
        font-size: 18px;
    }

    .motogrape-lineup-img {
        width: 100%;
        height: auto;
    }

    .motogrape-lineup-text {
        width: 100%;
    }
}

/* ラインナップレスポンシブここから */
/* ラインナップここまで */
/* 葡萄ページここまで */

/* しらはた農園motoここから */
/* メインビジュアルここから */
.shirahatamoto-main-visual {
    background: url(../images/shirahatamoto_main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 800px;
    padding: 270px 10% 0px;
    text-align: center;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-main-visual {
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .shirahata-main-heading {
        max-width: 65%;
        height: auto;
    }
}

/* メインビジュアルレスポンシブここまで */
/* historyここから */
.shirahatamoto-history {
    margin-top: 100px;
}

.shirahatamoto-history .inner {
    width: 1100px;
    max-width: 89.3333333333vw;
    margin: auto;
}

.shirahatamoto-history-people {
    width: 70%;
    height: 100%;
}

.shirahatamoto-self-introduction {
    display: flex;
}

.shirahatamoto-self-introduction-content {
    margin-top: 150px;
    margin-left: 100px;
    text-align: center;
}

.shirahatamoto-self-introduction-profession {
    font-size: 20px;
    margin-top: 20px;
}

.shirahatamoto-self-introduction-name {
    font-size: 43px;
    margin-top: 25px;
}

.shirahatamoto-self-introduction-name-img {
    margin-top: 35px;
    margin-left: -350px;
}

.shirahatamoto-history-text-wrapper {
    margin-top: 30px;
    line-height: 1.7em;
    position: relative;
}

.shirahatamoto-history-text {
    margin-bottom: 20px;
}

.shirahatamoto-history-illust {
    width: 300px;
    position: absolute;
    bottom: -100px;
    right: 0;
    z-index: -9999;
}

/* historyレスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-history {
        margin-top: 50px;
    }

    .shirahatamoto-history-people {
        width: 100%;
        height: 100%;
    }

    .shirahatamoto-self-introduction {
        display: block;
    }

    .shirahatamoto-self-introduction-content {
        margin-top: 30px;
        margin-left: 0px;
        text-align: center;
    }

    .shirahatamoto-self-introduction-profession {
        font-size: 16px;
    }

    .shirahatamoto-self-introduction-name {
        font-size: 20px;
    }

    .shirahatamoto-self-introduction-name-img {
        margin-top: 30px;
        margin-left: 0px;
        width: 240px;
    }

    .shirahatamoto-history-illust {
        width: 20%;
        bottom: -50px;
    }
}

/* historyレスポンシブここまで */
/* historyここまで*/
/* ABOUTここから */
.shirahatamoto-about {
    background: url(../images/shirahatamoto_about_back.jpg);
    background-position: left;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 70px 0px;
}

.shirahatamoto-about .inner {
    width: 1100px;
    max-width: 89.3333333333vw;
    margin: auto;
}

.shirahatamoto-about-heading {
    font-size: 30px;
    text-align: center;
}

.shirahatamoto-about-farm-name {
    text-align: center;
    margin-top: 15px;
}

.shirahatamoto-about-content {
    display: flex;
    margin-top: 30px;
}

.shirahatamoto-about-content-map {
    width: 530px;
    height: 100%;
    margin-right: 30px;
}

.shirahatamoto-about-content-text {
    line-height: 1.7em;
    margin-bottom: 25px;
}

/* ABOUTレスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-about {
        padding-bottom: 100px;
    }

    .shirahatamoto-about-heading {
        font-size: 24px;
    }

    .shirahatamoto-about-content {
        display: block;
    }

    .shirahatamoto-about-content-map {
        width: 100%;
        margin-right: 0px;
    }

    .shirahatamoto-about-content-info {
        margin-top: 20px;
    }
}

/* ABOUTレスポンシブここまで */
/* ABOUTここまで */
/* 製造方法ここから */
.shirahatamoto-production-method {
    margin-top: 100px;
}

.shirahatamoto-production-method-heading {
    font-size: 26px;
    text-align: center;
}

/* 画像スライダーここから */
.slider {
    margin: 30px auto 0;
    max-width: 1050px;
    width: 80%;
}

.slick-content {
    padding: 0 10px;
}

.slick-content img {
    height: auto;
    width: 100%;
}

.slick-next:before {
    color: #6f004c !important;
}

.slick-prev:before {
    color: #6f004c !important;
}

.slick-text {
    text-align: center;
    margin: 10px 0;
}

/* 画像スライダーここまで */
/* 製造方法レスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-production-method-heading {
        font-size: 18px;
    }
}

/* 製造方法レスポンシブここまで */
/* 製造方法ここまで */
/* イベントここから */
.shirahatamoto-event {
    margin-top: 200px;
}

.shirahatamoto-event-heading {
    font-size: 30px;
    text-align: center;
}

.shirahatamoto-event-lead {
    text-align: center;
    margin-top: 15px;
    line-height: 1.7em;
}

.shirahatamoto-event-harvest {
    margin-top: 100px;
    background: url(../images/shirahatamoto_event_back.jpg)no-repeat;
    background-size: 100% 50%;
    padding-top: 50px;
    display: flex;
    position: relative;
}

.shirahatamoto-event-harvest-img {
    width: 50%;
    height: 100%;
}

.shirahatamoto-event-harvest-content {
    margin-left: 50px;
    width: 25%;
}

.shirahatamoto-event-harvest-content-heading {
    margin-bottom: 30px;
}

.shirahatamoto-event-text {
    margin-top: 40px;
    line-height: 1.7em;
}

.shirahatamoto-event-harvest-illust {
    width: 20%;
    position: absolute;
    z-index: -100;
    right: 7%;
    bottom: -10%;
    ;
}

.shirahatamoto-event-tasting-party {
    margin-top: 250px;
    background: url(../images/shirahatamoto_event_back.jpg)no-repeat;
    background-size: 100% 50%;
    padding-top: 50px;
    display: flex;
    position: relative;
    flex-direction: row-reverse;
}

.shirahatamoto-event-tasting-party-img {
    width: 50%;
    height: 100%;
}

.shirahatamoto-event-tasting-party-content {
    margin-right: 50px;
    width: 25%;
}

.shirahatamoto-event-tasting-party-content-heading {
    margin-bottom: 30px;
}

.shirahatamoto-event-tasting-party-illust {
    width: 35%;
    position: absolute;
    z-index: -100;
    left: 5%;
    bottom: -10%;
}

/* イベントレスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-event-harvest {
        display: block;
        background-size: 100% 20%;
    }

    .shirahatamoto-event-harvest-img {
        width: 100%;
    }

    .shirahatamoto-event-harvest-content {
        margin-left: 20px;
        margin-right: 20px;
        width: 90%;
    }

    .shirahatamoto-event-harvest-content-heading {
        margin: 10px auto 0px;
        display: block;
    }

    .shirahatamoto-event-text {
        margin-top: 30px;
    }

    .shirahatamoto-event-harvest-illust {
        width: 30%;
    }

    .shirahatamoto-event-tasting-party {
        margin-top: 100px;
        background-size: 100% 20%;
        display: block;
    }

    .shirahatamoto-event-tasting-party-img {
        width: 100%;
    }

    .shirahatamoto-event-tasting-party-content {
        margin-left: 20px;
        margin-right: 20px;
        width: 90%;
    }

    .shirahatamoto-event-tasting-party-content-heading {
        margin: 10px auto 0px;
        display: block;
    }

    .shirahatamoto-event-tasting-party-illust {
        width: 50%;
    }
}

/* イベントレスポンシブここまで */
/* イベントここまで */
/* アクセスここから */
.shirahatamoto-access {
    margin-top: 300px;
    margin-bottom: -50px;
}

.shirahatamoto-access-heading {
    text-align: center;
    font-size: 30px;
}

.shirahatamoto-access-text {
    text-align: center;
    line-height: 1.7em;
    margin-top: 15px;
}

.shirahatamoto-access-map {
    display: flex;
    justify-content: space-evenly;
    flex-direction: row-reverse;
    margin-top: 80px;
}

.shirahatamoto-access-map-text {
    margin-bottom: 30px;
    line-height: 1.7em;
}

.shirahatamoto-access-googlemap {
    width: 530px;
    height: 500px;
}

/* アクセスレスポンシブここから */
@media screen and (max-width: 1110px) {
    .shirahatamoto-access {
        margin-top: 150px;
    }

    .shirahatamoto-access-map {
        display: block;
        margin-top: 40px;
    }

    .shirahatamoto-access-googlemap {
        width: 100%;
        height: 250px;
    }

    .shirahatamoto-access-map-content {
        margin-top: 20px;
    }
}

/* アクセスレスポンシブここまで */
/* アクセスここまで */
/* しらはた農園motoここまで */


/* ワインページここから */

/* メインビジュアルここから */
.wine-main-visual {
    background: url(../images/wine_main_visual_back2.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 150px 5% 10px;
}

.wine-main-visual .main-visual-banner-and-illustration-pc {
    margin-top: 20px;
    margin-bottom: 10px;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .wine-main-visual {
        background: url(../images/wine_main_visual_back2_sp.jpg);
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .wine-main-heading {
        max-width: 65%;
        height: auto;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */

/* ワイン説明ここから */
.wine-explanation {
    background: url(../images/wine_explanation_back.png);
    background-position: left center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 90vh;
}

.wine-explanation-text {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    margin: 0 auto;
    padding-top: 250px;
    line-height: 3em;
    font-size: 22px;
    font-weight: bold;
}

/* ワイン説明レスポンシブここから */
@media screen and (max-width: 1110px) {
    .wine-explanation {
        background: none;
        height: 100%;
        margin-top: 20px;
    }

    .wine-explanation-text {
        padding-top: 20px;
        line-height: 3.5em;
        font-size: 16px;
    }
}

/* ワイン説明レスポンシブここまで */
/* ワイン説明ここまで */
/* ワインショップここから */
.wine-shop {
    margin-top: 50px;
}

.wine-shop .inner {
    width: 1100px;
    max-width: 89.3333333333vw;
    margin: auto;
}

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

.wine-shop-illust {
    width: 320px;
    margin: 0 auto;
    display: block;
}

.wine-shop-title {
    text-align: center;
    font-size: 30px;
    margin-top: 100px;
}

.wine-shop-red-wine {
    display: flex;
    margin-top: 30px;
}

.wine-shop-img {
    width: 550px;
    height: 100%;
}

.wine-shop-content {
    margin-left: 20px;
}

.wine-shop-name {
    font-size: 30px;
    font-weight: bold;
    padding-bottom: 50px;
}

.wine-shop-price {
    font-size: 26px;
    font-weight: bold;
    padding-bottom: 30px;
}

.wine-shop-price span {
  font-size: 15px;
}

.wine-shop-text {
    margin-top: 30px;
    padding-bottom: 50px;
    line-height: 1.7em;
}

.wine-shop-detail {
    margin-top: 30px;
    padding-bottom: 50px;
}

.wine-shop-detail-list {
    padding-bottom: 10px;
}

.wine-shop .moto-wine-button {
    text-align: left;
    padding-bottom: 50px;
}

.wine-shop .online-button {
    background-color: #65104a;
    color: #fff;
    width: 180px;
    display: block;
    margin-top: 2rem;
}

.wine-shop .online-button:hover {
    background-color: #a37092;
}

.wine-shop-sparkling {
    margin-top: 200px;
    display: flex;
}

.wine-shop-title-juice {
    text-align: center;
    font-size: 30px;
    margin-top: 200px;
}

.wine-shop-juice {
    margin-top: 30px;
    display: flex;
}

.wine-shop-juice-name-pione {
    font-family: "Roboto", Sans-serif;
    font-size: 14px;
    background-color: #AB7CC7;
    padding: 10px;
    width: 120px;
    text-align: center;
    color: #fff;
    margin-top: 30px;
}

.wine-shop-capacity {
    margin-top: 30px;
}

.wine-shop-juice-name-shine-muscat {
    font-family: "Roboto", Sans-serif;
    font-size: 14px;
    background-color: #7BC588;
    padding: 10px;
    width: 190px;
    text-align: center;
    color: #fff;
    margin-top: 30px;
}

.wine-shop-juice-name-muscat-berry {
    font-family: "Roboto", Sans-serif;
    font-size: 14px;
    background-color: #FD3940;
    padding: 10px;
    width: 220px;
    text-align: center;
    color: #fff;
    margin-top: 30px;
}

.wine-shop-juice-content .wine-shop-price {
    padding-bottom: 0px;
}

/* ワインショップレスポンシブここから */
@media screen and (max-width: 1110px) {

    .wine-shop-red-wine,
    .wine-shop-sparkling,
    .wine-shop-juice {
        display: block;
    }

    .wine-shop-illust {
        width: 220px;
    }

    .wine-shop-img {
        width: 100%;
    }

    .wine-shop-content {
        margin-left: 0px;
        margin-top: 20px;
    }

    .wine-shop-name {
        font-size: 24px;
    }

    .wine-shop-price {
        font-size: 20px;
    }

    .wine-shop-price span {
        font-size: 12px;
    }

    .wine-shop-sparkling {
        margin-top: 100px;
    }

    .wine-shop-title-juice {
        margin-top: 100px;
    }
}

/* ワインショップレスポンシブここまで */
/* ワインショップここまで */
/* ホイリゲここから */
.wine-heurige {
    background: url(../images/wine_heurige_back.jpg)no-repeat left center;
    background-size: cover;
    margin-bottom: -100px;
    margin-top: 150px;
    position: relative;
    z-index: -100;
    padding-bottom: 120px;
}

.wine-heurige .inner {
    width: 1100px;
    max-width: 89.3333333333vw;
    margin: auto;
}

.wine-heurige-heading {
    display: flex;
    align-items: center;
    padding-top: 70px;
}

.wine-heurige-heading-text {
    font-size: 32px;
    padding-right: 30px;
}

.wine-heurige-img-pc {
    position: absolute;
    width: 35%;
    right: 0;
    z-index: -1;
}

.wine-heurige-about {
    margin-top: 30px;
    width: 70%;
}

.wine-heurige-sub-title {
    font-size: 26px;
}

.wine-heurige-text {
    margin-top: 30px;
    line-height: 1.7em;
}

.wine-heurige-img-container {
    display: flex;
    justify-content: space-between;
    margin-top: 80px;
}

.wine-heurige-img {
    width: 32.5%;
}

.wine-heurige-concept .wine-heurige-sub-title {
    margin-top: 30px;
}

/* ホイリゲレスポンシブここから */
@media screen and (max-width: 1110px) {
    .wine-heurige-heading {
        display: block;
        text-align: center;
    }

    .wine-heurige-heading-text {
        padding-right: 0px;
    }

    .wine-heurige-heading-img {
        max-width: 100%;
    }

    .wine-heurige-img-sp {
        width: 100%;
        margin-top: 20px;
    }

    .wine-heurige-about {
        margin-top: 20px;
        width: 100%;
    }

    .wine-heurige-sub-title {
        font-size: 20px;
    }

    .wine-heurige-text {
        margin-top: 20px;
    }

    .wine-heurige-img-container {
        display: block;
    }

    .wine-heurige-img {
        width: 100%;
        padding-top: 10px;
    }
}

/* ホイリゲレスポンシブここまで */
/* ホイリゲここまで */
/* ワインページここまで */

/* ブログここから */
/* メインビジュアルここから */
.blog-main-visual {
    background: url(../images/blogpage_main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 100vh;
    padding: 420px 15% 0px;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .blog-main-visual {
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .blog-main-heading {
        max-width: 65%;
        height: auto;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */

/* ブログ一覧ここから */
.blog-section-wrapper {
    width: 1100px;
    max-width: 89.3333333333vw;
    margin: auto;
    margin-top: 100px;
    display: flex;
    justify-content: center;
}

.blog-section {
    position: relative;
    margin-left: 15px;
    margin-right: 15px;
    background-color: #fff;
    box-shadow: 0 1px 10px 0 rgba(0, 0, 0, .3);
    transition: all 0.3s 0s ease;
    filter: brightness(1.0);
}

.blog-section:hover {
    filter: brightness(1.07);
}

.blog-section-img {
    width: 330px;
    height: 230px;
    object-fit: cover;
}

.blog-item {
    position: absolute;
    right: 20px;
    top: 20px;
    color: #fff;
    background-color: #6f004c;
    padding: 5px 10px;
    border-radius: 70px;
    font-size: 12px;
    display: inline-block;
}

.blog-section-title {
    padding: 25px;
    border-bottom: 1px #d5d5d5 solid;
}

.blog-section-day {
    padding: 15px 25px;
    display: block;
}

/* ブログ一覧レスポンシブここから */
@media screen and (max-width: 1110px) {
    .blog-section-wrapper {
        display: block;
    }

    .blog-section {
        margin-top: 50px;
    }

    .blog-section-img {
        width: 100%;
        object-fit: cover;
    }
}

/* ブログ一覧レスポンシブここまで */
/* ブログ一覧ここまで */
/* ブログここまで */


/* ブログページリンク先ここから */
/* メッセージここから */
.blog-message {
    margin-top: 80px;
    position: relative;
}

.blog-message-text {
    text-align: center;
}

.blog-message-illust {
    position: absolute;
    top: -80px;
    right: 0;
    z-index: -9999;
}

/* メッセージここまで */

/* ブログ内容ここから */
.blog-container {
    margin-top: 100px;
}

.blog-container .inner {
    width: 1100px;
}

.blog-container-wrapper {
    display: flex;
    justify-content: flex-start;
}

.blog-page {
    margin-right: 20px;
}

.blog-calendar {
    display: flex;
    align-items: center;
    margin-left: -10px;
}

.blog-calendar-icon {
    margin-right: 10px;
}

.blog-page-title {
    margin-top: 20px;
    margin-left: -10px;
    padding-bottom: 15px;
    font-size: 30px;
    border-style: dashed;
    border-width: 0px 0px 1px 0px;
    border-color: #707070;
}

.blog-page-img {
    margin-top: 30px;
    width: 740px;
    height: auto;
}

.blog-page-text-wrapper {
    margin-top: -5px;
}

.blog-page-text {
    margin-top: 30px;
    line-height: 1.7em;
    width: 740px;
}

.blog-icon-wrapper {
    display: flex;
    margin-top: 150px;
}

.blog-facebook {
    display: flex;
    align-items: center;
    background-color: #3b5998;
    color: #fff;
    padding: 7px;
    width: 75px;
    transition: all 0.3s 0s ease;
}

.blog-facebook:hover {
    background-color: #3f71de;
}

.blog-facebook-text {
    margin-left: 10px;
    font-size: 12px;
}

.blog-twitter {
    display: flex;
    align-items: center;
    background-color: #1da1f2;
    color: #fff;
    padding: 7px;
    width: 87px;
    transition: all 0.3s 0s ease;
}

.blog-twitter:hover {
    background-color: #1dbdf2;
}

.blog-twitter-text {
    margin-left: 10px;
    font-size: 12px;
}

.blog-page-button-wrapper {
    margin-top: 20px;
    text-align: center;
}

.blog-page-button {
    background-color: #6F004C;
    padding: 8px 30px;
    color: #fff;
    transition: all 0.3s 0s ease;
}

.blog-page-button:hover {
    background-color: #43002e;
}

.blog-page-change-wrapper {
    display: flex;
    align-items: center;
    height: 50px;
    margin-top: 40px;
}

.blog-page-change-previous {
    display: flex;
    align-items: center;
}

.blog-page-change-previous-triangle {
    width: 10px;
    height: 10px;
    clip-path: polygon(0% 50%, 100% 100%, 100% 0%);
    background-color: #000;
    margin-right: 30px;
}

.blog-page-change-line {
    background-color: #000000;
    height: 100%;
    width: 1px;
    margin: 0 auto;
}

.blog-page-change-next {
    display: flex;
    align-items: center;
}

.blog-page-change-next-triangle {
    width: 10px;
    height: 10px;
    clip-path: polygon(0 0, 0% 100%, 100% 50%);
    background-color: #000;
    margin-left: 30px;
}

.blog-container-tag {
    margin-top: 50px;
}

.blog-container-tag-text {
    color: #0170B9;
    transition: all 0.3s 0s ease;
    margin-top: 8px;
}

.blog-container-tag-text:hover {
    color: #001d30;
}

.blog-container-tag-archive {
    margin-top: 200px;
}

/* ブログ内容レスポンシブここから */
@media screen and (max-width: 1110px) {
    .blog-container-wrapper {
        display: block;
    }

    .blog-page {
        margin-right: 0px;
    }

    .blog-page-img {
        width: 100%;
    }

    .blog-page-text {
        width: 100%;
    }

    .blog-page-button-wrapper {
        margin-top: 50px;
    }

    .blog-container-tag-archive {
        margin-top: 50px;
    }
}

/* ブログ内容レスポンシブここまで */
/* ブログ内容ここまで */
/* ブログページリンク先ここまで */


/* ブログアーカイブページここから */
.blog-archive {
    background-color: #f8f8f8;
    padding-top: 150px;
    padding-bottom: 70px;
}

.blog-archive .blog-container {
    margin-top: 0px;
}

.blog-archive .blog-page {
    background-color: #fff;
    padding-left: 100px;
    padding-right: 200px;
}

.blog-archive-heading {
    font-size: 40px;
    background-color: #eee;
    padding: 70px 100px;
    margin-left: -100px;
    margin-right: -200px;
}

.blog-archive-page-title {
    font-size: 30px;
    margin-top: 20px;
}

.blog-archive .blog-page-img {
    width: 480px;
    margin-top: 100px;
}

.blog-archive .blog-page-text {
    width: 480px;
}

.blog-archive-page {
    padding-bottom: 100px;
    border-bottom: 1px solid #eee;
}

.blog-archive-footer {
    margin-top: 0px;
}

.blog-archive-read-more {
    color: #0170B9;
}

.blog-archive-read-more:hover {
    color: #001d30;
}

/* ブログアーカイブページレスポンシブここから */
@media screen and (max-width: 1110px) {
    .blog-archive .blog-page {
        padding-left: 30px;
        padding-right: 30px;
    }

    .blog-archive-heading {
        padding: 30px 20px;
        margin-left: -30px;
        margin-right: -30px;
    }

    .blog-archive .blog-page-img {
        width: 100%;
        margin-top: 20px;
    }

    .blog-archive .blog-page-text {
        width: 100%;
    }

    .blog-archive-page {
        padding-bottom: 40px;
    }
}

/* ブログアーカイブページレスポンシブここまで */
/* ブログアーカイブページここまで */
/* お問い合わせここから */

/* お問い合わせここまで */
/* メインビジュアルここから */
.inquiry-main-visual {
    background: url(../images/inquiry_main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 100vh;
    padding: 420px 0% 0px;
    text-align: center;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .inquiry-main-visual {
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .inquiry-main-heading {
        max-width: 65%;
        height: auto;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */


/* お問い合わせ導入ここから */
.inquiry-mail-img {
    width: 115px;
    margin: 100px auto 0px;
    display: block;
}

.inquiry-heading {
    font-size: 26px;
    margin-top: 50px;
    text-align: center;
    margin-bottom: 100px;
}

/* お問い合わせ導入ここまで */
/* フォームここから */
.form.inner {
    width: 1100px;
}

.form-title {
    margin-left: -200px;
}

.form-box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #ddd;
    padding-bottom: 50px;
    padding-top: 50px;
}

.form-box-content {
    display: flex;
    align-items: center;
    margin-right: 100px;
}

.form-box-access {
    display: flex;
    align-items: center;
    margin-left: 120px;
    padding-top: 50px;
}

.form-title-access {
    margin-right: 20px;
}

.form-box-access-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 20px;
    margin-right: 100px;
}

.form-box-access-content-last {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-right: 100px;
    border-bottom: 1px solid #ddd;
    padding-bottom: 50px;
}

/* テキストボックスにボーダーを追加するスタイル */
textarea,
input[type="text"],
input[type="email"] {
    border: 1px solid #ccc;
    /* ボーダーのスタイルを指定 */
    padding: 8px;
    /* テキストボックス内のコンテンツとボーダーの距離を調整 */
    box-sizing: border-box;
    /* ボーダーとパディングを含めたボックスサイズの指定 */
    width: 100%;
    /* ボックスの幅を100%に指定 */
}

/* 送信ボタンにもスタイルを追加 */
input[type="submit"] {
    padding: 15px 20px;
    /* ボタン内のパディングを調整 */
    background-color: #6f004c;
    /* ボタンの背景色を指定 */
    color: white;
    /* ボタンの文字色を指定 */
    transition: all 0.3s 0s ease;
    width: 60%;
    text-align: center;
    margin: 50px auto 0;
    display: block;
}

input[type="submit"]:hover {
    background-color: #fff;
    /* ボタンの背景色を指定 */
    color: #6f004c;
    /* ボタンの文字色を指定 */
    border: #000 1px solid;
}

.required {
    background-color: #65104a;
    font-size: 12px;
    color: #fff;
    padding: 6px;
    margin-right: 30px;
}

.any {
    background-color: #999;
    font-size: 12px;
    color: #fff;
    padding: 6px;
}

.form-tel-text {
    font-size: 22px;
    margin-top: 100px;
}

.form-caution {
    margin-top: 20px;
}

.form-tel {
    text-align: center;
}

.tel-button {
    display: inline-block;
    text-align: center;
    transition: 0.5s;
    background-size: 200% auto;
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.15);
    background-image: linear-gradient(to right, #FFFFFF 0%, #FFFFFF 51%, #6F004C 100%);
    text-decoration: none;
    border-radius: 0px;
    padding: 10px 30px 10px 30px;
    color: #000000;
    border-style: solid;
    border-width: 1px 1px 1px 1px;
    border-color: #6F004C;
    margin-top: 20px;
}

.tel-button:hover {
    background-position: right center;
    color: #fff;
}

/* フォームレスポンシブここから */
@media screen and (max-width: 1110px) {
    .inquiry-heading {
        font-size: 18px;
        margin-bottom: 50px;
    }

    .form-box {
        display: block;
    }

    .form-title {
        margin-left: 0px;
    }

    .form-box-content {
        display: block;
        margin-right: 0px;
    }

    .required {
        margin-right: 0px;
        width: 38px;
    }

    .form-box-access {
        justify-content: space-between;
        margin-left: 0px;
        margin-bottom: 20px;
    }

    .form-box-access-content {
        display: block;
        margin-right: 0px;
    }

    .form-box-access-content-last {
        display: block;
        margin-right: 0px;
        padding-right: 0px;
    }

    .form-access-title {
        margin-bottom: 10px;
    }

    .required {
        margin: -20px 0 20px auto;
    }
}

/* フォームレスポンシブここまで */
/* フォームここまで */

/* 追加CSS */

.txtlinks {
    color: #65104a;
    transition: all 0.5s;
}

.txtlinks:hover {
    opacity: 0.6;
}

.shirahatamoto-rental {
    margin: 3rem 0 0 0;
    padding: 3rem 0 0 0;
    text-align: center;
    border-top: 1px dotted #999;
}

.shirahatamoto-rental p {
    line-height: 1.7rem;
}

@media (width < 767px) {
    .shirahatamoto-rental {
        text-align: justify;
    }
}

/* コラボレーションページここから */
/* メインビジュアルここから */
.collabo-main-visual {
    background: url(../images/collabo_main_visual_back.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 800px;
    padding: 270px 10% 0px;
    text-align: center;
}

.collabo-main-visual img {
    width: 52%;
}

/* メインビジュアルレスポンシブここから */
@media screen and (max-width: 1110px) {
    .collabo-main-visual {
        min-height: 290px;
        padding: 120px 5% 50px;
    }

    .collabo-main-heading {
        max-width: 65%;
        height: auto;
    }
}

@media screen and (max-width: 768px) {
    .collabo-main-heading {
        max-width: 75%;
    }

    .collabo-main-visual img {
        width: auto;
    }
}

@media screen and (max-width: 590px) {
    .collabo-main-heading {
        max-width: 80%;
    }

    .collabo-main-visual {
        padding: 140px 5% 50px;
    }
}

/* メインビジュアルレスポンシブここまで */
/* メインビジュアルここまで */

/* コラボレーション玉木 新雌紹介ここから */
.collabo-introduction {
    margin: 120px 0;
}

.collabo-introduction-box {
    width: 1100px;
    display: flex;
    align-items: center;
    margin: 0 auto 48px;
}

.collabo-introduction-logo {
    margin: 0 0 80px;
}

.collabo-introduction-name-box {
    text-align: center;
    margin: 0 0 0 74px;
}

.collabo-introduction-role {
    font-size: 20px;
    line-height: 1.25;
    margin: 0 0 10px;
    letter-spacing: 0.06em;
}

.collabo-introduction-name {
    font-size: 40px;
    letter-spacing: 0.06em;
}

.collabo-introduction-img {
    width: 66.3%;
    position: relative;
    margin: 0 0;
}

.collabo-introduction-img img {
    width: 100%;
}

.collabo-introduction-img:before {
    content: "";
    background-image: url(../images/collabo_feature_intro_name_en.svg);
    width: 353px;
    height: 63px;
    transform: rotate(-9deg);
    position: absolute;
    top: 19px;
    left: -38px;

}

.collabo-introduction-text {
    width: 1100px;
    margin: auto;
}

.collabo-introduction-text p {
    width: 100%;
    line-height: 1.5;
}

.collabo-introduction-text p:nth-of-type(1) {
    margin: 0 0 20px;
}

.collabo-introduction-text p:nth-of-type(2) {
    line-height: 1.7;
}

.collabo-introduction-box {
    margin: 0 auto 30px;
}

/* コラボレーション玉木 新雌紹介レスポンシブここから */
@media screen and (max-width: 1110px) {
    .collabo-introduction {
        margin: 70px 0;
    }

    .collabo-introduction-box {
        width: 100%;
        flex-direction: column;
    }

    .collabo-introduction-text {
        width: 100%;
    }

    .collabo-introduction-img {
        width: 100%;
    }

    .collabo-introduction-img:before {
        width: 230px;
        height: 41px;
        background-size: 100%;
        left: -16px;
    }

    .collabo-introduction-name-box {
        margin: 0;
    }

    .collabo-introduction-logo {
        width: 130px;
        margin: 0 auto 30px;
    }

    .collabo-introduction-logo img {
        width: 100%;
    }

    .collabo-introduction-role {
        font-size: 15px;
        margin: 0 0 10px;
    }

    .collabo-introduction-name {
        font-size: 27px;
    }

    .collabo-introduction-img {
        margin: 0 0 40px;
    }
}

@media screen and (max-width: 590px) {
    .collabo-introduction-logo {
        width: 100px;
    }

    .collabo-introduction-img:before {
        width: 185px;
        height: 33px;
    }
}

/* コラボレーション玉木 新雌紹介レスポンシブここまで */
/* コラボレーション玉木 新雌紹介ここまで */
/* コラボレーション特徴ここから */
.collabo-feature {
    background-image: url(../images/collabo_feature_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    margin: 0 0 130px;
    padding: 120px 0 140px;
}

.collabo-feature-intro {
    margin: 0 0 80px;
}

.collabo-feature-intro h2 {
    font-size: 38px;
    letter-spacing: 0.06em;
    line-height: 1.6;
    margin: 0 0 40px;
    text-align: center;
}

.collabo-feature-intro p {
    text-align: center;
    line-height: 1.8;
}

.collabo-feature ul li {
    display: flex;
    align-items: center;
}

.collabo-feature ul li:nth-of-type(even) {
    flex-direction: row-reverse;
}

.collabo-feature ul li:nth-of-type(even) .collabo-feature-text {
    margin: 0 50px 0 0;
}

.collabo-feature ul li:nth-of-type(odd) .collabo-feature-text {
    margin: 0 0 0 50px;
}

.collabo-feature-img {
    width: 59.6%;
    height: 520px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}

.collabo-feature ul li:not(:last-child) {
    margin: 0 0 100px;
}

.collabo-feature ul li:nth-of-type(1) .collabo-feature-img {
    background-image: url(../images/collabo_feature_1.jpg);
    background-position: right;
}

.collabo-feature ul li:nth-of-type(2) .collabo-feature-img {
    background-image: url(../images/collabo_feature_2.jpg);
}

.collabo-feature-text {
    width: 28%;
}

.collabo-feature-text p {
    line-height: 1.8;
}

.collabo-feature-text h3 {
    font-size: 30px;
    letter-spacing: 0.05em;
    margin: 0 0 40px;
    line-height: 1.563;
}

/* コラボレーション特徴レスポンシブここから */
@media screen and (max-width: 1110px) {
    .collabo-feature {
        margin: 0 0 70px;
        padding: 60px 0 70px;
    }

    .collabo-feature-intro h2 {
        font-size: 24px;
        margin: 0 0 20px;
    }

    .collabo-feature-intro {
        margin: 0 0 50px;
    }

    .collabo-feature-text h3 {
        font-size: 20px;
        margin: 0 0 15px;
    }

    .collabo-feature ul li {
        flex-direction: column;
    }

    .collabo-feature-img {
        width: 85%;
        height: 280px;
        margin: 0 0 20px;
    }

    .collabo-feature ul li:nth-of-type(even) {
        flex-direction: column;
    }

    .collabo-feature ul li:nth-of-type(odd) .collabo-feature-text {
        margin: 0;
    }

    .collabo-feature ul li:nth-of-type(even) .collabo-feature-text {
        margin: 0;
    }

    .collabo-feature-text {
        width: 80%;
    }

    .collabo-feature ul li:nth-of-type(odd) .collabo-feature-img {
        margin-left: auto;
    }

    .collabo-feature ul li:nth-of-type(even) .collabo-feature-img {
        margin-right: auto;
    }

    .collabo-feature ul li:not(:last-child) {
        margin: 0 0 60px;
    }
}

@media screen and (max-width: 768px) {
    .collabo-feature-intro h2 {
        font-size: 22px;
        margin: 0 0 20px;
    }

    .collabo-feature-img {
        height: 190px;
    }
}


/* コラボレーション特徴レスポンシブここまで */
/* コラボレーション特徴ここまで */
/* コラボレーションモストここから */
.collabo-most h2 {
    font-size: 34px;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 0 50px;
    line-height: 1.6;
}

.collabo-most ul {
    display: flex;
    justify-content: space-between;
    width: 1100px;
    margin: auto;
}

.collabo-most ul li {
    width: 28.9%;
}

.collabo-most ul li a {
    transition: .3s;
}

.collabo-most ul li a:hover {
    opacity: 0.7;
}

.collabo-most ul li h3 {
    font-size: 22px;
    letter-spacing: 0.05em;
    text-align: center;
    margin: 0 0 20px;
}

.collabo-most ul li h3 span {
    font-size: 15px;
}

.collabo-most-text p {
    line-height: 1.75;
}

.collabo-most-img {
    width: 100%;
    margin: 0 0 20px;
}

.collabo-most-img img {
    width: 100%;
}

/* コラボレーションモストレスポンシブここから */
@media screen and (max-width: 1110px) {
    .collabo-most ul {
        width: 100%;
    }

    .collabo-most h2 {
        font-size: 22px;
        margin: 0 0 20px;
    }
}

@media screen and (max-width: 768px) {
    .collabo-most ul {
        width: 100%;
    }

    .collabo-most h2 {
        font-size: 22px;
        margin: 0 0 20px;
    }

    .collabo-most ul li h3 span {
        font-size: 12px;
    }

    .collabo-most ul li h3 {
        font-size: 18px;
    }
}

@media screen and (max-width: 590px) {
    .collabo-most ul {
        flex-direction: column;
    }

    .collabo-most ul li {
        width: 100%;
    }

    .collabo-most h2 {
        font-size: 18px;
    }

    .collabo-most ul li:not(:last-child) {
        margin: 0 0 40px;
    }

    .collabo-most-img {
        margin: 0 0 10px;
    }
}

/* コラボレーションモストレスポンシブここまで */
/* コラボレーションモストここまで */
/* コラボレーションページここまで */

/* コラボレーション説明ここから */
.collabo-explanation {
    margin: 0 0 120px;
}

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

.collabo-explanation-img {
    width: 45%;
}

.collabo-explanation-img img {
    width: 100%;
}

.collabo-explanation-text {
    width: 47%;
}

.collabo-explanation-text h2 {
    font-size: 30px;
    margin: 0 0 30px;
}

.collabo-explanation-text p {
    line-height: 1.75;
}

.collabo-explanation-text p:not(:last-child) {
    margin: 0 0 20px;
}

/* コラボレーションモストレスポンシブここから */
@media screen and (max-width: 590px) {
    .collabo-explanation {
        margin: 0 0 80px;
    }
    
    .collabo-explanation-box {
        flex-direction: column;
    }
    
    .collabo-explanation-img {
        width: 100%;
        margin: 0 0 30px;
    }
    
    .collabo-explanation-text {
        width: 100%;
    }
}
/* コラボレーションモストレスポンシブここまで */
/* コラボレーション説明ここまで */
/* コラボレーションここまで */