@charset "utf-8";

/* メインカラー：黄　#F3C008 アクセントカラー：水色　#0086AB フォント：こげ茶　#3D3002*/

/* 全ページ共通の設定 */
* {
    box-sizing: border-box;
}

html {
    font-size: 16px;
    font-family: sans-serif;
    line-height: 1.6;
    color: #3D3002;
    scroll-behavior: smooth;
}

body {
    margin: 0;
    padding: 0;
}

/* リンクの設定 */
a:link {
    color: #0086AB;
    text-decoration: none;
}

a:visited {
    color: #0086AB;
    text-decoration: none;
}

a:hover {
    color: #3D3002;
    text-decoration: underline;
}

a:active {
    color: #3D3002;
    text-decoration: underline;
}

/* ふわっと表示の制御 */
.view {
    opacity: 0;
    transform: translate(0, 70px);
    transition: all 500ms;
}

.view.scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

/* 画像のレスポンシブ */
img {
    max-width: 100%;
    height: auto;
}

/* 見出しの設定 */
h1 {
    font-size: 2.2rem;
}

h2 {
    font-size: 1.6rem;
    text-align: center;
    margin: 70px 0 0 0;
    color: #F3C008;
    padding: 60px 0 10px 0;
}

h3 {
    font-size: 1.2rem;
    text-align: center;
    margin: 0;
    color: #F3C008;
    padding: 30px 0 10px 0;
}


/* 全ページ共通の設定ここまで */

/* ヘッダーの設定 */
header {
    background-color: #F3C008;
    margin-top: 20px 0 20px 0;
    padding: 20px 0 10px 0;
}

.headercontent {
    max-width: 1366px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    /* border: 2px solid #f00; */
}

.logo {
    margin: 0;
    padding: 10px 90px 0 0;
    /* border: 2px solid #0f0; */
}

nav {
    margin-top: 0;
}

nav ul {
    display: flex;
    justify-content: center;
    list-style-type: none;
    padding: 0;
    gap: 30px;
    color: #fff;
    /* border: 2px solid #0f0; */
}

nav ul li {
    font-weight: bold;
    /* border: 2px solid #00f; */
}

nav a:link {
    color: #fff;
    text-decoration: none;
}

nav a:visited {
    color: #fff;
    text-decoration: none;
}

nav a:hover {
    color: #fff;
    text-decoration: none;
}

nav a:active {
    color: #fff;
    text-decoration: none;
}

/* ヘッダーの設定ここまで */

/* キービジュアルの設定 */
.keyvisual_index,
.keyvisual_shop {
    background-repeat: no-repeat;
    background-position: center top;
    background-size: cover;
    margin: 0 auto;
    padding: 50vh 5vw 4vh 5vw;
    text-align: right;
    max-width: 1920px;
    /* border: 2px solid #f00; */
}

.keyvisual_index {
    background-image: url(../images/top1920_658.JPG);
}

.keyvisual_shop {
    background-image: url(../images/shopkeyvisual1920_648.jpg);
}

.keyvisual {
    margin: 0 auto;
    padding: 0;
    text-align: center;
    max-width: 1920px;
    /* border: 2px solid #f00; */
}

/* キービジュアルの設定ここまで */

/* イントロ文の設定 */
.intro {
    text-align: center;
    /* border: 2px solid #f00; */
}

.intro h2 {
    margin-top: 10px;
}

.intro p {
    max-width: 980px;
    margin: 0 auto;
    font-size: 20px;
    line-height: 2;
}

/* イントロ文の設定ここまで */

/* デザイン一覧の設定 */
.designselect {
    text-align: center;
    /* border: 2px solid #f00; */
}

/*高さを制限しているボックスの要素*/
.container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    position: relative;
    max-width: 1920px;
    height: 416px;
    padding: 20px 20px 80px;
    margin: 20px auto;
    overflow: hidden;
    transition: .4s;
    box-sizing: border-box;
}

