* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    font-family: serif, 'Times New Roman', Times ;
}

/* ヘッダー */

header {
    top:0;
    width: 100%;
    height: 10vw;
    z-index: 1000;
    background-color: transparent;
    @media screen and (max-width: 768px) {
        height: 10vw;
        background-color: #121212;
        position: relative;
        top: 0;
    }
}
.header-logo {
    width: auto;
    height: 10vw;
}
#y-logo {
    width: auto;
    height: 100%;
}
.header-toggle {
    position: absolute;
    top: 1vw;
    right: 3vw;
    height: 8vw;
    width: 8vw;
    padding: .3px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 1.6vw;
    cursor: pointer;
    display: none;
    z-index: 1000;
    @media screen and (max-width: 768px){
        display: flex;
    }
    
}
.header-toggle span {
    width: 100%;
    height: .6vw;
    background-color: #ffffff;
    transition: all 0.4s linear;
}        
/* header-toggleをactiveすると×に */
.header-toggle.active span:nth-child(1){
    transform: rotate(45deg) translate(1.6vw, 1.5vw);
    background-color: white;
}
.header-toggle.active span:nth-child(2){
    opacity: 0;
}
.header-toggle.active span:nth-child(3){
    transform: rotate(-45deg) translate(1.6vw, -1.5vw);
    background-color: white;
}


/* ヘッダー　ハンバーガーメニュー実行時 */
#g-nav.panelactive{
    @media screen and (max-width: 768px) {
        /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
        position:fixed;
        z-index: 999;
        top: 0;
        width:100%;
        height: 100vh;
    }
}
#g-nav.panelactive #g-nav-list{
    @media screen and (max-width: 768px) {
        display: block; /*クラスが付与されたら出現*/
    }
}

/* ヘッダー　ナビゲーション */
#g-nav ul {
    position: fixed;
    display: flex;
    top: 0;
    right: 0;
    z-index: 1000;
    @media screen and (max-width: 768px){
        display: block;
        opacity: 0;/*はじめは透過0*/
        /*ナビゲーション天地中央揃え※レイアウトによって調整してください。不必要なら削除*/
        position: absolute;
        pointer-events: none;
        z-index: 3;
        top:50%;
        left:50%;
        transform: translate(-50%,-50%);
    }
}
#g-nav ul li {
    margin-right: 3vw;
    @media screen and (max-width: 768px) {
        margin: 0;
    }
}
/* ヘッダー　背景が出現後にナビゲーションを表示 */
#g-nav.panelactive ul {
    @media screen and (max-width: 768px) {
        opacity:1;
        pointer-events: all;
        
    }
}

/* ヘッダー　背景が出現後にナビゲーション li を表示※レイアウトによって調整してください。不必要なら削除*/
#g-nav.panelactive ul li{
    @media screen and (max-width: 768px) {
        animation-name:gnaviAnime;
        animation-duration:2s;
        animation-delay:.2s;/*0.2 秒遅らせて出現*/
        animation-fill-mode:forwards;
        opacity:0;
    }
}
@keyframes gnaviAnime{
    0% {
    opacity: 0;
    }
    100% {
    opacity: 1;
}
}

/* ヘッダー　リストのレイアウト設定 */
#g-nav li{
    width: 100%;
    height: auto;
    line-height: 7vw;
    list-style: none;
    @media screen and (max-width: 768px){
        text-align: center; 
        line-height: normal;
    }
}
#g-nav li :hover {
    color: aliceblue;
}

#g-nav li a{
    font-family: serif, 'Times New Roman', Times;
    font-size: 1.5vw;
    text-decoration: none;
    color: #9A8D5E;
    @media screen and (max-width: 768px){
        color: #ffffff;
        text-decoration: none;
        padding:10px;
        display: block;
        text-transform: uppercase;
        font-size: 4vw;
        letter-spacing: 0.1em;
        font-weight: bold;
    }
}
.circle-bg{
    position: fixed;
    z-index:3;
    /*丸の形*/
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #000000;
    /*丸のスタート位置と形状*/
    transform: scale(0);/*scaleをはじめは0に*/
    top:calc(50% - 50px);/*50%から円の半径を引いた値*/
    left:calc(50% - 50px);/*50%から円の半径を引いた値*/
    transition: all 1s;/*1秒かけてアニメーション*/
    opacity: .85;
}

