@charset "UTF-8";
/* BASE
 * * -----------------------------------------------*/
/* MEDIA QUERIES
 * * -----------------------------------------------*/
/* ADDITIONAL RESET
 * * -----------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

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

a img {
  border: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

*,
*:before,
*:after {
  box-sizing: border-box;
}

body * {
  max-height: 99999em;
  word-break: break-word;
}

img {
  display: inline-block;
  vertical-align: middle;
  max-width: 100%;
  height: auto;
}

input,
label,
select,
button {
  line-height: inherit;
}

input,
label,
select,
button,
textarea {
  margin: 0;
  border: 0;
  padding: 0;
  word-break: normal;
  display: inline-block;
  vertical-align: middle;
  white-space: normal;
  background: none;
  -webkit-appearance: none;
  font: inherit;
}

button:focus {
  outline: 0;
}

input:focus,
textarea:focus,
select:focus {
  outline: auto;
}

/* Make webkit render the search input like a normal text field */
input[type=search] {
  -webkit-appearance: textfield;
}

/* Turn off the recent search for webkit. It adds about 15px padding on the left */
::-webkit-search-decoration {
  display: none;
}

/* Turn off scroll bars in IE unless needed */
textarea {
  overflow: auto;
  white-space: pre-line;
  resize: none;
}

/* PRINTING
 * * -----------------------------------------------*/
@media print {
  body {
    -webkit-print-color-adjust: exact;
  }
  html,
  body {
    margin: 0;
  }
  @page {
    margin: 0;
  }
  @page :left {
    margin: 0;
  }
  @page :right {
    margin: 0;
  }
  @page :first {
    margin-top: 0;
  }
}
/* GENERAL
 * * -----------------------------------------------*/
@media print, (min-width: 768px) {
  html.is-top .container {
    background: #f2f2f2 url(../img/common/background_page_01.png) top -710px center/3600px auto repeat-y;
  }
}
@media only screen and (max-width: 767.98px) {
  html.is-top .container {
    background: #f2f2f2 url(../img/common/sp/background_page_01.png) top -6.18rem center/16rem auto repeat-y;
  }
}

@media print, (min-width: 768px) {
  html.is-renewal .container {
    background: #f2f2f2 url(../img/renewal/background_page_01.png) top -633px center/3600px auto repeat-y;
  }
}
@media only screen and (max-width: 767.98px) {
  html.is-renewal .container {
    background: #f2f2f2 url(../img/renewal/sp/background_page_01.png) top -4.94rem center/16rem auto repeat-y;
  }
}

@media print, (min-width: 768px) {
  html.is-column .container,
  html.is-category .container,
  html.is-detail .container {
    background: #e1e1e1 url(../img/column/background_page_01.png) top -494px center/3600px auto repeat-y;
  }
}
@media only screen and (max-width: 767.98px) {
  html.is-column .container,
  html.is-category .container,
  html.is-detail .container {
    background: #e1e1e1 url(../img/column/sp/background_page_01.png) top -4.26rem center/16rem auto repeat-y;
  }
}

@media print, (min-width: 768px) {
  html:not(.is-top):not(.is-renewal):not(.is-column):not(.is-category):not(.is-detail) main {
    background: url(../img/common/background_page_02_01.png) top left/1520px auto no-repeat, url(../img/common/background_page_02_02.png) bottom right/1520px auto no-repeat;
    background-color: #f8f8f8;
  }
}
@media only screen and (max-width: 767.98px) {
  html:not(.is-top):not(.is-renewal):not(.is-column):not(.is-category):not(.is-detail) main {
    background: url(../img/common/sp/background_page_02_01.png) top left/100% auto no-repeat, url(../img/common/sp/background_page_02_02.png) bottom right/100% auto no-repeat;
    background-color: #f8f8f8;
  }
}

