:root{
  --red-01: #C70000;
  --gray-02: #A4A8AD;
  --white : #fff;
  --icon-newWindow: url("data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2216%22%20height%3D%2216%22%3E%3Cpath%20d%3D%22M11.5%2014.5h-10v-10h1v9h9z%22%2F%3E%3Cpath%20d%3D%22M14.5%2012H4V1.5h10.5V12zM5%2011h8.5V2.5H5V11z%22%2F%3E%3Cpath%20d%3D%22M7.5%204.5v1h2.29L6.63%208.66l.71.71%203.16-3.16V8.5h1v-4z%22%2F%3E%3C%2Fsvg%3E");
}
/** ==================================================
* 問い合わせフォーム
* ================================================ */
.page-container.-contact{
  position: relative;
}
.page-container.-contact>.area{
  container-type: inline-size;
  margin: 0 auto;
  position: relative;
  width: var(--w-container-large);
}
.page-container.-contact>.area>.header{
  margin-block: var(--size-88);
  position: relative;
}
.page-container.-contact>.area>.line.-left {
  inset: 0 100% 0 auto;
}
.page-container.-contact>.area>.line {
  position: absolute;
  z-index: -1;
}
.page-container.-contact>.area>.line.-right {
  inset: 0 auto 0 100%;
}
.page-container.-contact>.area>.content{
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1em;
  padding-top: var(--size-56);
  position: relative;
}
.page-container.-contact>.area>.content.-complete{
  padding-block: 150px 200px;
}
.page-container.-contact>.area>.content>.ttl{
  color: var(--color-blue-500);
  text-align: center;
  font-size: var(--fs-20);
  font-weight: 700;
  line-height: 2;
}
.page-container.-contact>.area>.content>.txt{
  text-align: center;
  font-size: var(--fs-17);
  font-weight: 400;
  line-height: 2;
}
.page-container.-contact>.area>.content.-complete>.txt{
  margin-bottom: var(--size-56);
}
.page-container.-contact>.area>.content>.note{
  color: var(--red-01);
  text-align: center;
  font-size: var(--fs-17);
  font-weight: 500;
  line-height: 1.4;
}
.page-container.-contact>.area>.content.-complete>.action{
  width: min(500px,100%);
  margin-inline: auto;
}
.page-container.-contact>.area>.form{
  position: relative;
  margin-block: var(--size-64) var(--size-96);
}
@media (max-width:560px) {
  .page-container.-contact>.area>.content>.txt{
    text-align: left;
  }
  .page-container.-contact>.area>.content>.note{
    text-align: left;
  }
  .page-container.-contact>.area>.content{
    align-items: flex-start;
  }
}
/** ==================================================
* c-contactForm
* ================================================ */
.c-contactForm {
  font-size: var(--fs-16);
  line-height: 1.6;
  width: min(960px,100%);
  margin-inline: auto;
  padding-block: var(--size-56) var(--size-184);
  position: relative;
}
.c-contactForm>.line.-left {
  inset: 0 100% 0 auto;
}
.c-contactForm>.line {
  position: absolute;
  z-index: -1;
}
.c-contactForm>.line.-right {
  inset: 0 auto 0 100%;
}
.c-contactForm > .list > .item {
  display: flex;
  flex-direction: column;
  gap: 1em 0;
  padding: 1.2em 0;
  border-bottom: 1px solid #BCBFC3;
}
@media (min-width: 768px) {
  .c-contactForm > .list > .item {
    flex-direction: row;
    align-items: center;
  }
}
.c-contactForm > .list > .item > .label {
  display: flex;
  align-items: center;
  font-weight: 500;
  font-feature-settings: "palt";
}
@media (min-width: 768px) {
  .c-contactForm > .list > .item > .label {
    flex: 0 0 auto;
    width: 20em;
    padding: calc(0.8em + 1px) 0;
  }
}
.c-contactForm > .list > .item > .label > .any {
  flex: 0 0 auto;
  margin-right: 1.35em;
  padding: 2px .9em;
  background: var(--gray-02);
  border-radius: 4px;
  font-size: var(--fs-13);
  line-height: 1.6;
  letter-spacing: .5px;
  color: var(--white);
}
.c-contactForm > .list > .item > .label > .any.-required {
  background: var(--red-01);
  color: var(--white);
}
.c-contactForm > .list > .item > .control {
  flex: 1 1 0%;
}
.c-contactForm > .list > .item > .control>p+p{
  margin-top: 1.5em;
}
.c-contactForm > .list > .item > .control.-grid{
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: 8px;
}
.c-contactForm > .list > .item > .control.-grid.-col01{
  grid-template-columns: repeat(1,1fr);
}
.mw_wp_form .horizontal-item + .horizontal-item{
  margin-left: 0 !important;
}
.mw_wp_form_confirm .c-contactForm > .attention{
  display: none;
}
.c-contactForm > .attention {
  margin-top: var(--size-56);
  font-size: var(--fs-14);
  text-align: center;
}
.c-contactForm > .attention > .link {
  text-decoration: underline;
  color: var(--color-blue-500);
}
.c-contactForm > .action {
  width: min(810px,100%);
  margin-inline: auto;
  margin-top: var(--size-64);
}
.c-contactForm > .action>.submit{
  justify-content: center;
  padding: 0;
}
@media (min-width: 768px) {
  .c-contactForm > .list > .item > .control.-radio {
    align-self: center;
  }
}
.mw_wp_form_confirm .c-contactForm > .list > .item > .control {
  padding-block: calc(0.8em + 1px);
}
@media (max-width:560px) {
  .mw_wp_form_confirm .c-contactForm > .list > .item > .control{
    padding-block: 0;
  }
}
.-c-contactForm-submit {
  text-align: center;
  width: 100%;
  padding: .25em;
  min-height: calc(var(--c-btn-typeA-h-unitless) / var(--c-btn-typeA-fs-unitless) * 1em);
}

