@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Zen+Maru+Gothic:wght@700&display=swap');

/* Reset CSS */
* {
    box-sizing: border-box;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    margin: 0;
    padding: 0;
}
html {
    color: #111;
    font-size: 16px;
    font-family: "Noto Sans JP";
    scroll-behavior: smooth;
}
body {
    color: #111;
    margin: 0;
    padding: 0;
    position: relative;
}
.overlay:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #0000003d;
}
ul,
li {
    margin: 0;
    padding: 0;
    list-style: none;
}
a {
    color: #0088CC;
    text-decoration: none;
    transition: .3s all ease-out;
}
a img {
    transition: .3s all ease-out;
}
a:hover img {
    opacity: .6;
}
p {
    margin: 0;
    padding: 0;
}
h1,h2,h3 {
    margin: 0;
    padding: 0;
    font-weight: 900;
}
img {
    max-width: 100%;
    height: auto;
}
header .header-bottom .header-list-block li.search-block #sbtn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}
.inner {
    max-width: 1280px;
    margin: 0 auto;
}
.pc-only {
    display: block!important;
}
.sp-only {
    display: none!important;
}
.flex,
.flex-res {
    display: flex;
}
.grid {
    display: grid;
}
.t-green {
    color: #3EA000;
}
.t-pink {
    color: #E04FCA;
}
.t-blue {
    color: #4F7ACC;
}
.t-gray {
    color: #999;
}
@keyframes opacity{
    0%{ opacity: 0;}
    100%{ opacity: 1;}
}
@media (max-width: 768px) {
    .inner {
        max-width: 90%;
    }
    .pc-only {
        display: none!important;
    }
    .sp-only {
        display: block!important;
    }
    .flex-res {
        display: block;
    }
}
/* タブレット用 (必要に応じて) */
@media (min-width: 769px) and (max-width: 1280px) {
    .inner {
        max-width: 92%;
    }
}
@media (min-width: 1280px) {
    .inner {
        padding-left: 20px!important;
        padding-right: 20px!important;
    }
}

/* Common Parts */
h2.section-title {
    display: flex;
    gap: 19px!important;
    align-items: center;
}
.page-guide h2.section-title span,
.guide-child h2.section-title span {
    font-family: "Zen Maru Gothic", sans-serif;
}
h2.section-title img {
    max-width: 39px;
}
h2.section-title > a {
    padding-left: 44px;
}
.main-title {
    padding: 53px 0 70px;
}
.main-title h1 {
    font-size: 40px;
    font-weight: 900;
    line-height: 58px;
    letter-spacing: -.01em;
}
.main-title h1 > span {
    font-size: 24px;
    display: block;
    font-weight: 900;
    line-height: 35px;
    letter-spacing: -.01em;
    margin-bottom: 8px;
}
.page-guide .main-title h1,
.guide-child .main-title h1 {
    color: #00954A;
    font-family: "Zen Maru Gothic", sans-serif;
}
@media (max-width: 768px) {
h2.section-title {
    display: flex;
    gap: 15.4px!important;
}
.page-guide h2.section-title span,
.guide-child h2.section-title span {
    font-size: 18px;
}
h2.section-title img {
    max-width: 22.63px;
}
h2.section-title > a {
    padding-left: 37px;
}
.main-title {
    padding: 22px 0 36.9px;
}
.main-title h1 {
    font-size: 24px;
    line-height: 35px;
}
.main-title h1 > span {
    font-size: 18px;
    line-height: 22px;
    margin-bottom: 3px;
}
}
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  border: none;
}
button, .button {
    cursor: pointer;
}
/* タブレット用 (必要に応じて) */
@media (min-width: 769px) and (max-width: 1100px) {
}

/* Sample Page */
@media (max-width: 768px) {
}
/* タブレット用 (必要に応じて) */
@media (min-width: 769px) and (max-width: 1100px) {
}

