@media screen and (max-width: 428px) { ._none-sm { display: none; } }

@media screen and (min-width: 429px) and (max-width: 720px) { ._none-md { display: none; } }

@media screen and (min-width: 721px) and (max-width: 1024px) { ._none-lg { display: none; } }

@media print, screen and (min-width: 1025px) { ._none-xl { display: none; } }

._nowrap { white-space: nowrap; display: inline-block; }

._supMark { font-size: 80%; vertical-align: super; }

#Container { text-align: center; overflow: hidden; }
@media screen and (max-width: 1024px) { #Container { padding-top: 75px; } }
@media print, screen and (min-width: 1025px) { #Container { padding-top: 80px; } }
@media screen and (max-width: 428px) { #Container img { width: 100%; } }
#Container ._anchor { display: block; position: relative; }
@media screen and (max-width: 1024px) { #Container ._anchor { top: -75px; } }
@media print, screen and (min-width: 1025px) { #Container ._anchor { top: -80px; } }
#Container .header { text-align: center; background-color: #FFF; width: 100%; position: fixed; z-index: 9000; top: 0; left: 0; }
@media screen and (max-width: 720px) { #Container .header ._inner { position: relative; } }
@media print, screen and (min-width: 1025px) { #Container .header ._inner { width: 900px; height: 80px; margin: 0 auto; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center; } }
@media screen and (max-width: 1024px) { #Container .header_logo { width: 75px; height: 75px; margin: 0 auto; } }
@media print, screen and (min-width: 1025px) { #Container .header_logo { width: 80px; height: 80px; } }
#Container .header_logo img { width: 100%; }
@media print, screen and (min-width: 1025px) { #Container .header_nav { box-sizing: border-box; width: 820px; padding: 0 0 0 24px; } }
#Container .header_nav_list { transition: transform 400ms; }
@media screen and (max-width: 428px) { #Container .header_nav_list { width: 80%; } }
@media screen and (min-width: 429px) and (max-width: 1024px) { #Container .header_nav_list { width: 350px; } }
@media screen and (max-width: 1024px) { #Container .header_nav_list { position: absolute; top: 0; right: 0; display: none;} }
@media screen and (max-width: 1024px) { #Container .header_nav_list._visible { transform: translateX(-100%); display: block; } }
@media screen and (max-width: 1024px) { #Container .header_nav_list ul { background-color: rgba(0, 0, 0, 0.6); padding-top: 74px; transform: translateX(100%); } }
@media print, screen and (min-width: 1025px) { #Container .header_nav_list ul { display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; } }
@media screen and (max-width: 1024px) { #Container .header_nav_list ul li { border-top: 1px solid rgba(255, 255, 255, 0.8); } }
@media print, screen and (min-width: 1025px) { #Container .header_nav_list ul li { padding: 0 22px; } }
#Container .header_nav_list ul li a { font-size: 1em; text-decoration: none; letter-spacing: .1em; }
@media screen and (max-width: 1024px) { #Container .header_nav_list ul li a { color: #FFF; box-sizing: border-box; padding: 1.8em; display: block; } }
@media print, screen and (min-width: 1025px) { #Container .header_nav_list ul li a { color: #000; padding-bottom: .5em; display: inline-block; position: relative; }
  body:not([data-device="touchDevice"]) #Container .header_nav_list ul li a:hover::after { width: 100%; transition: width 300ms; }
  #Container .header_nav_list ul li a::after { background-color: #9D2136; width: 0; height: 1px; display: block; position: absolute; bottom: 0; left: 50%; content: ""; transform: translateX(-50%); } }
@media print, screen and (min-width: 1025px) { #Container .header_nav_list ul li._current a::after { width: 100%; } }
@media screen and (max-width: 1024px) { #Container .header_nav_btn { width: 50px; height: 50px; display: inline-block; position: absolute; z-index: 1000; top: 8px; right: 4%; cursor: pointer; }
  #Container .header_nav_btn-icon { background: #000; width: 30px; height: 3px; margin: -1px 0 0 -15px; display: block; position: absolute; top: 50%; left: 50%; transition: .2s; }
  #Container .header_nav_btn-icon img { width: 36px; margin-top: 24px; margin-left: -3px; }
  #Container .header_nav_btn-icon::before, #Container .header_nav_btn-icon::after { background: #000; width: 30px; height: 3px; display: block; position: absolute; top: 50%; left: 0; content: ""; transition: .3s; }
  #Container .header_nav_btn-icon::before { margin-top: -12px; }
  #Container .header_nav_btn-icon::after { margin-top: 8px; }
  #Container .header_nav_btn ._close { background: transparent; }
  #Container .header_nav_btn ._close::before, #Container .header_nav_btn ._close::after { background: #FFF; margin-top: 0; }
  #Container .header_nav_btn ._close::before { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }
  #Container .header_nav_btn ._close::after { -webkit-transform: rotate(-135deg); -moz-transform: rotate(-135deg); -ms-transform: rotate(-135deg); -o-transform: rotate(-135deg); transform: rotate(-135deg); } }
@media print, screen and (min-width: 1025px) { #Container .header_nav_btn { display: none; } }
#Container .outline_main { position: relative; }
#Container .outline_main_image { overflow: hidden; }
@media screen and (max-width: 428px) { #Container .outline_main_image { height: 100vw; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .outline_main_image { height: 480px; } }
@media print, screen and (min-width: 1025px) { #Container .outline_main_image { height: 520px; } }
@media screen and (max-width: 720px) { #Container .outline_main_image img { width: auto; height: 100vw; transform: translateX(-12%); } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .outline_main_image img { width: 100%; transform: translateY(-8%); } }
@media print, screen and (min-width: 1025px) { #Container .outline_main_image img { width: 100%; max-width: 1600px; margin: 0 auto; transform: translateY(-8%); } }
#Container .outline_main_text { line-height: 1.4; text-align: left; box-sizing: border-box; position: absolute; }
@media screen and (max-width: 720px) { #Container .outline_main_text { top: 65%; left: 8%; transform: translateY(-60%); font-size: 13px; } }
@media screen and (max-width: 720px) and (min-width: 320px) { #Container .outline_main_text { font-size: calc(17px + (20 - 13) * (100vw - 320px) / (720 - 320)); } }
@media screen and (max-width: 720px) and (min-width: 720px) { #Container .outline_main_text { font-size: calc(17px * 720 / 320); } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .outline_main_text { font-size: 1.325em; top: 50%; left: 5%; transform: translateY(-60%); } }
@media print, screen and (min-width: 1025px) { #Container .outline_main_text { font-size: 1.575em; width: 900px; padding-left: 40px; top: 2em; left: 50%; transform: translateX(-50%); } }
#Container .outline_main_text span { letter-spacing: .1em; background-color: #FFF; margin-top: .8em; padding: .5em; display: inline-block; }
#Container .outline_main_text span em { color: #9D2136; }

@media screen and (max-width: 600px) { /* SP */
  #Container .service_guide { padding:20px 8%; text-align: justify;}
  #Container .service_guide_main br{ display: none;}
  #Container .service_guide_main { font-size:1.1em;line-height: 1.5;letter-spacing:0.2em; padding-bottom: 20px;}
  #Container .service_guide_sub > span {line-height: 1.7;letter-spacing: 0.1em; background: linear-gradient(0deg, #eee8aa 0 50% , transparent 50% 100%);}

  #Container .service_entry {padding: 30px 8%;background: #e2ecf1;}
  #Container .service_entry_head { font-size:1.1em;line-height: 2.0;letter-spacing:0.4em;}
  #Container .service_entry_head span{ border-bottom:5px double #9D2136; }
  #Container .service_entry_caution{text-align: justify; line-height: 1.5em; font-size:0.8em;color:gray; padding: 15px 0; letter-spacing: 0.2em;}
}
@media screen and (min-width: 601px) { /* PC */
  #Container .service_guide { padding:30px 0; }
  #Container .service_guide_main { font-size:1.5em;line-height: 2.0;letter-spacing:0.4em; padding-bottom: 20px;}
  #Container .service_guide_sub > span {letter-spacing: 0.1em; background: linear-gradient(0deg, #eee8aa 0 50% , transparent 50% 100%);}

  #Container .service_entry {padding: 80px 0;background: #e2ecf1;}
  #Container .service_entry_head { font-size:1.5em;line-height: 2.0;letter-spacing:0.4em;}
  #Container .service_entry_head > br:first-child{ display: none;}
  #Container .service_entry_head span{ border-bottom:5px double #9D2136; }
  #Container .service_entry_caution{color:gray; padding: 15px 0; letter-spacing: 0.2em;}
}

@media screen and (max-width: 1024px) { #Container .outline_problem { margin-top: 1em; padding: 0 8%; } }
@media print, screen and (min-width: 1025px) { #Container .outline_problem { width: 900px; margin: 34px auto 0 auto; } }
@media screen and (max-width: 1024px) { #Container .outline_problem_list { text-align: left; margin: 0 auto; display: inline-block; } }
@media print, screen and (min-width: 1025px) { #Container .outline_problem_list { display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -moz-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between; } }
@media screen and (max-width: 1024px) { #Container .outline_problem_list li { border-top: 1px dashed #000; padding: .5em 0; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-box-align: center; -moz-box-align: center; -ms-flex-align: center; -webkit-align-items: center; align-items: center; }
  #Container .outline_problem_list li:first-child { border-top: none; margin-bottom: .5em; } }
@media print, screen and (min-width: 1025px) { #Container .outline_problem_list li { text-align: center; width: 33%; padding: 0 0 .3em 0; }
  #Container .outline_problem_list li:nth-child(2) { border-right: 1px dashed #000; border-left: 1px dashed #000; } }
@media screen and (max-width: 428px) { #Container .outline_problem_list ._image { width: 64px; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .outline_problem_list ._image { width: 100px; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .outline_problem_list ._image { width: 120px; } }
@media print, screen and (min-width: 1025px) { #Container .outline_problem_list ._image { width: 150px; height: 150px; margin: 0 auto; } }
#Container .outline_problem_list ._image img { width: 100%; }
#Container .outline_problem_list ._text { line-height: 1.8; margin-top: .2em; }
@media screen and (max-width: 1024px) { #Container .outline_problem_list ._text { padding-left: .5em; } }
@media screen and (max-width: 428px) { #Container .outline_problem_list ._text { font-size: 0.875em; letter-spacing: .05em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .outline_problem_list ._text { font-size: 1em; letter-spacing: .1em; } }
@media print, screen and (min-width: 721px) { #Container .outline_problem_list ._text { font-size: 1.125em; letter-spacing: .1em; } }
#Container .outline_problem_text { line-height: 1.8; text-align: justify; text-justify: inter-ideograph; letter-spacing: .02em; }
@media screen and (max-width: 428px) { #Container .outline_problem_text { font-size: 0.75em; margin-top: 1.5em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .outline_problem_text { font-size: 0.875em; margin-top: 2em; } }
@media print, screen and (min-width: 721px) { #Container .outline_problem_text { font-size: 1em; margin-top: 3em; } }

@media screen and (max-width: 600px) { /* SP */
  #Container .outline_problem > ._inner { text-align: left; margin: 1em auto 0 auto; }
  #Container .outline_heading { line-height: 1.4; letter-spacing: .15em; font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; }
}
@media screen and (min-width: 601px) { /* PC */
  #Container .outline_problem > ._inner { width: 900px; text-align: left; margin: 1em auto 0 auto; }
  #Container .outline_heading { line-height: 1.4; letter-spacing: .15em; font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 20px; padding-left: 70px; }
}

/* Customer Voice */
.customer-voice-container {
  display: flex;
  flex-wrap: wrap;
}

.customer-voice-item {
  border: 1px dashed #000;
  padding: 20px;
  margin: 10px;
  box-sizing: border-box;
  flex: 1;
}
.customer-voice-title{
  color : #A90F35;
  font-weight: bold;
  font-size: 1.4em;
  margin: 10px 0;
}
.customer-voice-message{
  line-height: 1.4em;
  margin: 10px 0;
  letter-spacing: 0.1em;
}
.customer-voice-author{
  text-align: right;
  font-size:0.8em;
}

@media screen and (max-width: 600px) { /* SP */
  #Container .customervoice { margin-top: 1em; padding: 0 8%; }
  #Container .customervoice > ._inner { text-align: left; margin: 1em auto 0 auto; }
  #Container .customervoice_heading { line-height: 1.4; letter-spacing: .15em; font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; }
  .customer-voice-container {
    flex-direction: column;
  }
  .customer-voice-item {
    width: calc(100% - 20px); /* 1段組みにするための幅調整 */
  }
}
@media screen and (min-width: 601px) { /* PC */
  #Container .customervoice { width: 900px; margin: 34px auto 0 auto; }
  #Container .customervoice > ._inner { width: 900px; text-align: left; margin: 1em auto 0 auto; }
  #Container .customervoice_heading { line-height: 1.4; letter-spacing: .15em; font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 20px; padding-left: 70px; }
  .customer-voice-container {
    flex-direction: row;
  }
  .customer-voice-item {
    width: calc(33.333% - 20px); /* 3段組みにするための幅調整 */
  }
  .customer-voice-title{
    height: 50px;
  }
}

#Container .flow { max-width: 1600px; margin: 0 auto; position: relative; }
@media screen and (max-width: 1024px) { #Container .flow { margin-top: 9.33333%; padding: 0 8%; } }
#Container .flow::before { background-color: #FDFDF3; display: block; position: absolute; z-index: -2000; content: ""; }
@media screen and (max-width: 1024px) { #Container .flow::before { width: 74.13333vw; height: 113.06667vw; top: 19.46667vw; left: 0; } }
@media print, screen and (min-width: 1025px) { #Container .flow::before { width: 701px; height: 1035px; top: 152px; left: 50%; transform: translateX(-245px); } }
#Container .flow::after { background-color: #FAF4F5; display: block; position: absolute; z-index: -2000; content: ""; }
@media screen and (max-width: 1024px) { #Container .flow::after { width: 46.93333vw; height: 82.66667vw; top: 181.06667vw; right: 10.66667vw; } }
@media print, screen and (min-width: 1025px) { #Container .flow::after { width: 488px; height: 388px; top: 989px; left: 0; } }
#Container .flow > ._inner { text-align: left; }
@media print, screen and (min-width: 1025px) { #Container .flow > ._inner { width: 900px; margin: 1em auto 0 auto; padding-top: 200px; } }
#Container .flow_heading { line-height: 1.4; letter-spacing: .15em; }
@media screen and (max-width: 428px) { #Container .flow_heading { font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .flow_heading { font-size: 1.5em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .flow_heading { font-size: 1.75em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media print, screen and (min-width: 1025px) { #Container .flow_heading { font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 50px; padding-left: 70px; } }
#Container .flow_image { position: absolute; z-index: -1000; top: 0; right: 0; }
@media screen and (max-width: 1024px) { #Container .flow_image { width: 48%; } }
@media screen and (max-width: 1024px) { #Container .flow_image img { width: 100%; } }
@media screen and (max-width: 1024px) { #Container .flow ol { margin-top: 1.5873%; } }
@media print, screen and (min-width: 1025px) { #Container .flow ol { margin: 60px 0 0 0; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; } }
@media screen and (max-width: 1024px) { #Container .flow li { margin-bottom: 13.01587%; } }
@media print, screen and (min-width: 1025px) { #Container .flow li { text-align: center; width: 50%; margin-bottom: 72px; } }
#Container .flow li ._heading { text-shadow: #FFFFFF 1px 0 0; line-height: 1.4; letter-spacing: .1em; border-bottom: 1px solid #9D2136; padding-bottom: .2em; display: inline-block; }
@media screen and (max-width: 428px) { #Container .flow li ._heading { font-size: 1em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .flow li ._heading { font-size: 1.125em; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .flow li ._heading { font-size: 1.3125em; } }
@media print, screen and (min-width: 1025px) { #Container .flow li ._heading { font-size: 1.5em; } }
#Container .flow li ._heading span { font-size: 150%; color: #9D2136; padding-right: .1em; }
#Container .flow li ._image { position: relative; }
@media screen and (max-width: 1024px) { #Container .flow li ._image { text-align: center; width: 63.49206%; max-width: 312px; margin: 8.88889% auto 0 auto; } }
@media print, screen and (min-width: 1025px) { #Container .flow li ._image { margin-top: 48px; } }
@media screen and (max-width: 1024px) { #Container .flow li ._image img { width: 100%; } }
@media print, screen and (min-width: 1025px) { #Container .flow li:nth-child(1) ._image::after, #Container .flow li:nth-child(3) ._image::after { border-top: 13px solid transparent; border-right: 26px solid transparent; border-bottom: 13px solid transparent; border-left: 26px solid #9D2136; width: 0; height: 0; display: block; position: absolute; top: 50%; right: -45px; content: ""; transform: translateY(-50%); } }
@media print, screen and (min-width: 1025px) { #Container .flow li:nth-child(2) ._image::after { border-top: 13px solid transparent; border-right: 26px solid #9D2136; border-bottom: 13px solid transparent; border-left: 26px solid transparent; width: 0; height: 0; display: block; position: absolute; bottom: -65px; left: -35px; content: ""; transform: rotate(-45deg); } }
#Container .flow li ._text { text-shadow: #FFFFFF 1px 0 0; line-height: 1.4; text-align: justify; text-justify: inter-ideograph; margin: 1em auto 0 auto; }
@media screen and (max-width: 428px) { #Container .flow li ._text { font-size: 0.75em; } }
@media screen and (min-width: 429px) and (max-width: 1024px) { #Container .flow li ._text { font-size: 0.875em; } }
@media print, screen and (min-width: 1025px) { #Container .flow li ._text { font-size: 1em; width: 312px; } }
#Container .flow li ._text small { font-size: 75%; }
#Container .flow li ._text + ._image { margin-top: 24px; }

#Container .kanpou { max-width: 1600px; margin: 0 auto; position: relative; }
@media screen and (max-width: 1024px) { #Container .kanpou { margin: 9.33333% 0; padding: 0 8%; } }
@media print, screen and (min-width: 1025px) { #Container .kanpou { margin-top: 44px; } }
#Container .kanpou::before { background-color: #FDFDF3; display: block; position: absolute; z-index: -2000; content: ""; }
@media screen and (max-width: 428px) { #Container .kanpou::before { width: 74.13333vw; height: 63.06667vw; top: 18.66667vw; left: 0; } }
@media screen and (min-width: 429px) and (max-width: 1024px) { #Container .kanpou::before { width: 74.13333%; height: 63.06667%; top: 21.2%; left: 0; } }
@media print, screen and (min-width: 1025px) { #Container .kanpou::before { width: 872px; height: 351px; top: 117px; left: 50%; transform: translateX(-515px); } }
#Container .kanpou::after { background-color: #FAF4F5; display: block; position: absolute; z-index: -2000; content: ""; }
@media screen and (max-width: 428px) { #Container .kanpou::after { width: 46.93333vw; height: 82.66667vw; top: 63.06667vw; right: 15.46667vw; } }
@media screen and (min-width: 429px) and (max-width: 1024px) { #Container .kanpou::after { width: 46.93333%; height: 41.33333%; top: 65.33333%; right: 12%; } }
@media print, screen and (min-width: 1025px) { #Container .kanpou::after { width: 391px; height: 222px; top: 445px; left: 50%; transform: translateX(24px); } }
#Container .kanpou > ._inner { text-align: left; }
@media screen and (max-width: 1024px) { #Container .kanpou > ._inner { padding-top: 25.33333%; } }
@media print, screen and (min-width: 1025px) { #Container .kanpou > ._inner { width: 900px; margin: 1em auto 0 auto; padding-top: 200px; } }
#Container .kanpou_heading { text-shadow: #FFFFFF 1px 0 0; line-height: 1.4; letter-spacing: .15em; margin-top:20px; }
@media screen and (max-width: 428px) { #Container .kanpou_heading { font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .kanpou_heading { font-size: 1.5em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .kanpou_heading { font-size: 1.75em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media print, screen and (min-width: 1025px) { #Container .kanpou_heading { font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 50px; padding-left: 70px; } }
#Container .kanpou_image { position: absolute; z-index: -1000; top: 0; right: 0; }
@media screen and (max-width: 1024px) { #Container .kanpou_image { width: 48%; } }
@media screen and (max-width: 1024px) { #Container .kanpou_image img { width: 100%; } }
#Container .kanpou_text { line-height: 1.8; text-align: justify; text-justify: inter-ideograph; letter-spacing: .02em; }
@media screen and (max-width: 428px) { #Container .kanpou_text { font-size: 0.75em; margin-top: 1.2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .kanpou_text { font-size: 0.875em; margin-top: 1.2em; } }
@media print, screen and (min-width: 721px) { #Container .kanpou_text { font-size: 1em; margin-top: 2.4em; } }
#Container .kanpou_text em { color: #9D2136; background: linear-gradient(0deg, #eee8aa 0 50% , transparent 50% 100%);}

#Container .symptom { max-width: 1600px; margin: 0 auto; padding-top: 1em; }
@media screen and (max-width: 1024px) { #Container .symptom { margin-top: 50px; padding: 0 20px; } }
@media print, screen and (min-width: 1025px) { #Container .symptom { margin-top: 50px; } }
#Container .symptom > ._inner { text-align: left; margin: 1em auto 0 auto; }
@media print, screen and (min-width: 1025px) { #Container .symptom > ._inner { width: 900px; } }
#Container .symptom_heading { line-height: 1.4; letter-spacing: .15em; }
@media screen and (max-width: 428px) { #Container .symptom_heading { font-size: 1.5em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .symptom_heading { font-size: 1.5em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .symptom_heading { font-size: 1.75em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; } }
@media print, screen and (min-width: 1025px) { #Container .symptom_heading { font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 20px; padding-left: 70px; } }

@media screen and (max-width: 600px) { /* SP */
  #Container .price { margin-top: 50px; padding: 0 8% 5% 8%; }
  #Container .price > ._inner { text-align: left; margin: 1em auto 0 auto; }
  #Container .price_heading { line-height: 1.4; letter-spacing: .15em; font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; margin-bottom: .5em; padding: .2em 0 .2em 2em; }

  #Container .price_compare_box { display: flex; flex-direction: column}
  #Container .price_compare_normal { position:relative; min-height:130px; max-height: 130px; background: #f5f5f5; flex: 0 1 calc(100% - 40px); margin: 0 20px 30px 20px;}
  #Container .price_compare_normal > p:first-child{ white-space: nowrap; font-size:0.9em; position: absolute; top:20%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_normal > p:last-child{ white-space: nowrap; font-size:1.3em; letter-spacing: 0.3em; position: absolute; top:50%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_reiyodo { position:relative; min-height:150px; background: linear-gradient(-135deg, #b5ab75 , #eee8aa); }
  #Container .price_compare_reiyodo > p:first-child{ white-space: nowrap; font-size:0.9em; position: absolute; top:20%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_reiyodo > p:last-child{ white-space: nowrap; font-size:1.3em; letter-spacing: 0.3em; position: absolute; top:50%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
}
@media screen and (min-width: 601px) { /* PC */
  #Container .price { padding: 30px 0; }
  #Container .price > ._inner { width: 900px; text-align: left; margin: 1em auto 0 auto; }
  #Container .price_heading { line-height: 1.4; letter-spacing: .15em; font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 20px; padding-left: 70px; }

  #Container .price_compare_box { display: flex; flex-wrap: wrap; align-items: flex-end; }
  #Container .price_compare_normal { position:relative; min-height:130px; max-height: 130px; background: #f5f5f5; flex: 0 1 calc(40% - 30px); margin-right: 30px;}
  #Container .price_compare_normal > p:first-child{ white-space: nowrap; font-size:1.0em; position: absolute; top:20%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_normal > p:last-child{ white-space: nowrap; font-size:1.5em; letter-spacing: 0.3em; position: absolute; top:50%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_reiyodo { position:relative; min-height:150px; background: linear-gradient(-135deg, #b5ab75 , #eee8aa); flex: 0 1 calc(60%);}
  #Container .price_compare_reiyodo > p:first-child{ white-space: nowrap; font-size:1.1em; position: absolute; top:20%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
  #Container .price_compare_reiyodo > p:last-child{ white-space: nowrap; font-size:1.7em; letter-spacing: 0.3em; position: absolute; top:50%; left: 50%; transform: translateX(-50%); -webkit-transform: translateX(-50%);-ms-transform: translateX(-50%);}
}

#Container .examination { max-width: 1600px; margin: 0 auto; padding-top: 1em; }
@media screen and (max-width: 1024px) { #Container .examination { margin-top: 13.33333%; padding: 0 8%; } }
@media print, screen and (min-width: 1025px) { #Container .examination { margin-top: 100px; } }
#Container .examination > ._inner { text-align: left; margin: 1em auto 0 auto; }
@media print, screen and (min-width: 1025px) { #Container .examination > ._inner { width: 900px; } }
#Container .examination_heading { line-height: 1.4; letter-spacing: .15em; }
@media screen and (max-width: 428px) { #Container .examination_heading { font-size: 1.3125em; letter-spacing: .05em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .examination_heading { font-size: 1.5em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media screen and (min-width: 721px) and (max-width: 1024px) { #Container .examination_heading { font-size: 1.75em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 1.5em; padding: .2em 0 .2em 2em; } }
@media print, screen and (min-width: 1025px) { #Container .examination_heading { font-size: 2.25em; background: url("../images/mark-heading.svg") no-repeat 0 50%; background-size: 44px; margin-bottom: 50px; padding-left: 70px; } }
#Container .examination_text { line-height: 1.8; text-align: justify; text-justify: inter-ideograph; letter-spacing: .02em; }
@media screen and (max-width: 428px) { #Container .examination_text { font-size: 0.75em; margin-top: 1.2em; } }
@media screen and (min-width: 429px) and (max-width: 720px) { #Container .examination_text { font-size: 0.875em; margin-top: 1.2em; } }
@media print, screen and (min-width: 721px) { #Container .examination_text { font-size: 1em; margin-top: 2.4em; } }
#Container .examination_text em { color: #9D2136; }
#Container .examination_button { text-align: center; background-color: #F4F3C3; position: relative; }
@media screen and (max-width: 1024px) { #Container .examination_button { width: 87.30159%; margin: 2em auto 0 auto; } }
@media print, screen and (min-width: 1025px) { #Container .examination_button { width: 600px; margin: 4em auto 0 auto; } }
body:not([data-device="touchDevice"]) #Container .examination_button:hover { opacity: .7; transition: 400ms; }
#Container .examination_button::after { border: 1px solid #9D2136; width: calc(100% - 30px); height: calc(100% - 30px); position: absolute; top: 50%; left: 50%; content: ""; transform: translate(-50%, -50%); }
#Container .examination_button a { font-size: 1.75em; color: #9D2136; line-height: 1; text-decoration: none; letter-spacing: .3em; display: block; position: relative; z-index: 2000; }
@media screen and (max-width: 720px) { #Container .examination_button a { font-size: 1.3125em; padding: 1.8em 1em 1.8em 1.3em; } }
@media print, screen and (min-width: 721px) { #Container .examination_button a { font-size: 1.75em; padding: 1.2em 1em 1.2em 1.3em; } }
#Container .examination_button a::before { background-color: #F4F3C3; width: 100%; height: 1em; position: absolute; z-index: -1000; top: 50%; left: 0; content: ""; transform: translateY(-50%); }
#Container .examination_note { text-align: center; }
@media screen and (max-width: 720px) { #Container .examination_note { margin-top: .8em; } }
@media print, screen and (min-width: 721px) { #Container .examination_note { margin-top: 1.5em; } }
#Container .examination_note small { font-size: 0.75em; line-height: 1.4; letter-spacing: .05em; }
@media screen and (max-width: 1024px) { #Container .examination_note small { text-align: left; margin: 0 auto; display: inline-block; } }

#Container .examination_caution { font-size:1.1em; margin-bottom:30px; line-height: 1.8; text-align: left; letter-spacing: .02em; }
@media screen and (max-width: 720px) { #Container .examination_caution { text-align: left; font-size: 0.9em;} }

#Container .button-contact { text-align: center; background-color: #9D2136; margin: 1em auto 0 auto; position: relative; }
@media screen and (max-width: 1024px) { #Container .button-contact { width: 87.30159%; } }
@media print, screen and (min-width: 1025px) { #Container .button-contact { width: 600px; } }
body:not([data-device="touchDevice"]) #Container .button-contact:hover { opacity: .7; transition: 400ms; }
#Container .button-contact::after { border: 1px solid #F4F3C3; width: calc(100% - 30px); height: calc(100% - 30px); position: absolute; top: 50%; left: 50%; content: ""; transform: translate(-50%, -50%); }
#Container .button-contact a { color: #F4F3C3; line-height: 1; text-decoration: none; letter-spacing: .3em; display: block; position: relative; z-index: 2000; }
@media screen and (max-width: 720px) { #Container .button-contact a { font-size: 1.2em; padding: 1.8em 1em 1.8em 1.3em; } }
@media print, screen and (min-width: 721px) { #Container .button-contact a { font-size: 1.75em; padding: 1.2em 1em 1.2em 1.3em; } }
#Container .button-contact a::before { background-color: #9D2136; width: 100%; height: 1em; position: absolute; z-index: -1000; top: 50%; left: 0; content: ""; transform: translateY(-50%); }

.recommend{
  position: relative;
}

.recommend::after{
  position: absolute;
  content: "";
  background-image: url(../images/icon-star.png);
  background-size: 100%;
  background-repeat: no-repeat;
  width: 20px;
  height: 20px;
  left: -8px;
  top: -8px;
  margin: auto;
}

footer{
  font-size:0.8em;
  padding: 5% 5% 2.5%;
  background: #f4f1de;
  text-align: center;
}
footer a{
  color: #000000;
  text-decoration: underline;
}

.footer_companyinfo{
  margin-bottom:10%;
}

.footer_companyinfo p{
  padding: 2.5%;
  margin-bottom:2.5%;
  background: #f2edd0;
  line-height: 2.0em;
}
.footer_copyright{
  line-height: 2.0em;
}
.footer_copyright span{
  font-size: 0.8em;
}
.footer_copyright span a{
  font-size: 0.8em;
}

.entry-supervision{
  padding: 10% 5%;
  background: #F0F0EE;
}
.entry-supervision div:nth-child(1){
  font-size: 1.5em;
  text-align: center;
  letter-spacing: 0.3em;
}
.entry-supervision div:nth-child(2){
  padding: 2.5% 0;
  font-size: 1.2em;
  text-align: center;
}
.entry-supervision div:nth-child(3){
  padding:0 25%;
}
.entry-supervision div:nth-child(3) img{
  width:100%;
}
.entry-supervision div:nth-child(4){
  padding-top: 5%;
  font-size:0.8em;
  line-height: 2.0em;
  text-align: left;
}

.service-entry-tempcaution{
  color: #9D2136;
  font-size:1.1em;
  padding:7.5% 0;
  line-height: 1.5em;
}

/* NAYAMI LIST START */
.nayami-list{
  text-align: center;
  padding: 5%;
}
.nayami-caption{
  text-align: left;
  margin: 20px 0;
  font-size: 1em;
  padding: 20px;
  background: #f5f5f5;
  border-radius: 10px;
  line-height: 1.5em;
}
.nayami-caption span{
  font-weight: bold;
  color: #9D2136;
  background: linear-gradient(0deg, #eee8aa 0 50%, transparent 50% 100%);
}
.nayami-caption-icon{
  text-align: center;
}
.nayami-content{
  margin-bottom: 20px;
  text-align: left;
  position: relative;
}
.nayami-content .toggle-btn{
  position: relative;
  background: #f5f5f5;
  color: #000000;
  padding: 20px 10px 20px 70px;
  font-size:1.2em;
  border-radius: 0 0 10px 10px;
  border-top: solid #f5f5f5 5px;
}
.nayami-content .icon{
  position: absolute;
  color: #000000;
  left: 10px;
  top: 10px;
  z-index: 100;
}
.nayami-content .toggle-btn.is-active{
  background: #f5f5f5;
}
.nayami-content .toggle-btn:hover{
  color: #000000;
  background: #f5f5f5;
}
.nayami-content .toggle-panel-content{
  background: #f5f5f5;
  font-size:0.9em;
  line-height: 1.6em;
  padding: 10px;
}
.nayami-content .toggle-panel-content .nayami-icon a{
  display: block;
  background: #FFFFFF;
  padding: 15px;
  margin-bottom: 10px;
  text-decoration: underline;
  position: relative;
  font-size:1.1em;
  font-weight: bold;
  color:#000000;
}
.nayami-content .toggle-panel-content .nayami-icon a:after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 3px #333;
  border-right: solid 3px #333;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto 0;
  transform: rotate(45deg);
}

.nayami-content .toggle-panel-content .nayami-syorei{
  text-align: center;
  margin: 10px 0;
  padding: 10px 0;
  background: #FFFFFF;
}
.nayami-content .toggle-panel-content .nayami-syorei a{
  display: block;
  padding: 15px;
  margin-bottom: 10px;
  text-decoration: underline;
  position: relative;
  font-size:1.3em;
  font-weight: bold;
  color:#000000;
  line-height: 1.4em;
}
.nayami-content .toggle-panel-content .nayami-syorei a:after {
  content: '';
  width: 10px;
  height: 10px;
  border: 0;
  border-top: solid 3px #333;
  border-right: solid 3px #333;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto 0;
  transform: rotate(45deg);
}

.nayami-content .toggle-panel-content .nayami-sub-caption {
  border-radius: 10px;
  padding: 10px;
  background: #e7fcf1;
  line-height: 1.5em;
}
.nayami-content .toggle-panel-content .nayami-sub-caption .sub-icon{
  text-align: center;
  color: #049f8f;
}

@media screen and (max-width: 600px) { /* SP */
}
@media screen and (min-width: 601px) { /* PC */
  #Container .symptom > ._inner { padding: 0 15%; }
  .nayami-caption{
    padding: 30px 15%;
  }
  .nayami-content .toggle-panel-content .nayami-sub-caption {
    text-align: center;
  }
}

/* NAYAMI LIST END */

.faq{
  margin: 10% 5%;
  padding: 10% 5% 5% 5%;
  border-radius: 10px;
  background: #F5F5F5;
  text-align: left;
}
.faq > .faq-icon{
  text-align: center;
  color: #9D2136;
  font-weight: bold;
}
.faq > .faq-icon svg{
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  stroke-width: 0;
  stroke: currentColor;
  fill: currentColor;
  vertical-align: middle;
}
.faq > h3 {
  width: 100%;
  margin: 3% 0;
  font-size: 1.3em;
  text-align: center;
  position: relative;
  display: inline-block;
  margin-bottom: 1em;
}
.faq > h3:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FFFFFF;
  border-radius: 10px;
}
.faq > p{
  margin: 10% 0;
  font-size:0.9em;
  line-height: 1.6em;
}
.faq-content{
  margin-top: 5%;
  text-align: left;
}
.faq-content .toggle-btn{
  background: #FFFFFF;
  border-radius: 5px;
}
.faq-content .toggle-panel-content{
  background: #FFFFFF;
  font-size:0.9em;
  line-height: 1.6em;
}

.movie{
  padding: 10% 5%;
  background: #F5F5F5;
}
.movie > .movie-icon{
  text-align: center;
  color: #9D2136;
  font-weight: bold;
}
.movie > h3 {
  width: 100%;
  margin: 3% 0 10%;
  font-size: 1.3em;
  text-align: center;
  position: relative;
  display: inline-block;
}
.movie > h3:before {
  content: '';
  position: absolute;
  bottom: -15px;
  display: inline-block;
  width: 80px;
  height: 5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #FFFFFF;
  border-radius: 10px;
}
.movie > iframe{
  max-width: 100%;
}

@media print, screen and (min-width: 721px) { /* PC */
  .faq{
    padding: 50px 30%;
    margin: 30px 0 0 0;
  }
  .faq > .faq-icon{
    font-size: 1.3em;
  }
  .faq > h3 {
    margin: 20px 0;
    font-size:2em;
  }
  .faq > p{
    margin: 20px 0;
  }
  .faq-content{
    margin-top: 20px;
  }

  .movie{
    padding: 50px 30%;
    margin: 30px 0 0 0;
  }
  .movie > .movie-icon{
    font-size: 1.3em;
  }
  .movie > h3 {
    margin: 20px 0 50px;
    font-size:2em;
  }

  .footer_companyinfo{
    margin-bottom:0;
  }
  .footer_companyinfo p{
    padding:0;
    margin-bottom:10px;
  }
  .entry-supervision{
    padding: 2.5% 30%;
    margin: 0 auto;
  }
  .entry-supervision div:nth-child(3) img{
    width: 100%;
  }
  .entry-supervision div:nth-child(4){
    font-size:1em;
  }
  .service-entry-tempcaution{
    padding:2.5% 0;
  }
}