@charset "UTF-8";
:root {
  --pc: 1600 * 100vw;
  --sp: 375 * 100vw;
}

* {
  margin: 0;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent;
}
*::before, *::after {
  box-sizing: border-box;
}

html {
  height: 100%;
}

body {
  -webkit-font-smoothing: antialiased;
  background: rgb(255, 254, 245);
  color: #222;
  font-family: YakuHanRP, "M PLUS Rounded 1c", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans JP", Meiryo, sans-serif;
  font-size: calc(16 / var(--pc));
  height: 100%;
}
body.no-scroll {
  overflow: hidden;
  position: fixed;
  width: 100%;
}

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

ul li {
  list-style: none;
}

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

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

a {
  text-decoration: none;
  color: #222;
}

.sp {
  display: none;
}

.fade {
  opacity: 0;
}

.fade.active {
  animation: fade 1s ease-in-out forwards;
}

@keyframes fade {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes rotate {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(365deg);
  }
}
@keyframes scroll {
  0% {
    top: 0%;
  }
  100% {
    top: 100%;
  }
}
@keyframes arrowSlide {
  0% {
    transform: translate3d(-50%, -50%, 0);
    opacity: 1;
  }
  50.0% {
    transform: translate3d(10%, -50%, 0);
    opacity: 0;
  }
  50.1% {
    transform: translate3d(-110%, -50%, 0);
    opacity: 0;
  }
  100% {
    transform: translate3d(-50%, -50%, 0);
    opacity: 1;
  }
}
@keyframes arrowSlideY {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(90deg);
    opacity: 1;
  }
  50% {
    transform: translate3d(-50%, 10%, 0) rotate(90deg);
    opacity: 0;
  } /* 下へ */
  50.1% {
    transform: translate3d(-50%, -110%, 0) rotate(90deg);
    opacity: 0;
  } /* 上にワープ */
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(90deg);
    opacity: 1;
  }
}
@keyframes arrowSlideY2 {
  0% {
    transform: translate3d(-50%, -50%, 0);
    opacity: 1;
  }
  50% {
    transform: translate3d(-50%, 10%, 0);
    opacity: 0;
  } /* 下へ */
  50.1% {
    transform: translate3d(-50%, -110%, 0);
    opacity: 0;
  } /* 上にワープ */
  100% {
    transform: translate3d(-50%, -50%, 0);
    opacity: 1;
  }
}
@keyframes arrowSlideDiagUR {
  0% {
    transform: translate3d(-50%, -50%, 0) rotate(-45deg);
    opacity: 1;
  }
  50% {
    transform: translate3d(10%, -110%, 0) rotate(-45deg);
    opacity: 0;
  } /* 右上へ */
  50.1% {
    transform: translate3d(-110%, 10%, 0) rotate(-45deg);
    opacity: 0;
  } /* 左下にワープ */
  100% {
    transform: translate3d(-50%, -50%, 0) rotate(-45deg);
    opacity: 1;
  }
}
.btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: calc(288 / var(--pc));
  background: #FFF;
  border: calc(2 / var(--pc)) solid #E3EADF;
  border-radius: calc(36 / var(--pc));
  padding: 0 calc(18 / var(--pc)) 0 calc(30 / var(--pc));
  font-size: calc(14 / var(--pc));
  font-weight: 800;
  line-height: calc(68 / var(--pc));
  transition: 0.6s;
}
.btn.green, .btn.blue {
  color: #fff;
  border: none;
}
.btn.green {
  background: #69B72D;
}
.btn.blue {
  background: #005DAB;
}
.btn:hover {
  background: #69B72D;
  color: #fff;
}
.btn:hover .arrow {
  background: url(../img/common/circle-white.webp) no-repeat;
  background-size: contain;
}
.btn:hover .arrow::after {
  background: url(../img/common/arrow-white.webp) no-repeat;
  background-size: contain;
  animation: arrowSlide 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}
