@charset "utf-8";

/*------------------------------ 共通 ------------------------------*/
body {
  color: #333;
  font-family: "M PLUS 1p", sans-serif;
}

.container {
  width: 90%;
  max-width: 1400px;
  margin-inline: auto;
}

.inner {
  width: 90%;
  max-width: 1200px;
  margin-inline: auto;
}

.flex {
  display: flex;
}

.dib {
  display: inline-block;
}

a {
  transition: .5s;
}

a:hover {
  opacity: .7;
}

a::before {
  transition: .5s;
}

a::after {
  transition: .5s;
}

th,
td {
  border: 1px solid #333;
  padding: 1rem;
}

/*------------------------------ ヘッダー ------------------------------*/
header {
  background-color: #FFFCE6;
}

header ol,
header ul {
  list-style: none;
}

header .container {
  align-items: center;
  justify-content: space-between;
  height: 8rem;
}

header .container .site {
  letter-spacing: 0.02em;
}

/*------------------------------ フッター ------------------------------*/
footer {
  background-color: #FFFCE6;
  padding: 6rem 0;
}

footer ol,
footer ul {
  list-style: none;
}

footer .container>p:first-of-type {
  margin-bottom: 6rem;
  font-weight: 600;
  font-size: 2rem;
  text-align: center;
}

footer .container label {
  display: flex;
  align-items: center;
  gap: 0 1rem;
  margin-bottom: 2rem;
  width: fit-content;
  cursor: pointer;
}

footer .container label:last-of-type {
  margin-bottom: 6rem;
}

footer .container label input {
  width: 1.8rem;
  height: 1.8rem;
}

footer .container .finish {
  font-size: 2.8rem;
  text-decoration: underline;
  text-underline-offset: .6rem;
  color: #F6B14E;
  display: block;
  margin-inline: auto;
  width: fit-content;
  opacity: 0;
  pointer-events: none;
}

footer .container .finish.active {
  animation: linkDisplay 2s ease-in-out 1s forwards;
}

@keyframes linkDisplay {
  0% {}

  100% {
    opacity: 1;
    pointer-events: all;
  }
}

footer .container .finish.active:hover {
  opacity: .7 !important;
}

footer .container .check-item {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  width: 20px;
  height: 20px;
  border: 2px solid #F6B14E;
  border-radius: 4px;
  background-color: white;
  cursor: pointer;
  transition: all 0.2s ease;
  position: relative;
}

footer .container .check-item:checked {
  background-color: #F6B14E;
  border-color: #F6B14E;
}

footer .container .check-item:checked::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 1px;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/*------------------------------ トップ ------------------------------*/
#top .container {
  padding-top: 8rem;
  margin-bottom: 8rem;
}

#top .container h2 {
  text-align: center;
  font-size: 2.8rem;
  font-weight: 700;
  margin-bottom: 6rem;
  letter-spacing: 0.02em;
}

#top .container .otehon {
  margin-bottom: 10rem;
  list-style: none;
}

#top .container .otehon li a {
  font-size: 2.4rem;
  text-decoration: underline;
  text-underline-offset: .6rem;
  color: #F6B14E;
}

#top .container ul li {
  line-height: 2;
}

/*------------------------------ ブロックエディタ改行あり ------------------------------*/
.c-contents .inner {
  padding-top: 8rem;
  margin-bottom: 8rem;
}

.c-contents .inner .kind {
  text-align: center;
  font-size: 3.6rem;
  font-weight: 700;
  margin-bottom: 6rem;
  letter-spacing: 0.02em;
}

.c-contents .inner .note {
  background-color: #ffdddd;
  padding: 3rem;
  border-radius: 1rem;
  margin-bottom: 6rem;
}

.c-contents .inner .note p {
  font-size: 1.8rem;
  margin-bottom: 1rem;
  font-weight: 600;
}

.c-contents .inner .note ul li {
  color: #FF0000;
  line-height: 2;
}

.c-contents .inner .introduction {
  border: 1px solid #F6B14E;
  border-radius: .4rem;
  background-color: #FFFCE6;
  padding: 9rem 3rem 3rem;
  margin-bottom: 2rem;
  max-width: 80rem;
  position: relative;
}

.c-contents .inner .introduction::before {
  content: '紹介コンテンツが間違っています';
  font-size: 2.4rem;
  color: #FF0000;
  position: absolute;
  top: 3rem;
}

#blog .inner .introduction.blog {
  padding: 3rem;
}

#blog .inner .introduction.blog::before {
  display: none;
}

#column .inner .introduction.column {
  padding: 3rem;
}

#column .inner .introduction.column::before {
  display: none;
}

#news .inner .introduction.news {
  padding: 3rem;
}

#news .inner .introduction.news::before {
  display: none;
}

#helphul .inner .introduction.helphul {
  padding: 3rem;
}

#helphul .inner .introduction.helphul::before {
  display: none;
}

#staff .inner .introduction.staff {
  padding: 3rem;
}

#staff .inner .introduction.staff::before {
  display: none;
}

.c-contents .inner .introduction>p:nth-of-type(1) {
  margin-bottom: 3rem;
  line-height: 2;
}

.c-contents .inner .introduction .img-address {
  justify-content: center;
  gap: 0 3rem;
  align-items: center;
}

.c-contents .inner .introduction .img-address p:last-of-type {
  margin-bottom: 0 !important;
}

.c-contents .inner h2 {
  background-color: #F6B14E;
  font-weight: 600;
  font-size: 2.4rem;
  padding: .6rem 1rem;
  letter-spacing: 0.02em;
  color: #fff;
  margin-bottom: 1rem;
}

.c-contents .inner h3 {
  color: #F6B14E;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 2rem;
}

.c-contents .inner .time {
  text-align: center;
  margin-bottom: 2rem;
}

.c-contents .inner .time time span {
  font-size: 2.2rem;
  padding: 0.2rem;
}

.c-contents .inner .category {
  align-items: center;
  margin-bottom: 2rem;
}

.c-contents .inner .category ul {
  gap: 0 1rem;
}

.c-contents .inner .category ul li {
  background-color: #F6B14E;
  color: #fff;
  border-radius: .4rem;
  padding: .1rem .6rem;
  list-style: none;
}

.c-contents .inner .title {
  font-size: 2.6rem;
  color: #F6B14E;
  border-bottom: 1px solid #F6B14E;
  margin-bottom: 5rem;
}

.c-contents .inner .eyecatch {
  text-align: center;
  margin-bottom: 4rem;
  max-width: 80rem;
  margin-inline: auto;
}

.c-contents .inner ol,
.c-contents .inner ul {
  list-style-position: inside;
}

/*------------------------------ コラム ------------------------------*/
#column p,
#column table,
#column ul,
#column ol {
  margin-bottom: 2rem;
}

/*------------------------------ お役立ちコラム ------------------------------*/
#helphul p,
#helphul table,
#helphul ul,
#helphul ol {
  margin-bottom: 2rem;
}

/*------------------------------ 404ページ ------------------------------*/
#notfound .container {
  text-align: center;
  padding-top: 8rem;
}

#notfound .container h2 {
  font-size: 8rem;
  font-weight: 700;
  margin-bottom: 4rem;
  letter-spacing: 0.02em;
}

#notfound .container p {
  font-size: 2.4rem;
  margin-bottom: 4rem;
}

#notfound .container .btn {
  font-size: 2.4rem;
  text-decoration: underline;
  text-underline-offset: .6rem;
  color: #F6B14E;
  display: block;
  margin-inline: auto;
  width: fit-content;
}