@charset "utf-8";

/*================================
フォント
================================*/
body {
    color: #3B4043;
    letter-spacing: 0.05em;
}

p {
    font-size: 16px;
    letter-spacing: 0.1em;
    line-height: 2.5;
    color: #393939;
}

@media screen and (max-width: 768px) {
    p {
        font-size: max(14px,3.2vw);
        line-height: 2;
    }
}

a {
    text-decoration: none;
    line-height: 1;
}

p a {
    color: var(--c-text);
    line-height: inherit;
    text-decoration: underline;
}

h1,h2,h3,h4,h5 {
    font-weight: 500;
    letter-spacing: 0.2em;
    line-height: 1.5;
    color: var(--c-text);
}

.center {
    margin-inline: auto;
    text-align: center;
}


/*================================
画像
================================*/
img {
    max-width: 100%;
    vertical-align: bottom;
}

/*================================
リスト
================================*/
ul {
    list-style: none;
}

/*================================
表示切り替え
================================*/

.is-pc {
    display: block!important;
}

@media screen and (max-width: 768px) {
    .is-pc {
        display: none!important;
    }
}

.is-tab {
    display: none!important;
}

@media screen and (max-width: 928px) {
    .is-tab {
        display: block!important;
    }
}


.is-sp {
    display: none!important;
}

@media screen and (max-width: 768px) {
    .is-sp {
        display: block!important;
    }
}

.is-flex-pc {
    display: flex!important;
}

@media screen and (max-width: 768px) {
    .is-flex-pc {
        display: none!important;
    }
}

.is-flex-sp {
    display: none!important;
}

@media screen and (max-width: 768px) {
    .is-flex-sp {
        display: flex!important;
    }
}

.is-ib-pc {
    display: inline-block!important;
}

@media screen and (max-width: 768px) {
    .is-ib-pc {
        display: none!important;
    }
}

.is-ib-sp {
    display: none!important;
}

@media screen and (max-width: 768px) {
    .is-ib-sp {
        display: inline-block!important;
    }
}

.is-il-pc {
    display: inline!important;
}

@media screen and (max-width: 768px) {
    .is-il-pc {
        display: none!important;
    }
}

.is-il-sp {
    display: none!important;
}

@media screen and (max-width: 768px) {
    .is-il-sp {
        display: inline!important;
    }
}

/*================================
カラー
================================*/
:root {
  --c-text: #000000;
  --c-gray: #575757;
  --c-lightgray: #999999;
  --c-lightbrown: #9C7869;
  --c-brown: #88765A;
  --c-green: #75ADB2;
  --c-yellow: #CEAA5E;
  --c-red: #9C3237;
  --c-white: #FFFFFF;
  --c-black: #000000;
}

/*================================
マージンなど
================================*/
.mt0 {
    margin-top: 0!important;
}

/*================================
ボタン・リンク
================================*/
@media all and (min-width:769px) {
    a,
    *[data-href] {
        transition: opacity 0.3s ease;
        cursor: pointer;
    }
    a:hover {
        opacity: 0.3;
    }
    *[data-href]:hover {
        opacity: 0.8;
    }
}

/*================================
その他
================================*/
html {
	scroll-behavior: smooth;
}

.iframe {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.75%;
    position: relative;
}


@media screen and (max-width: 768px) {
    .iframe {
        padding-bottom: 70.5%;
    }
}

.iframe iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.spec_map iframe {
    aspect-ratio: 1 / 1;
    max-width: 1000px;
    width: 100%;
    height: auto;
}

#map_baidu {
    aspect-ratio: 1 / 1;
    max-width: 1000px;
    width: 100%;
    height: auto;
}


address {
    font-style: normal;
}