.circle-bg.circleactive{
    transform: scale(50);/*クラスが付与されたらscaleを拡大*/
}

/* フッター */

.footer {
    width: 100%;
    height: 10vw;
    background-color: #ffffff;
    font-family: serif, 'Times New Roman', Times ;
    @media screen and (max-width:768px) {
        height: auto;
        padding: 1vw 0;
    }
}
.footer-text-box {
    display: flex;
    width: 85%;
    height: 10vw;
    margin: 0 auto;
    font-size: 1.5vw;
    justify-content: space-between;
    @media screen and (max-width: 768px) {
        height: auto;
        font-size: 2vw;
    }
}
.footer-text {
    width: 50%;
    height: auto;
    text-align: center;
}
.footer-text p {
    padding-top: 1.5vw;
    padding-bottom: 1vw;
    @media screen and (max-width: 768px) {
        padding-top: 2vw;
        padding-bottom: 2vw;
    }
}
.footer-text a {
    text-decoration: none;
    color: rgb(0, 0, 0);
    font-weight: bold;
}
.footer-copy {
    width: 100%;
    height: auto;
    text-align: center;
    color: #ffffff;
    font-size: 1.5vw;
    font-family: serif, 'Times New Roman', Times ;
    @media screen and (max-width: 768px) {
        font-size: 2.3vw;
        background-color: #121212;
    }
}


/* index.ヒーローセクション */

.hero {
    width: 100%;
    height: auto;
}
#hero {
    width: 100%;
    height: auto;
    vertical-align: middle;
}

/* index.カテゴリーセクション */

.top-category-box {
    width: 100%;
    height: auto;
}
.top-category-title {
    width: 100%;
    height: auto;
    padding-top: 1.5vw;
    text-align: center;
    background-color: #121212;
    font-weight: 450;
    color: white;
    letter-spacing: .5vw;
}
.top-category-title p:nth-child(2) {
    font-size: 5vw;
}
.top-category-title p:nth-child(3) {
    margin-top: -2vw;
    font-size: 3.5vw;
}
.top-category-btn {
    width: 95%;
    height: 45vw;
    margin: 2vw auto;
}
.link-btn-box01 {
    position: relative;
    top: 0;
    display: flex;
    width: 100%;
    height: 15vw;
    justify-content: space-between;
}
.link-btn {
    width: 49%;
    height: 91%;
    display: inline-block;
    background-color: #151515;
}
.link-btn img {
    opacity: .5;
    display: block;
}
.link-btn p {
    width: 49%;
    height: 14vw;
    text-align: center;
    position: absolute;
    top: 0;
    color: rgb(255, 255, 255);
    font-size: 4vw;
    font-weight: bold;
    line-height: 14vw;
    z-index: 1;
}
.btn {
    width: 100%;
    height: 100%;
    box-shadow: .5vw .5vw .3vw 0 rgba(0, 0, 0, 0.4);
}

/* index.テキストセクション */

.top-text-box {
    width: 100%;
    height: 70vw;
    margin-top: 16vw;
    background-color: #121212;
}
.li-title {
    width: 100%;
    text-align: center;
    padding-top: 9vw;
}
.li-title p {
    font-size: 5vw;
    color: white;
    letter-spacing: .3vw
}
.li-box {
    width: 80%;
    height: auto;
    margin: 3vw auto 0 auto;
    padding-top: 1vw;
    padding-bottom: 1vw;
    border: solid .3vw white;
}
.li-text-box {
    width: 80%;
    height: auto;
    margin: 0 auto;
}
.li-text-box a {
    text-decoration-color: white;
}
.li-box p {
    font-size: 3.7vw;
    color: white;
    line-height: 10vw;
}
.li-box span {
    margin-left: 13vw;
}

/* index.バナーセクション */

.bunner-box {
    width: 100%;
    height: auto;
    padding-bottom: 5vw;
    background-color: #121212;
}
.bunner-box p {
    text-align: center;
    color: white;
}
.bunner-box img {
    display: block;
    width: 60%;
    margin: 0 auto;
}

/* バーメインページ */