/*グラデーションで隠す擬似要素*/
.container:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 12vh;
    background: rgb(0, 0, 0);
    background: linear-gradient(0deg, rgba(255, 255, 255, 1) 70%, rgba(255, 255, 255, 0) 100%);
    transition: .4s;
}

/*クラス付与時のスタイル*/
.container.active:before {
    opacity: 0;
    visibility: hidden;
}

/*ボタンのスタイル*/
.designselect .container button {
    position: absolute;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 18px;
    bottom: -20px;
    width: 180px;
    height: 40px;
    cursor: pointer;
    color: #fff;
    background: #0086AB;
    border: none;
    border-radius: 20px;
}


/* デザイン一覧の設定ここまで */

/* 製品ラインナップの設定 */

.productmain {
    /* border: 2px solid #f00; */
}

.producttext {
    width: 45%;
    margin: 0 auto;
    text-align: center;
    /* border: 2px solid #0f0; */
}

.productimg {
    text-align: left;
    width: 60%;
    margin: 0;
    object-fit: cover;
    /* border: 2px solid #0f0; */
}

.productimg h3 {
    margin: 0;
    padding: 0;
    /* border: 2px solid #0f0; */
}

.product-wrapper {
    max-width: 1920px;
    height: auto;
    margin: 0 auto;
    display: flex;
    align-items: flex-start;
}

.goproduct {
    background: url("../images/product_b.png") no-repeat;
    background-position: top center;
}

.goproduct a {
    display: inline-block;
}

.goproduct a:hover {
    background-color: transparent;
    /* IE6対応 */
}

.goproduct a:hover img {
    visibility: hidden;
}

/* 製品ラインナップの設定ここまで */

/* 製品サブバナーの設定 */
.productsub {
    max-width: 1920px;
    margin: 0 auto;
    background-color: #f0f0f0;
    /* border: 2px solid #f00; */
}

.productsubbunner {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    max-width: 94vw;
    margin: 0 auto;
    gap: 10px;
    /* border: 2px solid #0f0; */
}

.productsubbunner figcaption {
    font-size: 14px;
    text-align: center;
}

/* 製品サブバナーの設定ここまで */

/* サテライトショップ紹介の設定 */

.shopmain {
    /* border: 2px solid #f00; */
}

.shopimg {
    text-align: left;
    width: 65%;
    margin: 0;
    padding: 0;
    /* border: 2px solid #0f0; */
}

.shoptext {
    width: 45%;
    text-align: center;
    /* border: 2px solid #0f0; */
}

.shop-wrapper {
    max-width: 1920px;
    margin: 0 auto;
    height: auto;
    display: flex;
    align-items: flex-start;
}

.goshop {
    background: url("../images/shop_b.png") no-repeat;
    background-position: top center;
}

.goshop a {
    display: inline-block;
}

.goshop a:hover {
    background-color: transparent;
    /* IE6対応 */
}

.goshop a:hover img {
    visibility: hidden;
}

.shop_sub {
    max-width: 1920px;
    margin: 0 auto;
    background-color: #f0f0f0;
    display: flex;
    justify-content: center;
    gap: 20px;
    text-align: center;
}

/* サテライトショップ紹介の設定ここまで */

/* サポート紹介バナーの設定 */

.support {
    padding-bottom: 30px;
    /* border: 2px solid #f00; */
}

.supportsubbunner {
    /* border: 2px solid #0f0; */
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px;
    max-width: 1920px;
    margin: 0 auto;
}

.supportsubbunner figure,
.supportsubbunner figcaption {
    text-align: center;
}

.sub1 {
    background: url("../images/cooking_2.png") no-repeat;
    background-position: center top;
}

.sub2 {
    background: url("../images/supportbunner2_w.png") no-repeat;
    background-position: center top;
}

.sub3 {
    background: url("../images/supportbunner3_w.png") no-repeat;
    background-position: center top;
}

.sub1 a,
.sub2 a,
.sub3 a {
    display: inline-block;
}

