@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;700&family=Noto+Sans+JP:wght@400;500;700&family=Zen+Old+Mincho:wght@400;500;700&display=swap");
.p-editor__content {
  overflow: hidden;
}
.p-editor__content h1:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 2.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 89.6px */
  letter-spacing: 1.6px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h1:not([class*=p-], [class*=c-]) {
    font-size: 1.75rem;
    line-height: 160%; /* 44.8px */
    letter-spacing: 1.12px;
  }
}
.p-editor__content h2:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 2rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 44.8px */
  letter-spacing: 1.28px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h2:not([class*=p-], [class*=c-]) {
    font-size: 1.5rem;
    line-height: 160%; /* 38.4px */
    letter-spacing: 0.96px;
  }
}
.p-editor__content h3:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 1.75rem;
  line-height: 140%; /* 39.2px */
  letter-spacing: 1.12px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h3:not([class*=p-], [class*=c-]) {
    font-size: 1.375rem;
    line-height: 160%; /* 35.2px */
    letter-spacing: 0.88px;
  }
}
.p-editor__content h4:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 33.6px */
  letter-spacing: 0.96px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h4:not([class*=p-], [class*=c-]) {
    font-size: 1.25rem;
    line-height: 160%; /* 32px */
    letter-spacing: 0.8px;
  }
}
.p-editor__content h5:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 1.3125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 29.4px */
  letter-spacing: 0.84px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h5:not([class*=p-], [class*=c-]) {
    font-size: 1.125rem;
    line-height: 160%; /* 28.8px */
    letter-spacing: 0.72px;
  }
}
.p-editor__content h6:not([class*=p-], [class*=c-]) {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  color: #223B68;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 25.2px */
  letter-spacing: 0.72px;
}
@media only screen and (max-width: 767px) {
  .p-editor__content h6:not([class*=p-], [class*=c-]) {
    font-size: 1rem;
    line-height: 160%; /* 25.6px */
    letter-spacing: 0.64px;
  }
}
.p-editor__content p:not([class*=p-], [class*=c-]) {
  font-size: 1rem;
  line-height: 1.5;
  color: #222222;
}
.p-editor__content p:not([class*=p-], [class*=c-]).--lg {
  font-size: 1.125rem;
}
.p-editor__content p:not([class*=p-], [class*=c-]).--xlg {
  font-size: 1.25rem;
}
.p-editor__content p:not([class*=p-], [class*=c-]).--sm {
  font-size: 0.875rem;
}
.p-editor__content p:not([class*=p-], [class*=c-]).--xsm {
  font-size: 0.75rem;
}
.p-editor__content a:not([class*=p-], [class*=c-], [class*=e-]) {
  position: relative;
  display: inline-block;
  font-size: 1.125rem;
  color: #222222;
  font-style: normal;
  font-weight: 500;
  line-height: 160%; /* 28.8px */
  letter-spacing: 0.72px;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-skip-ink: none;
          text-decoration-skip-ink: none;
  text-decoration-thickness: 10%; /* 1.8px */
  text-underline-offset: 30%; /* 5.4px */
  text-underline-position: from-font;
}
.p-editor__content a:not([class*=p-], [class*=c-], [class*=e-])[target=_blank]::after {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-left: 0.75rem;
  vertical-align: middle;
  content: "";
  background: url("../images/common/icon_blank.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content a:not([class*=p-], [class*=c-], [class*=e-])[href$=".pdf" i]::after {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-left: 0.75rem;
  vertical-align: middle;
  content: "";
  background: url("../images/common/icon_pdf.svg") no-repeat center;
  background-size: contain;
}
@media (hover: hover) {
  .p-editor__content a:not([class*=p-], [class*=c-], [class*=e-]) {
    transition: 0.3s linear opacity;
  }
  .p-editor__content a:not([class*=p-], [class*=c-], [class*=e-]):hover {
    opacity: 0.7;
    color: #223B68;
  }
  .p-editor__content a:not([class*=p-], [class*=c-], [class*=e-]):hover[target=_blank]::after {
    background: url("../images/common/icon_blank-white.svg") no-repeat center;
    background-size: contain;
  }
  .p-editor__content a:not([class*=p-], [class*=c-], [class*=e-]):hover[href$=".pdf" i]::after {
    background: url("../images/common/icon_pdf-white.svg") no-repeat center;
    background-size: contain;
  }
}
.p-editor__content ul:not([class*=p-], [class*=c-]) li {
  position: relative;
  padding-left: 2.25rem;
  color: #222222;
}
.p-editor__content ul:not([class*=p-], [class*=c-]) li + li {
  margin-top: 0.5rem;
}
.p-editor__content ul:not([class*=p-], [class*=c-]) li::before {
  position: absolute;
  top: calc((1lh - 2rem) / 2);
  left: 0;
  width: 2rem;
  height: 2rem;
  content: "";
  background: url("../images/common/icon_dot.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content ul:not([class*=p-], [class*=c-]) li-en {
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
}
@media only screen and (max-width: 767px) {
  .p-editor__content ul:not([class*=p-], [class*=c-]) li {
    padding-left: 1.75rem;
  }
  .p-editor__content ul:not([class*=p-], [class*=c-]) li::before {
    top: calc((1lh - 1.5rem) / 2);
    width: 1.5rem;
    height: 1.5rem;
  }
}
.p-editor__content ol:not([class*=p-], [class*=c-]) {
  counter-reset: item;
}
.p-editor__content ol:not([class*=p-], [class*=c-]) li {
  position: relative;
  padding-left: 2.25rem;
}
.p-editor__content ol:not([class*=p-], [class*=c-]) li::before {
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  position: absolute;
  top: calc((1.4 * 1em - 2rem) / 2);
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  font-variant-numeric: tabular-nums;
  counter-increment: item;
  content: counter(item, decimal-leading-zero) ".";
  color: #223B68;
}
.p-editor__content ol:not([class*=p-], [class*=c-]) li + li {
  margin-top: 0.5rem;
}
@media only screen and (max-width: 767px) {
  .p-editor__content ol:not([class*=p-], [class*=c-]) li {
    padding-left: 1.75rem;
  }
  .p-editor__content ol:not([class*=p-], [class*=c-]) li::before {
    top: calc((1.4 * 1em - 1.5rem) / 2);
    width: 1.5rem;
    height: 1.5rem;
  }
}
.p-editor__content dl:not([class*=p-], [class*=c-]) dt {
  margin: 0;
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.5;
  color: #222222;
}
.p-editor__content dl:not([class*=p-], [class*=c-]) dt + dd {
  margin-top: 0.25rem;
}
.p-editor__content dl:not([class*=p-], [class*=c-]) dt-en {
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
}
.p-editor__content dl:not([class*=p-], [class*=c-]) dd {
  margin: 0;
  padding-left: 1em;
  font-size: 1rem;
  line-height: 1.5;
  color: #222222;
}
.p-editor__content dl:not([class*=p-], [class*=c-]) dd + dt {
  margin-top: 0.5rem;
}
.p-editor__content table:not([class*=p-], [class*=c-]) th {
  width: 1%;
  white-space: nowrap;
  padding: 0.75rem 1rem;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  background-color: #223B68;
  border: 0.0625rem solid #969FB1;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 30.6px */
  letter-spacing: 0.72px;
  color: #fff;
}
.p-editor__content table:not([class*=p-], [class*=c-]) th-en {
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
  color: #fff;
}
.p-editor__content table:not([class*=p-], [class*=c-]) td {
  padding: 0.75rem 1rem;
  border: 0.0625rem solid #969FB1;
  font-size: 1.125rem;
  font-style: normal;
  font-weight: 500;
  line-height: 170%; /* 30.6px */
  letter-spacing: 0.72px;
}
.p-editor__content table:not([class*=p-], [class*=c-]) td-en {
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .p-editor__content table:not([class*=p-], [class*=c-]) th {
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 160%; /* 25.6px */
    letter-spacing: 0.64px;
  }
  .p-editor__content table:not([class*=p-], [class*=c-]) th-en {
    font-size: 0.9375rem;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 160%; /* 24px */
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  .p-editor__content table:not([class*=p-], [class*=c-]) td {
    padding: 0.5rem 0.75rem;
    font-size: 1rem;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 160%; /* 25.6px */
    letter-spacing: 0.64px;
  }
  .p-editor__content table:not([class*=p-], [class*=c-]) td-en {
    font-size: 0.9375rem;
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 160%; /* 24px */
  }
}
.p-editor__content .e-button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  min-width: 19.875rem;
  min-height: 4rem;
  font-family: "Noto Sans JP", "Noto Sans JP";
  padding-left: 2rem;
  color: #222222;
  cursor: pointer;
  background-color: #ffffff;
  border: 0.0625rem solid #969FB1;
}
.p-editor__content .e-button[target=_blank] {
  line-height: 1.25rem;
}
.p-editor__content .e-button[target=_blank]::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_blank.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content .e-button[href$=".pdf" i] {
  line-height: 0.875rem;
}
.p-editor__content .e-button[href$=".pdf" i]::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_pdf.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content .e-button.--arrow-left {
  line-height: 0.875rem;
}
.p-editor__content .e-button.--arrow-left::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_arrow-left.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content .e-button.--arrow-right {
  line-height: 0.875rem;
}
.p-editor__content .e-button.--arrow-right::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_arrow-right.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content .e-button.--arrow-up {
  line-height: 0.875rem;
}
.p-editor__content .e-button.--arrow-up::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_arrow-up.svg") no-repeat center;
  background-size: contain;
}
.p-editor__content .e-button.--arrow-down {
  line-height: 0.875rem;
}
.p-editor__content .e-button.--arrow-down::after {
  flex-shrink: 0;
  width: 2rem;
  height: 2rem;
  transform: translateY(1px);
  margin-left: auto;
  margin-right: 1rem;
  content: "";
  background: url("../images/common/icon_arrow-down.svg") no-repeat center;
  background-size: contain;
}
@media (hover: hover) {
  .p-editor__content .e-button {
    transition: 0.3s linear opacity;
  }
  .p-editor__content .e-button:hover {
    opacity: 0.7;
    background-color: #223B68;
    color: #fff;
  }
  .p-editor__content .e-button:hover:not(.p-editor__content .e-button:hover[href$=".pdf" i])::after {
    filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7495%) hue-rotate(288deg) brightness(102%) contrast(102%);
  }
}
.p-editor__content {
  /* 縦線2px + 余白16px */
}
.p-editor__content .e-box {
  padding: 2rem 2.5rem;
  background-color: #ededed;
  background: #ffffff;
  box-shadow: 0 0 4px 0 rgba(51, 51, 51, 0.25);
}
.p-editor__content .e-box.--bg-blue {
  background-color: #edf6f9;
}
.p-editor__content .e-box__title {
  position: relative;
  padding-left: 1.125rem;
  font-family: "Zen Old Mincho", "Cormorant Garamond";
  font-size: 1.75rem;
  font-style: normal;
  font-weight: 700;
  line-height: 140%; /* 39.2px */
  letter-spacing: 1.12px;
  color: #222222;
}
.p-editor__content .e-box__title::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 0.125rem;
  height: 100%;
  content: "";
  background-color: #C9A746;
}
.p-editor__content .e-box__title-en {
  padding-left: 1.125rem;
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 1rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
  letter-spacing: 0.64px;
  color: #223B68;
}
.p-editor__content .e-box__text {
  margin-top: 1.0625rem;
  font-size: 1rem;
  font-style: normal;
  font-weight: 500;
  line-height: 170%; /* 27.2px */
  letter-spacing: 0.64px;
}
.p-editor__content .e-box__text-en {
  margin-top: 0.25rem;
  font-family: "Cormorant Garamond", Garamond, serif;
  font-size: 0.9375rem;
  font-style: normal;
  font-weight: 700;
  line-height: 170%; /* 27.2px */
  letter-spacing: 0.64px;
}
.p-editor__content .e-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
}
.p-editor__content .e-grid.--repeat-2 {
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
}
.p-editor__content .e-grid.--repeat-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 3.125rem;
}
.p-editor__content .e-grid__texts {
  margin-top: 2rem;
}
.p-editor__content .e-grid__texts h4 + .c-text {
  margin-top: 1.5rem;
}
.p-editor__content .e-grid__col {
  /* CMSエディタ―のみで適応 */
  /* border: dashed 1px #c2c2c2; */
}
@media only screen and (max-width: 767px) {
  .p-editor__content .e-grid.--repeat-2 {
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
  }
  .p-editor__content .e-grid.--repeat-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
  }
  .p-editor__content .e-grid__texts {
    margin-top: 1.5rem;
  }
  .p-editor__content .e-grid__texts h4 + .c-text {
    margin-top: 1rem;
  }
}