.main-img {
    position: relative;
    width: 100%;
    height: auto;
}
.main-img h1 {
    position: absolute;
    top: 15vw;
    right: 4vw;
    color: white;
    font-size: 12vw;
    letter-spacing: 1vw;
    text-shadow: .8vw .8vw .8vw black;
}
#main-img {
    width: 100%;
    height: auto;
    vertical-align: top;
}
.shop-btn-box {
    width: 100%;
    height: 180vw;
    background-color: #121212;
}
.shop-btn-box a {
    text-decoration: none;
    color: black;
}
.shop-btn-box-border {
    padding-top: 2.5vw;
    width: 100%;
    border-bottom: .3vw solid white;
}
.shop-btn {
    display: flex;
    width: 90%;
    height: 22vw;
    margin: 8vw auto 8vw auto;
    border-radius: 1vw;
    background-color: white;
    box-shadow: 1vw 1vw .4vw 0vw rgba(217, 217, 217, 0.35);
}
.shop-btn-left {
    position: relative;
    width: 50%;
    height: 100%;
    background-color: white;
    border-radius: 1vw 0 0 1vw;
}
.shop-btn-right {
    width: 50%;
    height: 100%;
    background-color: aqua;
    border-radius: 0 1vw 1vw 0;
    overflow: hidden;
}
#shop-right {
    width: 200%;
}
.left-border {
    width: 1vw;
    height: 100%;
    padding-left: 1.5vw;
    border-right: .8vw solid black;
}
.shop-btn-left h2 {
    position: absolute;
    top: 0;
    left: 4vw;
    font-size: 5vw;
    letter-spacing: .2vw;
}
.shop-btn-left p:nth-child(2) {
    position: absolute;
    top: 7vw;
    left: 4vw;
    font-size: 1.7vw;
    line-height: 3.5vw;
}
.shop-btn-left p:nth-child(3) {
    position: absolute;
    top: 11vw;
    left: 14vw;
    font-size: 2.2vw;
    line-height: 2.5vw;
}
.shop-btn-left p:nth-child(4) {
    position: absolute;
    top: 18vw;
    left: 4vw;
    font-size: 2.2vw;
    font-weight: bold;
    line-height: 2.5vw;
}
.shop-btn-left span {
    margin-left: 2vw;
}
.shop-btn-left p:nth-child(5) {
    position: absolute;
    top: 17vw;
    left: 30vw;
    width: 26%;
    height: 4vw;
    text-align: center;
    border-radius: 5vw;
    color: white;
    background-color: black;
    font-size: 2.6vw;
    font-weight: bold;
    line-height: 4vw;
}
.page-link {
    width: 100%;
    height: auto;
    text-align: center;
}
.page-link p {
    font-size: 4vw;
    color: white;
}

/* ショップページ */

.hero-shop {
    width: 100%;
}
#shop-photo {
    width: 100%;
}
.shop-main-box {
    width: 100%;
    height: auto;
    margin-top: -3.5vw;
    background-color: #121212;
    color: white;
}
.shop-name {
    position: relative;
    top: 2vw;
    width: 90%;
    height: auto;
    margin: 0 auto;
}
.shop-name p:nth-child(1) {
    font-size: 9vw;
}
.shop-name p:nth-child(2) {
    position: absolute;
    top: 11vw;
    font-size: 3.5vw;
}
.shop-name p:nth-child(3) {
    position: absolute;
    top: 4.5vw;
    left: 48vw;
    width: 16vw;
    height: 6vw;
    line-height: 6.5vw;
    text-align: center;
    border-radius: 6vw;
    font-size: 4vw;
    background-color: #9A8D5E;
}
.shop-name p:nth-child(4) {
    position: absolute;
    top: 4.5vw;
    left: 70vw;
    width: 16vw;
    height: 6vw;
    line-height: 6.5vw;
    text-align: center;
    border-radius: 6vw;
    font-size: 4vw;
    background-color: #9A8D5E;
}
.shop-name a {
    color: #ffffff;
    text-decoration: none;
}
.shop-name span {
    margin-left: 4vw;
}

