@charset "utf-8";
/*------------------------------------------------------------------------------
 ROOT（CSS変数を設定）
 -------------------------------------------------------------------------------*/
 :root {
	--color1: #cbb76e;
    --txt_color: #000;
    --bg: #fff;
    --sans_serif: "Noto Serif JP", serif;
    --sans_serif_noto: "Noto Sans JP", sans-serif;
  }

/*------------------------------------------------------------------------------
 共通
 -------------------------------------------------------------------------------*/
 /* 全要素に box-sizing を適用 */
 *,
 *::before,
 *::after {
 box-sizing: border-box;
 }

 .sp{
    display: none;
 }

 body {
    margin: 0;
    padding: 0;
    font-family: var(--sans_serif);
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    img{
        object-fit: contain;
        width: 100%;
        height: 100%;
    }
}

body::before {
	background: url(../img/bg.webp) no-repeat center center /cover;
	position: fixed;
	display: block;
	width: 100vw;
	height: 100vh;
	background-position: center top;
	content: '';
	z-index: -999;
}

@media (max-width: 768px) {
  body::before {
    background-image: none;
    background-color: var(--bg);
  }
  .sp{
        display: block;
    }
}

/*------------------------------------------------------------------------------
 各要素
 -------------------------------------------------------------------------------*/
#mv {
    margin: 0 auto;
    text-align: center;
    z-index:-9999;
}

#mv .mv__body {
    position: relative;
    margin: 0 auto;
    text-align: center;
    max-width: 1000px;
    padding-top: 30px;
    background-color: var(--bg);
}

#mv .mv__body img {
    vertical-align: middle;
}

.visually-hidden{
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.information {
    margin: 0 auto;
    max-width: 100%;
    text-align: center;
    background-color: var(--bg);
}

.outline {
    padding: 6.4vw 9.33vw 0;
}

.footer {
    margin: 0 auto;
    margin-top: -10px;
    padding: 30px 0 60px;
    max-width:1000px;
    text-align:center;
    background-color: var(--bg);
    p{
        margin-bottom: 10px;
        font-size: 12px;
        font-family: var(--sans_serif_noto);
        font-weight: 400;
        color: var(--txt_color);
    } 
}

.logo {
    width: 96px;
    margin: 0 auto;
}

@media all and (max-width:768px) {
    #mv .mv__body {
        padding-top: 6vw;
    }
    .footer {
        padding: 15.46vw 0 10.13vw;
        margin-top: 0;
        p{
            margin-bottom: min(1.86vw,14px);
            font-size: clamp(8px,2vw,15px);
        }
    }
    .logo {
        width: min(18.93vw,142px);
    }
}