.sub1 a:hover,
.sub2 a:hover,
.sub3 a:hover {
    background-color: transparent;
    /* IE6対応 */
}

.sub1 a:hover img,
.sub2 a:hover img,
.sub3 a:hover img {
    visibility: hidden;
}

/* サポート紹介バナーの設定ここまで */

/* お知らせの設定 */
.news {
    text-align: center;
    /* border: 2px solid #f00; */
}

.news table {
    max-width: 1366px;
    margin: 0 auto;
    border-collapse: collapse;
}

.news table tr {
    /* text-align: left; */
}

.news table td {
    border-bottom: 1px solid #3D3002;
    padding: 1em 2em;
    /* border: 2px solid #f00; */
}

.news table td:nth-child(1) {
    width: 20%;
}

.news table td:nth-child(2) {
    width: 80%;
}

.news table thead {
    background-color: #fafafa;
    color: #F3C008;
    font-size: 1.2rem;
    font-weight: bold;
    text-align: center;
}

.news table tbody {
    text-align: left;
}

.news table tr:nth-child(even) {
    background-color: #fafafa;
}


/* お知らせの設定ここまで */

/* お問い合わせの設定 */
.contact {
    background-color: #E6E6E6;
    padding-bottom: 30px;
    /* border: 2px solid #f00; */
}

.contact_wrapper {
    display: flex;
    justify-content: center;
    gap: 100px;
}

.button_contact {
    background: url("../images/button_contact_w.png") no-repeat;
}

.button_company {
    background: url("../images/button_company_w.png") no-repeat;
}

.button_contact a,
.button_company a {
    display: inline-block;
}

.button_contact a:hover,
.button_company a:hover {
    background-color: transparent;
    /* IE6対応 */
}

.button_contact a:hover img,
.button_company a:hover img {
    visibility: hidden;
}

/* お問い合わせの設定ここまで */

/* フッターの設定 */
footer {
    margin: 60px 0 0 0;
    padding: 0;
}

.gotop {
    background-image: url(../images/footertopbg.png);
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: contain;
    text-align: center;
}

.footermain {
    background-color: #F3C008;
    padding: 20px 0 20px 0;
    margin: 0;
    /* border: 2px solid #f00; */
}

.footertop {
    display: flex;
    justify-content: center;
    align-items: center;
    padding-bottom: 10px;
}

.footerlogo {
    text-align: center;
    padding-right: 50px;
}

.footernav {
    display: flex;
    justify-content: center;
    gap: 40px;
}

.footernav ul {
    list-style-type: none;
}

.footernav ul li {
    color: #fff;
    line-height: 2;
}

footer h3 {
    color: #3D3002;
    border-bottom: 1px solid #3D3002;
    padding: 0;
    margin: 0;
}

footer p {
    font-size: 12px;
    text-align: center;
    line-height: 2;
    color: #3D3002;
    padding: 0 0 10px 0;
    margin: 0;
}

.footernav a:link {
    color: #fff;
    text-decoration: none;
}

.footernav a:visited {
    color: #fff;
    text-decoration: none;
}

.footernav a:hover {
    color: #fff;
    text-decoration: none;
}

.footernav a:active {
    color: #fff;
    text-decoration: none;
}

.sns {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.snsitem {
    width: 36px;
    height: auto;
}

.copyright p {
    font-size: 16px;
    padding-top: 20px;
    padding-bottom: 10px;
    text-align: center;
    color: #fff;
}

/* フッターの設定ここまで */

/* 個別ページ　product.html */
.product_container {
    display: flex;
    justify-content: center;
    max-width: 1920px;
    margin: 0 auto;

}

.flex_reverse {
    flex-direction: row-reverse;
}

.product_sidebar {
    width: 288px;
    padding-top: 1em;
    /* border: 2px solid #f00; */
}

.product_sidebar h3 {
    color: #F3C008;
    max-width: 100%;
    margin: 60px auto 10px auto;
    padding: 0;
}

.product_sidebar ul {
    list-style-type: none;
    padding-left: 1em;
    /* border: 2px solid #ff0; */
}

.product_sidebar li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 0 0 1em;
}