.shop-sub-text {
    position: relative;
    top: 8vw;
    width: 90%;
    height: auto;
    margin: 0 auto;
}
.shop-sub-text p:nth-child(1) {
    font-size: 4.3vw;
}
.shop-sub-text span {
    margin-left: 6vw;
}
.shop-sub-text p:nth-child(2) {
    margin-top: 1.5vw;
    font-size: 3.5vw;
    letter-spacing: .3vw;
}
.shop-insta {
    width: 11%;
    margin: 12vw auto 0 auto;
}
#shop-sns {
    width: 100%;
}
.shop-menu-title {
    width: 100%;
    height: auto;
    margin-top: 8vw;
    text-align: center;
}
.shop-menu-title p {
    font-size: 7vw;
}
.shop-menu-box {
    width: 80%;
    height: auto;
    margin: 3vw auto 0 auto;
    text-align: center;
}
.shop-menu-box p {
    font-size: 5.2vw;
}
.shop-menu-box span {
    margin-left: 20vw;
}
.shop-other {
    width: 100%;
    height: auto;
    margin-top: 6vw;
    text-align: center;
}
.shop-other p {
    font-size: 4vw;
}
.shop-other span {
    margin-left: 8vw;
}
.shop-sample-photo {
    width: 90%;
    height: auto;
    margin: 8vw auto 0 auto;
}
.shop-photo-box {
    display: flex;
    width: 100%;
    height: auto;
    justify-content: space-between;
}
.shop-photo-box img {
    width: 100%;
    height: auto;
}
#sample-photo {
    width: 31%;
}
.shop-nfcpage {
    width: 100%;
    height: auto;
    margin: 10vw auto 0vw auto;
    text-align: center;
}

.nfc-btn {
    width: 60%;
    height: 7vw;
    margin: 0 auto;
    background-color: white;
    border-radius: 5vw;
}
.nfc-btn a {
    color: black;
}
.nfc-btn p {
    font-size: 3.5vw;
    line-height: 7vw;
    color: black
}
.shop-infomation-title {
    width: 100%;
    height: auto;
    margin: 12vw auto 0 auto;
    text-align: center;
}
.shop-infomation-title p {
    font-size: 5.2vw;
}
.shop-infomation {
    display: flex;
    width: 85%;
    height: auto;
    margin: 5vw auto 0 auto;
}
.si-left-box {
    width: 28%;
}
.si-left-box p:nth-child(1) {
    height: 10vw;
}
.si-left-box p:nth-child(3) {
    height: 10vw;
}
.si-left-box p:nth-child(5) {
    height: 10vw;
}
.si-left-box p:nth-child(6) {
    height: 10vw;
}
.si-left-box p:nth-child(7) {
    height: 20vw;
}
.si-left-box p:nth-child(8) {
    height: 15vw;
    letter-spacing: 0;
}
.si-left-box p {
    letter-spacing: .3vw;
    font-size: 3.5vw;
    height: 14vw;
}
.si-right-box {
    width: 72%;
}
.si-right-box p:nth-child(1) {
    letter-spacing: .3vw;
    height: 10vw;
}
.si-right-box p {
    font-size: 3.5vw;
    height: 14vw;
}
.si-right-box p:nth-child(3) {
    height: 10vw;
    letter-spacing: .3vw;
}
.si-right-box p:nth-child(5) {
    height: 10vw;
    letter-spacing: .3vw;
}
.si-right-box p:nth-child(6) {
    height: 10vw;
    letter-spacing: .3vw;
}
.si-right-box p:nth-child(7) {
    height: 20vw;
}
.si-right-box p:nth-child(8) {
    height: 15vw;
}
.si-right-box a {
    color: white;
}
.si-right-box span {
    margin-left: 5vw;
}
.shop-hp {
    width: 50%;
    height: auto;
    margin: 0 auto;
    border-radius: 5vw;
    text-align: center;
    background-color: #9A8D5E;
}
.shop-hp p {
    font-size: 4vw;
}
.shop-hp a {
    color: white;
}
.shop-under-space {
    width: 100%;
    height: 20vw;
}


/* NFCページ */

