@charset "UTF-8";
.container { position: relative; margin: 0 auto; }
@media screen and (max-width: 767px) { .container { padding-left: 8px; padding-right: 8px; } }
@media screen and (min-width: 768px) { .container { width: 1120px; } }

@media screen and (max-width: 767px) { .inner { padding-left: 4px; padding-right: 4px; } }

svg .font path { fill: #4f4848; }
svg .mainfont path { fill: #f46073; }
svg .midashija path { fill: #FFF; }
svg .midashien path { fill: #FFF; stroke: #FFF; stroke-width: 2px; }

/* ================================================================== Block Style
================================================================== */
html, body { height: 100%; margin: 0; margin-top: 0 !important; -webkit-text-size-adjust: 100%; }

html { overflow-x: auto; overflow-y: scroll; }

body { font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif; color: #4f4848; letter-spacing: 0.7px; }
@media screen and (max-width: 767px) { body { line-height: 1.57; font-size: 87.5%; } }
@media screen and (min-width: 768px) { body { line-height: 1.50; font-size: 87.5%; } }

body * { word-break: break-all; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

hr { border: none; height: 2px; background: #efe0e0; margin-top: 24px; margin-bottom: 24px; }

input, select, textarea, button { font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif; }
@media screen and (max-width: 767px) { input, select, textarea, button { font-size: 14px; } }
@media screen and (min-width: 768px) { input, select, textarea, button { font-size: 14px; } }

input[type="text"], input[type="email"], input[type="tel"], textarea { background: #FFF; border: 1px solid #efe0e0; padding: 4px; -webkit-appearance: none; }
@media screen and (max-width: 767px) { input[type="text"], input[type="email"], input[type="tel"], textarea { width: 100%; } }

@media screen and (min-width: 768px) { input[type="text"], input[type="tel"] { width: 400px; } }

@media screen and (max-width: 767px) { input[name="name1"], input[name="name2"], input[name="kana1"], input[name="kana2"] { width: 49%; } }
@media screen and (min-width: 768px) { input[name="name1"], input[name="name2"], input[name="kana1"], input[name="kana2"] { width: 190px; } }

@media screen and (max-width: 767px) { input[name="name2"], input[name="kana2"] { margin-left: 2%; } }
@media screen and (min-width: 768px) { input[name="name2"], input[name="kana2"] { margin-left: 20px; } }

@media screen and (min-width: 768px) { input[type="email"], textarea { width: 900px; } }

@media screen and (max-width: 767px) { textarea { height: 120px; } }
@media screen and (min-width: 768px) { textarea { height: 180px; } }

label { position: relative; }

input[type="radio"] { opacity: 0; margin-right: 8px; }

input[type="radio"] + span { display: inline-block; width: 20px; height: 20px; border: 1px solid #efe0e0; background: #FFF; position: absolute; left: 0; border-radius: 50%; }

input[type="radio"]:checked + span::after { content: ""; display: block; position: absolute; left: 5px; top: 5px; width: 8px; height: 8px; background: #b9d352; border-radius: 50%; }

input[type="submit"] { background: #eb4f63; color: #FFF; font-weight: bold; text-align: center; border: 3px solid #FFF; box-shadow: 0.313px 1.975px 11.04px 0.96px rgba(109, 109, 109, 0.57); margin-top: 16px; cursor: pointer; border-radius: 4px; -webkit-appearance: none; }
@media screen and (max-width: 767px) { input[type="submit"] { font-size: 128.57143%; } }
@media screen and (min-width: 768px) { input[type="submit"] { font-size: 142.85714%; } }
@media screen and (max-width: 767px) { input[type="submit"] { width: 100%; padding: 8px 0; } }
@media screen and (min-width: 768px) { input[type="submit"] { width: 360px; padding: 16px 0; margin-left: 10px; margin-right: 10px; } }

.error { color: #a00; }

#wrapper { height: auto; height: 100%; min-height: 100%; position: relative; overflow: hidden; }
@media screen and (min-width: 768px) { #wrapper { min-width: 1024px; } }

#wrapper::after { position: absolute; top: 0; left: 0; content: ""; z-index: -1; width: 100%; height: 100%; display: block; }

body > #wrapper { height: auto; }

#wrapper.conf { background: #f8fbed; }

#header { z-index: 99; width: 100%; background: rgba(255, 255, 255, 0.9); }

@media screen and (max-width: 767px) { #main { padding-bottom: 40px; } }
@media screen and (min-width: 768px) { #main { padding-bottom: 176px; } }

@media screen and (max-width: 767px) { #main.main__conf { padding-bottom: 140px; } }

#footer { width: 100%; }
/*@media screen and (min-width: 768px) { #footer { position: absolute; bottom: 0; height: 120px; } } 20191112*/

@media screen and (max-width: 767px) { .footer__conf { position: absolute; bottom: 0; } }

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

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

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

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

img, svg { vertical-align: bottom; }

sub { font-size: 75.5%; vertical-align: bottom; position: relative; top: 0.1em; }

p + p { margin-top: 1em; }

.mb { margin-bottom: 1em; }

.txc { text-align: center; }

@media screen and (min-width: 768px) { .txc__pc { text-align: center; } }

.txr { text-align: right; }

.fcm { color: #f46073; }

.fwb { font-weight: bold; }

@media screen and (max-width: 767px) { .fss { font-size: 85.71429%; } }
@media screen and (min-width: 768px) { .fss { font-size: 85.71429%; } }

@media screen and (max-width: 767px) { .fsl { font-size: 114.28571%; } }
@media screen and (min-width: 768px) { .fsl { font-size: 142.85714%; } }

.bm { background: #f97284; }

.ba { background: #b9d352; }

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

.note { background: #fed3d2; text-align: center; padding: 2px 0; }
@media screen and (min-width: 768px) { .note { font-size: 128.57143%; } }
@media screen and (min-width: 768px) { .note { font-weight: bold; } }

.tel { text-align: center; padding-left: 4px; padding-right: 4px; }

.tel-link { display: block; margin: 0 auto; transition: opacity .3s; }
@media screen and (min-width: 768px) { .tel-link { width: 826px; } }
@media screen and (max-width: 767px) { .tel-link { max-width: 361px; width: 100%; } }

.tel-link-img { width: 100%; }

@media screen and (max-width: 767px) { .accordion, .notes { border: 1px solid #f97284; border-radius: 4px; background: #FFF; padding: 0 4px; } }
.accordion > dt button, .notes > dt button { line-height: 1; padding: 8px; width: 100%; color: #f46073; border: none; background: none; font-weight: bold; }
@media screen and (min-width: 768px) { .accordion > dt button, .notes > dt button { font-size: 114.28571%; } }
.accordion > dt button::before, .notes > dt button::before { content: "＋"; margin-right: 1em; }
.accordion > dt button.open::before, .notes > dt button.open::before { content: "－"; }
.accordion > dd, .notes > dd { height: 0; max-height: 0; padding: 0 12px; overflow: hidden; border-top: 1px solid rgba(249, 114, 132, 0); transition: max-height .3s; }
.accordion > dd button, .notes > dd button { padding: 0; border: none; border-bottom: 1px solid #fed3d2; background: none; font-weight: bold; color: #f46073; }
.accordion > dd.open, .notes > dd.open { height: auto; max-height: 9999px; padding-top: 12px; padding-bottom: 12px; border-top-color: #f97284; }

@media screen and (min-width: 768px) { .accordion > dt { display: none; } }
@media screen and (min-width: 768px) { .accordion > dd { height: auto; max-height: inherit; padding-left: 0; padding-right: 0; } }
@media screen and (min-width: 768px) { .accordion > dd button { display: none; } }
@media screen and (min-width: 768px) { .accordion > dd.open { border-top: none; } }

@media screen and (min-width: 768px) { .notes { visibility: visible; width: 360px; margin: 0 auto; border: 2px solid #f97284; border-radius: 4px; background: #FFF; } }

@media screen and (min-width: 768px) { .notes.open { -webkit-animation: noteswidth; -moz-animation: noteswidth; animation: noteswidth; -webkit-animation-fill-mode: forwards; -moz-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-duration: 0.3s; -ms-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: ease-out; -ms-animation-timing-function: ease-out; animation-timing-function: ease-out; -webkit-animation-delay: 0; -ms-animation-delay: 0; animation-delay: 0; -webkit-animation-iteration-count: 1; -ms-animation-iteration-count: 1; animation-iteration-count: 1; -webkit-animation-direction: "normal"; -ms-animation-direction: "normal"; animation-direction: "normal"; } }
@media screen and (min-width: 768px) { .notes.open dd { -webkit-animation: notesheight; -moz-animation: notesheight; animation: notesheight; -webkit-animation-fill-mode: forwards; -moz-animation-fill-mode: forwards; animation-fill-mode: forwards; -webkit-animation-duration: 0.3s; -ms-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: ease-out; -ms-animation-timing-function: ease-out; animation-timing-function: ease-out; -webkit-animation-delay: 0; -ms-animation-delay: 0; animation-delay: 0; -webkit-animation-iteration-count: 1; -ms-animation-iteration-count: 1; animation-iteration-count: 1; -webkit-animation-direction: "normal"; -ms-animation-direction: "normal"; animation-direction: "normal"; } }
@media screen and (max-width: 767px) { .notes.open dd { height: auto; max-height: 9999px; padding: 12px; border-top-color: #f97284; } }

@-webkit-keyframes noteswidth { 0% { width: 360px; }
  40% { width: 1072px; }
  100% { width: 1072px; } }
@-moz-keyframes noteswidth { 0% { width: 360px; }
  40% { width: 1072px; }
  100% { width: 1072px; } }
@keyframes noteswidth { 0% { width: 360px; }
  40% { width: 1072px; }
  100% { width: 1072px; } }
@-webkit-keyframes notesheight { 0% { padding: 0 24px; height: 0; max-height: 0px; }
  40% { padding: 0 24px; height: 0px; }
  100% { padding: 24px; height: 150px; max-height: 150px; } }
@-moz-keyframes notesheight { 0% { padding: 0 24px; height: 0; max-height: 0px; }
  40% { padding: 0 24px; height: 0px; }
  100% { padding: 24px; height: 150px; max-height: 150px; } }
@keyframes notesheight { 0% { padding: 0 24px; height: 0; max-height: 0px; }
  40% { padding: 0 24px; height: 0px; }
  100% { padding: 24px; height: 150px; max-height: 150px; } }
.sectiontitle { background: #f97284; }
@media screen and (max-width: 767px) { .sectiontitle { margin-top: 50px; -moz-transform: translateY(-22px); -ms-transform: translateY(-22px); -webkit-transform: translateY(-22px); transform: translateY(-22px); padding: 4px 0; } }
@media screen and (min-width: 768px) { .sectiontitle { margin-top: 64px; margin-bottom: 40px; -moz-transform: translateY(-32px); -ms-transform: translateY(-32px); -webkit-transform: translateY(-32px); transform: translateY(-32px); padding: 16px 0; margin-left: 18px; margin-right: 18px; position: relative; } }

@media screen and (min-width: 768px) { .sectiontitle::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-right-color: #f97284; border-width: 32px 18px 32px 0; left: -18px; top: 0; }
  .body__inversion .sectiontitle::before { border-color: transparent !important; }
  .body__inversion .sectiontitle::before { border-right-color: #FFF !important; } }

@media screen and (min-width: 768px) { .sectiontitle::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-left-color: #f97284; border-width: 32px 0 32px 18px; right: -18px; top: 0; }
  .body__inversion .sectiontitle::after { border-color: transparent !important; }
  .body__inversion .sectiontitle::after { border-left-color: #FFF !important; } }

.sectiontitle-inner { text-align: center; display: block; }

.sectiontitle-inner-ja { position: relative; }
@media screen and (max-width: 767px) { .sectiontitle-inner-ja { display: block; margin: 0 auto; height: 21px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja { display: inline-block; height: 32px; vertical-align: bottom; padding-right: 24px; margin-right: 12px; background: url(../images/pcmidashi.png) no-repeat right 0px top 12px; box-sizing: content-box; } }

.sectiontitle-inner-en { position: relative; }
@media screen and (max-width: 767px) { .sectiontitle-inner-en { display: block; margin: -2px auto 0; height: 21px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en { display: inline-block; height: 32px; vertical-align: bottom; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__1 { width: 157.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__1 { width: 236.25px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__2 { width: 103px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__2 { width: 154.5px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__3 { width: 65px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__3 { width: 97.5px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__4 { width: 180.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__4 { width: 270.75px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__5 { width: 98.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__5 { width: 147.75px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__6 { width: 113px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__6 { width: 169.5px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__7 { width: 198px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__7 { width: 297px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-ja__8 { width: 70.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-ja__8 { width: 105.75px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__1 { width: 83.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__1 { width: 125.25px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__2 { width: 76.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__2 { width: 114.75px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__3 { width: 99.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__3 { width: 149.25px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__4 { width: 115px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__4 { width: 172.5px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__5 { width: 98px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__5 { width: 147px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__6 { width: 27px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__6 { width: 40.5px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__7 { width: 59.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__7 { width: 89.25px; } }

@media screen and (max-width: 767px) { .sectiontitle-inner-en__8 { width: 37.5px; } }
@media screen and (min-width: 768px) { .sectiontitle-inner-en__8 { width: 56.25px; } }

h3 { font-weight: bold; color: #f46073; margin-bottom: 4px; }
@media screen and (max-width: 767px) { h3 { font-size: 114.28571%; } }
@media screen and (min-width: 768px) { h3 { font-size: 142.85714%; } }

h4 { font-weight: bold; color: #FFF; background: #f97284; line-height: 1.2; padding: 12px 0; }

.dotlist > li { line-height: 1.785; }
.dotlist > li::before, .dotlist > dt::before { content: "●"; color: #f97284; margin-right: .2em; }
.dotlist > dd { margin-left: 1.2em; margin-bottom: .5em; }

/* ================================================================== Frame Parts Style
================================================================== */
#header { position: fixed; border-top: solid #fed3d2; transition: padding-top .3s; }
@media screen and (max-width: 767px) { #header { border-top-width: 4px; padding: 8px 0 0; } }
@media screen and (min-width: 768px) { #header { border-top-width: 8px; padding: 25px 0 0; } }
@media screen and (min-width: 768px) { #header.header__small { padding: 8px 0 0; } }
@media screen and (max-width: 767px) { #header .separate { padding-bottom: 12px; border-bottom: 1px solid #efe0e0; } }
@media screen and (min-width: 768px) { #header .separate { padding-bottom: 25px; transition: padding-bottom .3s; border-bottom: 2px solid #efe0e0; display: -webkit-flex; display: flex; justify-content: center; align-items: center; }
  #header .separate > *:first-child { margin-right: auto; } }
@media screen and (min-width: 768px) { #header.header__small .separate { padding-bottom: 8px; } }
#header .header-logo { transition: width .3s; }
@media screen and (min-width: 768px) { #header .header-logo { width: 197px; } }
@media screen and (max-width: 767px) { #header .header-logo { width: 180px; margin: 0 auto; } }
@media screen and (max-width: 767px) { #header.header__small .header-logo { width: 100px; } }
#header .header-logo-link { display: block; }
#header .header-logo-link-img { width: 100%; }
#header .header-toggle { border: none; background: none; width: 32px; height: 32px; position: absolute; right: 16px; top: 5px; padding: 0; transition: width .3s; transition: height .3s; transition: top .3s; }
@media screen and (min-width: 768px) { #header .header-toggle { display: none; } }
@media screen and (max-width: 767px) { #header.header__small .header-toggle { top: 0; width: 26px; height: 26px; } }
#header .header-toggle-bar { position: absolute; top: 50%; -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); -webkit-transform: translateY(-50%); transform: translateY(-50%); }
#header .header-toggle-bar, #header .header-toggle-bar::before, #header .header-toggle-bar::after { content: ""; display: block; background: #fe919f; width: 100%; padding-top: 9%; padding-bottom: 9%; position: absolute; transition: all .3s; }
#header .header-toggle-bar::before { -moz-transform: translateY(-250%); -ms-transform: translateY(-250%); -webkit-transform: translateY(-250%); transform: translateY(-250%); }
#header .header-toggle-bar::after { -moz-transform: translateY(150%); -ms-transform: translateY(150%); -webkit-transform: translateY(150%); transform: translateY(150%); }
#header .header-toggle__open .header-toggle-bar { background: rgba(255, 255, 255, 0); }
#header .header-toggle__open .header-toggle-bar::before { -moz-transform: rotate(-45deg); -ms-transform: rotate(-45deg); -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
#header .header-toggle__open .header-toggle-bar::after { -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -webkit-transform: rotate(45deg); transform: rotate(45deg); }
@media screen and (max-width: 767px) { #header .header-nav { width: 100%; height: 0; overflow: hidden; max-height: 0; position: absolute; left: 0; top: 49px; background: #FFF; transition: max-height 0.3s; } }
@media screen and (min-width: 768px) { #header .header-nav { display: -webkit-flex; display: flex; justify-content: space-between; } }
@media screen and (max-width: 767px) { #header.header__small .header-nav { top: 34px; } }
@media screen and (max-width: 767px) { #header .header-nav__open { max-height: 500px; height: auto; } }
@media screen and (max-width: 767px) { #header .header-nav-row { border-bottom: 1px solid #efe0e0; } }
@media screen and (min-width: 768px) { #header .header-nav-row { margin-left: 32px; } }
#header .header-nav-row-link { text-decoration: none; }
@media screen and (max-width: 767px) { #header .header-nav-row-link { display: block; padding: 16px 0 16px 32px; background: url(../images/spmenu.png) no-repeat left 8px center; background-size: 14px; } }
#header .header-nav-row-link-ja { color: #4f4848; }
@media screen and (max-width: 767px) and (max-width: 767px) { #header .header-nav-row-link-ja { font-size: 114.28571%; } }

@media screen and (min-width: 768px) { #header .header-nav-row-link-ja { font-weight: bold; } }
#header .header-nav-row-link-en { display: inline-block; height: 21px; }
@media screen and (min-width: 768px) { #header .header-nav-row-link-en { display: none; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__1 { width: 83.5px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__2 { width: 76.5px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__3 { width: 99.5px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__4 { width: 115px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__5 { width: 98px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__6 { width: 27px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__7 { width: 59.5px; } }
@media screen and (max-width: 767px) { #header .header-nav-row-link-en__8 { width: 37.5px; } }

@media screen and (max-width: 767px) { #mainvisual { padding-top: 60px; } }
@media screen and (min-width: 768px) { #mainvisual { padding-top: 100px; } }
#mainvisual .maintitle { text-align: center; }
@media screen and (min-width: 768px) { #mainvisual .maintitle { background: #F6F6F6; text-align: center; } }
#mainvisual .maintitle-img { margin: 0 auto; vertical-align: bottom; width: 100%; }
@media screen and (min-width: 768px) { #mainvisual .maintitle-img { max-width: 1600px; } }
#mainvisual .langlink { text-align: center; background: #f97284; }
@media screen and (max-width: 767px) { #mainvisual .langlink { margin-bottom: 12px; padding: 4px; } }
@media screen and (min-width: 768px) { #mainvisual .langlink { margin-bottom: 56px; padding: 9px; } }
#mainvisual .langlink-link { color: #FFF; text-decoration: none; }
@media screen and (max-width: 767px) { #mainvisual .langlink-link { font-size: 100%; } }
@media screen and (min-width: 768px) { #mainvisual .langlink-link { font-size: 142.85714%; } }
#mainvisual .langlink-link:hover { text-decoration: underline; }
@media screen and (max-width: 767px) { #mainvisual .langlink-link-ja::after { content: "　"; } }
@media screen and (min-width: 768px) { #mainvisual .langlink-link-ja::after { content: "　　　"; } }
#mainvisual .mainvisual-copy { text-align: center; }
@media screen and (max-width: 767px) { #mainvisual .mainvisual-copy-text { display: block; margin: 0 auto 3px; height: 21px; } }
@media screen and (min-width: 768px) { #mainvisual .mainvisual-copy-text { height: 52px; display: inline-block; } }
@media screen and (max-width: 767px) { #mainvisual .mainvisual-copy-text__1 { width: 209.28px; } }
@media screen and (min-width: 768px) { #mainvisual .mainvisual-copy-text__1 { width: 348.8px; } }
@media screen and (max-width: 767px) { #mainvisual .mainvisual-copy-text__2 { width: 300.48px; } }
@media screen and (min-width: 768px) { #mainvisual .mainvisual-copy-text__2 { width: 500.8px; } }
@media screen and (max-width: 767px) { #mainvisual .mainvisual-copy-text__3 { width: 156.48px; } }
@media screen and (min-width: 768px) { #mainvisual .mainvisual-copy-text__3 { width: 260.8px; } }

#ouradvantage { padding-bottom: 56px; background: #fbf4fb; }
#ouradvantage .ouradvantagelist { margin-bottom: 20px; }
#ouradvantage .ouradvantagelist-row { position: relative; }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantagelist-row { padding-left: 36px; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantagelist-row { padding-left: 58px; } }
#ouradvantage .ouradvantage-num { display: inline-block; position: absolute; left: 0; }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantage-num { width: 30px; top: -4px; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantage-num { width: 47px; top: -4px; } }
#ouradvantage .ouradvantage-num-img { width: 100%; }
#ouradvantage .ouradvantage-title { font-weight: bold; }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantage-title { font-size: 121.42857%; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantage-title { font-size: 171.42857%; } }
@media screen and (max-width: 374px) { #ouradvantage .ouradvantage-title { font-size: 93.75%; } }
#ouradvantage .ouradvantage-text { margin-top: 1em; position: relative; }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantage-text { font-size: 85.71429%; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantage-text { font-size: 114.28571%; } }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantage-text { margin-left: -36px; margin-bottom: 16px; line-height: 1.4; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantage-text { margin-bottom: 32px; } }
#ouradvantage .ouradvantage-text::after { content: ""; display: block; margin: 0 auto; background: #efe0e0; }
@media screen and (max-width: 767px) { #ouradvantage .ouradvantage-text::after { height: 1px; width: 160px; margin-top: 16px; } }
@media screen and (min-width: 768px) { #ouradvantage .ouradvantage-text::after { height: 2px; width: calc(100% + 58px); margin-left: -58px; margin-top: 32px; } }

#present { padding-bottom: 80px; background: #fdf2e3; }
@media screen and (max-width: 767px) { #present { padding-bottom: 60px; } }
#present .presenttitle { background: #f59086; position: relative; }
@media screen and (max-width: 767px) { #present .presenttitle { -moz-transform: translateY(-22px); -ms-transform: translateY(-22px); -webkit-transform: translateY(-22px); transform: translateY(-22px); padding: 3px 5px 5px 30px; margin-left: 25px; height: 33px; } }
@media screen and (max-width: 767px) { #present .presenttitle { margin-left: 20px; padding-left: 23px; } }
@media screen and (min-width: 768px) { #present .presenttitle { height: 56px; margin-top: 64px; margin-bottom: 20px; -moz-transform: translateY(-32px); -ms-transform: translateY(-32px); -webkit-transform: translateY(-32px); transform: translateY(-32px); padding: 16px 0; margin-left: 50px; margin-right: 18px; position: relative; } }
#present .presenttitle .presenttitle-inner { display: block; margin: 0 auto; }
@media screen and (max-width: 767px) { #present .presenttitle .presenttitle-inner { width: 277px; } }
@media screen and (max-width: 374px) { #present .presenttitle .presenttitle-inner { width: 249.3px; } }
@media screen and (min-width: 768px) { #present .presenttitle .presenttitle-inner { width: 443.2px; height: 24px; } }
#present .presenttitle::before { position: absolute; top: 50%; content: ""; background: url(../images/present-title.png) #FFF center no-repeat; background-size: 80%; display: block; border-radius: 50%; border: 1px solid #f59086; }
@media screen and (max-width: 767px) { #present .presenttitle::before { left: -25px; margin-top: -25px; width: 50px; height: 50px; } }
@media screen and (max-width: 374px) { #present .presenttitle::before { left: -20px; margin-top: -20px; width: 40px; height: 40px; } }
@media screen and (min-width: 768px) { #present .presenttitle::before { border-width: 2px; left: -50px; margin-top: -50px; width: 100px; height: 100px; } }
@media screen and (min-width: 768px) { #present .presenttitle::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-left-color: #f59086; border-width: 28px 0 28px 18px; right: -18px; top: 0; }
  .body__inversion #present .presenttitle::after { border-color: transparent !important; }
  .body__inversion #present .presenttitle::after { border-left-color: #FFF !important; } }
#present .presentabout { text-align: center; font-weight: bold; margin-bottom: 28px; }
@media screen and (max-width: 767px) { #present .presentabout { font-size: 107.14286%; } }
@media screen and (min-width: 768px) { #present .presentabout { font-size: 200%; } }
@media screen and (min-width: 768px) { #present .presentdetail { width: 900px; margin: 0 auto; display: -webkit-flex; display: flex; } }
#present .presentimage { background: #FFF; box-shadow: 0px 0px 5.76px 0.24px rgba(254, 145, 159, 0.57); padding: 16px; }
@media screen and (max-width: 767px) { #present .presentimage { max-width: 400px; margin: 0 auto; } }
@media screen and (min-width: 768px) { #present .presentimage img { width: 430px; } }
@media screen and (max-width: 767px) { #present .presentimage img { width: 100%; } }
#present .presenttext { flex: 1; }
@media screen and (max-width: 767px) { #present .presenttext { margin-top: 12px; } }
@media screen and (min-width: 768px) { #present .presenttext { padding: 20px 0 0px 40px; } }
#present .presenttext img { width: 36px; vertical-align: middle; }
#present .presenttext-nikonikomama { margin-top: 2em; }
@media screen and (max-width: 767px) { #present .presenttext-nikonikomama { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #present .presenttext-nikonikomama { text-align: right; } }

#aboutnipt { padding-bottom: 56px; background: #f8f6ef; }
#aboutnipt .sectiontitle { margin-top: 0; }
@media screen and (min-width: 768px) { #aboutnipt .sectiontitle { margin-bottom: 0; } }
#aboutnipt .aboutnipt-main { text-align: center; margin-top: -4px; }
#aboutnipt .aboutnipt-main-text { display: inline-block; margin: 0 auto; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-main-text { height: 25px; vertical-align: bottom; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-main-text { height: 43px; } }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-main-text__1 { width: 252.5px; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-main-text__1 { width: 429.25px; } }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-main-text__2 { width: 188.5px; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-main-text__2 { width: 320.45px; } }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-main-text__3 { width: 245.5px; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-main-text__3 { width: 417.35px; } }
#aboutnipt .aboutnipt-list { display: -webkit-flex; display: flex; flex-flow: row wrap; margin: 16px -5px 12px; }
#aboutnipt .aboutnipt-list-row { background-color: #FFF; box-shadow: 0px 0px 5.76px 0.24px rgba(254, 145, 159, 0.57); text-align: center; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-list-row { width: calc(50% - 10px); margin: 5px; padding: 8px 0; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-list-row { width: calc(25% - 20px); margin: 10px; padding: 16px 0; } }
#aboutnipt .aboutnipt-list-row-text { display: block; margin: 0 auto; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-list-row-text { width: 115px; height: 34px; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-list-row-text { width: 172.5px; height: 50px; } }
#aboutnipt .aboutnipt-fig { text-align: center; display: block; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-fig { width: 100%; max-width: 340px; margin: 0 auto; margin-bottom: 24px; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-fig { width: 500px; float: left; margin-right: 32px; } }
#aboutnipt .aboutnipt-fig-img { width: 100%; }
#aboutnipt .aboutnipt-tablelabel { font-weight: bold; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-tablelabel { font-size: 114.28571%; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-tablelabel { font-size: 142.85714%; } }
#aboutnipt .aboutnipt-table__sp { width: 100%; margin-top: 16px; }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-table__sp { display: none; } }
#aboutnipt .aboutnipt-table__sp caption { font-weight: bold; }
#aboutnipt .aboutnipt-table__sp th { text-align: center; width: 50%; max-width: 150px; background: #f994a1; color: #FFF; border-bottom: 2px solid #FFF; }
#aboutnipt .aboutnipt-table__sp td { font-weight: bold; padding: 8px 1em; }
#aboutnipt .aboutnipt-table__pc { width: 584px; margin-top: 16px; margin-bottom: 4px; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-table__pc { display: none; } }
#aboutnipt .aboutnipt-table__pc thead th { text-align: center; width: 20%; background: #f994a1; color: #FFF; padding: 8px 0; }
#aboutnipt .aboutnipt-table__pc thead th:not(:last-child) { border-right: 1px solid #f8f6ef; }
#aboutnipt .aboutnipt-table__pc tbody th, #aboutnipt .aboutnipt-table__pc tbody td { border-top: 1px solid #f8f6ef; background: #FFF; text-align: center; padding: 12px 0; }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-note { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #aboutnipt .aboutnipt-note { text-align: center; font-weight: bold; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-note { text-align: right; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-point { font-size: 142.85714%; } }
@media screen and (min-width: 768px) { #aboutnipt .aboutnipt-point { margin-top: 20px; font-weight: bold; text-align: center; } }

#aboutinspection { padding-bottom: 0; background: #FFF; }
#aboutinspection .sectiontitle { margin-top: 0; }
@media screen and (max-width: 767px) { #aboutinspection .sectiontitle { margin-bottom: -12px; } }
@media screen and (min-width: 768px) { #aboutinspection .sectiontitle { margin-bottom: 0px; } }
#aboutinspection dl { background: #f8f6ef; margin-top: 12px; padding: 12px; }
@media screen and (min-width: 768px) { #aboutinspection dl { margin-left: 20px; margin-right: 20px; } }
#aboutinspection dl > dt { font-weight: bold; }
#aboutinspection .aboutinspection-cost { text-align: center; }
#aboutinspection .aboutinspection-cost-img { margin: 0 auto; width: 750px; }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-cost-img { width: 100%; max-width: 343px; } }
#aboutinspection .aboutinspection-creditcard { margin-top: 4px; text-align: center; }
#aboutinspection .aboutinspection-creditcard-img { margin: 0 auto; }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-creditcard-img { width: 207px; } }
/*@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-creditcard-img { width: 397px; } } */
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-creditcard-img { width: 100%; max-width: 280px; } }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow { margin-bottom: 24px; } }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-flow { display: -webkit-flex; display: flex; align-items: flex-start; justify-content: space-between; margin: 0 64px; } }
#aboutinspection .aboutinspection-flow-row { position: relative; }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row { display: -webkit-flex; display: flex; align-items: center; } }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-flow-row { width: 200px; } }
#aboutinspection .aboutinspection-flow-row:not(:last-child) { padding-bottom: 40px; }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-top-color: #efe0e0; border-width: 17px 22px 0 22px; bottom: 8px; left: 50%; margin-left: -22px; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { border-color: transparent !important; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { border-top-color: #FFF !important; } }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-left-color: #efe0e0; border-width: 22px 0 22px 18px; top: 100px; margin-top: -9px; right: -46px; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { border-color: transparent !important; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::before { border-left-color: #FFF !important; } }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-top-color: #FFF; border-width: 17px 22px 0 22px; bottom: 10px; left: 50%; margin-left: -22px; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { border-color: transparent !important; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { border-top-color: #FFF !important; } }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-left-color: #FFF; border-width: 22px 0 22px 18px; top: 100px; margin-top: -9px; right: -44px; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { border-color: transparent !important; }
  .body__inversion #aboutinspection .aboutinspection-flow-row:not(:last-child)::after { border-left-color: #FFF !important; } }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row-img { width: 100px; margin-right: 8px; } }
@media screen and (min-width: 768px) { #aboutinspection .aboutinspection-flow-row-img { margin-bottom: 24px; } }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row-text { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #aboutinspection .aboutinspection-flow-row-text { flex: 1; } }

#optionalinspection { padding-bottom: 60px; background: #f8f6ef; }
#optionalinspection .sectiontitle { margin-bottom: -8px; }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-main { text-align: center; } }
#optionalinspection .optionalinspection-main-text { display: block; }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-main-text { margin: 0 auto; max-width: 330px; height: 21px; } }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-main-text { width: 378px; height: 30px; } }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-tofamily { text-align: center; } }
#optionalinspection .optionalinspection-tofamily-text { display: block; }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-tofamily-text { margin: 0 auto; max-width: 295px; height: 21px; } }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-tofamily-text { width: 357px; height: 30px; } }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-infection { margin: 0 24px; } }
#optionalinspection .optionalinspection-infection > dt { background: #f97284; text-align: center; font-weight: bold; color: #FFF; }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-infection > dt { font-size: 128.57143%; } }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-infection > dt { padding: 4px 0; } }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-infection > dt { padding: 8px 0; } }
@media screen and (max-width: 767px) { #optionalinspection .optionalinspection-infection > dd { padding: 4px 0 16px; } }
@media screen and (min-width: 768px) { #optionalinspection .optionalinspection-infection > dd { box-shadow: 0px 0px 5.76px 0.24px rgba(254, 145, 159, 0.57); padding: 20px; margin-bottom: 24px; background: #FFF; } }

#attendingdoctor { padding-bottom: 0; background: #FFF; }
#attendingdoctor .sectiontitle { margin-top: -4px; }
@media screen and (min-width: 768px) { #attendingdoctor .attendingdoctor-person { display: -webkit-flex; display: flex; align-items: center; margin-bottom: 40px; } }
@media screen and (max-width: 767px) { #attendingdoctor .attendingdoctor-person-photo { text-align: center; margin-bottom: 8px; } }
@media screen and (min-width: 768px) { #attendingdoctor .attendingdoctor-person-photo { width: 240px; padding-right: 40px; } }
#attendingdoctor .attendingdoctor-person-photo-img { width: 100%; max-width: 200px; }
@media screen and (min-width: 768px) { #attendingdoctor .attendingdoctor-person-outline { flex: 1; } }
@media screen and (max-width: 767px) { #attendingdoctor .attendingdoctor-person-outline-name { text-align: center; } }
@media screen and (min-width: 768px) { #attendingdoctor .attendingdoctor-person-outline-name { margin-bottom: 8px; } }
@media screen and (max-width: 767px) { #attendingdoctor .attendingdoctor-person-outline-list { display: block; margin: 8px auto; width: 20em; } }
@media screen and (min-width: 768px) { #attendingdoctor .attendingdoctor-person-outline-list { display: -webkit-flex; display: flex; align-items: flex-start; justify-content: flex-start; margin-bottom: 8px; }
  #attendingdoctor .attendingdoctor-person-outline-list > li { margin-right: 1em; } }

#faq { padding-bottom: 60px; background: #fbf4fb; }
#faq .faq-list { height: 0; max-height: 0; overflow: hidden; }
#faq .faq-list > li > dl { margin-bottom: 12px; background: #FFF; border: 1px solid #efe0e0; }
@media screen and (max-width: 767px) { #faq .faq-list > li > dl { padding: 8px; } }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl { padding: 12px; } }
#faq .faq-list > li > dl > dt { padding-left: 28px; background: url(../images/q.png) no-repeat left center; background-size: 18px; cursor: pointer; position: relative; }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl > dt::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-top-color: #fed3d2; border-width: 10px 7px 0 7px; right: 24px; top: 50%; margin-top: -4px; }
  .body__inversion #faq .faq-list > li > dl > dt::before { border-color: transparent !important; }
  .body__inversion #faq .faq-list > li > dl > dt::before { border-top-color: #FFF !important; } }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl > dt::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-top-color: #FFF; border-width: 10px 7px 0 7px; right: 24px; top: 50%; margin-top: -6px; }
  .body__inversion #faq .faq-list > li > dl > dt::after { border-color: transparent !important; }
  .body__inversion #faq .faq-list > li > dl > dt::after { border-top-color: #FFF !important; } }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl > dt.open::before { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-bottom-color: #fed3d2; border-width: 0 7px 10px 7px; right: 24px; top: 50%; margin-top: -6px; }
  .body__inversion #faq .faq-list > li > dl > dt.open::before { border-color: transparent !important; }
  .body__inversion #faq .faq-list > li > dl > dt.open::before { border-bottom-color: #FFF !important; } }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl > dt.open::after { content: ""; display: block; width: 0; height: 0; border-style: solid; border-color: transparent; position: absolute; z-index: 1; border-bottom-color: #FFF; border-width: 0 7px 10px 7px; right: 24px; top: 50%; margin-top: -4px; }
  .body__inversion #faq .faq-list > li > dl > dt.open::after { border-color: transparent !important; }
  .body__inversion #faq .faq-list > li > dl > dt.open::after { border-bottom-color: #FFF !important; } }
#faq .faq-list > li > dl > dd { border-top: 1px solid rgba(239, 224, 224, 0); height: 0; max-height: 0; overflow: hidden; transition: max-height .3s; }
#faq .faq-list > li > dl > dd.open { border-top: 1px solid #efe0e0; height: auto; max-height: 500px; }
@media screen and (max-width: 767px) { #faq .faq-list > li > dl > dd.open { margin-top: 4px; padding-top: 4px; } }
@media screen and (min-width: 768px) { #faq .faq-list > li > dl > dd.open { margin-top: 8px; padding-top: 8px; } }
#faq .faq-list__open { height: auto; max-height: inherit; }
#faq .faq-more { margin-top: -12px; margin-bottom: 12px; color: #f46073; border: none; background: none; padding: 0; cursor: pointer; }
@media screen and (max-width: 767px) { #faq .faq-more { font-size: 114.28571%; } }

#contactus { padding-bottom: 60px; background: #f8fbed; }
@media screen and (min-width: 768px) { #contactus.contactus__conf { padding-top: 150px; } }
@media screen and (max-width: 767px) { #contactus.contactus__conf { padding-top: 100px; padding-bottom: 40px; } }
#contactus .sectiontitle { margin-top: 0; }
@media screen and (max-width: 767px) { #contactus .contactus-formblock { margin-top: 24px 12px; } }
@media screen and (min-width: 768px) { #contactus .contactus-formblock { padding: 24px; margin: 36px 24px; box-shadow: 0px 0px 5.76px 0.24px rgba(254, 145, 159, 0.57); background: #FFF; } }
#contactus .contactus-formblock dt { margin-bottom: 2px; }
@media screen and (max-width: 767px) { #contactus .contactus-formblock dd { margin-bottom: 8px; } }
@media screen and (min-width: 768px) { #contactus .contactus-formblock dd { margin-bottom: 16px; } }
@media screen and (max-width: 767px) { #contactus .contactus-formblock li { margin-bottom: 4px; } }
@media screen and (min-width: 768px) { #contactus .contactus-formblock li { margin-bottom: 8px; } }
#contactus .contactus-thanks { margin: 0 20px 48px; text-align: center; }
#contactus .contactus-thanks-img { width: 100%; max-width: 304px; }

#access .sectiontitle { margin-top: -4px; }
@media screen and (min-width: 768px) { #access .access-flex { margin: 0 46px; display: -webkit-flex; display: flex; } }
#access .access-gmap { position: relative; height: 0; overflow: hidden; }
@media screen and (max-width: 767px) { #access .access-gmap { margin: 12px; padding-top: 100%; } }
@media screen and (min-width: 768px) { #access .access-gmap { flex: 1; height: 300px; } }
#access .access-gmap iframe, #access .access-gmap object, #access .access-gmap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
@media screen and (min-width: 768px) { #access .access-outline { width: 612px; padding-left: 20px; } }
#access .access-outline-clinicname { display: block; }
@media screen and (max-width: 767px) { #access .access-outline-clinicname { border-bottom: 1px solid #efe0e0; } }
@media screen and (min-width: 768px) { #access .access-outline-clinicname { border-bottom: 2px solid #efe0e0; padding-bottom: 8px; margin-bottom: 8px; } }
#access .access-outline-addr { display: inline-block; }
@media screen and (max-width: 767px) { #access .access-outline-clinicname { max-width: 339px; height: 26px; } }
@media screen and (min-width: 768px) { #access .access-outline-clinicname { height: 48px; width: 544.6px; padding-right: 70px; } }
@media screen and (max-width: 767px) { #access .access-outline-addr__1 { width: 100%; max-width: 253px; height: 26px; } }
@media screen and (min-width: 768px) { #access .access-outline-addr__1 { height: 35px; width: 354.2px; } }
@media screen and (max-width: 767px) { #access .access-outline-addr__2 { width: 100%; max-width: 126px; height: 26px; margin-bottom: 12px; } }
@media screen and (min-width: 768px) { #access .access-outline-addr__2 { height: 35px; width: 176.4px; margin-bottom: 16px; } }
#access .access-station { display: -webkit-flex; display: flex; justify-content: flex-start; align-items: center; }
#access .access-station dt { color: #FFF; display: -webkit-flex; display: flex; justify-content: center; align-items: center; margin-bottom: 12px; }
@media screen and (max-width: 767px) { #access .access-station dt { width: 100px; height: 100px; } }
@media screen and (min-width: 768px) { #access .access-station dt { width: 140px; height: 56px; } }
@media screen and (min-width: 768px) and (min-width: 768px) { #access .access-station dt { font-size: 128.57143%; } }

#access .access-station dd { flex: 1; margin-bottom: 12px; padding-left: 12px; }
@media screen and (max-width: 767px) { #access .access-station-fss { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #access .access-station-fsl { font-size: 114.28571%; } }

#footer { background: #fed3d2; padding: 12px 0; }
@media screen and (max-width: 767px) { #footer { text-align: center; } }
@media screen and (min-width: 768px) { #footer { display: -webkit-flex; display: flex; justify-content: center; align-items: center; padding-bottom: 40px; } }
@media screen and (max-width: 767px) { #footer .footer-logo { width: 180px; margin: 0 auto; } }
@media screen and (min-width: 768px) { #footer .footer-logo { width: 240px; margin-right: 16px; } }
#footer .footer-logo-link { display: block; }
#footer .footer-contact { display: inline-block; color: #6c6c6c; }
@media screen and (max-width: 767px) { #footer .footer-contact { font-size: 85.71429%; } }
@media screen and (min-width: 768px) { #footer .footer-contact { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #footer .footer-contact { margin: 12px auto; } }
#footer .footer-contact p + p { margin-top: 0; }
#footer .footer-contact a { color: #6c6c6c; }
#footer .footer-logo-link-img { width: 100%; }
@media screen and (max-width: 767px) { #footer .copyright { font-size: 71.42857%; } }
@media screen and (min-width: 768px) { #footer .copyright { font-size: 85.71429%; } }
@media screen and (max-width: 767px) { #footer .copyright { font-weight: bold; } }
@media screen and (min-width: 768px) { #footer .copyright { width: 100%; position: absolute; text-align: center; bottom: 12px; left: 0; } }
#footer .jumptop { position: fixed; display: block; right: 5px; bottom: 10px; cursor: pointer; transition: all .3s; }
@media screen and (max-width: 767px) { #footer .jumptop { width: 46px; height: 46px; } }
@media screen and (min-width: 768px) { #footer .jumptop { width: 92px; height: 92px; } }
#footer .jumptop__hide { opacity: 0; cursor: default; }
#footer .jumptop-img { width: 100%; }

/*--- 2018.06.29 ---*/

.sectiontitle-inner-ja.sectiontitle-inner-ja__1 {
  color: #fff;
  font-size: 22px;
  font-weight: bold;
}

@media screen and (max-width: 768px){
  .sectiontitle-inner-ja.sectiontitle-inner-ja__1 {
    font-size: 14px;
  }
}

.merit-img-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 2rem;
  width: 100%;
}

@media screen and (max-width: 568px){
  .merit-img-list {
    margin-top: 1rem;
  }
}

.merit-img-list li {
  margin-bottom: 2rem;
  width: 32%;
}

.merit-img-list li:not(:last-child) {
  margin-right: 2%;
}

@media screen and (max-width: 568px){
  .merit-img-list li {
    width: 100%;
  }

  .merit-img-list li:not(:last-child) {
    margin-right: 0;
  }
}

.merit-img-list li img {
  display: block;
  width: 100%;
  height: auto;
}

.result-company-contents {
  margin-top: 30px;
}

.result-company-title {
  font-size: 18px;
  font-weight: bold;
}

.result-company-title-logo {
  display: inline-block;
  margin-left: 10px;
  width: 100px;
  height: auto;
}

.result-company-title-logo img {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

@media screen and (max-width: 568px){
  .result-company-title {
    font-size: 15px;
  }

  .result-company-title-logo {
    display: block;
    margin-left: 5px;
    width: 60px;
  }
}

.result-company-movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.result-company-movie video {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
@media screen and (max-width: 767px) { .maintitle1 { font-size: 1.2rem;font-weight: 600; } }
@media screen and (min-width: 768px) { .maintitle1 { font-size: 1.8rem;font-weight: 600; } }



.greenln {
  border-top: solid #37AB9D 7px;
}
.greenbox {
  background: linear-gradient(#4DC0B2, #37AB9D);
  height: 50px;
}
.font {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", YuGothic, "メイリオ", "Meiryo", sans-serif;
  color: #4f4848;
}
.shadow { box-shadow: 0px 4px 4px -1px rgba(0,0,0,0.4);}

.is-size-10 {font-size: 1rem;}
.is-size-12 {font-size: 1.2rem;}
.is-size-14 {font-size: 1.4rem;}
.is-size-18 {font-size: 1.8rem;}

.mb10 { margin-bottom: 10px;}
.mb20 { margin-bottom: 20px;}
.mb30 { margin-bottom: 30px;}
.mb40 { margin-bottom: 40px;}
.mb50 { margin-bottom: 50px;}
.mb60 { margin-bottom: 60px;}
.mb70 { margin-bottom: 70px;}

.mb04p { margin-bottom: 4%;}
.mb06p { margin-bottom: 6%;}
.mb08p { margin-bottom: 8%;}
.mb10p { margin-bottom: 10%;}
.mb20p { margin-bottom: 20%;}
.mb30p { margin-bottom: 30%;}

.mt10 { margin-top: 10px;}
.mt20 { margin-top: 20px;}
.mt30 { margin-top: 30px;}
.mt40 { margin-top: 40px;}
.mt50 { margin-top: 50px;}
.mt60 { margin-top: 60px;}
.mt70 { margin-top: 70px;}

.is-yellow { background-color: #FFC042;}
.is-deepgreen { background-color: #37ab9d;}
.is-lightgreen { background-color: #4dc0b2;}
.is-gray { background-color: #586365;}

/* アニメーション中のスタイル */
.v-enter-active { transition: opacity 3s;}
.v-leave-active { position :absolute;}

/* 表示アニメーション */
.v-enter { opacity: 0;}
.v-enter-to { opacity: 1;}

/* 非表示アニメーション */
.v-leave { opacity: 1;}
.v-leave-to { opacity: 0;}

.fade-enter-active, .fade-leave-active {transition: opacity .5s}
.fade-enter, .fade-leave {
  opacity: 0
}

.fix {
  position: fixed;
  top:0;
}
.pad05 {padding: 0.5rem}
.pb2p {padding-bottom: 2%}
.pb4p {padding-bottom: 4%}
.pb10p {padding-bottom: 10%}

.is-text-10 {font-size:1rem;}
.is-text-15 {font-size:1.5rem;}
.is-text-20 {font-size:2rem;}

@media (min-width: 581px) {
.sp_none {  display: block;}
.sp_view {  display: none!important;}
}
/* sp */
@media (max-width: 580px) {
	.sp_view {
		display: block;
	}
	.sp_none {
		display: none!important;
	}
}

.marker_pink {background: linear-gradient(transparent 60%, #ff666680 60%);}
.marker_water {background: linear-gradient(transparent 60%, #66ccff52 60%);}
.marker_lime {background: linear-gradient(transparent 60%, #66FFCC 60%);}

.call{
  position:fixed;
  right:5px;
  bottom:80px;
  width:46px;
  cursor: pointer;
  transition: all .3s;
}
.displayNone { opacity: 0;cursor: default;}

@keyframes RightToLeft {
  0% {
    opacity: 0;/* 透明 */
    transform: translateX(50px);/* X軸方向に50px */
  }
  100% {
    opacity: 1;/* 不透明 */
    transform: translateX(0);
  }
}
.isAnimate {
  animation-duration: 1s;/* アニメーション時間 */
  animation-name: RightToLeft;/* アニメーション名 */
}
.none {display:none;}

.modal {
  display: none;
  position: fixed;
  z-index: 1;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.modal-content {
  position: absolute;
  z-index: 1020;
  top: 150px;
  left: 0;
  right: 0;
  background: white;
  width: 100%;
  height: 400px;
  margin: auto;
  padding: 40px;
}

.modal-overlay {
  position: absolute;
  z-index: 1010;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.15);
}

.modal-close {
  position: absolute;
  z-index: 1021;
  top: 12vh;
  left: 3vw;
  color: #f97284;
  font-size: 40px;
  font-weight:bold;
  outline: none;
  border: none;
  background: transparent;
}
.modal-open{
    color: white;
    font-size: 16px;
    font-weight: bold;
    position:fixed;
    top:40%;
    left:15px;
    text-align:center;
    z-index:30;
    margin-bottom:10px;
    opacity:0.9;
    writing-mode: vertical-rl;
    padding:30px 15px;
    background:#3a84df!important;
}
@media only screen and (max-width: 767px) {
	.modal-content {width: 100%;}
        .modal-open{right:0px!important;padding:15px 2px!important;left:unset!important;};
}
@media only screen and (min-width: 768px) and (max-width:991px) {
.modal-content {width: 50%;}
	}
@media only screen and (min-width: 992px) and (max-width:1119px) {
	
.modal-content {width: 50%;}
}
@media only screen and (min-width: 1120px) {
.modal-content {width: 50%;}
	
}

@keyframes vertical {
    0% { transform:translateY(-10px); }
  100% { transform:translateY(  0px); }
}

button {
  animation: vertical 1s ease-in-out infinite alternate;
}

#toiawase{
	position:fixed;
	bottom:5px;
        left:50%;
	transform:translatex(-30vw);
	display:flex;
}
#toiawase img{margin:0 5px;}
@media only screen and (max-width: 767px) {
	#toiawase{left:0!important;transform:translatex(0)!important;bottom:0!important;}
	#toiawase img{width:50vw;margin:0!important;}
	#footer .jumptop {bottom:55px!important;}
}
@media only screen and (min-width: 768px) and (max-width:991px) {}
@media only screen and (min-width: 992px) and (max-width:1119px) {#toiawase img{width:30vw;}}
@media only screen and (min-width: 1120px) {#toiawase img{width:30vw;}}