.product_sidebar ul li img {
    height: 42px;
    width: auto;
}

.product_sidebar p {
    padding-left: 1em;
}

.product_sidebar li {
    display: flex;
}

.product_contents {
    width: 64%;
    margin-left: 1em;
    padding-left: 1em;
    border-left: 1px solid #F3C008;
    /* border: 2px solid #0f0; */
}

.product_contents h3 {
    max-width: 100%;
    margin: 90px auto 10px auto;
    padding: 0;
}

.product_intro {
    text-align: center;
    margin-bottom: 40px;
}

.product_item {
    margin-bottom: 40px;
    /* border: 2px solid #f00; */
}

.product_item figcaption {
    text-align: center;
}

.product_content {
    display: flex;
    justify-content: center;
    align-items: center;
    /* border:2px solid #00f; */
}

.product_item_img {
    width: 40%;
}

.product_item_text {
    width: 52%;
}

.design_variation {
    display: none;
}

.product_buy {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
}

.product_buy button {
    font-size: 18px;
    width: 180px;
    height: 40px;
    cursor: pointer;
    color: #fff;
    background: #0086AB;
    border: none;
    border-radius: 20px;
}

.product_buy .designbutton {
    font-size: 18px;
    width: 240px;
    height: 40px;
    cursor: pointer;
    color: #fff;
    background: #0086AB;
    border: none;
    border-radius: 20px;
}

.price {
    font-weight: bold;
    text-align: center;
}

/* 個別ページ　design.html */
.design_container {
    display: flex;
    justify-content: center;
    max-width: 1920px;
    margin: 0 auto;
}

.design_sidebar {
    width: 288px;
    padding-top: 1em;
    /* border: 2px solid #f00; */
}

.design_sidebar h3 {
    color: #F3C008;
    max-width: 100%;
    margin: 60px auto 10px auto;
    padding: 0;
}

.design_sidebar ul {
    list-style-type: none;
    padding-left: 1em;
    /* border: 2px solid #ff0; */
}

.design_sidebar li {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding: 0 0 0 1em;
}

.design_sidebar ul li img {
    height: 42px;
    width: auto;
}

.design_sidebar p {
    padding-left: 1em;
}

.design_sidebar li {
    display: flex;
}

.design_contents {
    width: 64%;
    margin-left: 1em;
    padding-left: 1em;
    border-left: 1px solid #F3C008;
    /* border: 2px solid #0f0; */
}

.design_contents h3 {
    max-width: 100%;
    margin: 90px auto 10px auto;
    padding: 0;
}


.design_intro {
    text-align: center;
    margin-bottom: 40px;
}

.design_item {
    margin-bottom: 40px;
    /* border: 2px solid #f00; */
}

.design_item figcaption {
    text-align: center;
}

.design_content {
    display: flex;
    justify-content: center;
    align-items: center;
    /* border:2px solid #00f; */
}

.design_item_img {
    width: 40%;
}

.design_item_text {
    width: 52%;
}

.design_buy {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    margin-top: 60px;
}

.design_buy button {
    font-size: 18px;
    width: 180px;
    height: 40px;
    cursor: pointer;
    color: #fff;
    background: #0086AB;
    border: none;
    border-radius: 20px;
}


/* 個別ページ　shop.html */
.shop_intro {
    text-align: center;
}

.shop_service {
    text-align: center;
}

.shop_service_wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 10px;
    max-width: 1920px;
    margin: 0 auto;
    padding: 2rem 10vh;
    background-color: #f0f0f0;
    /* border: 2px solid #00f; */
}

.shop_servicebunner {
    background-color: #fff;
    border-radius: 3%;
    max-width: 480px;
    padding: 10px;
    margin: 0 auto;
    /* border: 2px solid #0ff; */
}

.shop_servicebunner h3 {
    color: #0086AB;
    /* border: 2px solid #0ff; */
}