.btn:hover .arrow.dl::after {
  width: calc(12 / var(--pc));
  height: calc(15 / var(--pc));
  background: url(../img/common/arrow-dl-white.webp) no-repeat;
  background-size: contain;
  animation: arrowSlideY2 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.arrow {
  width: calc(33 / var(--pc));
  height: calc(32 / var(--pc));
  background: url(../img/common/circle.webp) no-repeat;
  background-size: contain;
  display: inline-block;
  vertical-align: middle;
  position: relative;
}
.arrow::after {
  display: block;
  content: "";
  width: calc(16 / var(--pc));
  height: calc(13 / var(--pc));
  background: url(../img/common/arrow.webp) no-repeat;
  background-size: contain;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.arrow.white {
  background: url(../img/common/circle-white.webp) no-repeat;
  background-size: contain;
}
.arrow.white::after {
  background: url(../img/common/arrow-white.webp) no-repeat;
  background-size: contain;
}
.arrow.diagonal::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
.arrow.down::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.arrow.dl::after {
  width: calc(12 / var(--pc));
  height: calc(15 / var(--pc));
  background: url(../img/common/arrow-dl.webp) no-repeat;
  background-size: contain;
}

.arrow-move:hover .arrow::after {
  animation: arrowSlide 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.arrow-move-y:hover .arrow::after {
  animation: arrowSlideY 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.arrow-move-y:has(.dl):hover .arrow::after {
  animation: arrowSlideY2 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}

.title01 {
  font-size: calc(44 / var(--pc));
  font-weight: 500;
  text-align: center;
}
.title01 span {
  font-family: "Varela Round", sans-serif;
  font-size: calc(16 / var(--pc));
  letter-spacing: 0.1em;
  display: block;
  margin-top: calc(5 / var(--pc));
  color: #16499C;
}

.title02 {
  font-size: calc(44 / var(--pc));
  font-weight: 500;
  line-height: calc(65 / var(--pc));
}

ul.disc li {
  text-indent: -1em;
  padding-left: 1em;
}
ul.disc li::before {
  content: "・";
}

ol.decimal li {
  list-style-type: decimal;
  margin-left: 1.5em;
}

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(137 / var(--pc));
  background: rgb(255, 254, 245);
  transition: transform 0.4s ease-out;
  padding: calc(40 / var(--pc)) calc(56 / var(--pc)) calc(40 / var(--pc)) calc(56 / var(--pc));
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 3;
}
header.visible {
  transform: translateY(0);
}
header:not(.visible) {
  transform: translateY(-100%);
}
header .logo {
  width: calc(296 / var(--pc));
}
header .menu-btn {
  display: none;
}
header .menu-container {
  display: flex;
  align-items: center;
  gap: 0 calc(52 / var(--pc));
}
header .menu-container .menu {
  display: flex;
  gap: 0 calc(40 / var(--pc));
  font-weight: 500;
  position: relative;
}
@media (hover: hover) {
  header .menu-container .menu a.active, header .menu-container .menu a:hover {
    position: relative;
  }
  header .menu-container .menu a.active::after, header .menu-container .menu a:hover::after {
    display: block;
    content: "";
    width: 100%;
    height: 2px;
    background: #69B72D;
    position: absolute;
    bottom: calc(-10 / var(--pc));
  }
}
header .menu-container .menu .child-menu {
  position: absolute;
  padding-top: calc(20 / var(--pc));
  transition: 0.3s;
  opacity: 0;
  pointer-events: none;
}
header .menu-container .menu .child-menu.active {
  opacity: 1;
  pointer-events: all;
}
header .menu-container .menu .child-menu ul {
  background: #FFF;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.1);
  padding: calc(23 / var(--pc)) calc(31 / var(--pc));
  border-radius: calc(12 / var(--pc));
  line-height: calc(36 / var(--pc));
}
header .menu-container .menu .child-menu ul li a {
  transition: 0.2s;
}
@media (hover: hover) {
  header .menu-container .menu .child-menu ul li a:hover {
    color: #69B72D;
  }
  header .menu-container .menu .child-menu ul li a:hover::after {
    display: none;
  }
}
header .menu-container .header-contact .header-contact-item p {
  display: none;
}
header .menu-container .header-contact .btn {
  width: calc(160 / var(--pc));
  border-radius: calc(28 / var(--pc));
  font-size: calc(16 / var(--pc));
  line-height: calc(48 / var(--pc));
  font-weight: 500;
  justify-content: center;
  padding: 0;
  transition: 0.3s;
}
header .menu-container .header-contact .btn:hover {
  opacity: 0.6;
}
header .menu-container .header-contact .btn .arrow {
  display: none;
}

.content {
  padding-top: calc(137 / var(--pc));
}
.content .scroll {
  position: absolute;
  bottom: 0;
  left: calc(50 / var(--pc));
}
.content .scroll p {
  font-family: "Varela Round", sans-serif;
  font-size: calc(14 / var(--pc));
  letter-spacing: 0.05em;
  writing-mode: vertical-rl;
}
.content .scroll .scroll-bar {
  width: calc(2 / var(--pc));
  height: calc(100 / var(--pc));
  margin: calc(12 / var(--pc)) auto 0;
  background: #F0F5ED;
  border-radius: calc(2 / var(--pc));
  position: relative;
}
.content .scroll .scroll-bar::after {
  display: block;
  content: "";
  width: calc(10 / var(--pc));
  height: calc(10 / var(--pc));
  background: #16499C;
  border-radius: 100%;
  position: absolute;
  top: 0;
  left: calc(-4 / var(--pc));
  z-index: 2;
  animation: scroll 1.5s linear infinite;
}
.content .read {
  width: calc(1200 / var(--pc));
  margin: calc(106 / var(--pc)) auto 0;
}
.content .read h1 {
  font-size: calc(52 / var(--pc));
  font-weight: 500;
  letter-spacing: 0.03em;
}
.content .read h1 span {
  display: block;
  font-family: "Varela Round", sans-serif;
  font-size: calc(16 / var(--pc));
  line-height: calc(16 / var(--pc));
  letter-spacing: 0.1em;
  color: #16499C;
  margin-left: calc(4 / var(--pc));
}
.content .read p {
  font-size: calc(22 / var(--pc));
  line-height: calc(40 / var(--pc));
  letter-spacing: 0.05em;
  margin-top: calc(92 / var(--pc));
  width: calc(965 / var(--pc));
}
.content .read .txt-movie {
  display: flex;
  align-items: flex-start;
  margin-top: calc(92 / var(--pc));
  gap: 0 calc(105 / var(--pc));
}
.content .read .txt-movie p {
  margin-top: 0;
  width: calc(753 / var(--pc));
}
.content .read .txt-movie p span {
  font-size: calc(52 / var(--pc));
  font-weight: 500;
  line-height: calc(77 / var(--pc));
  letter-spacing: -0.01em;
  display: block;
  margin-bottom: calc(18 / var(--pc));
}
.content .read .txt-movie .movie {
  width: calc(342 / var(--pc));
  height: calc(224 / var(--pc));
  background: #F1F7EC;
  border-radius: calc(32 / var(--pc));
  padding: calc(44 / var(--pc)) 0;
  text-align: center;
  cursor: pointer;
}
.content .read .txt-movie .movie .play {
  width: calc(105 / var(--pc));
  height: calc(102 / var(--pc));
  background: url(../img/common/play-btn.webp) no-repeat;
  background-size: contain;
  margin: 0 auto;
}
.content .read .txt-movie .movie p {
  width: unset;
  font-weight: 500;
  line-height: calc(16 / var(--pc));
  letter-spacing: 0;
  margin-top: calc(19 / var(--pc));
}
.content .topics-item {
  position: relative;
}
.content .topics-item img {
  border-radius: calc(16 / var(--pc)) calc(56 / var(--pc)) calc(16 / var(--pc)) calc(16 / var(--pc));
  position: relative;
}
.content .topics-item .icons {
  display: flex;
  justify-content: space-between;
  margin-top: calc(16 / var(--pc));
}
.content .topics-item .icons .category {
  font-size: calc(14 / var(--pc));
  font-weight: 500;
  line-height: calc(30 / var(--pc));
  border-radius: calc(3 / var(--pc));
  padding: 0 calc(12 / var(--pc));
}
.content .topics-item .icons .category.event {
  background: #E8F8E9;
  color: #369E38;
}
.content .topics-item .icons .category.bakery {
  background: #FCEFE5;
  color: #F4903D;
}
.content .topics-item .icons .category.notice {
  background: #EAEFF6;
  color: #16499C;
}
.content .topics-item .icons .category.himawari {
  background: #FFE1F6;
  color: #FE69D1;
}
.content .topics-item .icons .office-name {
  font-weight: 800;
  line-height: calc(28 / var(--pc));
}
.content .topics-item h3 {
  font-size: calc(16 / var(--pc));
  line-height: calc(28 / var(--pc));
  margin-top: calc(6 / var(--pc));
  font-weight: 400;
}
.content .topics-item .date {
  font-size: calc(14 / var(--pc));
  line-height: calc(28 / var(--pc));
  color: #666;
}
.content .topics-item a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.content .back {
  font-size: calc(14 / var(--pc));
  font-weight: 800;
  display: flex;
  gap: 0 calc(11 / var(--pc));
  justify-content: center;
  align-items: center;
  margin-top: calc(69 / var(--pc));
}
.content .back .arrow {
  transform: rotate(180deg);
}
.content .back:hover .arrow::after {
  animation: arrowSlide 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s 1 forwards;
}
.content .video-lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 5;
  background: rgba(0, 0, 0, 0.8);
  display: none;
}
.content .video-lightbox.active {
  display: block;
}
.content .video-lightbox .video-modal {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: min(92vw, 1080px);
  aspect-ratio: 16/9;
  background: #000;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.5);
}
.content .video-lightbox .video-modal iframe, .content .video-lightbox .video-modal video {
  width: 100%;
  height: 100%;
  display: block;
}
.content table.table01 {
  width: 100%;
  margin-top: calc(49 / var(--pc));
  border-top: 2px solid #E3EADF;
}
.content table.table01 th, .content table.table01 td {
  padding: calc(18 / var(--pc)) 0;
  border-bottom: 2px solid #E3EADF;
  line-height: calc(28 / var(--pc));
  font-weight: 400;
  vertical-align: top;
}
.content table.table01 th {
  width: calc(220 / var(--pc));
  font-size: calc(14 / var(--pc));
  color: #666;
  padding-left: calc(30 / var(--pc));
  text-align: left;
}
.content table.table01 td table {
  margin-top: 0;
  border-top: none;
}
.content table.table01 td table th, .content table.table01 td table td {
  padding: 0 calc(10 / var(--pc));
  border-bottom: none;
}
.content table.table01 td table th {
  width: auto;
  padding-left: calc(10 / var(--pc));
  color: #222;
}
.content .contact-area {
  margin-top: calc(104 / var(--pc));
  background: #F1F7EC;
  border-radius: calc(80 / var(--pc));
  padding: calc(96 / var(--pc)) calc(280 / var(--pc));
  display: flex;
  justify-content: space-between;
}
.content .contact-area .contact-left img {
  width: calc(108 / var(--pc));
}
.content .contact-area .contact-left h2 {
  font-size: calc(44 / var(--pc));
  font-weight: 500;
  margin-top: calc(17 / var(--pc));
}
.content .contact-area .contact-left h2 span {
  font-family: "Varela Round", sans-serif;
  font-size: calc(16 / var(--pc));
  letter-spacing: 0.1em;
  display: block;
  margin-top: calc(3 / var(--pc));
  color: #16499C;
}
.content .contact-area .contact-left p {
  line-height: calc(26 / var(--pc));
  margin-top: calc(18 / var(--pc));
}
.content .contact-area .contact-right {
  width: calc(612 / var(--pc));
}
.content .contact-area .contact-right .contact-item {
  background: #fff;
  border-radius: calc(16 / var(--pc));
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.content .contact-area .contact-right .contact-item + .contact-item {
  margin-top: calc(24 / var(--pc));
}
.content .contact-area .contact-right .contact-item:nth-of-type(1) {
  padding: calc(35 / var(--pc)) calc(32 / var(--pc)) calc(37 / var(--pc)) calc(40 / var(--pc));
}
.content .contact-area .contact-right .contact-item:nth-of-type(2) {
  padding: calc(35 / var(--pc)) calc(35 / var(--pc)) calc(34 / var(--pc)) calc(40 / var(--pc));
}
.content .contact-area .contact-right .contact-item > p {
  font-weight: 500;
}
.content .contact-area .contact-right .contact-item .tel p:nth-of-type(1) {
  font-size: calc(38 / var(--pc));
  font-weight: 800;
  line-height: calc(40 / var(--pc));
  color: #005DAB;
}
.content .contact-area .contact-right .contact-item .tel p:nth-of-type(2) {
  font-size: calc(14 / var(--pc));
  line-height: calc(28 / var(--pc));
  margin-top: calc(3 / var(--pc));
}
.content .search {
  display: flex;
  gap: 0 calc(16 / var(--pc));
}
.content .search .select-box {
  position: relative;
}
.content .search .select-box select {
  width: calc(240 / var(--pc));
  border: 2px solid #E3EADF;
  border-radius: calc(4 / var(--pc));
  padding: calc(12 / var(--pc)) calc(21 / var(--pc)) calc(12 / var(--pc));
  font-size: calc(16 / var(--pc));
  font-weight: 500;
  cursor: pointer;
  color: #222;
}
.content .search .select-box::after {
  display: block;
  content: "";
  width: calc(10 / var(--pc));
  height: calc(10 / var(--pc));
  border-right: 2px solid #69B72D;
  border-bottom: 2px solid #69B72D;
  position: absolute;
  top: 50%;
  right: calc(18 / var(--pc));
  transform: translateY(-50%) rotate(45deg);
}
.content .breadcrumbs {
  margin-top: calc(118 / var(--pc));
  padding: 0 calc(200 / var(--pc)) calc(42 / var(--pc));
  border-bottom: 2px solid #E3EADF;
}
.content .breadcrumbs ol {
  display: flex;
  gap: 0 calc(14 / var(--pc));
  font-size: calc(14 / var(--pc));
  letter-spacing: 0.05em;
  color: #666;
  list-style: none;
}
.content .breadcrumbs ol a {
  color: #222;
}
.content .breadcrumbs ol a::after {
  display: inline-block;
  content: "";
  width: calc(8 / var(--pc));
  height: calc(8 / var(--pc));
  border-top: 2px solid #CCC;
  border-right: 2px solid #CCC;
  border-radius: 2px;
  transform: rotate(45deg);
  margin-left: calc(8 / var(--pc));
}

footer {
  margin-top: calc(68 / var(--pc));
}
footer .footer-top {
  display: flex;
  gap: 0 calc(211 / var(--pc));
  justify-content: center;
}
footer .footer-top .logo-bnr {
  width: calc(296 / var(--pc));
  padding-top: calc(8 / var(--pc));
  display: grid;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(2, auto);
}
footer .footer-top .logo-bnr a:nth-of-type(1) {
  grid-column: 1/3;
  grid-row: 1/2;
}
footer .footer-top .logo-bnr a:nth-of-type(2), footer .footer-top .logo-bnr a:nth-of-type(3) {
  transition: 0.3s;
}
footer .footer-top .logo-bnr a:nth-of-type(2):hover, footer .footer-top .logo-bnr a:nth-of-type(3):hover {
  opacity: 0.6;
}
footer .footer-top .logo-bnr a:nth-of-type(2) {
  width: calc(154 / var(--pc));
  margin: calc(50 / var(--pc)) calc(16 / var(--pc)) 0 0;
  grid-column: 1/2;
  grid-row: 2/3;
}
footer .footer-top .logo-bnr a:nth-of-type(3) {
  width: calc(108 / var(--pc));
  margin-top: calc(50 / var(--pc));
  grid-column: 2/3;
  grid-row: 2/3;
}
footer .footer-top .footer-menu {
  display: grid;
  grid-template-rows: calc(47 / var(--pc)) calc(51 / var(--pc)) calc(58 / var(--pc)) calc(124 / var(--pc));
  grid-template-columns: calc(232 / var(--pc)) calc(301 / var(--pc)) calc(160 / var(--pc));
}
footer .footer-top .footer-menu .menu-item > a {
  font-weight: 500;
}
footer .footer-top .footer-menu .menu-item > a:hover {
  text-decoration: underline;
}
footer .footer-top .footer-menu .menu-item .menu-child {
  margin-top: calc(16 / var(--pc));
  line-height: calc(40 / var(--pc));
}
footer .footer-top .footer-menu .menu-item .menu-child ul li a {
  color: #666;
}
footer .footer-top .footer-menu .menu-item .menu-child ul li a:hover {
  text-decoration: underline;
}
footer .footer-top .footer-menu .menu-about {
  grid-row: 1/5;
  grid-column: 1/2;
}
footer .footer-top .footer-menu .menu-office {
  grid-row: 1/5;
  grid-column: 2/3;
}
footer .footer-top .footer-menu .menu-service {
  grid-row: 1/2;
  grid-column: 3/4;
}
footer .footer-top .footer-menu .menu-topics {
  grid-row: 2/3;
  grid-column: 3/4;
}
footer .footer-top .footer-menu .btn.blue, footer .footer-top .footer-menu .btn.green {
  width: 100%;
  height: calc(48 / var(--pc));
  line-height: 0;
  padding: 0;
  justify-content: center;
  font-size: calc(16 / var(--pc));
  font-weight: 500;
  border-radius: calc(28 / var(--pc));
}
footer .footer-top .footer-menu .btn.blue .arrow, footer .footer-top .footer-menu .btn.green .arrow {
  display: none;
}
footer .footer-top .footer-menu .btn.blue {
  grid-row: 3/4;
  grid-column: 3/4;
}
footer .footer-top .footer-menu .btn.blue:hover {
  background: #005DAB;
  opacity: 0.6;
}
footer .footer-top .footer-menu .btn.green {
  grid-row: 4/5;
  grid-column: 3/4;
  transition: 0.3s;
}
footer .footer-top .footer-menu .btn.green:hover {
  opacity: 0.6;
}
footer .footer-bottom {
  margin-top: calc(59 / var(--pc));
  border-top: 2px solid #E3EADF;
  padding: calc(19 / var(--pc)) calc(200 / var(--pc)) calc(20 / var(--pc));
  display: flex;
  justify-content: space-between;
  align-items: center;
}
footer .footer-bottom .footer-bottom-menu {
  display: flex;
  gap: 0 calc(32 / var(--pc));
  font-size: calc(12 / var(--pc));
  line-height: calc(28 / var(--pc));
}
footer .footer-bottom .footer-bottom-menu li a {
  color: #666;
}
footer .footer-bottom .footer-bottom-menu li a:hover {
  text-decoration: underline;
}
footer .footer-bottom .copyright {
  font-family: "Varela Round", sans-serif;
  font-size: calc(12 / var(--pc));
  color: #AAA;
  margin-top: calc(6 / var(--pc));
}

@media (max-width: 768px) {
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  body {
    font-size: calc(14 / var(--sp));
  }
  .btn {
    width: calc(256 / var(--sp));
    border: calc(2 / var(--sp)) solid #E3EADF;
    border-radius: calc(36 / var(--sp));
    padding: 0 calc(15 / var(--sp)) 0 calc(28 / var(--sp));
    font-size: calc(14 / var(--sp));
    line-height: calc(52 / var(--sp));
  }
  .arrow {
    width: calc(31 / var(--sp));
    height: calc(30 / var(--sp));
    flex-shrink: 0;
  }
  .arrow::after {
    width: calc(13 / var(--sp));
    height: calc(11 / var(--sp));
  }
  .arrow.dl::after {
    width: calc(12 / var(--sp));
    height: calc(15 / var(--sp));
  }
  .title01 {
    font-size: calc(28 / var(--sp));
  }
  .title01 span {
    font-size: calc(12 / var(--sp));
    margin-top: 0;
  }
  .title02 {
    font-size: calc(28 / var(--sp));
    line-height: calc(30 / var(--sp));
  }
  header {
    height: calc(68 / var(--sp));
    padding: calc(16 / var(--sp)) calc(16 / var(--sp)) calc(16 / var(--sp)) calc(16 / var(--sp));
  }
  header .logo {
    width: calc(186 / var(--sp));
    z-index: 3;
  }
  header .menu-btn {
    display: block;
    width: calc(45 / var(--sp));
    height: calc(44 / var(--sp));
    background: url(../img/common/circle.webp) no-repeat;
    background-size: contain;
    position: relative;
    padding: calc(16 / var(--sp)) calc(14 / var(--sp));
    z-index: 3;
  }
  header .menu-btn span {
    display: block;
    width: calc(17 / var(--sp));
    height: calc(2 / var(--sp));
    background: #000;
    border-radius: calc(2 / var(--sp));
    transition: 0.3s;
  }
  header .menu-btn span:nth-of-type(2), header .menu-btn span:nth-of-type(3) {
    margin-top: calc(3 / var(--sp));
  }
  header .menu-btn.active span:nth-of-type(1), header .menu-btn.active span:nth-of-type(3) {
    width: calc(20 / var(--sp));
  }
  header .menu-btn.active span:nth-of-type(1) {
    transform: rotate(45deg);
    margin: calc(5 / var(--sp)) 0 0 calc(-1 / var(--sp));
  }
  header .menu-btn.active span:nth-of-type(2) {
    display: none;
  }
  header .menu-btn.active span:nth-of-type(3) {
    transform: rotate(-45deg);
    margin: calc(-2 / var(--sp)) 0 0 calc(-1 / var(--sp));
  }
  header .menu-container {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow-y: scroll;
    background: #FFFFF8;
    flex-direction: column;
    gap: calc(56 / var(--sp)) 0;
  }
  header .menu-container.active {
    display: block;
  }
  header .menu-container .menu {
    flex-direction: column;
    font-size: calc(18 / var(--sp));
    gap: 0;
    width: calc(327 / var(--sp));
    margin: calc(99 / var(--sp)) auto 0;
  }
  header .menu-container .menu li {
    border-bottom: calc(2 / var(--sp)) solid #E3EADF;
  }
  header .menu-container .menu li a {
    padding: calc(28 / var(--sp)) 0;
    display: block;
  }
  header .menu-container .menu li:has(.child-menu) > a {
    position: relative;
  }
  header .menu-container .menu li:has(.child-menu) > a::before, header .menu-container .menu li:has(.child-menu) > a::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  header .menu-container .menu li:has(.child-menu) > a::before {
    width: calc(14 / var(--sp));
    height: calc(2 / var(--sp));
    border-top: 2px solid #69B72D;
    right: 0;
  }
  header .menu-container .menu li:has(.child-menu) > a::after {
    width: calc(2 / var(--sp));
    height: calc(14 / var(--sp));
    border-left: 2px solid #69B72D;
    right: calc(6 / var(--sp));
  }
  header .menu-container .menu li:has(.child-menu) > a.active::after {
    display: none;
  }
  header .menu-container .menu .child-menu {
    position: static;
    transition: 0.3s;
    padding: 0;
    display: none;
  }
  header .menu-container .menu .child-menu.active {
    display: block;
  }
  header .menu-container .menu .child-menu ul {
    background: none;
    box-shadow: none;
    padding: 0 0 calc(20 / var(--sp)) 0;
    border-radius: 0;
    line-height: calc(44 / var(--sp));
  }
  header .menu-container .menu .child-menu ul li {
    border-bottom: none;
  }
  header .menu-container .menu .child-menu ul li a {
    padding: 0;
    font-weight: 400;
    color: #666;
  }
  header .menu-container .header-contact {
    background: #F1F7EC;
    border-radius: calc(48 / var(--sp)) calc(48 / var(--sp)) 0 0;
    margin-top: calc(56 / var(--sp));
    padding: calc(56 / var(--sp)) calc(24 / var(--sp));
  }
  header .menu-container .header-contact .header-contact-item {
    background: #fff;
    border-radius: calc(12 / var(--sp));
    padding: calc(19 / var(--sp)) calc(35 / var(--sp)) calc(24 / var(--sp));
    text-align: center;
  }
  header .menu-container .header-contact .header-contact-item p {
    display: block;
  }
  header .menu-container .header-contact .header-contact-item > p {
    font-size: calc(16 / var(--sp));
    font-weight: 500;
  }
  header .menu-container .header-contact .header-contact-item + .header-contact-item {
    margin-top: calc(12 / var(--sp));
  }
  header .menu-container .header-contact .header-contact-item .tel {
    margin-top: calc(8 / var(--sp));
  }
  header .menu-container .header-contact .header-contact-item .tel p a {
    font-size: calc(32 / var(--sp));
    font-weight: 800;
    line-height: calc(40 / var(--sp));
    color: #005DAB;
  }
  header .menu-container .header-contact .header-contact-item .tel p:nth-of-type(2) {
    font-size: calc(12 / var(--sp));
    line-height: calc(28 / var(--sp));
  }
  header .menu-container .header-contact .btn {
    width: calc(256 / var(--sp));
    border-radius: calc(36 / var(--sp));
    font-size: calc(14 / var(--sp));
    line-height: calc(56 / var(--sp));
    font-weight: 800;
    justify-content: space-between;
    padding: 0 calc(15 / var(--sp)) 0 calc(28 / var(--sp));
    margin: calc(16 / var(--sp)) auto 0;
  }
  header .menu-container .header-contact .btn .arrow {
    display: inline-block;
  }
  .content {
    padding-top: calc(68 / var(--sp));
  }
  .content .scroll {
    display: none;
  }
  .content .read {
    width: calc(327 / var(--sp));
    margin-top: calc(43 / var(--sp));
  }
  .content .read h1 {
    font-size: calc(30 / var(--sp));
  }
  .content .read h1 span {
    font-size: calc(12 / var(--sp));
    line-height: calc(12 / var(--sp));
    margin-left: 0;
  }
  .content .read p {
    font-size: calc(16 / var(--sp));
    line-height: calc(26 / var(--sp));
    margin-top: calc(57 / var(--sp));
    width: 100%;
  }
  .content .read .txt-movie {
    flex-direction: column;
    margin-top: calc(57 / var(--sp));
    gap: calc(59 / var(--sp)) 0;
  }
  .content .read .txt-movie p {
    width: 100%;
  }
  .content .read .txt-movie p span {
    font-size: calc(28 / var(--sp));
    line-height: calc(40 / var(--sp));
    letter-spacing: 0em;
    margin-bottom: calc(10 / var(--sp));
  }
  .content .read .txt-movie .movie {
    width: 100%;
    height: calc(218 / var(--sp));
    border-radius: calc(48 / var(--sp));
    padding: calc(50 / var(--sp)) 0 calc(48 / var(--sp));
  }
  .content .read .txt-movie .movie .play {
    width: calc(85 / var(--sp));
    height: calc(88 / var(--sp));
  }
  .content .read .txt-movie .movie p {
    font-size: calc(14 / var(--sp));
    line-height: calc(14 / var(--sp));
    margin-top: calc(18 / var(--sp));
  }
  .content .topics-item img {
    border-radius: calc(12 / var(--sp)) calc(32 / var(--sp)) calc(12 / var(--sp)) calc(12 / var(--sp));
  }
  .content .topics-item .icons {
    flex-direction: column;
    align-items: flex-start;
    margin-top: calc(13 / var(--sp));
    gap: calc(7 / var(--sp)) 0;
  }
  .content .topics-item .icons .category {
    font-size: calc(12 / var(--sp));
    line-height: calc(20 / var(--sp));
    border-radius: calc(2 / var(--sp));
    padding: 0 calc(6 / var(--sp));
    display: inline-block;
  }
  .content .topics-item .icons .office-name {
    font-size: calc(14 / var(--sp));
    line-height: calc(24 / var(--sp));
  }
  .content .topics-item h3 {
    font-size: calc(14 / var(--sp));
    line-height: calc(22 / var(--sp));
    margin-top: calc(2 / var(--sp));
  }
  .content .topics-item .date {
    font-size: calc(12 / var(--sp));
    line-height: calc(12 / var(--sp));
    margin-top: calc(6 / var(--sp));
  }
  .content .back {
    font-size: calc(14 / var(--sp));
    gap: 0 calc(11 / var(--sp));
    margin-top: calc(28 / var(--sp));
  }
  .content table.table01 {
    margin-top: calc(30 / var(--sp));
  }
  .content table.table01 th, .content table.table01 td {
    padding: calc(20 / var(--sp)) 0;
    line-height: calc(22 / var(--sp));
    display: block;
  }
  .content table.table01 th {
    width: 100%;
    font-size: calc(14 / var(--sp));
    padding-left: 0;
    padding-bottom: 0;
    border-bottom: none;
  }
  .content table.table01 td {
    font-size: calc(14 / var(--sp));
    padding-top: calc(7 / var(--sp));
  }
  .content table.table01 td table {
    margin-top: 0;
  }
  .content table.table01 td table th, .content table.table01 td table td {
    display: table-cell;
    padding: 0 calc(3 / var(--sp));
    font-size: calc(12 / var(--sp));
  }
  .content table.table01 td table th {
    width: auto;
    padding: 0 calc(3 / var(--sp));
  }
  .content table.table01 td table td {
    padding-top: 0;
  }
  .content .contact-area {
    margin-top: calc(64 / var(--sp));
    border-radius: calc(48 / var(--sp));
    padding: calc(40 / var(--sp)) calc(24 / var(--sp)) calc(56 / var(--sp));
    flex-direction: column;
    align-items: center;
  }
  .content .contact-area .contact-left {
    text-align: center;
  }
  .content .contact-area .contact-left img {
    width: calc(80 / var(--sp));
    margin: 0 auto;
  }
  .content .contact-area .contact-left h2 {
    font-size: calc(28 / var(--sp));
    margin-top: calc(14 / var(--sp));
  }
  .content .contact-area .contact-left h2 span {
    font-size: calc(12 / var(--sp));
    margin-top: calc(4 / var(--sp));
  }
  .content .contact-area .contact-left p {
    font-size: calc(14 / var(--sp));
    line-height: calc(22 / var(--sp));
    margin-top: calc(14 / var(--sp));
  }
  .content .contact-area .contact-right {
    margin-top: calc(29 / var(--sp));
    width: calc(327 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item {
    border-radius: calc(12 / var(--sp));
    flex-direction: column;
    justify-content: center;
  }
  .content .contact-area .contact-right .contact-item + .contact-item {
    margin-top: calc(12 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item:nth-of-type(1) {
    padding: calc(19 / var(--sp)) calc(35 / var(--sp)) calc(24 / var(--sp)) calc(36 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item:nth-of-type(2) {
    padding: calc(20 / var(--sp)) calc(42 / var(--sp)) calc(16 / var(--sp)) calc(43 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item > p {
    font-size: calc(16 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item .btn {
    margin-top: calc(17 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item .tel {
    margin-top: calc(8 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item .tel p:nth-of-type(1) {
    font-size: calc(32 / var(--sp));
    line-height: calc(40 / var(--sp));
  }
  .content .contact-area .contact-right .contact-item .tel p:nth-of-type(2) {
    font-size: calc(12 / var(--sp));
    line-height: calc(28 / var(--sp));
    margin-top: calc(1 / var(--sp));
  }
  .content .search {
    gap: 0 calc(13 / var(--sp));
  }
  .content .search .select-box select {
    width: calc(157 / var(--sp));
    border-radius: calc(4 / var(--sp));
    padding: calc(13 / var(--sp)) calc(11 / var(--sp)) calc(14 / var(--sp));
    font-size: calc(14 / var(--sp));
  }
  .content .search .select-box::after {
    width: calc(10 / var(--sp));
    height: calc(10 / var(--sp));
    right: calc(12 / var(--sp));
  }
  .content .breadcrumbs {
    margin-top: calc(103 / var(--sp));
    padding: 0 calc(24 / var(--sp)) calc(33 / var(--sp));
  }
  .content .breadcrumbs ol {
    white-space: nowrap;
    overflow-x: scroll;
    gap: 0 calc(10 / var(--sp));
    font-size: calc(12 / var(--sp));
  }
  .content .breadcrumbs ol a::after {
    width: calc(8 / var(--sp));
    height: calc(8 / var(--sp));
    margin-left: calc(8 / var(--sp));
  }
  footer {
    margin-top: calc(56 / var(--sp));
  }
  footer .footer-top {
    flex-direction: column;
    gap: calc(50 / var(--sp));
    padding: 0 calc(24 / var(--sp));
  }
  footer .footer-top .logo-bnr {
    width: 100%;
    padding-top: 0;
    display: block;
  }
  footer .footer-top .logo-bnr a:nth-of-type(1) {
    display: block;
    width: calc(186 / var(--sp));
  }
  footer .footer-top .logo-bnr a:nth-of-type(2), footer .footer-top .logo-bnr a:nth-of-type(3) {
    display: none;
  }
  footer .footer-top .footer-menu {
    grid-template-rows: repeat(2, auto);
    grid-template-columns: auto;
  }
  footer .footer-top .footer-menu .menu-item {
    font-size: calc(14 / var(--sp));
  }
  footer .footer-top .footer-menu .menu-item .menu-child {
    line-height: calc(36 / var(--sp));
    padding-bottom: calc(14 / var(--sp));
    border-bottom: calc(2 / var(--sp)) solid #E3EADF;
    display: none;
  }
  footer .footer-top .footer-menu .menu-item .menu-child.active {
    display: block;
  }
  footer .footer-top .footer-menu .menu-item > a {
    padding: calc(20 / var(--sp)) 0;
    display: block;
    border-bottom: calc(2 / var(--sp)) solid #E3EADF;
  }
  footer .footer-top .footer-menu .menu-item > a.menu-open {
    position: relative;
  }
  footer .footer-top .footer-menu .menu-item > a.menu-open::before, footer .footer-top .footer-menu .menu-item > a.menu-open::after {
    display: block;
    content: "";
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #69B72D;
  }
  footer .footer-top .footer-menu .menu-item > a.menu-open::before {
    width: calc(14 / var(--sp));
    height: 2px;
    right: 0;
  }
  footer .footer-top .footer-menu .menu-item > a.menu-open::after {
    width: 2px;
    height: calc(14 / var(--sp));
    right: calc(6 / var(--sp));
  }
  footer .footer-top .footer-menu .menu-item > a.menu-open.active::after {
    display: none;
  }
  footer .footer-top .footer-menu .menu-about {
    grid-row: 1/2;
    grid-column: 1/2;
  }
  footer .footer-top .footer-menu .menu-office {
    grid-row: 3/4;
    grid-column: 1/2;
  }
  footer .footer-top .footer-menu .menu-service {
    grid-row: 2/3;
    grid-column: 1/2;
  }
  footer .footer-top .footer-menu .menu-topics {
    grid-row: 4/5;
    grid-column: 1/2;
  }
  footer .footer-top .footer-menu .btn.blue, footer .footer-top .footer-menu .btn.green {
    width: calc(256 / var(--sp));
    height: calc(56 / var(--sp));
    line-height: 0;
    padding: 0;
    justify-content: space-between;
    font-size: calc(14 / var(--sp));
    font-weight: 800;
    border-radius: calc(36 / var(--sp));
    padding: 0 calc(15 / var(--sp)) 0 calc(28 / var(--sp));
    margin: 0 auto;
  }
  footer .footer-top .footer-menu .btn.blue .arrow, footer .footer-top .footer-menu .btn.green .arrow {
    display: inline-block;
  }
  footer .footer-top .footer-menu .btn.blue {
    grid-row: 6/7;
    grid-column: 1/2;
    margin-top: calc(12 / var(--sp));
  }
  footer .footer-top .footer-menu .btn.green {
    grid-row: 5/6;
    grid-column: 1/2;
    margin-top: calc(32 / var(--sp));
  }
  footer .footer-bottom {
    margin-top: calc(32 / var(--sp));
    padding: calc(24 / var(--sp)) 0;
    flex-direction: column;
  }
  footer .footer-bottom .footer-bottom-menu {
    gap: 0 calc(32 / var(--sp));
    font-size: calc(12 / var(--sp));
    line-height: calc(28 / var(--sp));
  }
  footer .footer-bottom .footer-bnr {
    display: flex;
    gap: 0 calc(24 / var(--sp));
    margin-top: calc(32 / var(--sp));
    justify-content: center;
  }
  footer .footer-bottom .footer-bnr a:nth-of-type(1) {
    width: calc(154 / var(--sp));
  }
  footer .footer-bottom .footer-bnr a:nth-of-type(2) {
    width: calc(108 / var(--sp));
  }
  footer .footer-bottom .copyright {
    font-size: calc(10 / var(--sp));
    margin-top: calc(31 / var(--sp));
  }
}/*# sourceMappingURL=base.css.map */