*, *::before, *::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*:not(dialog) {
  margin: 0;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    interpolate-size: allow-keywords;
  }
}
body {
  -webkit-font-smoothing: antialiased;
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

input, button, textarea, select {
  font: inherit;
}

p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
}

p {
  text-wrap: pretty;
}

h1, h2, h3, h4, h5, h6 {
  text-wrap: balance;
}

#root, #__next {
  isolation: isolate;
}

:root {
  --color_primary: #100ACE;
  --color_line: #E6E6E6;
  --color_text: #141414;
  --color_alart: #EF5350;
}

@media only screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}

.news__box {
  display: none;
}
@media only screen and (max-width: 767px) {
  .news__box {
    margin-top: 40px;
  }
}

.select-box {
  margin-top: 16px;
}

.select-box {
  position: relative;
  height: 41px;
  display: block;
  width: 100%;
  border: 1px solid var(--color_line);
  border-radius: 4px;
  font-weight: 500;
  line-height: 1.8;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  padding: 8px 20px;
  transition: 0.3s;
}
@media only screen and (min-width: 768px) {
  .select-box {
    height: 45px;
  }
}
.select-box:hover {
  background-color: #f2f2f2;
}
.select-box::after {
  content: "";
  display: block;
  width: 18px;
  height: 16px;
  background-image: url(../img/common/ico_select_box.svg);
  background-size: cover;
  position: absolute;
  top: 14.5px;
  right: 14px;
  pointer-events: none;
}
.select-box.--active::after {
  -webkit-transform: scale(1, -1);
      -ms-transform: scale(1, -1);
          transform: scale(1, -1);
}

.select-box__menu {
  display: none;
  background-color: #fff;
  border-radius: 4px;
  border: solid 1px var(--color_line);
  width: 100%;
  padding: 8px 0;
  position: absolute;
  top: 45px;
  left: 0;
  z-index: 1;
}
@media only screen and (min-width: 768px) {
  .select-box__menu {
    top: 49px;
  }
}
.select-box__menu ul {
  padding: 0;
}
.select-box__menu ul li {
  text-align: center;
  list-style: none;
  line-height: 1;
  padding: 12px 16px;
}
.select-box__menu ul li:hover {
  color: var(--color_primary);
}
.select-box__menu ul li + li {
  margin-top: 4px;
}