.shop_service_img {
    max-width: 100%;
    margin: 0 auto;
    /* border: 2px solid #f00; */
}

.shop_service_text {
    width: 350px;
    margin: 0 auto;
    text-align: left;
    /* border: 2px solid #0f0; */
}

.shop_map {
    text-align: center;
}

.shop_map table {
    width: 80%;
    max-width: 1920px;
    margin: 30px auto;
    border-collapse: collapse;
}

.shopinfo tr {
    border-top: 1px solid #3D3002;
    border-bottom: 1px solid #3D3002;
}

.shopinfo tr td {
    padding: 0.5em 1em;
    text-align: left;
}

iframe {
    width: 80%;
    max-width: 1920px;
    height: 450px;
}

/* contact.html */
form {
    max-width: 80%;
    margin: 0 auto;
    color: #3D3002;
}

.contact_radio {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin: 20px;
}

.contact_text {
    width: 100%;
    text-align: center;
}

textarea {
    width: 40vw;
    height: 20vh;
    margin: 20px;
}

input[type="email"] {
    width: 40vw;
    margin: 20px;
}

.contact_submit {
    text-align: center;
}

input[type="submit"] {
    background-color: #0086AB;
    border: none;
    border-radius: 20px;
    color: #fff;
    font-size: 18px;
    margin: 20px;
    padding: 1em 2em;
    cursor: pointer;
}

form p {
    margin: 20px;
    text-align: center;
}

