html {
  font-size: 62.5%;
  line-height: 1.45;
  box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
  html {
    scroll-behavior: smooth;
  }
}

body {
  margin: 0;
  color: #333;
  font-family:
    "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic",
    "YuGothic", "Meiryo", sans-serif;
  background: #f7f8f9;
}

:root {
  --main-color: #ef6000;
  --font-black: #2e2e2e;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

a {
  color: inherit;
  text-decoration: none;
}

p {
  margin: 0;
  color: var(--font-black);
}

button {
  appearance: none;
  cursor: pointer;
}

h2,
h3 {
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/*----- ヘッダー　-----*/
.header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  padding: 10px 50px;
  background: #fff;
}

.header__logo {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 54px;
  padding-left: 59px;
  color: #f26c00;
  font-size: 2rem;
  font-weight: bold;
}

.header__logo::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 47px;
  height: 54px;
  background-image: url("../images/logo.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transform: translateY(-50%);
}

.header__nav-btn {
  display: none;
}

#header__nav {
  display: block;
  margin-left: auto;
}

#header__nav > ul {
  display: flex;
  align-items: center;
  gap: 30px;
}

#header__nav > ul > li > a {
  display: inline-flex;
  align-items: center;
  font-size: 1.6rem;
  font-weight: bold;
}

/* ボタン */
#header__nav > ul > li:nth-last-child(2) > a,
#header__nav > ul > li:last-child > a {
  justify-content: center;
  padding: 10px 25px;
  border: 3px solid #ef6000;
  border-radius: 50px;
  box-sizing: border-box;
  font-size: 1.6rem;
}

#header__nav > ul > li:nth-last-child(2) > a {
  color: #ef6000;
  background: #fff;
}

#header__nav > ul > li:last-child > a {
  color: #fff;
  background: #ef6000;
}

.header__logo:hover,
.header__logo:focus-visible,
#header__nav a:hover,
#header__nav a:focus-visible,
.header__nav-btn:hover,
.header__nav-btn:focus-visible {
  opacity: 0.8;
}

.header__logo,
#header__nav a,
.header__nav-btn {
  transition: opacity 0.2s ease;
}