.nfc-header {
    top:0;
    width: 100%;
    height: 7vw;
    z-index: 1000;
    background-color: transparent;
    @media screen and (max-width: 768px) {
        height: 10vw;
        background-color: #121212;
        position: relative;
    }
}
.nfc-header-toggle {
    position: absolute;
    top: 1vw;
    right: 3vw;
    height: 8vw;
    width: 8vw;
    padding: .3px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 1.6vw;
    cursor: pointer;
    display: none;
    z-index: 1000;
    @media screen and (max-width: 768px){
        display: flex;
    }
    
}
.nfc-header-toggle span {
    width: 100%;
    height: .6vw;
    background-color: #ffffff;
    transition: all 0.4s linear;
}        
/* nfc-header-toggleをactiveすると×に */
.nfc-header-toggle.active span:nth-child(1){
    transform: rotate(45deg) translate(1.6vw, 1.5vw);
    background-color: white;
}
.nfc-header-toggle.active span:nth-child(2){
    opacity: 0;
}
.nfc-header-toggle.active span:nth-child(3){
    transform: rotate(-45deg) translate(1.6vw, -1.5vw);
    background-color: white;
}
.nfc-smithimage-logo {
    position: relative;
    width: 100%;
    height: auto;
    margin-top: 7vw;
    text-align: center;
}
#nfc-smith-logo {
    width: 60%;
}
.nfc-text-section {
    width: 100%;
    height: auto;
    text-align: center;
}
.nfc-text-section p {
    font-size: 6vw;
    line-height: 8vw;
    animation: fadeUp 2s ease;
}
@keyframes fadeUp {
    0% {
        opacity: 0;
        transform: translateY(20px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


.nfc-main-section {
    width: 100%;
    height: 55vw;
    margin-top: 8vw;
    margin-bottom: 8vw;
    padding: 2vw;
    display: flex;
    justify-content: space-between;
}
.nfc-main-box {
    width: 31%;
    height: 50vw;
    display: flex;
    align-items: center;
    border-radius: 4vw;
    background-color: #121212;
    box-shadow: .3vw .3vw .8vw 0px rgba(0, 0, 0, 0.5);
}
.nfc-main-subbox {
    width: 90%;
    height: 95%;
    margin: 0 auto;
    border-radius: 3vw;
    background-color: rgb(255, 255, 255);
}
.nfc-step {
    width: 100%;
    height: auto;
    margin-top: 3vw;
    text-align: center;
}
.nfc-step p {
    font-size: 3.5vw;
    font-weight: 550;
}
.nfc-img {
    width: 100%;
    height: auto;
    margin-top: 2.5vw;
    text-align: center;
}
#nfc-google {
    width: 50%;
    height: auto;
}
.nfc-subtext {
    width: 100%;
    height: auto;
    margin-top: 4vw;
    margin-bottom: 1vw;
    text-align: center;
}
.nfc-subtext p:nth-child(1) {
    font-size: 2.5vw;
    font-weight: 550;
}
.nfc-subtext p:nth-child(2) {
    font-size: 2.6vw;
    font-weight: 550;
}
.nfc-link {
    width: 65%;
    height: 5vw;
    margin: 0 auto 2vw auto;
    border-radius: 5vw;
    text-align: center;
    background-color: #FF9900;
    box-shadow: 0px 1.5px 3px 0px rgba(0, 0, 0, 0.4);
}
.nfc-link a {
    text-decoration: none;
}
.nfc-link p {
    color: white;
    font-size: 3.5vw;
    line-height: 5.5vw;
}
.nfc-character {
    display: flex;
    width: 100%;
    height: auto;
}
.nfc-an {
    width: 50%;
    height: auto;
    padding-top: 9vw;
    padding-left: 4vw;
    margin-right: 5vw;
}
.nfc-an p:nth-child(1){
    font-size: 4vw;
    font-weight: 700;
}
.nfc-an p:nth-child(2){
    font-size: 3vw;
    line-height: 6vw;
}
#character {
    width: 40%;
    height: auto;
}

.nfc-footer {
    width: 100%;
    height: 10vw;
    background-color: #121212;
    font-family: serif, 'Times New Roman', Times ;
    @media screen and (max-width:768px) {
        height: auto;
        padding: 1vw 0;
    }
}
.nfc-footer-text-box {
    display: flex;
    width: 85%;
    height: 10vw;
    margin: 0 auto;
    font-size: 1.5vw;
    justify-content: space-between;
    @media screen and (max-width: 768px) {
        height: auto;
        font-size: 2vw;
    }
}
.nfc-footer-text {
    width: 50%;
    height: auto;
    text-align: center;
}
.nfc-footer-text p {
    padding-top: 1.5vw;
    padding-bottom: 1vw;
    @media screen and (max-width: 768px) {
        padding-top: 2vw;
        padding-bottom: 2vw;
    }
}
.nfc-footer-text a {
    text-decoration: none;
    color: rgb(255, 255, 255);
    font-weight: bold;
}
.nfc-footer-copy {
    width: 100%;
    height: auto;
    text-align: center;
    color: #ffffff;
    font-size: 1.5vw;
    font-family: serif, 'Times New Roman', Times ;
    @media screen and (max-width: 768px) {
        font-size: 2.3vw;
        background-color: #fefefe;
    }
}
.nfc-footer-copy p {
    color: #000000;
}

/* プライバシーポリシー・注意事項・免責事項・リンクについて */

.footer-parts-body {
    background-color: #121212;
    color: white;
}
.footer-parts {
    width: 85%;
    height: auto;
    margin: 0 auto;
    padding-bottom: 10vw;
}
.footer-parts-title {
    width: 100%;
    height: auto;
    padding-top: 5vw;
}
.footer-parts-title h1 {
    font-size: 5vw;
}
.pp-border {
    width: 100%;
    border: solid .2vw white;
}
.footer-parts-title p {
    font-size: 3.5vw;
}
.footer-parts-details {
    margin-top: 3vw;
}
.footer-parts-details p {
    font-size: 2.7vw;
}

/* CONTACTページ */

.contact-main {
    width: 100%;
    height: auto;
}
.contact-main-title {
    width: 100%;
    margin: 2vw auto;
}
.contact-main-title p {
    width: 100%;
    height: auto;
    text-align: center;
}
.contact-main-title p:nth-child(1) {
    font-size: 3vw;
}
.contact-main-title p:nth-child(2) {
    font-size: 7vw;
    line-height: 6vw;
}
.contact-main-box {
    width: 100%;
    height: auto;
    background-color: #121212;
}
.contact-main-border-t {
    width: 100%;
    padding-top: 1vw;
    border-bottom: solid .2vw white
}
.contact-main-box p {
    width: 100%;
    height: 8vw;
    line-height: 8vw;
    text-align: center;
    color: white;
    font-size: 4vw;
}
.contact-main-box span {
    margin-left: 4vw;
}
.contact-main-border-u {
    width: 100%;
    border-bottom: solid .2vw white
}
.contact-main-text {
    margin: 7vw auto 3vw auto;
}
.contact-main-text p {
    font-size: 3.5vw;
    line-height: 6vw;
}
.contact-main-text p:nth-child(2) {
    height: 10vw;
    font-size: 3vw;
    line-height: 10vw;
    margin-top: 4vw;
}

.copy-target {
    display: block;
    width: 60%;
    height: 40vw;
    margin: 3vw auto;
    font-family: serif, 'Times New Roman', Times ;
    font-size: 2.2vw;
    white-space: pre-wrap;
    border-radius: 10px;
    background-color: white;
    @media screen and (max-width: 768px){
        width: 80%;
        height: 60vw;
        margin-top: 5vw;
        font-size: 3.3vw;
        border-radius: 1.5vw;
    }
}
.copy-btn {
    display: block;
    width: 15vw;
    height: 5vw;
    margin: 1vw auto;
    font-size: 2.5vw;
    line-height: 5vw;
    font-weight: bold;
    font-family: serif, 'Times New Roman', Times ;
    background-color: #9A8D5E;
    border-radius: 10px;
    border: 0.1vw solid #000000;
    box-shadow: 0.1vw 0.1vw 0.1vw rgba(0, 0, 0, 0.2);
    cursor: pointer;
    color: aliceblue;
    @media screen and (max-width: 768px){
        width: 20vw;
        height: 7vw;
        margin: 5vw auto;
        font-size: 4vw;
        line-height: 7vw;
        border-radius: 1.5vw;
    }
}
.contact-main-sns {
    width: 70%;
    height: auto;
    margin: 15vw auto 0 auto;
    padding-bottom: 10vw;
    display: flex;
    justify-content: space-between;
}
.contact-instagram {
    width: 18%;
    height: auto;
}
.contact-line {
    width: 18%;
    height: auto;
}
.contact-mail {
    width: 18%;
    height: auto;
}
#contact-sns {
    width: 100%;
}

/* メールフォーム */

.formrun-embed {
    margin-top: 0vw;
    width: 100%;
    height: auto;
    @media screen and (max-width: 768px) {
        margin-top: 20vw;
    }
}