@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
}

ul, ol {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

del {
  text-decoration: line-through;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  margin: 1em 0;
  padding: 0;
}

input, select {
  vertical-align: middle;
}

* {
  box-sizing: border-box;
}

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

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

body {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden;
  font-size: 1.8em;
  line-height: 1.5;
  word-wrap: break-word;
  color: #1e1e1e;
}

a {
  text-decoration: none;
  transition: 0.4s;
  color: #1e1e1e;
}
@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.8;
  }
}

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

main {
  display: block;
}

h1, h2, h3, h4, h5, h6, dt, th {
  font-weight: bold;
  line-height: 1.3;
  letter-spacing: 0.02em;
}

@media screen and (min-width: 768px) {
  .c_sec1 {
    padding: 100px 30px;
  }
}
@media screen and (max-width: 767px) {
  .c_sec1 {
    padding: 13.3333333333vw 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .c_sec1 > div.inner {
    max-width: 1080px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .c_sec2 {
    padding: 100px 30px;
  }
}
@media screen and (max-width: 767px) {
  .c_sec2 {
    padding: 13.3333333333vw 0;
  }
}
@media screen and (min-width: 768px) {
  .c_sec2 > div.inner {
    max-width: 1080px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .c_sec2 > div.outer {
    padding: 0 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .c_sec2 > div.outer > div.inner {
    max-width: 1080px;
    margin: 0 auto;
  }
}
.c_tit1 p {
  color: #c7ac50;
  font-family: "Red Hat Display", sans-serif;
  font-weight: 800;
  letter-spacing: 0.02em;
}
@media screen and (min-width: 768px) {
  .c_tit1 p {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit1 p {
    font-size: 3.4666666667vw;
  }
}
.c_tit1 div.text {
  display: flex;
  align-items: baseline;
}
@media screen and (min-width: 768px) {
  .c_tit1 div.text {
    gap: 0 10px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit1 div.text {
    gap: 0 2vw;
  }
}
.c_tit1 div.text h2, .c_tit1 div.text h3 {
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .c_tit1 div.text h2, .c_tit1 div.text h3 {
    font-size: 32px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit1 div.text h2, .c_tit1 div.text h3 {
    font-size: 5.8666666667vw;
  }
}
.c_tit1 div.text span.nt {
  color: #646873;
}
@media screen and (min-width: 768px) {
  .c_tit1 div.text span.nt {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit1 div.text span.nt {
    font-size: 3.7333333333vw;
  }
}

.c_tit2 {
  text-align: center;
  font-weight: 700;
  font-family: "Red Hat Display", sans-serif;
  letter-spacing: 0.04em;
  display: flex;
  align-items: center;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .c_tit2 {
    font-size: 30px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit2 {
    font-size: 6.6666666667vw;
  }
}
.c_tit2:after {
  content: "";
  background: #c7ac50;
}
@media screen and (min-width: 768px) {
  .c_tit2:after {
    width: 100px;
    height: 2px;
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit2:after {
    width: 24vw;
    height: 0.5333333333vw;
    margin-top: 2vw;
  }
}

.c_tit3 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .c_tit3 {
    font-size: 32px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit3 {
    font-size: 5.8666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .c_tit3 span {
    padding: 0 5px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit3 span {
    line-height: 1.5;
    padding: 0 1.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .c_tit3 span.pc-bg {
    background: linear-gradient(transparent 70%, #ddcd96 70%);
  }
}
@media screen and (max-width: 767px) {
  .c_tit3 span.sp-bg {
    background: linear-gradient(transparent 70%, #ddcd96 70%);
  }
}
.c_tit4 {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .c_tit4 {
    padding: 2px 0 2px 15px;
    border-left: 4px solid #ddcd96;
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  .c_tit4 {
    padding: 0.2666666667vw 0 0.2666666667vw 3.3333333333vw;
    border-left: 1.0666666667vw solid #ddcd96;
    font-size: 5.3333333333vw;
    line-height: 1.5;
  }
}

@media screen and (min-width: 768px) {
  .c_cta {
    padding: 90px 30px;
    background: #2d3344 url(../img/bg_cta.png) 0 0/cover no-repeat;
  }
}
@media screen and (max-width: 767px) {
  .c_cta {
    padding: 14.6666666667vw 4vw;
    background: #2d3344 url(../img/bg_cta.png) center 0/cover no-repeat;
  }
}
.c_cta div.inner h2 {
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .c_cta div.inner h2 {
    font-size: 32px;
  }
}
@media screen and (max-width: 767px) {
  .c_cta div.inner h2 {
    font-size: 5.8666666667vw;
  }
}
.c_cta div.inner p {
  text-align: center;
  color: #fff;
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  .c_cta div.inner p {
    margin-top: 25px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  .c_cta div.inner p {
    margin-top: 8vw;
    font-size: 3.7333333333vw;
  }
}
.c_cta div.inner a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  background-color: #edc84c;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c_cta div.inner a.btn {
    width: 336px;
    height: 64px;
    font-size: 20px;
    margin: 40px auto 0;
  }
}
@media screen and (max-width: 767px) {
  .c_cta div.inner a.btn {
    width: 53.3333333333vw;
    margin: 6.6666666667vw auto 0;
    width: 68.2666666667vw;
    height: 14.9333333333vw;
    font-size: 5.0666666667vw;
  }
}

@media screen and (min-width: 768px) {
  .c_slider1 {
    display: none;
  }
}
.c_slider1.slick-initialized {
  display: block;
}
.c_slider1 .slick-dotted.slick-slider {
  margin-bottom: 0 !important;
}
.c_slider1 .slick-next, .c_slider1 .slick-prev {
  z-index: 2;
  opacity: 1;
  color: transparent;
}
@media screen and (min-width: 768px) {
  .c_slider1 button.slick-next.slick-arrow, .c_slider1 button.slick-prev.slick-arrow {
    width: 44px;
    height: 44px;
  }
}
@media screen and (max-width: 767px) {
  .c_slider1 button.slick-next.slick-arrow, .c_slider1 button.slick-prev.slick-arrow {
    width: 5.8666666667vw;
    height: 5.8666666667vw;
  }
}
.c_slider1 button.slick-next.slick-arrow:before, .c_slider1 button.slick-prev.slick-arrow:before {
  display: none;
}
.c_slider1 button.slick-prev.slick-arrow {
  background: url(../img/slider_prev.png) center 0/100% no-repeat;
}
.c_slider1 button.slick-next.slick-arrow {
  background: url(../img/slider_next.png) center 0/100% no-repeat;
}
.c_slider1 .slick-prev, .c_slider1 .slick-next {
  top: 50%;
  transform: translateY(-50%) !important;
}
@media screen and (min-width: 768px) {
  .c_slider1 .slick-prev {
    transform: translateX(-65px) !important;
  }
}
@media screen and (min-width: 768px) {
  .c_slider1 .slick-next {
    transform: translateX(65px) !important;
  }
}
.c_slider1 .slick-prev, .c_slider1 .slick-next {
  transition: 0.4s;
}
@media screen and (min-width: 768px) {
  .c_slider1 .slick-prev:hover, .c_slider1 .slick-next:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 768px) {
  .c_slider1 .slick-prev {
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .c_slider1 .slick-prev {
    left: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .c_slider1 .slick-next {
    right: 0;
    transform: translate(0, 50%);
  }
}
@media screen and (max-width: 767px) {
  .c_slider1 .slick-next {
    right: 2.6666666667vw;
  }
}
.c_slider1 button.slick-disabled {
  opacity: 0;
}
.c_slider1 .slick-track {
  display: flex !important; /* display:flexを強制 */
  align-items: stretch !important; /* 高さを揃える */
}
.c_slider1 .slick-slide {
  height: auto !important;
}

header.cmn {
  position: relative;
  background-color: transparent;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
}
@media screen and (min-width: 768px) {
  header.cmn {
    height: 100px;
  }
}
@media screen and (max-width: 767px) {
  header.cmn {
    transition: 0.4s;
    height: 17.0666666667vw;
  }
}
@media screen and (min-width: 1080px) {
  header.cmn div.inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media screen and (min-width: 768px) {
  header.cmn div.inner {
    height: 100px;
    padding: 0 50px;
  }
}
@media screen and (min-width: 768px) {
  header.cmn div.inner div.set {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: inherit;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 17.0666666667vw;
    padding: 0 3.3333333333vw;
  }
}
header.cmn div.inner div.set a.logo {
  display: flex;
}
@media screen and (min-width: 768px) {
  header.cmn div.inner div.set a.logo {
    width: 232px;
    height: 32px;
    background: url(../img/logo.png) 0 0/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set a.logo {
    width: 46.4vw;
    height: 6.4vw;
    background: url(../img/sp/logo.png) 0 0/100% no-repeat;
  }
}
@media screen and (min-width: 768px) {
  header.cmn div.inner div.set div.menu-btn {
    display: none;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set div.menu-btn {
    display: block;
    transition: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30px;
    height: 26px;
    position: relative;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set div.menu-btn {
    transition: 0.4s;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 8vw;
    height: 5.7333333333vw;
    position: relative;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set div.menu-btn span {
    transition: 0.4s;
    position: absolute;
    right: 0;
    width: 100%;
    height: 3px;
    border-radius: 1px;
    background-color: #fff;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set div.menu-btn span {
    transition: 0.4s;
    position: absolute;
    right: 0;
    width: 100%;
    height: 0.5333333333vw;
    border-radius: 0.2666666667vw;
    background-color: #fff;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(1) {
    top: 0;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(1) {
    top: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(2) {
    top: 50%;
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(3) {
    bottom: 0;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set div.menu-btn span:nth-of-type(3) {
    bottom: 0;
  }
}
@media screen and (min-width: 1080px) {
  header.cmn div.inner nav {
    display: flex !important;
    gap: 0 35px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner nav {
    display: none;
    padding-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner nav {
    display: none;
    padding: 0 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  header.cmn div.inner nav ul {
    display: flex;
    gap: 0 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner nav ul {
    display: block;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner nav ul li:not(:last-of-type) a {
    border-bottom: 1px solid #f3f3f3;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner nav ul li:not(:last-of-type) a {
    border-bottom: 1px solid #f3f3f3;
  }
}
header.cmn div.inner nav ul li a {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  header.cmn div.inner nav ul li a {
    font-size: 14px;
    color: #fff;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner nav ul li a {
    display: flex;
    padding: 28px 0;
    font-weight: 800;
    font-size: 24px;
    color: #1e1e1e;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner nav ul li a {
    display: flex;
    padding: 3.7333333333vw 0;
    font-weight: 800;
    font-size: 4.2666666667vw;
    color: #1e1e1e;
  }
}
header.cmn div.inner nav a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-weight: 600;
  border: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  header.cmn div.inner nav a.btn {
    width: 152px;
    height: 52px;
    font-size: 16px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner nav a.btn {
    width: 256px;
    height: 56px;
    margin: 20px auto 0;
    font-size: 22px;
    font-weight: 800;
    background-color: #edc84c;
    color: #1e1e1e;
    border: 1px solid #edc84c;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner nav a.btn {
    width: 68.2666666667vw;
    height: 14.9333333333vw;
    margin: 6.6666666667vw auto;
    font-size: 5.0666666667vw;
    font-weight: 800;
    background-color: #edc84c;
    color: #1e1e1e;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-active {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
  }
}
@media screen and (min-width: 768px) {
  header.cmn.is-active div.inner div.set a.logo {
    background: url(../img/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active div.inner div.set a.logo {
    background: url(../img/sp/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-active div.inner div.set div.menu-btn span {
    background-color: #646873 !important;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active div.inner div.set div.menu-btn span {
    background-color: #646873 !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(1) {
    top: 50% !important;
    transform: translateY(-50%) rotate(45deg);
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(1) {
    top: 50% !important;
    transform: translateY(-50%) rotate(45deg);
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(2) {
    opacity: 0;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(2) {
    opacity: 0;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(3) {
    bottom: 50% !important;
    transform: translateY(50%) rotate(-45deg);
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-active div.inner div.set div.menu-btn span:nth-of-type(3) {
    bottom: 50% !important;
    transform: translateY(50%) rotate(-45deg);
  }
}
header.cmn.is-active div.inner nav ul li a {
  color: #1e1e1e;
}
header.cmn.is-active div.inner nav a.btn {
  color: #1e1e1e;
  background-color: #edc84c;
}
header.cmn.is-fixed {
  background-color: #fff;
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn.is-fixed {
    overflow: auto;
    padding-bottom: 50px;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-fixed {
    overflow: auto;
    padding-bottom: 13.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  header.cmn.is-fixed div.inner div.set a.logo {
    background: url(../img/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-fixed div.inner div.set a.logo {
    background: url(../img/sp/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  header.cmn.is-fixed div.inner div.set div.menu-btn span {
    background-color: #646873;
  }
}
header.cmn.is-fixed div.inner nav ul li a {
  color: #1e1e1e;
}
header.cmn.is-fixed div.inner nav a.btn {
  color: #1e1e1e;
  background-color: #edc84c;
}

@media screen and (min-width: 768px) {
  footer.cmn div.cv {
    padding: 100px 30px 140px;
    background: #2d3344 url(../img/bg_contact.png) 0 0/cover no-repeat;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv {
    padding: 13.3333333333vw 4vw;
    background: #2d3344 url(../img/bg_contact.png) 0 0/cover no-repeat;
  }
}
footer.cmn div.cv div.head div.title {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  footer.cmn div.cv div.head div.title {
    gap: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv div.head div.title {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0 4vw;
  }
}
footer.cmn div.cv div.head div.title h3 {
  color: #fff;
}
@media screen and (min-width: 768px) {
  footer.cmn div.cv div.head div.title h3 {
    font-size: 34px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv div.head div.title h3 {
    font-size: 5.6vw;
  }
}
footer.cmn div.cv div.head div.title span {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #edc84c;
}
@media screen and (min-width: 768px) {
  footer.cmn div.cv div.head div.title span {
    width: 80px;
    height: 35px;
    font-size: 24px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv div.head div.title span {
    width: 13.3333333333vw;
    font-size: 3.4666666667vw;
  }
}
footer.cmn div.cv div.head p {
  text-align: center;
  color: #fff;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  footer.cmn div.cv div.head p {
    margin-top: 25px;
    font-size: 17px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv div.head p {
    margin-top: 3.3333333333vw;
    font-size: 4vw;
  }
}
footer.cmn div.cv div.form-wrap {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  footer.cmn div.cv div.form-wrap {
    max-width: 720px;
    margin: 40px auto 0;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.cv div.form-wrap {
    margin-top: 6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  footer.cmn div.foot {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1080px;
    margin: 0 auto;
    padding: 30px 20px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.foot {
    padding: 4.6666666667vw 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  footer.cmn div.foot p {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.foot p {
    text-align: center;
    line-height: 1.7;
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  footer.cmn div.foot ul {
    display: flex;
    gap: 0 14px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.foot ul {
    display: flex;
    justify-content: center;
    gap: 0 4.6666666667vw;
  }
}
footer.cmn div.foot ul li a {
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  footer.cmn div.foot ul li a {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  footer.cmn div.foot ul li a {
    font-size: 3.2vw;
  }
}

@media screen and (min-width: 768px) {
  nav.breadcrumbs {
    display: flex;
    padding: 20px 50px;
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  nav.breadcrumbs {
    padding: 20px 20px;
  }
}
@media screen and (max-width: 767px) {
  nav.breadcrumbs {
    padding: 2.6666666667vw 2.6666666667vw;
  }
}
nav.breadcrumbs ul {
  display: flex;
  align-items: center;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  nav.breadcrumbs ul li {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  nav.breadcrumbs ul li {
    font-size: 2.6666666667vw;
    padding-bottom: 2.6666666667vw;
  }
}
nav.breadcrumbs ul li + li {
  display: flex;
  align-items: center;
}
nav.breadcrumbs ul li + li:before {
  content: "＞";
  font-size: 0.8em;
}
@media screen and (min-width: 768px) {
  nav.breadcrumbs ul li + li:before {
    margin: 0 7px;
  }
}
@media screen and (max-width: 767px) {
  nav.breadcrumbs ul li + li:before {
    margin: 0 1.2vw;
  }
}

.c_column {
  background-color: #f3f3f3;
}
.c_column div.inner div.c_tit1 div.text h2 {
  letter-spacing: 0;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul {
    display: flex;
    justify-content: space-between;
    gap: 0 20px;
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul {
    display: flex;
    gap: 0 4vw;
    margin-top: 5.3333333333vw;
    overflow-x: scroll;
  }
}
.c_column div.inner > ul > li {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li {
    max-width: 336px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li {
    min-width: 66.6666666667vw;
    padding: 3.3333333333vw 4vw;
    border-bottom: 2.1333333333vw solid #fff;
  }
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts {
    padding: 20px 20px 30px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts {
    padding: 4vw 4vw 5.3333333333vw;
  }
}
.c_column div.inner > ul > li div.texts p.date {
  font-family: "Red Hat Display", sans-serif;
  font-weight: bold;
  color: #646873;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts p.date {
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts p.date {
    font-size: 3.4666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts h3 {
    margin-top: 3px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts h3 {
    margin-top: 0.8vw;
  }
}
.c_column div.inner > ul > li div.texts h3 a {
  display: flex;
  line-height: 1.35;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts h3 a {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts h3 a {
    font-size: 4.2666666667vw;
  }
}
.c_column div.inner > ul > li div.texts ul.tag {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts ul.tag {
    gap: 8px;
    margin-top: 9px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts ul.tag {
    margin-top: 1.7333333333vw;
    gap: 1.6vw;
  }
}
.c_column div.inner > ul > li div.texts ul.tag li a {
  display: flex;
  border-radius: 100px;
  background-color: #f3f3f3;
}
@media screen and (min-width: 768px) {
  .c_column div.inner > ul > li div.texts ul.tag li a {
    padding: 2px 11px;
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner > ul > li div.texts ul.tag li a {
    padding: 0.4vw 2.1333333333vw;
    font-size: 3.2vw;
  }
}
.c_column div.inner a.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  color: #fff;
  background-color: #3c3e45;
}
@media screen and (min-width: 768px) {
  .c_column div.inner a.btn {
    width: 336px;
    height: 64px;
    margin: 40px auto 0;
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  .c_column div.inner a.btn {
    width: 72vw;
    height: 16vw;
    margin: 10.6666666667vw auto 0;
    font-size: 4.8vw;
  }
}

@media screen and (min-width: 768px) {
  .c_tag {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .c_tag {
    margin-top: 2.1333333333vw;
  }
}
.c_tag ul {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .c_tag ul {
    gap: 6px;
  }
}
@media screen and (max-width: 767px) {
  .c_tag ul {
    gap: 1.3333333333vw;
  }
}
.c_tag ul li a {
  display: flex;
  border-radius: 100px;
  background-color: #fff;
  border: 1px solid #c7ac50;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .c_tag ul li a {
    margin-top: 5px;
    padding: 2px 12px;
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  .c_tag ul li a {
    padding: 0.4vw 2.1333333333vw;
    font-size: 2.9333333333vw;
  }
}

html {
  scroll-behavior: smooth;
}
@media screen and (min-width: 768px) {
  html {
    scroll-padding-top: 130px;
  }
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 24vw;
  }
}

@media screen and (min-width: 768px) {
  div.main-title {
    margin-top: 157px;
    padding: 0 30px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title {
    margin-top: 30.6666666667vw;
    padding: 0 4vw;
  }
}
@media screen and (min-width: 768px) {
  div.main-title div.inner {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1080px) {
  div.main-title div.inner {
    padding-right: 320px;
  }
}
div.main-title div.inner h1 {
  line-height: 1.35;
  font-weight: 600;
  border-bottom: 2px solid #c7ac50;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  div.main-title div.inner h1 {
    width: 100%;
    margin: 10px 0 24px;
    padding-bottom: 18px;
    font-size: 22px;
  }
}
@media screen and (min-width: 1080px) {
  div.main-title div.inner h1 {
    max-width: 850px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title div.inner h1 {
    margin: 2.6666666667vw 0 4.6666666667vw;
    padding-bottom: 4vw;
    font-size: 5.0666666667vw;
  }
}
div.main-title div.inner div.info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (min-width: 768px) {
  div.main-title div.inner div.info {
    gap: 10px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title div.inner div.info {
    gap: 2vw;
  }
}
@media screen and (min-width: 768px) {
  div.main-title div.inner div.info + div.image {
    margin: 124px 0 30px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title div.inner div.info + div.image {
    margin: 3.3333333333vw 0 5.3333333333vw;
  }
}
div.main-title div.inner div.info span {
  font-family: "Red Hat Display", sans-serif;
  font-weight: bold;
}
div.main-title div.inner div.info span.cate {
  color: #fff;
  background-color: #ddcd96;
  letter-spacing: 0.1em;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  div.main-title div.inner div.info span.cate {
    padding: 2px 7px;
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title div.inner div.info span.cate {
    padding: 0.5333333333vw 1.8666666667vw;
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  div.main-title div.inner div.info span.date {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.main-title div.inner div.info span.date {
    font-size: 3.4666666667vw;
  }
}
div.main-title div.inner div.info div.c_tag {
  margin: 0;
}
div.main-title div.inner div.info div.c_tag ul li a {
  margin-top: 0;
  border: none;
  background-color: #f3f3f3;
}
@media screen and (min-width: 768px) {
  div.main-title div.inner div.info div.c_tag ul li a {
    font-size: 12px;
  }
}
header.cmn {
  border-bottom: 2px solid #f3f3f3;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  header.cmn div.inner div.set a.logo {
    background: url(../img/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.set a.logo {
    background: url(../img/sp/logo-gold.png) 0 0/100% no-repeat;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  header.cmn div.inner div.menu-btn span {
    background-color: #646873 !important;
  }
}
@media screen and (max-width: 767px) {
  header.cmn div.inner div.menu-btn span {
    background-color: #646873 !important;
  }
}
header.cmn div.inner nav ul li a {
  color: #1e1e1e;
}
header.cmn div.inner nav a.btn {
  color: #1e1e1e;
  background-color: #edc84c;
}

nav.breadcrumbs {
  position: absolute;
  justify-content: flex-start;
  width: 100%;
}
@media screen and (min-width: 768px) {
  nav.breadcrumbs {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    max-width: 1360px;
    margin: 0px auto;
    padding: 110px 30px 25px;
  }
}
@media screen and (max-width: 767px) {
  nav.breadcrumbs {
    top: 18.9333333333vw;
    left: 0;
    padding: 0 5.3333333333vw;
  }
}
nav.breadcrumbs ul {
  justify-content: flex-start;
}
@media screen and (min-width: 768px) {
  div.content {
    margin: 0 0 60px;
    padding: 0 30px;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner {
    display: flex;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    gap: 0 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  div.content div.inner {
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main {
    width: 100%;
  }
}
@media screen and (min-width: 1080px) {
  div.content div.inner main {
    max-width: 850px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article {
    width: 92vw;
    margin: 0 auto 4vw;
  }
}
div.content div.inner main article div.index {
  background-color: #f3f3f3;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index {
    margin-top: 30px;
    padding: 25px 30px 35px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index {
    margin-top: 5.3333333333vw;
    padding: 5.3333333333vw 6.6666666667vw 6.6666666667vw;
  }
}
div.content div.inner main article div.index h2 {
  display: table;
  border-bottom: 2px solid #c7ac50;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index h2 {
    padding-bottom: 5px;
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index h2 {
    padding-bottom: 1.3333333333vw;
    font-size: 4.5333333333vw;
  }
}
div.content div.inner main article div.index li {
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index li + li {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index li + li {
    margin-top: 3.3333333333vw;
  }
}
div.content div.inner main article div.index > ol {
  counter-reset: num;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index > ol {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index > ol {
    margin-top: 4vw;
  }
}
div.content div.inner main article div.index > ol li {
  counter-increment: num;
}
div.content div.inner main article div.index > ol li a {
  display: flex;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index > ol li a {
    font-size: 17px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index > ol li a {
    font-size: 3.7333333333vw;
  }
}
div.content div.inner main article div.index > ol li a:before {
  content: counter(num) ".";
  font-size: inherit;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index > ol li a:before {
    margin-right: 5px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index > ol li a:before {
    margin-right: 1.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.index > ol li ol {
    margin-left: 25px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.index > ol li ol {
    margin-left: 4vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post {
    margin-top: 6.6666666667vw;
  }
}
div.content div.inner main article div.post img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h1 + p, div.content div.inner main article div.post h1 ul, div.content div.inner main article div.post h1 ol, div.content div.inner main article div.post h1 table, div.content div.inner main article div.post h2 + p, div.content div.inner main article div.post h2 ul, div.content div.inner main article div.post h2 ol, div.content div.inner main article div.post h2 table, div.content div.inner main article div.post h3 + p, div.content div.inner main article div.post h3 ul, div.content div.inner main article div.post h3 ol, div.content div.inner main article div.post h3 table, div.content div.inner main article div.post h4 + p, div.content div.inner main article div.post h4 ul, div.content div.inner main article div.post h4 ol, div.content div.inner main article div.post h4 table, div.content div.inner main article div.post h5 + p, div.content div.inner main article div.post h5 ul, div.content div.inner main article div.post h5 ol, div.content div.inner main article div.post h5 table, div.content div.inner main article div.post h6 + p, div.content div.inner main article div.post h6 ul, div.content div.inner main article div.post h6 ol, div.content div.inner main article div.post h6 table, div.content div.inner main article div.post p + p, div.content div.inner main article div.post p ul, div.content div.inner main article div.post p ol, div.content div.inner main article div.post p table, div.content div.inner main article div.post li + p, div.content div.inner main article div.post li ul, div.content div.inner main article div.post li ol, div.content div.inner main article div.post li table {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h1 + p, div.content div.inner main article div.post h1 ul, div.content div.inner main article div.post h1 ol, div.content div.inner main article div.post h1 table, div.content div.inner main article div.post h2 + p, div.content div.inner main article div.post h2 ul, div.content div.inner main article div.post h2 ol, div.content div.inner main article div.post h2 table, div.content div.inner main article div.post h3 + p, div.content div.inner main article div.post h3 ul, div.content div.inner main article div.post h3 ol, div.content div.inner main article div.post h3 table, div.content div.inner main article div.post h4 + p, div.content div.inner main article div.post h4 ul, div.content div.inner main article div.post h4 ol, div.content div.inner main article div.post h4 table, div.content div.inner main article div.post h5 + p, div.content div.inner main article div.post h5 ul, div.content div.inner main article div.post h5 ol, div.content div.inner main article div.post h5 table, div.content div.inner main article div.post h6 + p, div.content div.inner main article div.post h6 ul, div.content div.inner main article div.post h6 ol, div.content div.inner main article div.post h6 table, div.content div.inner main article div.post p + p, div.content div.inner main article div.post p ul, div.content div.inner main article div.post p ol, div.content div.inner main article div.post p table, div.content div.inner main article div.post li + p, div.content div.inner main article div.post li ul, div.content div.inner main article div.post li ol, div.content div.inner main article div.post li table {
    margin-top: 3.3333333333vw;
  }
}
div.content div.inner main article div.post h1 a, div.content div.inner main article div.post h2 a, div.content div.inner main article div.post h3 a, div.content div.inner main article div.post h4 a, div.content div.inner main article div.post h5 a, div.content div.inner main article div.post h6 a, div.content div.inner main article div.post p a, div.content div.inner main article div.post li a {
  text-decoration: underline;
  color: #c7ac50;
}
div.content div.inner main article div.post h2 {
  line-height: 1.35;
  font-weight: 600;
  background-color: #f3f3f3;
  border-left: 4px solid #c7ac50;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h2 {
    padding: 10px 15px;
    font-size: 22px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h2 {
    padding: 2vw 2.6666666667vw 2.4vw;
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h2:not(:first-of-type) {
    margin-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h2:not(:first-of-type) {
    margin-top: 9.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h2 + h3, div.content div.inner main article div.post h2 + p {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h2 + h3, div.content div.inner main article div.post h2 + p {
    margin-top: 5.3333333333vw !important;
  }
}
div.content div.inner main article div.post h3 {
  line-height: 1.35;
  font-weight: 600;
  border-bottom: 4px solid #f3f3f3;
  position: relative;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h3 {
    margin-top: 40px;
    padding-bottom: 10px;
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h3 {
    margin-top: 8vw;
    padding-bottom: 2vw;
    font-size: 4.5333333333vw;
  }
}
div.content div.inner main article div.post h3:before {
  content: "";
  display: block;
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 160px;
  height: 4px;
  background: #c7ac50;
}
div.content div.inner main article div.post h4 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h4 {
    margin-top: 30px;
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h4 {
    margin-top: 6.6666666667vw;
    font-size: 4.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post h5, div.content div.inner main article div.post h6 {
    margin-top: 20px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post h5, div.content div.inner main article div.post h6 {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
div.content div.inner main article div.post p {
  line-height: 1.8;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post p {
    margin-top: 30px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post p {
    margin-top: 5.3333333333vw;
    font-size: 4vw;
  }
}
div.content div.inner main article div.post p em {
  font-style: normal;
  background-color: #f7f1dd;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post p em {
    margin: 0 4px;
    padding: 0 4px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post p em {
    margin: 0 0.8vw;
    padding: 0 0.8vw;
  }
}
div.content div.inner main article div.post li {
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post li {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post li {
    font-size: 4vw;
  }
}
div.content div.inner main article div.post ul li {
  position: relative;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ul li {
    padding-left: 16px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ul li {
    padding-left: 4vw;
    font-size: 4vw;
  }
}
div.content div.inner main article div.post ul li:before {
  content: "";
  display: block;
  position: absolute;
  top: 12px;
  left: 0;
  background-color: #c7ac50;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ul li:before {
    width: 7px;
    height: 7px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ul li:before {
    width: 1.8666666667vw;
    height: 1.8666666667vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ul li + li {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ul li + li {
    margin-top: 1.3333333333vw;
  }
}
div.content div.inner main article div.post ol {
  list-style-type: decimal;
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ol li {
    margin-top: 20px;
    margin-left: 20px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ol li {
    margin-top: 4vw;
    margin-left: 4vw;
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ol li + li {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ol li + li {
    margin-top: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner main article div.post ul {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main article div.post ul {
    margin-top: 2.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main .wp-block-table {
    overflow-x: scroll;
  }
}
div.content div.inner main table {
  display: table;
  border: 1px solid #000;
}
@media screen and (min-width: 768px) {
  div.content div.inner main table {
    margin: 30px 0 30px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main table {
    width: 100%;
    margin: 5.3333333333vw 0 5.3333333333vw;
    overflow-x: scroll;
    white-space: nowrap;
  }
}
div.content div.inner main table tbody tr {
  border-top: 1px solid #000;
}
@media screen and (min-width: 768px) {
  div.content div.inner main table tr {
    padding: 10px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main table tr {
    padding: 2.6666666667vw;
  }
}
div.content div.inner main table tr th, div.content div.inner main table tr td {
  text-align: left;
}
@media screen and (min-width: 768px) {
  div.content div.inner main table tr th, div.content div.inner main table tr td {
    padding: 15px;
    font-size: 16px;
    min-width: 120px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner main table tr th, div.content div.inner main table tr td {
    padding: 2.6666666667vw;
    font-size: 4vw;
  }
}
div.content div.inner main table tr th:not(:first-of-type), div.content div.inner main table tr td:not(:first-of-type) {
  border-left: 1px solid #000;
}
@media screen and (min-width: 768px) {
  div.content div.inner main table tr th:nth-of-type(2), div.content div.inner main table tr td:nth-of-type(2) {
    max-width: 670px;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside {
    margin-top: -107px;
    max-width: 300px;
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  div.content div.inner aside {
    max-width: 100%;
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside {
    width: 89.3333333333vw;
    margin: 13.3333333333vw auto 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside:not(.square) img {
    margin-bottom: 5px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside:not(.square) img {
    margin-bottom: 0.6666666667vw;
  }
}
div.content div.inner aside img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  div.content div.inner aside > div {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside > div {
    margin-bottom: 4vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside > div + div {
    margin-top: 40px;
  }
}
div.content div.inner aside > div a {
  color: #000;
}
div.content div.inner aside > div h2 {
  display: table;
  border-left: 4px solid #c7ac50;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  div.content div.inner aside > div h2 {
    margin-bottom: 15px;
    padding-left: 8px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside > div h2 {
    margin-bottom: 0vw;
    padding-left: 1.3333333333vw;
    font-size: 3.7333333333vw;
  }
}
div.content div.inner aside > div h3 {
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  div.content div.inner aside > div h3 {
    line-height: 1.35;
    font-size: 13px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside > div h3 {
    line-height: 1.4;
    font-size: 3.4666666667vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  div.content div.inner aside div.column ul {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 20px 0;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.column ul {
    display: flex;
    gap: 0 5.3333333333vw;
    margin-top: 0vw;
    overflow-x: scroll;
    padding-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  div.content div.inner aside div.column ul li {
    width: 47%;
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.column ul li {
    min-width: 77.3333333333vw;
    margin: 0 auto;
    padding: 3.3333333333vw 0vw 0;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.column ul li + li {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  div.content div.inner aside div.column ul li + li {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.category {
    margin-top: 8vw;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.category h2 {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.category ul {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.category ul {
    margin-top: 4vw;
  }
}
div.content div.inner aside div.category ul li a {
  display: flex;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.category ul li a {
    font-size: 12px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.category ul li a {
    font-size: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.category ul li + li {
    margin-top: 16px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.category ul li + li {
    margin-top: 2.6666666667vw;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.c_tag {
    margin-top: 6.6666666667vw;
  }
}
div.content div.inner aside div.c_tag ul {
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.c_tag ul {
    gap: 6px;
  }
}
@media screen and (max-width: 767px) {
  div.content div.inner aside div.c_tag ul {
    margin-top: 4vw;
    gap: 2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  div.content div.inner aside div.c_tag ul li a {
    margin-top: 0;
    font-size: 12px;
  }
}
@media screen and (min-width: 768px) {
  section.profile {
    padding-top: 30px;
  }
}
@media screen and (max-width: 767px) {
  section.profile {
    padding-top: 4vw;
  }
}
section.profile div.inner {
  border: 3px solid #ddcd96;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  section.profile div.inner {
    max-width: 850px;
    padding: 20px 25px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner {
    padding: 4.8vw;
  }
}
section.profile div.inner div.title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
section.profile div.inner div.title span {
  font-weight: bold;
  font-family: "Red Hat Display", sans-serif;
  color: #c7ac50;
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.title span {
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.title span {
    font-size: 4vw;
  }
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.title h2 {
    font-size: 18px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.title h2 {
    font-size: 4.8vw;
  }
}
section.profile div.inner div.cont {
  display: flex;
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.cont {
    align-items: flex-start;
    margin: 20px 0 0;
    gap: 0 18px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.cont {
    align-items: center;
    flex-direction: column;
    margin-top: 3.7333333333vw;
    gap: 3.7333333333vw 0;
  }
}
section.profile div.inner div.cont div.image {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 100%;
  overflow: hidden;
  border: 1px solid #c7ac50;
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.cont div.image {
    min-width: 130px;
    min-height: 130px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.cont div.image {
    width: 32vw;
    height: 32vw;
  }
}
section.profile div.inner div.cont div.image picture {
  width: 100%;
}
section.profile div.inner div.cont div.image picture img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.cont div.texts h3 {
    margin-bottom: 8px;
    font-size: 16px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.cont div.texts h3 {
    margin-bottom: 1.8666666667vw;
    font-size: 4vw;
  }
}
section.profile div.inner div.cont div.texts p {
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  section.profile div.inner div.cont div.texts p {
    font-size: 14px;
  }
}
@media screen and (max-width: 767px) {
  section.profile div.inner div.cont div.texts p {
    font-size: 3.4666666667vw;
  }
}

@media screen and (min-width: 768px) {
  section.c_column div.inner ul {
    justify-content: flex-start;
    gap: 0 36px;
  }
}
@media screen and (min-width: 768px) and (max-width: 1079px) {
  section.c_column div.inner ul {
    gap: 0 18px;
  }
}