body {
  color: #4c4c4c;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  -webkit-text-size-adjust: none;
  -moz-text-size-adjust: none;
  -ms-text-size-adjust: none;
}
body.is-frozen {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
body.is-frozen .container {
  position: relative;
}
@media only screen and (max-width: 767.98px) {
  body.is-frozen {
    overflow: hidden;
  }
}

.font-serif {
  font-family: "Noto Serif JP", serif;
}

/* HELPERS
 * * -----------------------------------------------*/
a {
  color: #4c4c4c;
  text-decoration: none;
}

.hidden {
  display: none;
}

.invisible {
  visibility: hidden;
}

.text-left {
  text-align: left;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.text-justify {
  text-align: justify;
}

.text-nowrap {
  white-space: nowrap;
}

.text-lowercase {
  text-transform: lowercase;
}

.text-uppercase {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

/* RESPONSIVE
 * * -----------------------------------------------*/
@media print, (min-width: 768px) {
  body {
    font-size: 16px;
    line-height: 1.4;
  }
  .container {
    min-width: 1260px;
  }
  .wrapper {
    width: 1080px;
    margin-left: auto;
    margin-right: auto;
  }
  .sm {
    display: none !important;
  }
  .trans {
    opacity: 1;
    transition: opacity 0.3s ease;
  }
  .trans:hover {
    opacity: 0.7;
  }
}
@media only screen and (max-width: 767.98px) {
  .md {
    display: none !important;
  }
  html {
    font-size: 13.3333333333vw;
  }
  body {
    font-size: 0.26rem;
    line-height: 1.4;
  }
  .container {
    min-width: 320px;
  }
  .wrapper {
    padding-left: 0.3rem;
    padding-right: 0.3rem;
  }
}
/* PARTS
 * * -----------------------------------------------*/
/* COMMON HEADER
 * * -----------------------------------------------*/
.is-modal-active .button-header-burger {
  pointer-events: none;
}

.header-common {
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1000;
}

@media only screen and (max-width: 767.98px) {
  .header-common.is-ready .navigation-header-sitemap {
    transition: opacity 0.5s ease, visibility 0.5s ease;
  }
}

@media only screen and (max-width: 767.98px) {
  .header-common.is-active .navigation-header-sitemap {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}

.header-common.is-sticky-ready .header-viewport.is-cloned {
  transition: transform 0.25s ease, opacity 0.25s ease;
}

.header-common.is-sticky-active .header-viewport.is-cloned {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.header-common.is-top {
  position: absolute !important;
}
.header-common.is-top .header-viewport.is-main::before, .header-common.is-top .header-viewport.is-main::after {
  display: none;
}
@media print, (min-width: 768px) {
  .header-common.is-top {
    min-height: 184px;
  }
  .header-common.is-top + main {
    padding-top: 184px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-common.is-top {
    min-height: 2.54rem;
  }
  .header-common.is-top + main {
    padding-top: 2.54rem;
  }
  .header-common.is-top .header-viewport.is-main {
    min-height: 2.54rem;
    padding-top: 1.94rem;
  }
  .header-common.is-top .header-viewport.is-main .logo-header-secondary, .header-common.is-top .header-viewport.is-main .header-button {
    display: none;
  }
}

.header-common:not(.is-top), .header-common:not(.is-column) {
  position: relative;
}
@media print, (min-width: 768px) {
  .header-common {
    min-height: 184px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-common {
    min-height: 2.88rem;
  }
  .header-common .header-viewport.is-main {
    min-height: 2.88rem;
    padding-top: 2.28rem;
  }
  .header-common .header-viewport.is-main .header-button {
    display: none;
  }
}

@media print, (min-width: 768px) {
  .header-common.is-column {
    position: relative;
    min-height: 184px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-common.is-column {
    position: absolute !important;
    min-height: 2.54rem;
  }
  .header-common.is-column + main {
    padding-top: 2.54rem;
  }
  .header-common.is-column .header-viewport.is-main {
    min-height: 2.54rem;
    padding-top: 1.94rem;
  }
  .header-common.is-column .header-viewport.is-main::before, .header-common.is-column .header-viewport.is-main::after {
    display: none;
  }
  .header-common.is-column .header-viewport.is-main .logo-header-secondary, .header-common.is-column .header-viewport.is-main .header-button {
    display: none;
  }
}

.header-viewport {
  width: 100%;
  top: 0;
  left: 0;
}
.header-viewport::before, .header-viewport::after {
  content: "";
  position: absolute;
  right: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}
.header-viewport::before {
  background-color: rgba(255, 255, 255, 0.9);
  top: 0;
  bottom: 0;
  z-index: 0;
}
.header-viewport::after {
  background: linear-gradient(to bottom, rgb(0, 0, 0) 0%, rgba(0, 0, 0, 0) 100%);
  top: 100%;
  opacity: 0.3;
}
@media print, (min-width: 768px) {
  .header-viewport {
    min-width: 1260px;
  }
  .header-viewport::after {
    height: 10px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-viewport::after {
    height: 0.2rem;
  }
}

.header-viewport.is-main {
  position: absolute;
  z-index: 1;
}
.header-viewport.is-main .logo-header-secondary .is-cloned, .header-viewport.is-main .header-button .is-cloned {
  display: none;
}
@media print, (min-width: 768px) {
  .header-viewport.is-main {
    min-height: 184px;
  }
  .header-viewport.is-main .logo-header-primary.is-outside {
    width: 437px;
    top: -2px;
    left: -27px;
  }
  .header-viewport.is-main .motto-header-primary {
    min-height: 70px;
  }
  .header-viewport.is-main .navigation-header-sitemap {
    top: 83px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-viewport.is-main .logo-header-primary.is-outside {
    width: 4.3rem;
    top: 0;
    left: 0;
  }
  .header-viewport.is-main .logo-header-secondary {
    width: 2.5rem;
    top: 0.24rem;
    left: 3.56rem;
  }
  .header-viewport.is-main .button-header-burger.is-outside {
    top: 0.34rem;
  }
}

.header-viewport.is-cloned {
  position: fixed;
  z-index: 0;
  opacity: 0;
  transform: translateY(-100%);
  pointer-events: none;
}
.header-viewport.is-cloned .logo-header-secondary .is-main, .header-viewport.is-cloned .header-button .is-main {
  display: none;
}
@media print, (min-width: 768px) {
  .header-viewport.is-cloned {
    min-height: 140px;
  }
  .header-viewport.is-cloned .logo-header-primary.is-outside {
    width: 347px;
    top: -38px;
    left: -22px;
  }
  .header-viewport.is-cloned .logo-header-secondary, .header-viewport.is-cloned .header-button {
    display: none;
  }
  .header-viewport.is-cloned .motto-header-primary {
    min-height: 26px;
    background-color: #000;
    position: fixed;
    color: #fff;
    font-size: 14px;
  }
  .header-viewport.is-cloned .navigation-header-sitemap {
    top: 47px;
  }
}
@media only screen and (max-width: 767.98px) {
  .header-viewport.is-cloned {
    min-height: 1.52rem;
  }
  .header-viewport.is-cloned .logo-header-primary.is-outside {
    width: 3rem;
    top: 0;
    left: 0;
  }
  .header-viewport.is-cloned .logo-header-secondary {
    width: 1.74rem;
    top: 0.12rem;
    left: 2.48rem;
  }
  .header-viewport.is-cloned .motto-header-primary,
  .header-viewport.is-cloned .navigation-header-sitemap {
    display: none;
  }
  .header-viewport.is-cloned .button-header-burger.is-outside {
    top: 0.2rem;
  }
}

.motto-header-primary {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  left: 0;
  z-index: 2;
  font-weight: 400;
  color: #4c4c4c;
}
.motto-header-primary .wrapper {
  position: relative;
}
@media print, (min-width: 768px) {
  .motto-header-primary {
    padding: 0 0 0 calc(100% - 966px);
    top: 0;
    font-size: 15px;
    line-height: 1.3333333333;
  }
  .motto-header-primary .wrapper {
    width: auto;
    margin: 0;
    padding-right: 24px;
  }
  html.is-ios .motto-header-primary .wrapper, html.is-firefox .motto-header-primary .wrapper {
    top: -1px;
  }
}
@media print, (max-width: 1519.98px) and (min-width: 768px) {
  .motto-header-primary {
    padding: 0 0 0 calc(50% - 202px);
  }
}
@media only screen and (max-width: 767.98px) {
  .motto-header-primary {
    min-height: 0.6rem;
    padding: 0.15rem 0;
    bottom: 0;
    font-size: 0.2rem;
    line-height: 1.5;
    text-align: center;
  }
}

.logo-header-primary {
  position: absolute;
  z-index: 3;
}
.logo-header-primary img {
  width: 100%;
  height: auto;
  display: block;
}

@media only screen and (max-width: 767.98px) {
  .logo-header-primary.is-inside {
    width: 3.1423rem;
    top: 0.52rem;
    left: 0.46rem;
  }
}

.logo-header-secondary {
  z-index: 4;
}
.logo-header-secondary img {
  width: 100%;
  height: auto;
  display: block;
}
.logo-header-secondary .logo-main {
  display: block;
}
@media print, (min-width: 768px) {
  .logo-header-secondary {
    width: 100%;
    min-width: 1260px;
    position: fixed;
    top: 0;
    left: 0;
  }
  .logo-header-secondary .logo-main {
    width: 329px;
    position: absolute;
    top: 231px;
    right: 51px;
  }
}
@media only screen and (max-width: 767.98px) {
  .logo-header-secondary {
    position: absolute;
  }
}

.header-button {
  z-index: 4;
  position: absolute;
}
@media only screen and (max-width: 767.98px) {
  .header-button {
    top: 0.72rem;
    left: calc(50% - 0.8rem);
    border: 0.01rem solid #c3172d;
    border-radius: 0.1rem;
    width: 2.73rem;
    min-height: 0.57rem;
    padding: 0.02rem;
    text-align: center;
  }
  .header-button::before {
    content: "";
    position: absolute;
    top: 0.12rem;
    right: -0.24rem;
    background: url(../img/common/sp/icon_hand_01.svg) center center no-repeat;
    width: 0.49rem;
    height: 0.54rem;
  }
  .header-button span {
    background-color: #c3172d;
    border-radius: 0.08rem;
    min-height: 0.53rem;
    color: #fff;
    font-weight: 500;
    font-size: 0.24rem;
    line-height: 1.57;
    letter-spacing: 0.1em;
    display: flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    padding: 0.05rem;
  }
}

.navigation-header-sitemap {
  z-index: 10010;
}
@media print, (min-width: 768px) {
  .navigation-header-sitemap {
    width: 959px;
    max-width: calc(50% + 199px);
    position: absolute;
    right: 24px;
    left: auto;
  }
}
@media only screen and (max-width: 767.98px) {
  .navigation-header-sitemap {
    padding: 0 0.14rem 0.14rem 0.14rem;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow: hidden auto;
    opacity: 0;
    visibility: hidden;
  }
  .navigation-header-sitemap::-webkit-scrollbar {
    width: 0;
    opacity: 0;
  }
  .navigation-header-sitemap .navigation-viewport {
    min-height: auto;
    padding: 2.2rem 0.24rem 1.04rem;
    background: rgba(214, 74, 72, 0.95) url(../img/common/decoration_dot_02.svg) bottom 0.3rem center/2.43rem auto no-repeat;
    border-radius: 0.26rem;
    position: relative;
  }
}

.list-header-sitemap {
  position: relative;
  z-index: 1;
}
.list-header-sitemap .list-wrapper {
  margin: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
}
@media print, (min-width: 768px) {
  .list-header-sitemap .list-wrapper {
    justify-content: space-between;
  }
  .list-header-sitemap .list-element {
    width: 14.2857142857%;
    max-width: 136px;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-header-sitemap {
    margin-bottom: 0.76rem;
  }
  .list-header-sitemap .list-wrapper {
    margin: 0 -0.1rem -0.66rem;
  }
  .list-header-sitemap .list-element {
    width: 33.3333333333%;
    padding: 0 0.1rem 0.66rem;
  }
}

.button-header-sitemap {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", sans-serif;
  font-weight: 700;
}
.button-header-sitemap img,
.button-header-sitemap svg {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}
.button-header-sitemap .button-decoration {
  margin: 0 auto;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
}
@media print, (min-width: 768px) {
  .button-header-sitemap {
    min-height: 86px;
    padding: 0 5px 10px;
    font-size: 16.68px;
    line-height: 1.7985611511;
    color: #4c4c4c;
    transition: color 0.5s ease;
  }
  .button-header-sitemap .button-icon {
    width: 60px;
    margin: -14px 0 7px;
  }
  .button-header-sitemap .button-icon path,
  .button-header-sitemap .button-icon polygon {
    fill: #4c4c4c;
    transition: fill 0.5s ease;
  }
  .button-header-sitemap .button-label {
    margin: -5px 0;
  }
  .button-header-sitemap .button-decoration {
    width: 23px;
  }
  .button-header-sitemap .button-decoration circle {
    fill: #999;
    transition: fill 0.5s ease;
  }
}
@media print, (max-width: 1519.98px) and (min-width: 768px) {
  .button-header-sitemap {
    font-size: 14px;
    line-height: 2.1428571429;
  }
}
@media only screen and (max-width: 767.98px) {
  .button-header-sitemap {
    padding-bottom: 0.06rem;
    font-size: 0.3014rem;
    line-height: 1.9907100199;
    color: #fff;
  }
  .button-header-sitemap .button-icon {
    width: 0.8rem;
    margin-bottom: 0.14rem;
  }
  .button-header-sitemap .button-decoration {
    width: 0.4rem;
  }
  .button-header-sitemap .button-decoration circle {
    fill: #fff;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-about:hover, .button-header-sitemap.is-about.is-current {
    color: #4d8baa;
  }
  .button-header-sitemap.is-about:hover .button-icon path,
  .button-header-sitemap.is-about:hover .button-icon polygon, .button-header-sitemap.is-about.is-current .button-icon path,
  .button-header-sitemap.is-about.is-current .button-icon polygon {
    fill: #4d8baa;
  }
  .button-header-sitemap.is-about:hover .button-decoration circle, .button-header-sitemap.is-about.is-current .button-decoration circle {
    fill: #4d8baa;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-lineup:hover, .button-header-sitemap.is-lineup.is-current {
    color: #8eb86d;
  }
  .button-header-sitemap.is-lineup:hover .button-icon path,
  .button-header-sitemap.is-lineup:hover .button-icon polygon, .button-header-sitemap.is-lineup.is-current .button-icon path,
  .button-header-sitemap.is-lineup.is-current .button-icon polygon {
    fill: #8eb86d;
  }
  .button-header-sitemap.is-lineup:hover .button-decoration circle, .button-header-sitemap.is-lineup.is-current .button-decoration circle {
    fill: #8eb86d;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-column:hover, .button-header-sitemap.is-column.is-current {
    color: #be7f90;
  }
  .button-header-sitemap.is-column:hover .button-icon path,
  .button-header-sitemap.is-column:hover .button-icon polygon, .button-header-sitemap.is-column.is-current .button-icon path,
  .button-header-sitemap.is-column.is-current .button-icon polygon {
    fill: #be7f90;
  }
  .button-header-sitemap.is-column:hover .button-decoration circle, .button-header-sitemap.is-column.is-current .button-decoration circle {
    fill: #be7f90;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-advice:hover, .button-header-sitemap.is-advice.is-current {
    color: #db936e;
  }
  .button-header-sitemap.is-advice:hover .button-icon path,
  .button-header-sitemap.is-advice:hover .button-icon polygon, .button-header-sitemap.is-advice.is-current .button-icon path,
  .button-header-sitemap.is-advice.is-current .button-icon polygon {
    fill: #db936e;
  }
  .button-header-sitemap.is-advice:hover .button-decoration circle, .button-header-sitemap.is-advice.is-current .button-decoration circle {
    fill: #db936e;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-faq:hover, .button-header-sitemap.is-faq.is-current {
    color: #74b1bb;
  }
  .button-header-sitemap.is-faq:hover .button-icon path,
  .button-header-sitemap.is-faq:hover .button-icon polygon, .button-header-sitemap.is-faq.is-current .button-icon path,
  .button-header-sitemap.is-faq.is-current .button-icon polygon {
    fill: #74b1bb;
  }
  .button-header-sitemap.is-faq:hover .button-decoration circle, .button-header-sitemap.is-faq.is-current .button-decoration circle {
    fill: #74b1bb;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-contact {
    border-right: 4px solid #b3b3b3;
    border-left: 4px solid #b3b3b3;
  }
  .button-header-sitemap.is-contact:hover, .button-header-sitemap.is-contact.is-current {
    color: #bd9bac;
  }
  .button-header-sitemap.is-contact:hover .button-icon path,
  .button-header-sitemap.is-contact:hover .button-icon polygon, .button-header-sitemap.is-contact.is-current .button-icon path,
  .button-header-sitemap.is-contact.is-current .button-icon polygon {
    fill: #bd9bac;
  }
  .button-header-sitemap.is-contact:hover .button-decoration circle, .button-header-sitemap.is-contact.is-current .button-decoration circle {
    fill: #bd9bac;
  }
}

@media print, (min-width: 768px) {
  .button-header-sitemap.is-request:hover, .button-header-sitemap.is-request.is-current {
    color: #cf0a2c;
  }
  .button-header-sitemap.is-request:hover .button-decoration circle, .button-header-sitemap.is-request.is-current .button-decoration circle {
    fill: #cf0a2c;
  }
}

@media only screen and (max-width: 767.98px) {
  .button-header-burger {
    background: center center/contain no-repeat;
    position: absolute;
    z-index: 5;
    cursor: pointer;
    transition: pointer-events 0 0.5s ease;
  }
}

@media only screen and (max-width: 767.98px) {
  .button-header-burger.is-outside {
    width: 1.33rem;
    height: 1.09rem;
    background-image: url(../img/common/sp/button_burger_01.svg);
    right: 0;
  }
}

@media only screen and (max-width: 767.98px) {
  .button-header-burger.is-inside {
    width: 1.05rem;
    height: 1.07rem;
    background-image: url(../img/common/sp/button_burger_02.svg);
    top: 0.26rem;
    right: 0.12rem;
  }
}

@media only screen and (max-width: 767.98px) {
  .block-header-sitemap {
    margin: 0 auto 0.36rem;
    padding: 0 0.14rem 0.6rem;
    background: url(../img/common/decoration_dot_01.svg) bottom center/0.4rem auto no-repeat;
    font-weight: 700;
    color: #000;
  }
  .block-header-sitemap .block-wrapper {
    min-height: 0.97rem;
    padding: 0.1rem 0.1rem 0.1rem 1.38rem;
    border-radius: 0.49rem;
    background-color: #fff;
    display: flex;
    align-items: center;
    position: relative;
  }
  .block-header-sitemap .block-icon {
    width: 1.13rem;
    height: 1.13rem;
    padding: 0.05rem;
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: calc(50% - 0.565rem);
    left: -0.04rem;
  }
  .block-header-sitemap .block-icon img {
    width: 100%;
    height: auto;
    display: block;
  }
  .block-header-sitemap .block-label {
    width: 1.92rem;
    padding-right: 0.2rem;
    display: flex;
    flex: 0 0 auto;
    position: relative;
    font-size: 0.37rem;
    line-height: 1.6216216216;
  }
  .block-header-sitemap .label-wrapper {
    color: #000;
  }
  .block-header-sitemap .block-table {
    font-size: 0.23rem;
    line-height: 1.2173913043;
  }
  .block-header-sitemap .table-wrapper {
    margin: -0.04rem;
    display: flex;
    flex-wrap: wrap;
  }
  .block-header-sitemap .table-item {
    padding-bottom: 0.04rem;
    display: flex;
    flex: 0 0 auto;
  }
  .block-header-sitemap .table-item:nth-child(2n-1) {
    width: 1.48rem;
    padding-right: 0.04rem;
  }
  .block-header-sitemap .table-item:nth-child(2n) {
    width: calc(100% - 1.48rem);
  }
  .block-header-sitemap .item-wrapper {
    color: #000;
  }
}

@media only screen and (max-width: 767.98px) {
  .list-header-menu {
    margin: 0;
    padding: 0 0.42rem;
    list-style: none;
    font-size: 0.3rem;
    font-weight: 700;
    line-height: 1.6333333333;
  }
  .list-header-menu:not(:last-child) {
    margin-bottom: 0.28rem;
    padding-bottom: 0.5rem;
    background: url(../img/common/decoration_dot_01.svg) bottom center/0.4rem auto no-repeat;
  }
  .list-header-menu .list-item {
    display: flex;
  }
  .list-header-menu .list-item:not(:last-child) {
    margin-bottom: 0.08rem;
  }
  .list-header-menu .item-wrapper {
    border-bottom: 0.02rem solid transparent;
    display: flex;
    align-items: center;
    position: relative;
    line-height: 1.2;
    color: #fff;
    text-decoration: none;
    transition: border 0.5s ease;
  }
  .list-header-menu .item-wrapper:hover, .list-header-menu .item-wrapper.is-current {
    border-bottom-color: #fff;
  }
  .list-header-menu .item-wrapper::before {
    content: "";
    width: 0.2rem;
    height: 0.2rem;
    margin-right: 0.1rem;
    background: url(../img/common/icon_arrow_05.svg) center center/100% auto no-repeat;
    position: relative;
    flex: 0 0 auto;
  }
  .list-header-menu .item-label {
    display: block;
    position: relative;
  }
}

/* COMMON FOOTER
 * * -----------------------------------------------*/
.button-footer-top {
  background: url(../img/common/icon_top_02.svg) center/100% 100% no-repeat;
  position: fixed;
  right: 0;
  z-index: 99;
  pointer-events: none;
  opacity: 0;
  cursor: pointer;
  transition: opacity 0.3s ease;
  border-radius: 50%;
}
.button-footer-top.is-show {
  opacity: 1;
  pointer-events: auto;
}
.button-footer-top.is-show:hover {
  opacity: 0.8;
}
.button-footer-top.is-sticked {
  position: absolute;
}
@media print, (min-width: 768px) {
  .button-footer-top {
    width: 82px;
    height: 82px;
    margin-right: 179px;
    bottom: 23px;
    box-shadow: 3px 3px 4px rgba(0, 0, 0, 0.5);
  }
  .button-footer-top.is-sticked {
    bottom: calc(100% + 23px);
  }
}
@media only screen and (max-width: 767.98px) {
  .button-footer-top {
    width: 1.08rem;
    height: 1.08rem;
    margin-right: 0.14rem;
    bottom: 0.25rem;
    box-shadow: 0.04rem 0.04rem 0.06rem rgba(0, 0, 0, 0.5);
  }
  .button-footer-top.is-sticked {
    bottom: calc(100% + 0.25rem);
  }
}

footer {
  position: relative;
  color: #4c4c4c;
}
footer .footer-contain {
  overflow: hidden;
}
footer .contain-position {
  background: center center/cover no-repeat;
  background-color: #fff;
}
@media print, (min-width: 768px) {
  footer {
    margin-top: 50px;
  }
  footer .contain-position {
    padding-top: 25px;
  }
}
@media only screen and (max-width: 767.98px) {
  footer .contain-position {
    padding-top: 0.34rem;
  }
}

.footer-extra {
  background: #000;
}
.footer-extra .extra-logo {
  display: block;
}
.footer-extra .extra-logo img {
  width: 100%;
}
.footer-extra .extra-detail {
  position: relative;
  color: #fff;
}
.footer-extra .detail-highlight, .footer-extra .detail-copyright {
  position: relative;
}
.footer-extra .detail-highlight {
  font-weight: 900;
}
.footer-extra .detail-copyright {
  font-family: "Arial", sans-serif;
}
@media print, (min-width: 768px) {
  .footer-extra {
    padding: 25px 0;
  }
  .footer-extra .wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .footer-extra .extra-logo {
    width: 260px;
    margin-left: -5px;
  }
  .footer-extra .extra-detail {
    padding-right: 14px;
    display: flex;
    align-items: center;
    top: 2px;
  }
  .footer-extra .detail-highlight {
    margin-right: 11px;
    font-size: 20px;
  }
  .is-firefox .footer-extra .detail-highlight {
    top: -1px;
  }
  .footer-extra .detail-copyright {
    font-size: 18px;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-extra {
    padding: 0.5rem 0;
  }
  .footer-extra .extra-logo {
    width: 3.6rem;
    margin: 0 auto 0.3rem;
  }
  .footer-extra .detail-highlight, .footer-extra .detail-copyright {
    display: block;
    text-align: center;
  }
  .footer-extra .detail-highlight {
    margin-bottom: 0.1rem;
    font-size: 0.34rem;
  }
  .footer-extra .detail-copyright {
    font-size: 0.25rem;
  }
}

.footer-logo {
  margin: 0 auto;
}
.footer-logo .logo-wrapper {
  display: block;
}
.footer-logo img {
  width: 100%;
}
@media print, (min-width: 768px) {
  .footer-logo {
    width: 420px;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-logo {
    width: 6rem;
    margin-bottom: 0.35rem;
  }
}

@media print, (min-width: 768px) {
  .footer-menu {
    margin: 0 -35px 25px;
  }
  .footer-menu ul {
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 16px;
    font-weight: 600;
  }
  .footer-menu ul:not(:last-child) {
    margin-bottom: 12px;
  }
  .footer-menu .menu-item {
    padding: 0 18px;
    position: relative;
    text-align: center;
  }
  .footer-menu .menu-item::before, .footer-menu .menu-item::after {
    content: "";
    width: 1px;
    height: 20px;
    background: #4c4c4c;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
  }
  .footer-menu .menu-item::before {
    left: -1px;
  }
  .footer-menu .menu-item::after {
    right: 0;
  }
  .footer-menu .menu-item.is-current .item-wrapper::after {
    opacity: 1;
  }
  .footer-menu .item-wrapper {
    padding-bottom: 2px;
    display: inline-block;
    position: relative;
    color: #4c4c4c;
  }
  .footer-menu .item-wrapper:hover::after {
    opacity: 1;
  }
  .footer-menu .item-wrapper::after {
    content: "";
    height: 2px;
    background: #4c4c4c;
    position: absolute;
    right: 0;
    bottom: -4px;
    left: 0;
    opacity: 0;
    transition: opacity 0.3s ease;
  }
}

.footer-description .description-logo {
  display: block;
}
.footer-description img {
  width: 100%;
}
.footer-description .info-contact, .footer-description .info-link {
  font-family: "Arial", sans-serif;
  font-weight: 700;
}
.footer-description .info-contact {
  position: relative;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: #4c4c4c;
}
.footer-description .link-direct {
  border-bottom: 1px solid #4c4c4c;
}
.footer-description .link-direct:hover {
  border: none;
}
@media print, (min-width: 768px) {
  .footer-description {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .footer-description .description-logo {
    width: 190px;
    margin: 0 65px 0 220px;
  }
  .footer-description .info-contact {
    margin: 20px 0 7px;
    font-size: 17px;
    line-height: 1.9352941176;
  }
  .footer-description .info-address {
    margin-bottom: 7px;
  }
  .footer-description .info-address {
    font-weight: 500;
  }
  .footer-description .contact-phone {
    display: inline-block;
    pointer-events: none;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-description {
    text-align: center;
  }
  .footer-description .description-logo {
    width: 3.3rem;
    margin: 0 auto 0.2rem;
  }
  .footer-description .info-contact, .footer-description .info-link {
    font-size: 0.23rem;
  }
  .footer-description .info-address {
    font-size: 0.21rem;
    margin-bottom: 0.1rem;
  }
  .footer-description .info-contact {
    font-size: 0.24rem;
    line-height: 1.3708333333;
    margin: 0.4rem 0 0.02rem;
  }
}

.footer-credit {
  display: block;
  font-family: "Arial", sans-serif;
  text-align: center;
}
@media print, (min-width: 768px) {
  .footer-credit {
    padding: 38px 0 17px;
    font-size: 18px;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-credit {
    padding: 0.3rem 0;
    font-size: 0.25rem;
  }
}

.footer-banner {
  position: fixed;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  z-index: 1;
}
.footer-banner.is-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
}
.is-loaded .footer-banner {
  opacity: 1;
  visibility: visible;
}
.button-footer-top.is-sticked + .footer-banner {
  opacity: 0 !important;
  pointer-events: none !important;
}
.footer-banner a {
  display: block;
  overflow: hidden;
}
@media print, (min-width: 768px) {
  .footer-banner {
    bottom: 130px;
  }
  .footer-banner a {
    border-top-left-radius: 16px;
    border-bottom-left-radius: 16px;
  }
}
@media only screen and (max-width: 767.98px) {
  .footer-banner {
    width: 1.18rem;
    height: 3.68rem;
    bottom: 1.5rem;
  }
  .footer-banner a {
    border-top-left-radius: 0.22rem;
    border-bottom-left-radius: 0.22rem;
  }
  .footer-banner img {
    width: 100%;
  }
}

@media only screen and (max-width: 767.98px) {
  .footer-menu-wrapper {
    position: relative;
    background-color: rgb(122, 142, 159);
    padding-top: 0.48rem;
    padding-bottom: 0.64rem;
    mix-blend-mode: multiply;
  }
  .footer-menu-wrapper .menu-wrapper {
    display: flex;
    vertical-align: middle;
    justify-content: space-between;
  }
  .footer-menu-wrapper .list-footer-menu.is-first, .footer-menu-wrapper .list-footer-menu.is-third {
    padding-left: 0.6rem;
  }
  .footer-menu-wrapper .list-footer-menu.is-third {
    border-top: 0.01rem solid #fff;
    margin-top: 0.16rem;
    padding-top: 0.1rem;
  }
  .footer-menu-wrapper .menu-item {
    position: relative;
  }
  .footer-menu-wrapper .menu-item.is-current .item-wrapper::after {
    opacity: 1;
  }
  .footer-menu-wrapper .item-wrapper {
    position: relative;
    color: #fff;
    text-align: left;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 0.31rem;
    line-height: 2.3870967742;
    font-weight: 700;
  }
  .footer-menu-wrapper .item-wrapper:hover::after {
    opacity: 1;
  }
  .footer-menu-wrapper .item-wrapper::after {
    content: "";
    height: 0.02rem;
    background-color: #fff;
    position: absolute;
    right: 0;
    bottom: -0.04rem;
    left: 0;
    opacity: 0;
  }
  .footer-menu-wrapper .item-wrapper::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: calc(50% - 0.08rem);
    left: -0.34rem;
    width: 0.14rem;
    height: 0.23rem;
    background: url(../img/common/sp/icon_arrow_02.svg) center center no-repeat;
  }
}

/* MODULES
 * * -----------------------------------------------*/
/* BUTTON
 * * -----------------------------------------------*/
.button-common-submit, .button-common-back {
  margin: 0 auto;
  text-align: center;
}
.button-common-submit .mw-wrap, .button-common-back .mw-wrap {
  height: 100%;
  display: block;
}
.button-common-submit button, .button-common-submit a, .button-common-back button, .button-common-back a {
  width: 100%;
  height: 100%;
  background: #2d76a1;
  display: block;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", sans-serif;
  font-weight: 700;
  text-align: center;
  color: #fff;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}
@media print, (min-width: 768px) {
  .button-common-submit, .button-common-back {
    width: 290px;
    height: 44px;
  }
  .button-common-submit button, .button-common-submit a, .button-common-back button, .button-common-back a {
    padding: 3px 15px 1px;
    font-size: 29px;
  }
  .is-ios .button-common-submit button, .is-ios .button-common-submit a, .is-ios .button-common-back button, .is-ios .button-common-back a {
    padding-bottom: 2px;
  }
}
@media only screen and (max-width: 767.98px) {
  .button-common-submit, .button-common-back {
    width: 3.7rem;
    height: 0.56rem;
  }
  .button-common-submit button, .button-common-submit a, .button-common-back button, .button-common-back a {
    padding: 3px 0.15rem 2px;
    font-size: 0.37rem;
  }
}

.button-common-menu {
  margin: 0 auto;
  background: #2d76a1;
  display: block;
  position: relative;
  font-weight: 500;
  color: #fff;
  text-align: center;
  transition: background 0.3s ease;
}
.button-common-menu::before, .button-common-menu::after {
  content: "";
  background: bottom left/100% 100% no-repeat;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}
.button-common-menu::before {
  background-image: url(../img/common/decoration_signal_03.svg);
}
.button-common-menu::after {
  background-image: url(../img/common/decoration_signal_04.svg);
  opacity: 0;
}
.button-common-menu:hover, .button-common-menu.is-active {
  background: #999;
}
.button-common-menu:hover::before, .button-common-menu.is-active::before {
  opacity: 0;
}
.button-common-menu:hover::after, .button-common-menu.is-active::after {
  opacity: 1;
}
.button-common-menu .button-wrapper {
  display: block;
  position: relative;
  z-index: 1;
}
@media print, (min-width: 768px) {
  .button-common-menu {
    width: 490px;
    padding: 5px 50px 6px;
    font-size: 27px;
  }
  .button-common-menu::before, .button-common-menu::after {
    width: 40px;
    height: 40px;
  }
}
@media only screen and (max-width: 767.98px) {
  .button-common-menu {
    width: 5.32rem;
    padding: 0.05rem 0.5rem 0.07rem;
    font-size: 0.29rem;
  }
  .button-common-menu::before, .button-common-menu::after {
    width: 0.44rem;
    height: 0.44rem;
  }
}

/* FORM
 * * -----------------------------------------------*/
@media only screen and (max-width: 767.98px) {
  .title-common-form {
    margin-bottom: 0.2rem;
  }
}

.list-common-form .mw-wrap {
  position: relative;
}
.list-common-form .item-label {
  font-weight: 300;
  color: #585757;
}
.list-common-form .label-note {
  display: block;
}
.list-common-form .content-warn, .list-common-form .error {
  display: block;
  font-family: "游ゴシック", YuGothic, "Yu Gothic", sans-serif;
  font-weight: 700;
  color: #00f;
}
.list-common-form .content-warn > .error {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  transform: none;
}
@media print, (min-width: 768px) {
  .list-common-form .list-item {
    border-bottom: 1px solid #b4b19a;
    display: flex;
  }
  .list-common-form .item-label {
    padding: 22px 0 24px;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    font-size: 19px;
  }
  .list-common-form .item-label span {
    width: 100%;
    padding-bottom: 0;
  }
  .list-common-form .label-note {
    font-size: 18px;
  }
  .list-common-form .item-content {
    padding: 21px 0;
    position: relative;
    flex: 1 1 auto;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-common-form {
    margin: 0 -0.3rem;
  }
  .list-common-form .item-label {
    padding: 0.05rem 0.3rem 0.06rem;
    border-top: 1px solid #b4b19a;
    border-bottom: 1px solid #b4b19a;
    background: #f0efeb;
    font-size: 0.28rem;
    text-align: center;
  }
  .list-common-form .label-note {
    font-size: 0.26rem;
  }
  .list-common-form .item-content {
    padding: 0.28rem 0.3rem;
    position: relative;
  }
}

/* FORM (CONFIRM)
 * * -----------------------------------------------*/
@media print, (min-width: 768px) {
  .title-common-form {
    margin-bottom: 6px;
  }
}

.list-common-form .item-content {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", sans-serif;
  color: #2d76a1;
}
.list-common-form .content-part-order {
  padding: 30px 0 10px;
}
.list-common-form .content-part-order .part-fee {
  display: flex;
}
.list-common-form .content-part-order .fee-label {
  flex: 0 0 auto;
}
.list-common-form .content-part-order .fee-money {
  display: flex;
  flex: 1 1 auto;
}
.list-common-form .content-part-order .money-price {
  flex: 0 0 auto;
  text-align: right;
}
.list-common-form .content-part-order .money-icon {
  flex: 1 1 auto;
  text-align: center;
}
.list-common-form .content-part-order .money-quantity {
  text-align: right;
}
.list-common-form .content-part-order .part-total {
  display: flex;
  justify-content: flex-end;
  text-align: right;
}
.list-common-form .content-part-order .total-label {
  position: relative;
  font-weight: 700;
}
.list-common-form .content-part-order .total-number {
  font-weight: 500;
}
@media print, (min-width: 768px) {
  .list-common-form .item-label {
    width: 276px;
  }
  .list-common-form .contain-note {
    margin-bottom: 0;
    font-size: 15px;
  }
  .list-common-form .item-content {
    padding-left: 30px;
    font-size: 18px;
    line-height: 1.78;
  }
  .list-common-form .content-part-order .part-fee:not(:last-child) {
    margin-bottom: 10px;
  }
  .list-common-form .content-part-order .fee-label {
    width: calc(70% - 20px);
    margin-right: 20px;
  }
  .list-common-form .content-part-order .money-icon {
    padding: 0 5px;
  }
  .list-common-form .content-part-order .money-price {
    width: 118px;
  }
  .list-common-form .content-part-order .part-total {
    margin-top: 20px;
  }
  .list-common-form .content-part-order .total-label {
    margin-right: 16px;
    top: 3px;
    font-size: 17px;
  }
  .list-common-form .content-part-order .total-label span {
    font-size: 15px;
  }
  .list-common-form .content-part-order .total-number {
    font-size: 21px;
  }
}
@media only screen and (max-width: 767.98px) {
  .list-common-form .content-part-order .part-fee:not(:last-child) {
    margin-bottom: 0.2rem;
  }
  .list-common-form .content-part-order .fee-label {
    width: calc(60% - 0.3rem);
    margin-right: 0.3rem;
  }
  .list-common-form .content-part-order .money-icon {
    padding: 0 0.05rem;
  }
  .list-common-form .content-part-order .money-price {
    width: 1.4rem;
  }
  .list-common-form .content-part-order .part-total {
    margin-top: 0.3rem;
  }
  .list-common-form .content-part-order .total-label {
    margin-right: 0.3rem;
    top: 0.04rem;
    font-size: 0.28rem;
  }
  .list-common-form .content-part-order .total-label span {
    font-size: 0.24rem;
  }
  .list-common-form .content-part-order .total-number {
    font-size: 0.36rem;
  }
}

.form-agreement .mw-wrap {
  position: relative;
}
.form-agreement .agreement-link {
  display: block;
  font-weight: 700;
  color: #585757;
}
.form-agreement .agreement-content {
  font-family: "游ゴシック", YuGothic, "Yu Gothic", sans-serif;
  color: #2d76a1;
}
@media print, (min-width: 768px) {
  .form-agreement {
    border-bottom: 1px solid #b4b19a;
    display: flex;
  }
  .form-agreement .agreement-link {
    width: 276px;
    padding: 8px 0 10px;
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    font-size: 19px;
  }
  .form-agreement .agreement-link span {
    width: 100%;
    padding-bottom: 0;
  }
  .form-agreement .agreement-content {
    padding: 22px 0 22px 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex: 1 1 auto;
    font-size: 18px;
    line-height: 1.78;
  }
  .form-agreement .agreement-content .mw-wrap {
    bottom: -2px;
  }
}
@media only screen and (max-width: 767.98px) {
  .form-agreement {
    margin: 0 -0.3rem;
    border-top: 1px solid #b4b19a;
  }
  .form-agreement .agreement-link {
    padding: 0.06rem 0.3rem 0.05rem;
    border-bottom: 1px solid #b4b19a;
    background: #f0efeb;
    font-size: 0.28rem;
    text-align: center;
  }
  .form-agreement .agreement-content {
    padding: 0.28rem 0.3rem;
    position: relative;
  }
  .form-agreement .mw-wrap {
    bottom: -1px;
  }
}

.section-request .request-detail {
  text-align: center;
  font-weight: 300;
}
@media print, (min-width: 768px) {
  .section-request {
    padding-top: 2px;
  }
  .section-request .title-common-signal {
    margin-bottom: 43px;
  }
  .section-request .request-detail {
    margin-bottom: 91px;
    font-size: 16px;
    line-height: 1.5625;
  }
  .section-request .button-common-submit {
    margin-bottom: 21px;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-request .title-common-signal {
    margin-bottom: 0.55rem;
  }
  .section-request .request-detail {
    margin-bottom: 0.66rem;
    font-size: 0.26rem;
    line-height: 1.31;
  }
  .section-request .title-request-general {
    margin-bottom: 1rem;
  }
  .section-request .button-common-back {
    margin: 0 auto 0.2rem;
  }
}

.form-table.is-regular-shipping .item-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.form-table.is-order .table-structure:not(.is-final) {
  display: none !important;
}
.form-table.is-order .table-note {
  color: #4c4c4c;
}
.form-table .table-content {
  text-align: center;
}
.form-table .content-text {
  font-weight: 400;
  letter-spacing: 0.025em;
}

@media print, (min-width: 768px) {
  .form-table.is-order .table-note {
    margin-top: 10px;
    font-size: 16px;
    line-height: 1.5625;
    text-align: right;
  }
  .table-content {
    margin-top: 8px;
  }
  .table-content .content-text {
    font-size: 16px;
    line-height: 1.5625;
    margin-bottom: 28px;
    text-align: right;
  }
}
@media only screen and (max-width: 767.98px) {
  .form-table.is-order .table-note {
    margin-top: 0.2rem;
    font-size: 0.27rem;
    line-height: 1.3333333333;
  }
  .table-content {
    margin-top: 0.08rem;
  }
  .table-content .content-text {
    font-size: 0.27rem;
    line-height: 1.3333333333;
    margin-bottom: 0.43rem;
    text-align: left;
  }
}
.mw_wp_form_confirm.mw_wp_form_preview .content-button-calendar {
  display: none;
}
.mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .heading-checkbox {
  display: none;
}

.mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-checkbox {
  text-align: right;
}
.mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-label {
  color: #2d76a1;
  font-weight: bold;
  display: inline-block;
  letter-spacing: 0.1em;
}
.mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-value {
  color: #2d76a1;
  font-weight: 500;
  letter-spacing: 0.1em;
  display: inline-block;
}

@media print, (min-width: 768px) {
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-checkbox {
    padding-top: 25px;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-label {
    font-size: 17px;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-label .is-small {
    font-size: 15px;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-value {
    font-size: 21px;
    margin-left: 14px;
  }
}
@media only screen and (max-width: 767.98px) {
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-checkbox {
    padding-top: 0.25rem;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-label {
    font-size: 0.26rem;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-label .is-small {
    font-size: 0.22rem;
  }
  .mw_wp_form_confirm.mw_wp_form_preview .form-table.is-back .is-choice .total-value {
    font-size: 0.29rem;
    margin-left: 0.05rem;
  }
}
/* INPUT (CONFIRM)
 * * -----------------------------------------------*/
.input-common .mw-wrap, .input-select .mw-wrap, .input-textarea .mw-wrap, .input-radio .mw-wrap, .input-checkbox .mw-wrap {
  height: 100%;
  display: block;
}
@media print, (min-width: 768px) {
  .input-common, .input-select, .input-textarea, .input-radio, .input-checkbox {
    min-height: 32px;
  }
  .input-common .mw-wrap, .input-select .mw-wrap, .input-textarea .mw-wrap, .input-radio .mw-wrap, .input-checkbox .mw-wrap {
    bottom: -2px;
  }
}
@media only screen and (max-width: 767.98px) {
  .input-common .mw-wrap, .input-select .mw-wrap, .input-textarea .mw-wrap, .input-radio .mw-wrap, .input-checkbox .mw-wrap {
    bottom: -1px;
  }
}

/* KEYVISUAL
 * * -----------------------------------------------*/
.keyvisual-common-primary {
  position: relative;
}
.keyvisual-common-primary .banner-title {
  text-align: center;
  position: relative;
}
.keyvisual-common-primary .title-japanese {
  display: block;
  font-weight: 900;
  letter-spacing: 0.025em;
  color: #000;
  position: relative;
}
.keyvisual-common-primary .title-japanese::after {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  background: url(../img/common/keyvisual_decor_02.svg) center/cover no-repeat;
}
.keyvisual-common-primary .title-english {
  display: block;
  width: 100%;
  margin: 0 auto;
  line-height: 1.2;
  color: #b3b3b3;
  font-family: "Noto Serif JP", serif;
}
.keyvisual-common-primary .title-english img {
  width: auto;
  height: 100%;
  margin: 0 auto;
  object-fit: contain;
}
.keyvisual-common-primary .banner-detail {
  position: relative;
  display: block;
  font-weight: 500;
  margin-bottom: 0;
  letter-spacing: 0.05em;
  text-align: center;
  font-family: "Noto Serif JP", serif;
}
.keyvisual-common-primary .banner-detail .detail-link {
  color: #cf0a2c;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 2px;
}
.keyvisual-common-primary .banner-detail .detail-link:hover {
  text-decoration: none;
}
.keyvisual-common-primary .banner-detail .is-highlight {
  background: url(../img/common/background_dot_01.jpg) no-repeat;
}
.keyvisual-common-primary .banner-detail .is-red {
  color: #cf0a2c;
}
.keyvisual-common-primary .keyvisual-inner {
  position: relative;
  z-index: 1;
}
.keyvisual-common-primary .keyvisual-inner .wrapper {
  height: 100%;
}
.keyvisual-common-primary .inner-title {
  margin: 0 auto;
  display: block;
  font-weight: 900;
  color: #000;
  text-align: center;
}
.keyvisual-common-primary .inner-text {
  display: block;
}
@media print, (min-width: 768px) {
  .keyvisual-common-primary {
    padding-top: 14px;
    padding-bottom: 30px;
    min-height: 305px;
  }
  .keyvisual-common-primary::before {
    position: absolute;
    content: "";
    top: 48px;
    right: 50px;
    background: url(../img/common/logo_secondary_01.png) center/contain no-repeat;
    width: 329px;
    height: 256px;
  }
  .keyvisual-common-primary .banner-title {
    margin-top: 48px;
    margin-bottom: 21px;
  }
  .keyvisual-common-primary .title-japanese {
    font-size: 45px;
    line-height: 1.2;
    padding-bottom: 13px;
    margin-bottom: 29px;
  }
  .keyvisual-common-primary .title-japanese::after {
    bottom: -18px;
    width: 190px;
    height: 14px;
  }
  .keyvisual-common-primary .title-english {
    height: 30px;
    font-size: 26px;
  }
  .keyvisual-common-primary .banner-detail {
    font-size: 19px;
    line-height: 1.7368421053;
  }
  .keyvisual-common-primary .banner-detail .is-highlight {
    background-size: 100% 14px;
    background-position: center bottom;
  }
  .keyvisual-common-primary .keyvisual-inner {
    height: 245px;
    margin-bottom: 28px;
    padding: 75px 0;
  }
  .keyvisual-common-primary .inner-title {
    width: 540px;
  }
  .keyvisual-common-primary .inner-text {
    margin-bottom: 8px;
    font-size: 48px;
  }
  .keyvisual-common-primary .list-about-menu {
    margin-top: 30px;
  }
}
@media print, (max-width: 1379.98px) and (min-width: 768px) {
  .keyvisual-common-primary::before {
    right: 0;
  }
}
@media only screen and (max-width: 767.98px) {
  .keyvisual-common-primary {
    padding-top: 0.34rem;
    padding-bottom: 0.34rem;
  }
  .keyvisual-common-primary .banner-title {
    margin-bottom: 0.12rem;
  }
  .keyvisual-common-primary .title-japanese {
    font-size: 0.58rem;
    line-height: 1.2;
    padding-bottom: 0.42rem;
    margin-bottom: 0.16rem;
  }
  .keyvisual-common-primary .title-japanese::after {
    bottom: 0.06rem;
    width: 2.43rem;
    height: 0.18rem;
  }
  .keyvisual-common-primary .title-english {
    height: 0.42rem;
    font-size: 0.36rem;
  }
  .keyvisual-common-primary .banner-detail {
    font-size: 0.28rem;
    line-height: 1.7142857143;
  }
  .keyvisual-common-primary .banner-detail .is-highlight {
    background-size: 100% 0.16rem;
    background-position: center bottom;
  }
  .keyvisual-common-primary .keyvisual-inner {
    height: 2.2rem;
    margin-bottom: 0.28rem;
    padding: 0.8rem 0 0.68rem;
  }
  .keyvisual-common-primary .inner-title {
    margin: 0 1.2rem;
  }
  .keyvisual-common-primary .inner-text {
    margin-bottom: 0.07rem;
    font-size: 0.37rem;
  }
  .keyvisual-common-primary .list-about-menu {
    margin-top: 0.3rem;
  }
}

.breadcrumb-common {
  display: flex;
  flex-wrap: wrap;
  font-weight: 300;
  color: #4c4c4c;
  position: relative;
  z-index: 2;
  font-family: "Noto Sans JP", sans-serif;
}
.breadcrumb-common li:not(:last-child) {
  background: url(../img/common/icon_arrow_01.svg) no-repeat;
}
.breadcrumb-common a, .breadcrumb-common span {
  display: block;
  color: #4c4c4c;
}
@media print, (min-width: 768px) {
  .breadcrumb-common {
    font-size: 15px;
    padding-left: 193px;
  }
  .breadcrumb-common li:not(:last-child) {
    padding-right: 30px;
    background-size: 12px 12px;
    background-position: center right 5px;
  }
}
@media print, (max-width: 1479.98px) and (min-width: 768px) {
  .breadcrumb-common {
    padding-left: 300px;
  }
}

.keyvisual-common {
  overflow: hidden;
  position: relative;
}
.keyvisual-common .wrapper {
  height: 100%;
  position: relative;
  display: block;
}
.keyvisual-common .keyvisual-banner {
  background: center center/cover no-repeat;
  position: relative;
  z-index: 1;
}
.keyvisual-common .keyvisual-banner .wrapper {
  height: 100%;
}
.keyvisual-common .keyvisual-banner::after {
  content: "";
  background: center bottom repeat-x;
  position: absolute;
  top: 0;
  right: 0;
  bottom: -2px;
  left: 0;
  z-index: -1;
  pointer-events: none;
}
.keyvisual-common .banner-title {
  margin: 0 auto;
  display: block;
  font-weight: 900;
  color: #fff;
  text-align: center;
}
.keyvisual-common .title-japanese, .keyvisual-common .title-english {
  display: block;
}
.keyvisual-common .title-japanese {
  line-height: 1;
}
.keyvisual-common .keyvisual-title, .keyvisual-common .keyvisual-phrase {
  text-align: center;
  letter-spacing: 0.025em;
}
.keyvisual-common .keyvisual-title {
  font-weight: 900;
}
.keyvisual-common .keyvisual-phrase {
  font-weight: 500;
}
.keyvisual-common .keyvisual-detail {
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  letter-spacing: 0.05em;
}
.keyvisual-common .keyvisual-detail.is-bordered {
  background: center bottom no-repeat;
}
.keyvisual-common .keyvisual-detail .is-highlight {
  background: url(../img/common/background_dot_01.jpg) no-repeat;
}
.keyvisual-common .keyvisual-detail .is-link {
  color: #cf0a2c;
  text-decoration: underline;
}
.keyvisual-common .keyvisual-detail .is-link:hover {
  text-decoration: none;
}
@media print, (min-width: 768px) {
  .keyvisual-common .keyvisual-banner {
    height: 245px;
    margin-bottom: 28px;
    padding: 75px 0;
  }
  .keyvisual-common .keyvisual-banner::after {
    background-image: url(../img/common/background_pattern_03.png);
    background-size: 1570px 157px;
    bottom: -78px;
  }
  .keyvisual-common .keyvisual-banner .wrapper::before {
    content: "";
    width: 296px;
    height: 240px;
    background: url(../img/common/decoration_book_01.png) center center/100% auto no-repeat;
    position: absolute;
    right: -117px;
    bottom: -138px;
    z-index: 1;
  }
  .keyvisual-common .banner-title {
    width: 540px;
    background: url(../img/common/decoration_img_01.png) center left/40px auto no-repeat, url(../img/common/decoration_img_02.png) center right/40px auto no-repeat;
  }
  .keyvisual-common .title-japanese {
    margin-bottom: 8px;
    font-size: 48px;
  }
  .keyvisual-common .title-english {
    font-size: 23px;
  }
  .keyvisual-common .keyvisual-title {
    margin: -14px 0 3px;
    font-size: 35px;
  }
  .keyvisual-common .keyvisual-phrase {
    margin-bottom: 14px;
    font-size: 22px;
  }
  .keyvisual-common .keyvisual-detail {
    font-size: 19px;
    line-height: 2.11;
    text-align: center;
  }
  .keyvisual-common .keyvisual-detail.is-bordered {
    padding-bottom: 34px;
    background-image: url(../img/common/decoration_bar_02.png);
    background-size: 255px auto;
  }
  .keyvisual-common .keyvisual-detail .is-highlight {
    background-size: 100% 14px;
    background-position: center bottom;
  }
  .keyvisual-common .breadcrumb-common {
    margin-bottom: 48px;
  }
}
@media only screen and (max-width: 767.98px) {
  .keyvisual-common .keyvisual-banner {
    height: 2.2rem;
    margin-bottom: 0.28rem;
    padding: 0.8rem 0 0.68rem;
  }
  .keyvisual-common .keyvisual-banner::after {
    background-image: url(../img/common/sp/background_pattern_03.png);
    background-size: 100% auto;
  }
  .keyvisual-common .banner-title {
    margin: 0 1.2rem;
    background: url(../img/common/sp/decoration_img_01.png) center left/0.4rem auto no-repeat, url(../img/common/sp/decoration_img_02.png) center right/0.4rem auto no-repeat;
  }
  .keyvisual-common .title-japanese {
    margin-bottom: 0.07rem;
    font-size: 0.37rem;
  }
  .keyvisual-common .title-english {
    font-size: 0.2rem;
  }
  .keyvisual-common .keyvisual-title {
    margin: -0.08rem 0 0.03rem;
    font-size: 0.35rem;
  }
  .keyvisual-common .keyvisual-phrase {
    margin-bottom: 0.1rem;
    font-size: 0.26rem;
  }
  .keyvisual-common .keyvisual-detail {
    font-size: 0.26rem;
    line-height: 1.7;
  }
  .keyvisual-common .keyvisual-detail.is-bordered {
    padding-bottom: 0.59rem;
    background-image: url(../img/common/sp/decoration_bar_02.png);
    background-size: 2.8rem auto;
  }
  .keyvisual-common .keyvisual-detail .is-highlight {
    background-size: 100% 0.16rem;
    background-position: center bottom;
  }
}

/* TITLE
 * * -----------------------------------------------*/
.title-common-image {
  margin: 0 auto;
  position: relative;
  display: block;
}
.title-common-image .title-wrapper {
  width: 100%;
  position: relative;
  display: block;
}
.title-common-image img {
  width: 100%;
}
@media print, (min-width: 768px) {
  .title-common-image {
    width: 400px;
  }
}
@media only screen and (max-width: 767.98px) {
  .title-common-image {
    width: 5rem;
  }
}

.title-common-signal {
  background: url(../img/common/decoration_signal_01.svg) bottom left no-repeat;
  position: relative;
  font-family: "Noto Serif JP", serif;
  font-weight: 500;
  color: #cf0a2c;
  line-height: 1;
}
.title-common-signal::after {
  content: "";
  margin: 0 auto;
  background: center center repeat-x;
  position: absolute;
  right: 0;
  left: 0;
}
@media print, (min-width: 768px) {
  .title-common-signal {
    padding: 13px 0 0 46px;
    background-size: 40px 40px;
    font-size: 25px;
  }
  .title-common-signal::after {
    height: 20px;
    background-image: url(../img/common/decoration_bar_01.png);
    background-size: 1000px auto;
    bottom: -31px;
  }
}
@media only screen and (max-width: 767.98px) {
  .title-common-signal {
    margin-left: 0.07rem;
    padding: 0.14rem 0 0 0.54rem;
    background-size: 0.45rem 0.45rem;
    font-size: 0.34rem;
  }
  .title-common-signal::after {
    height: 0.2rem;
    background-image: url(../img/common/sp/decoration_bar_01.png);
    background-size: 7rem auto;
    bottom: -0.29rem;
  }
}

.title-common-form {
  display: flex;
  align-items: center;
}
.title-common-form .title-sign, .title-common-form .title-main {
  display: block;
}
.title-common-form .title-sign {
  font-weight: 300;
  text-align: center;
  color: #fff;
}
.title-common-form .title-sign.is-red {
  background: #cf0a2c;
}
.title-common-form .title-sign.is-blue {
  background: #2d76a1;
}
.title-common-form .title-name {
  font-weight: 700;
  color: #585757;
}
.title-common-form .title-name.is-highlight {
  width: 100%;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #3083df;
  text-align: center;
}
@media print, (min-width: 768px) {
  .title-common-form .title-sign {
    margin-right: 10px;
    padding: 2px 13px 3px;
    font-size: 14px;
  }
  .is-ios .title-common-form .title-sign {
    padding-top: 3px;
  }
  .title-common-form .title-name {
    padding-bottom: 1px;
    font-size: 19px;
  }
  .title-common-form .title-name.is-highlight {
    font-size: 25px;
  }
}
@media only screen and (max-width: 767.98px) {
  .title-common-form .title-sign {
    margin-right: 0.1rem;
    padding: 2px 0.19rem 3px;
    font-size: 0.21rem;
  }
  .title-common-form .title-name {
    padding-bottom: 1px;
    font-size: 0.31rem;
  }
}

/* PAGE
 * * -----------------------------------------------*/
/* CONTACT
 * * -----------------------------------------------*/
.section-contact .contain-detail {
  font-weight: 300;
  text-align: center;
}
.section-contact .contain-detail .is-red {
  color: #cf0a2c;
}
@media print, (min-width: 768px) {
  .section-contact {
    padding-bottom: 115px;
  }
  .section-contact .wrapper {
    width: 1000px;
  }
  .section-contact .title-common-signal {
    margin-bottom: 46px;
  }
  .section-contact .contact-contain:not(:last-child) {
    margin-bottom: 91px;
  }
  .section-contact .contain-detail {
    font-size: 16px;
    line-height: 1.5625;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-contact {
    padding: 0.65rem 0 1.2rem;
  }
  .section-contact .title-common-signal {
    margin-bottom: 0.57rem;
  }
  .section-contact .contact-contain:not(:last-child) {
    margin-bottom: 1.38rem;
  }
  .section-contact .contain-detail {
    margin-bottom: 0.66rem;
    font-size: 0.26rem;
    line-height: 1.31;
  }
}

@media only screen and (max-width: 767.98px) {
  .contact-form.is-contact .list-common-form .item-label {
    border-top: none;
    border-bottom: none;
  }
  .contact-form.is-contact .form-table.is-information .list-common-form {
    border-bottom: none;
  }
}

.request-wrapper {
  position: relative;
  z-index: 1;
}
.request-wrapper::before {
  position: absolute;
  content: "";
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  z-index: -1;
}
.request-wrapper.is-step1 .title-common-signal {
  background-color: #bd9bac;
}
@media print, (min-width: 768px) {
  .request-wrapper::before {
    border: 2px solid #000;
    border-radius: 40px;
    width: calc(100% + 82px);
    height: calc(100% - 24px);
    top: 24px;
  }
  .request-wrapper.is-step1 {
    padding-bottom: 59px;
  }
}
@media only screen and (max-width: 767.98px) {
  .request-wrapper::before {
    top: 0.38rem;
    width: calc(100% + 0.6rem);
    height: calc(100% - 0.38rem);
  }
  .request-wrapper.is-step1 {
    padding-bottom: 0.8rem;
  }
}

.section-contact-form .contact-form {
  position: relative;
  z-index: 1;
}
.section-contact-form .title-common-signal {
  z-index: 1;
  font-weight: bold;
  line-height: 1.2;
  color: #fff;
  background: #2d76a1;
  font-family: "Noto Sans JP", sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.section-contact-form .title-common-signal::after {
  display: none;
}
.section-contact-form .title-common-signal::before {
  content: "";
  position: absolute;
  display: block;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media print, (min-width: 768px) {
  .section-contact-form .title-common-signal {
    font-size: 29px;
    max-width: 416px;
    min-height: 48px;
    border-radius: 24px;
    padding: 2px 5px 4px;
    margin: 0 auto 35px;
  }
  .section-contact-form .title-common-signal::before {
    top: -19px;
    border-left: 2px solid #000;
    width: 4px;
    height: 20px;
  }
  .section-contact-form .request-detail {
    margin-bottom: 71px;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-contact-form {
    padding-top: 0.34rem;
  }
  .section-contact-form .title-common-signal {
    font-size: 0.42rem;
    max-width: 5.96rem;
    min-height: 0.78rem;
    border-radius: 0.38rem;
    padding: 0.04rem 0.1rem 0.08rem;
    margin: 0 auto 0.4rem;
  }
  .section-contact-form .title-common-signal::before {
    top: -0.2rem;
    border-left: 0.02rem solid #000;
    width: 0.04rem;
    height: 0.2rem;
  }
  .section-contact-form .request-detail {
    margin-bottom: 0.76rem;
  }
}

.contact-menu .menu-title {
  line-height: 1.2;
  color: #b3b3b3;
  text-decoration: underline;
  font-family: "Noto Serif JP", serif;
  text-align: center;
}
.contact-menu .menu-list {
  margin-bottom: 0;
  padding-left: 0;
  list-style: none;
}
.contact-menu .menu-link {
  display: block;
  width: 100%;
  color: #fff;
}
.contact-menu .menu-text {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  font-weight: bold;
  line-height: 1.2;
  font-feature-settings: "palt";
}
.contact-menu .is-form {
  background-color: #2d76a1;
}
.contact-menu .is-tel {
  background-color: #bd9bac;
}
@media print, (min-width: 768px) {
  .contact-menu {
    width: 862px;
    margin: 20px auto 28px;
    padding: 18px 63px 31px;
    background-color: #fff;
    border-radius: 16px;
    filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.6));
  }
  .contact-menu .menu-title {
    font-size: 21px;
    margin-bottom: 9px;
    text-underline-offset: 1px;
    text-decoration-thickness: 1px;
  }
  .contact-menu .menu-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 -20px -20px;
  }
  .contact-menu .menu-item {
    width: 50%;
    padding: 0 24px 20px;
  }
  .contact-menu .menu-link {
    height: 100%;
    border-radius: 24px;
  }
  .contact-menu .menu-text {
    padding: 2px 5px 4px;
    min-height: 48px;
    font-size: 24px;
    letter-spacing: 0.05em;
  }
}
@media only screen and (max-width: 767.98px) {
  .contact-menu {
    width: calc(100% - 0.6rem);
    margin: 0.4rem auto 0.38rem;
    padding: 0.22rem 1.48rem 0.4rem;
    background-color: #fff;
    border-radius: 0.14rem;
    filter: drop-shadow(0.04rem 0.04rem 0.04rem rgba(0, 0, 0, 0.43));
  }
  .contact-menu .menu-title {
    font-size: 0.26rem;
    margin-bottom: 0.18rem;
    text-underline-offset: 0.04rem;
    text-decoration-thickness: 0.01rem;
  }
  .contact-menu .menu-list {
    margin-bottom: -0.4rem;
  }
  .contact-menu .menu-item {
    width: 100%;
    margin-bottom: 0.26rem;
  }
  .contact-menu .menu-link {
    border-radius: 0.28rem;
  }
  .contact-menu .menu-text {
    padding: 0.04rem 0.04rem 0.08rem;
    min-height: 0.56rem;
    font-size: 0.28rem;
    letter-spacing: 0.01em;
  }
}

/* CONTACT (CONFIRM)
 * * -----------------------------------------------*/
@media print, (min-width: 768px) {
  .form-table.is-inquiry, .form-table.is-information {
    margin-bottom: 49px;
  }
}
@media only screen and (max-width: 767.98px) {
  .form-table {
    margin-bottom: 0.5rem;
  }
}

@media print, (min-width: 768px) {
  .form-agreement {
    margin-bottom: 56px;
  }
}
@media only screen and (max-width: 767.98px) {
  .form-agreement {
    margin-bottom: 0.5rem;
    border-top: none;
  }
  .form-agreement .agreement-link {
    border-bottom: none;
  }
}

@media print, (min-width: 768px) {
  .section-contact {
    padding-top: 21px;
  }
  .section-contact .contain-detail {
    margin-bottom: 60px;
  }
  .section-contact .button-common-submit {
    margin-bottom: 21px;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-contact .button-common-submit {
    margin: 0 auto 0.2rem;
  }
}

@media print, (min-width: 768px) {
  .request-wrapper::before {
    height: calc(100% - 207px);
  }
}
@media only screen and (max-width: 767.98px) {
  .request-wrapper::before {
    height: calc(100% - 2.44rem);
  }
}

.section-contact .contact-contain:not(:last-child) {
  margin-bottom: 0;
}

.section-contact-form .list-common-form .input-common.is-horizontal {
  display: flex;
}
@media print, (min-width: 768px) {
  .section-contact-form .list-common-form .input-common.is-horizontal .mw-wrap {
    margin-right: 4px;
  }
}
@media only screen and (max-width: 767.98px) {
  .section-contact-form .list-common-form .input-common.is-horizontal .mw-wrap {
    margin-right: 0.04rem;
  }
}

/*# sourceMappingURL=contact-confirm.css.map */