/* モバイル対応 */
@media(max-width: 767px) {
    /* ナビゲーションの設定 */

    header {
        padding-bottom: 20px;
        margin-bottom: 0;
    }

    .headercontent {
        display: block;
    }

    .logo {
        padding: 10px 0;
        text-align: center;
    }

    nav {
        margin: 0;
        padding: 0;
    }

    nav ul {
        justify-content: first baseline;
        flex-wrap: wrap;
        font-size: 14px;
        line-height: 1.2;
        gap: 20px;
        margin: 0 10px 0 0;
        padding: 0;
    }

    nav ul li {
        margin: 0;
        padding: 0;
    }

    /* nav ul li:nth-child(6) {
        display: none;
        text-wrap: wrap;
    } */

    /* ナビゲーションの設定ここまで */

    /* キービジュアルの設定 */
    /* キービジュアルの設定 */
    .keyvisual_index,
    .keyvisual_shop {
        padding: 44vh 0 6vh 0;
        text-align: center;
        /* border: 2px solid #f00; */
    }

    .keyvisual_index h1,
    .keyvisual_shop h1 {
        display: block;
        background: rgba(255, 255, 255, .5);
        margin: 0;
        padding: 1rem;
        text-align: center;
        /* border: 2px solid #f00; */
    }

    /* キービジュアルの設定ここまで */

    /* メインの設定 */
    main p {
        padding: 0 3%;
    }

    .intro p {
        font-size: 16px;
    }

    /* デザインセレクト */
    .container {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

    /* 製品一覧 */
    .product-wrapper {
        display: block;
    }

    .productimg {
        margin: 0;
        padding: 0;
        width: 100%;
    }

    .producttext {
        width: 100%;
        font-size: 14px;
    }

    .goproduct {
        margin: 20px 0;
    }

    .productsub {
        background-color: #fff;
        padding-top: 20px;
    }

    .productsubbunner {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .productsubbunner figure {
        margin: 0 auto;
        width: 80%;
        height: 80%;
    }

    .productsubbunner figcaption {
        font-size: 12px;
    }

    /* ショップ */
    .shop-wrapper {
        display: block;
    }

    .shopimg {
        margin: 0;
        width: 100%;
    }

    .shoptext {
        width: 100%;
        font-size: 14px;
    }

    .goshop {
        margin: 20px 0;
    }

    .shop_sub {
        display: block;
        background-color: #fff;
    }

    /* サポート情報 */
    .support {
        width: 100%;
        background-color: #fff;
        padding-bottom: 30px;
        text-align: center;
        /* border: 2px solid #f00; */
    }

    .supportsubbunner {
        /* border: 2px solid #0f0; */
        display: block;
        width: 100%;
    }

    .supportsubbunner figcaption {
        font-size: 12px;
        text-align: center;
    }

    .sub1,
    .sub2,
    .sub3 {
        background: none;
    }

    .sub1,
    .sub2 {
        padding-bottom: 40px;
    }

    .sub1 a:hover img,
    .sub2 a:hover img,
    .sub3 a:hover img {
        visibility: visible;
    }

    /* お知らせ */
    .news table {
        max-width: 100%;
        margin: 0 auto;
        border-collapse: collapse;
        font-size: 14px;
    }

    .news table td {
        border-bottom: 1px solid #3D3002;
        padding: 0.5em 1em;
        /* border: 2px solid #f00; */
    }

    .news table td:nth-child(1) {
        width: 38%;
    }

    .news table td:nth-child(2) {
        width: 62%;
    }

    /* お問い合わせ */
    .contact {
        background-color: #fff;
        padding-bottom: 30px;
        /* border: 2px solid #f00; */
    }

    .contact_wrapper {
        display: block;
    }

    .button_contact {
        background: none;
        margin-bottom: 20px;
        text-align: center;
    }

    .button_contact a {
        display: inline-block;
    }

    .button_contact a:hover img {
        visibility: visible;
    }

    .button_company {
        background: none;
        text-align: center;
    }

    .button_company {
        background: none;
    }

    .button_company a {
        display: inline-block;
    }

    .button_company a:hover img {
        visibility: visible;
    }

    /* お問い合わせの設定ここまで */
    .gotop {
        background-image: url(../images/footertopbg.png);
        background-position: center bottom;
        background-size: contain;
    }

    .footermain {
        padding: 0 4%;
    }

    .footertop {
        display: block;
    }

    .footerlogo {
        padding: 20px 0 30px 0;
    }

    .sns {
        margin-bottom: 40px;
    }

    .footernav {
        display: block;
    }

    .footernav .company {
        max-width: 60%;
        margin: 0 auto;
    }

    .footernav ul {
        padding-left: 20%;
    }

    /* 個別ページ　shop.html */
    .shop_service_wrapper {
        display: block;
        margin: 0 auto;
        max-width: 100%;
        background-color: #fff;
    }

    .shop_servicebunner {
        display: block;
        margin: 0 auto;
    }

    .shop_service_img {
        max-width: 100%;
        margin: 0 auto;
    }

    .shop_service_text {
        width: 100%;
        margin: 0 auto;
    }

    .shop_service_text p {
        text-align: left;
    }

    .shop_service_text {
        max-width: 100%;
        margin: 0 auto;
    }

    .shop_map table {
        width: 90%;
    }

    .shop_map table tr td {
        display: block;
    }

    .shop_map table tr td:nth-child(1) {
        text-align: center;
        font-weight: bold;
        background-color: #f0f0f0;
        border-bottom: 1px solid #3D3002;
    }

    .shop_map table tr td:nth-child(2) {
        padding: 0;
        margin-top: 8px;
        margin-bottom: 20px;
    }

    iframe {
        width: 90%;
        height: 60vh;
    }

    /* 個別ページ　product.html */
    .flex_reverse {
        flex-direction: column-reverse;
        /* border: 2px solid #f00; */
    }

    .product_container {
        display: block;
        width: 100%;
    }

    .product_sidebar {
        width: 100%;
        margin: 0 auto;
        padding-top: 1em;
        /* border: 2px solid #f00; */
    }

    .product_sidebar h3 {
        margin: 0;
        color: #F3C008;
        margin: 10px 0 10px 0;
    }

    .product_sidebar ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        list-style-type: none;
        /* border: 2px solid #ff0; */
    }

    .product_sidebar li {
        padding: .25em 0 .25em 1em;
    }

    .product_sidebar ul li img {
        height: 42px;
        width: auto;
        padding-left: 0;
    }

    .product_sidebar p {
        width: 120px;
        padding-left: .5em;
    }

    .product_sidebar li {
        display: flex;
    }

    .product_contents {
        width: 100%;
        margin-left: 0;
        padding-left: 0;
        border: none;
        /* border: 2px solid #0f0; */
    }

    .product_intro {
        text-align: center;
        margin-bottom: 40px;
    }

    .product_item {
        margin-bottom: 40px;
        /* border: 2px solid #f00; */
    }

    .product_item figcaption {
        text-align: center;
    }

    .product_content {
        display: block;
        text-align: center;
        /* border: 2px solid #00f; */
    }

    .product_item_img {
        width: 100%;
    }

    .design_variation {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
        gap: 4px;
    }

    .design_variation p,
    .design_variation img {
        margin: 0;
    }

    .design_variation img {
        width: auto;
        height: auto;
    }

    .designbutton {
        display: none;
    }

    .product_item_text {
        text-align: left;
        width: 100%;
    }

    .product_buy {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 20px;
    }

    .product_buy button {
        font-size: 18px;
        width: 180px;
        height: 40px;
        cursor: pointer;
        color: #fff;
        background: #0086AB;
        border: none;
        border-radius: 20px;
    }

    .price {
        font-weight: bold;
    }

    .side_support,
    .side_shop,
    .side_contact {
        display: none;
    }

    /* 個別ページ　design.html */
    .design_container {
        display: block;
        width: 100%;
    }

    .design_sidebar {
        width: 100%;
        margin: 0 auto;
        padding-top: 1em;
        /* border: 2px solid #f00; */
    }

    .design_sidebar h3 {
        margin: 0;
        color: #F3C008;
        margin: 10px 0 10px 0;
    }

    .design_sidebar ul {
        display: grid;
        grid-template-columns: 1fr 1fr;
        list-style-type: none;
        padding-left: 1em;
        /* border: 2px solid #ff0; */
    }

    .design_sidebar li {
        padding: .25em 0 .25em 1em;
    }

    .design_sidebar ul li img {
        height: 42px;
        width: auto;
        padding-left: 0;
    }

    .design_sidebar p {
        width: 120px;
        padding-left: .5em;
    }

    .design_sidebar li {
        display: flex;
    }

    .design_contents {
        width: 100%;
        margin-left: 0;
        padding-left: 0;
        border: none;
        text-align: left;
        /* border: 2px solid #0f0; */
    }

    .design_intro {
        text-align: center;
        margin-bottom: 40px;
    }

    .design_item {
        margin-bottom: 40px;
        /* border: 2px solid #f00; */
    }

    .design_item figcaption {
        text-align: center;
    }

    .design_content {
        display: block;
        /* border:2px solid #00f; */
    }

    .design_item_img {
        width: 100%;
        text-align: center;
    }

    .design_item_text {
        width: 100%;
    }

    .design_buy {
        display: block;
        text-align: center;
    }

    .design_buy button {
        font-size: 18px;
        width: 180px;
        height: 40px;
        cursor: pointer;
        color: #fff;
        background: #0086AB;
        border: none;
        border-radius: 20px;
    }


    /* contact.html */
    form {
        max-width: 94%;
    }

    .contact_radio {
        display: block;
        margin: 20px;
    }

    .contact_text {
        width: 100%;
        text-align: center;
    }

    textarea {
        width: 80vw;
        height: 20vh;
        margin: 20px;
    }

    input[type="email"] {
        width: 60vw;
        margin: 20px;
    }

    .contact_submit {
        margin: 20px;
        text-align: center;
    }

    input[type="submit"] {
        background-color: #0086AB;
        border: none;
        border-radius: 20px;
        color: #fff;
        font-size: 18px;
        margin: 20px;
        padding: 1em 2em;

    }

    form p {
        font-size: 14px;
        margin: 20px;
        text-align: center;
    }

}