.c-formControl {
  box-sizing: border-box;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  line-height: inherit;
  color: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.c-formControl:disabled {
  cursor: not-allowed;
}
.c-formControl::-moz-placeholder {
  opacity: 0.25;
}
.c-formControl::placeholder {
  opacity: 0.25;
}
textarea.c-formControl {
  resize: vertical;
}
select.c-formControl {
  padding-right: 2em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='22' viewBox='0 0 30 22'%3e%3cpath fill='%23343a40' d='M15 22L0 0h30z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: calc(100% - 0.75em) 50%;
  background-size: 0.5em auto;
}
select.c-formControl[multiple], select.c-formControl[size]:not([size="1"]) {
  background-image: none;
}
.c-formControl.-auto {
  display: inline-block;
  width: auto;
}
.c-formControl {
  padding: 0.8em 1em;
  border: 1px solid #CED1D5;
  background: #F1F1F1;
  border-radius: 4px;
  font-size: 16px;
  line-height: 2;
}
@media (min-width: 960px) {
  .c-formControl {
    font-size: var(--fs-15);
  }
}
.c-formControl.-typeArchive {
  width: 15em;
}

@media (hover: hover) {
  .submit:hover .c-arrow:before {
    animation: c-arrow-before var(--duration-slower) forwards;
  }
  .submit:hover .c-arrow::after{
    animation: c-arrow-after var(--duration-slower) forwards;
  }
  .c-contactForm > .attention > .link:hover{
    opacity: 0.65;
  }
}

/*========= -newWindow -icon =========*/
.c-icon.-newWindow::before {
  -webkit-mask-image: var(--icon-newWindow);
  mask-image: var(--icon-newWindow);
  background-color: var(--color-blue-500);
}

/** ==================================================
* プライバシーポリシー
* ================================================ */
.privacy{
  container-type: inline-size;
  margin: 0 auto;
  padding-block: 0 var(--size-160);
  position: relative;
  width: var(--w-container-large);
  z-index: 0;
}
.privacy_content>p{
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  word-break: break-all;
}
.privacy_wrap > h2{
  position: relative;
  font-size: var(--fs-28);
  font-weight: bold;
  border-bottom: 1px solid #CECACA;
  margin-bottom: 0.5em;
  line-height: 2;
}
.privacy_wrap > h2::after{
  content: "";
  position: absolute;
  bottom: -1%;
  left: 0;
  width: 20%;
  border-top: 2px solid var(--color-blue-500);
}
.privacy_wrap{
  margin: 2em 0;
}
.privacy_wrap > p{
  font-size: 16px;
  line-height: 2;
  text-align: justify;
  word-break: break-all;
}
.privacy_wrap>.list{
  margin-left: 1em;
  text-indent: -1em;
  line-height: 2;
  margin-top: 0.5em;
}