@charset "UTF-8";
/* CSS Document */

html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
	scroll-behavior: smooth;
}

/* ベース */
body {
    width: 100%;
    margin: 0;
    padding: 0;
    font-family: 'Noto Sans JP', 'Yu Gothic', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
    font-weight: 400;
    font-size: 1.6rem;
    line-height: 1.8;
    color: #333;
}
@media (max-width: 991px) {
html {
    font-size: 55%!important;
}
}
@media (max-width: 575px) {
html {
    font-size: 60%!important;
}
}

/*a関係*/
a {
    text-decoration: none; /* 常時下線なし */
    color: inherit;        /* 親要素の文字色を継承 */
}
a:focus {
    outline: none;
}
a:focus-visible {
    outline: 2px solid #005fcc;
    outline-offset: 2px;
}
a:hover {
    text-decoration: none;
}
a:active {
    text-decoration: none;
}
/* container 上書き */
.container {
  --bs-gutter-x: 30px; /* Bootstrap4と同じ */
}
/* row gutter 上書き */
.row {
    --bs-gutter-x: 1.5rem;
}

/* 全体ボックスサイズ統一 */
*, *::before, *::after {
    box-sizing: border-box;
}

/* Page Top */
#page-top {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

#page-top.is-visible {
  opacity: 1;
  pointer-events: auto;
}
