@charset "UTF-8";
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video{
  margin:0;
  padding:0;
  border:0;
  outline:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
}

body{
  display:flex;
  flex-direction:column;
  position:relative;
  overflow-x:hidden;
  background-color:#fff;
  font-family:"Open Sans", "Noto Sans JP", sans-serif;
  font-weight:500;
  font-size:1.6rem;
  color:#1D1D1F;
  line-height:1.8;
  word-wrap:break-word;
  overflow-wrap:break-word;
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section{
  display:block;
}

nav ul{
  list-style:none;
}

blockquote, q{
  quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after{
  content:none;
}

a{
  margin:0;
  padding:0;
  font-size:100%;
  vertical-align:baseline;
  background:transparent;
  color:#0080FF;
  text-decoration:underline;
}
ins{
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}
mark{
  background-color:#ff9;
  color:#000;
  font-style:italic;
  font-weight:bold;
}

del{
  text-decoration:line-through;
}

abbr[title], dfn[title]{
  border-bottom:1px dotted;
  cursor:help;
}

table{
  border-collapse:collapse;
  border-spacing:0;
}
hr{
  display:block;
  height:1px;
  border:0;
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}

input, select{
  vertical-align:middle;
}
*,
*:before,
*:after{
  box-sizing:border-box;
}

ul[class],
ol[class]{
  list-style:none;
}

input,
button,
textarea,
select{
  font:inherit;
}

h1,
h2,
h3,
h4,
h5,
h6{
  font-weight:normal;
}
html,
body{
  height:100%;
}

html{
  font-size:62.5%;
}
body::after{
  content:"none";
  display:none;
}
body.is-scroll-lock{
  overflow:hidden;
}
a:hover, a:focus, a:active{
  text-decoration:none;
}

img{
  max-width:100%;
  height:auto;
  vertical-align:middle;
}

ol,
ul{
  list-style:none;
}

* + p:not([class]){
  margin-top:1em;
}
* + p[class^=font-]{
  margin-top:1em;
}
* + p[class^=text-]{
  margin-top:1em;
}

sub,
sup{
  position:relative;
  font-size:75%;
  line-height:0;
  vertical-align:baseline;
}

sub{
  bottom:-0.25em;
}

sup{
  top:-0.5em;
}
input[type=text], input[type=date], input[type=month], input[type=email], input[type=tel], input[type=number], input[type=password], input[type=search], textarea, select{
  box-shadow:none;
  border:1px solid #fff;
  border-radius:4px;
  width:100%;
  min-height:38px;
  font-size:1.6rem;
  color:#1D1D1F;
  transition:border-color 0.3s;
  -moz-appearance:none;
       appearance:none;
  -webkit-appearance:none;
}
input[type=text]:focus, input[type=date]:focus, input[type=month]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=number]:focus, input[type=password]:focus, input[type=search]:focus, textarea:focus, select:focus{
  outline:none;
  box-shadow:0 0 0 3px rgba(242, 32, 133, 0.2);
  border-color:#F22085;
}
input[type=text]:disabled, input[type=date]:disabled, input[type=month]:disabled, input[type=email]:disabled, input[type=tel]:disabled, input[type=number]:disabled, input[type=password]:disabled, input[type=search]:disabled, textarea:disabled, select:disabled{
  background-color:#E9EFF2;
}
input.is-invalid[type=text], input.is-invalid[type=date], input.is-invalid[type=month], input.is-invalid[type=email], input.is-invalid[type=tel], input.is-invalid[type=number], input.is-invalid[type=password], input.is-invalid[type=search], textarea.is-invalid, select.is-invalid{
  border-color:#F22085;
}
input[type=checkbox], input[type=radio]{
  clip:rect(0 0 0 0);
  position:absolute;
  overflow:hidden;
  margin:-1px;
  padding:0;
  border:0;
  width:1px;
  height:1px;
  white-space:nowrap;
  clip-path:inset(50%);
}

button{
  cursor:pointer;
}

input,
textarea{
  -webkit-appearance:none;
  -moz-appearance:none;
  appearance:none;
}

input:-moz-placeholder{
  color:#1D1D1F;
}

input:placeholder-shown{
  color:#1D1D1F;
}
input::-webkit-input-placeholder{
  color:#1D1D1F;
  opacity:1;
}
input:-moz-placeholder{
  color:#1D1D1F;
}
input::-moz-placeholder{
  color:#1D1D1F;
  opacity:1;
}
input:-ms-input-placeholder{
  color:#1D1D1F;
}
input[type=text], input[type=date], input[type=month], input[type=email], input[type=tel], input[type=number], input[type=password], input[type=search]{
  padding:0.4em 0.75em;
  line-height:1.2;
}
input[type=text]:-moz-read-only, input[type=date]:-moz-read-only, input[type=month]:-moz-read-only, input[type=email]:-moz-read-only, input[type=tel]:-moz-read-only, input[type=number]:-moz-read-only, input[type=password]:-moz-read-only, input[type=search]:-moz-read-only{
  background-color:#E9EFF2;
}
input[type=text]:read-only, input[type=date]:read-only, input[type=month]:read-only, input[type=email]:read-only, input[type=tel]:read-only, input[type=number]:read-only, input[type=password]:read-only, input[type=search]:read-only{
  background-color:#E9EFF2;
}
input[type=checkbox] + label, input[type=radio] + label{
  display:inline-block;
  position:relative;
  padding-left:2em;
  line-height:1.6;
}
input[type=checkbox] + label::before, input[type=checkbox] + label::after, input[type=radio] + label::before, input[type=radio] + label::after{
  display:block;
  position:absolute;
  top:1px;
  left:0;
  width:18px;
  height:18px;
}
input[type=checkbox]:focus + label::before, input[type=radio]:focus + label::before{
  box-shadow:0 0 0 3px rgba(242, 32, 133, 0.2);
}
input[type=checkbox]:disabled + label, input[type=radio]:disabled + label{
  opacity:0.5;
}
input[type=checkbox]:disabled + label::before, input[type=radio]:disabled + label::before{
  background-color:#E9EFF2;
}
input[type=checkbox] + label::before, input[type=checkbox] + label::after{
  border-radius:3px;
}
input[type=checkbox] + label::before{
  content:"";
  z-index:1;
  border:1px solid #E9EFF2;
  transition:opacity 0.3s;
}
input[type=checkbox] + label::after{
  content:"\f12c";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:flex;
  justify-content:center;
  align-items:center;
  opacity:0;
  z-index:2;
  background-color:#F22085;
  font-size:1.1em;
  color:#fff;
  transition:opacity 0.3s;
}
input[type=checkbox]:checked + label::before{
  border-color:#F22085;
}
input[type=checkbox]:checked + label::after{
  opacity:1;
}
input[type=checkbox].is-invalid:not(:checked) + label::before{
  border-color:#F22085;
}
input[type=radio] + label::before, input[type=radio] + label::after{
  content:"";
  border-radius:50%;
}
input[type=radio] + label::before{
  z-index:1;
  border:1px solid #E9EFF2;
  background-color:#fff;
  transition:border 0.3s;
}
input[type=radio] + label::after{
  opacity:0;
  top:5px;
  left:4px;
  z-index:2;
  width:10px;
  height:10px;
  background-color:#F22085;
  color:#fff;
  transition:opacity 0.3s;
}
input[type=radio]:checked + label::before{
  border-color:#F22085;
}
input[type=radio]:checked + label::after{
  opacity:1;
}
input[type=radio].is-invalid:not(:checked) + label::before{
  border-color:#F22085;
}
input[type=range]{
  outline:none;
  margin:0;
  border-radius:2px;
  width:100%;
  height:4px;
  background-color:#E9EFF2;
  -webkit-appearance:none;
     -moz-appearance:none;
          appearance:none;
}
input[type=range]:disabled{
  pointer-events:none;
}
input[type=range]:disabled::-webkit-slider-thumb{
  background-color:#E9EFF2 !important;
}
input[type=range]:disabled::-moz-range-thumb{
  background-color:#E9EFF2 !important;
}
input[type=range]::-webkit-slider-thumb{
  cursor:pointer;
  display:block;
  box-shadow:none;
  border:2px solid #fff;
  border-radius:50%;
  width:18px;
  height:18px;
  background-color:#F22085;
  -webkit-transition:box-shadow 0.15s;
  transition:box-shadow 0.15s;
  -webkit-appearance:none;
          appearance:none;
}
input[type=range]:active::-webkit-slider-thumb{
  box-shadow:0 0 0 2px rgba(242, 32, 133, 0.5);
}
input[type=range]::-moz-range-thumb{
  cursor:pointer;
  display:block;
  border:2px solid #fff;
  border-radius:50%;
  width:14px;
  height:14px;
  background-color:#F22085;
  -moz-transition:box-shadow 0.15s;
  transition:box-shadow 0.15s;
}
input[type=range]:active::-moz-range-thumb{
  box-shadow:0 0 0 2px rgba(242, 32, 133, 0.5);
}
input[type=range]::-moz-focus-outer{
  border:0;
}

textarea{
  resize:vertical;
  display:block;
  padding:0.4em 0.75em;
}
textarea:-moz-read-only{
  background-color:#E9EFF2;
}
textarea:read-only{
  background-color:#E9EFF2;
}

select{
  padding:0.2em 1.75em 0.2em 0.75em;
  background:#fff url(/images/common/icon-select-arrow.svg) right 0.25em center/20px 20px no-repeat;
  line-height:1.2;
}

.contact{
  padding:40px 0;
  background:#FCE8F1;
}
.contact-title{
  font-family:"Noto Sans JP", sans-serif;
  font-weight:700;
  margin-bottom:15px;
  font-size:1.8rem;
  color:#1D1D1F;
  line-height:1.5;
  text-align:center;
}
.contact-titleInner{
  padding:0 1em;
  display:flex;
  justify-content:center;
  align-items:center;
  -moz-column-gap:30px;
       column-gap:30px;
}
.contact-titleInner::before, .contact-titleInner::after{
  content:"";
  background-color:#F22085;
  width:3px;
  height:70px;
}
.contact-titleInner::before{
  transform:rotate(-20deg);
}
.contact-titleInner::after{
  transform:rotate(20deg);
}
.contact-list{
  margin-right:auto;
  margin-left:auto;
  max-width:420px;
}
.contact-item{
  box-shadow:0 10px 20px rgba(213, 70, 132, 0.1);
  padding:15px;
  border-radius:10px;
  min-height:135px;
  background-color:#fff;
  line-height:1.4;
  text-align:center;
}
.contact-item:not(:first-child){
  margin-top:15px;
}
.contact-lead{
  font-family:"Noto Sans JP", sans-serif;
  font-weight:700;
  margin-bottom:0.5em;
  font-size:1.8rem;
  text-align:center;
}
.contact-telNumber{
  font-size:3.4rem;
  font-weight:700;
  color:#1D1D1F;
  text-decoration:none;
}
.contact-telNumber::before{
  content:"\f3f2";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:inline-block;
  margin-right:0.15em;
  font-size:3.6rem;
  color:#1D1D1F;
}
.contact-telTime{
  margin-top:0.5em;
  font-size:1.3rem;
  color:#1D1D1F;
}
.contact-telNotes{
  margin-left:0.5em;
}
.contact-form{
  background-image:linear-gradient(to right, #EE1B81 0%, #FE6F96 50%, #EE1B81 100%);
  background-position:left center;
  background-size:200% auto;
  color:#fff;
  transition:background 0.3s;
  position:relative;
  font-family:"Noto Sans JP", sans-serif;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0.5em 1.75em;
  border-radius:5em;
  font-size:1.9rem;
  font-weight:700;
  text-decoration:none;
  text-align:center;
  margin-right:auto;
  margin-left:auto;
  max-width:370px;
  min-height:70px;
}
.contact-form::after{
  content:"";
  display:block;
  position:absolute;
  width:8px;
  height:8px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transition:transform 0.3s;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  right:25px;
  left:auto;
}
.contact-form::before{
  content:"\f1f0";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  margin-right:0.25em;
  font-size:2.8rem;
}

.footer{
  padding:60px 0 15px;
  background-color:#24323b;
  color:#fff;
}
.footer a{
  color:inherit;
  text-decoration:none;
}
.footer a:hover, .footer a:focus{
  text-decoration:underline;
}
.footer-bannerItem{
  display:flex;
  justify-content:center;
  align-items:center;
}
.footer-bannerItem:not(:first-child){
  margin-top:15px;
}
.footer-bannerLink{
  display:block;
  width:100%;
  text-align:center;
}
.footer-info{
  font-family:"Open Sans", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  font-size:85%;
  font-weight:400;
  text-align:center;
}
.footer-infoHeader{
  margin-top:40px;
}
.footer-logo{
  display:inline-block;
  margin-bottom:15px;
}
.footer-address p{
  margin-top:0 !important;
}
.footer-tel{
  color:#fff;
  text-decoration:none;
}
.footer-pMark{
  display:inline-block;
  margin:15px 0;
}
.footer-infoBody{
  margin-top:1rem;
}
.footer-relation{
  margin-bottom:15px;
}
.footer-relationLink{
  display:block;
}
.footer-sns{
  display:inline-flex;
  justify-content:flex-end;
  margin-bottom:15px;
}
.footer-snsItem{
  width:40px;
}
.footer-snsItem:not(:first-child){
  margin-left:20px;
}
.footer-snsLink{
  display:block;
}
.footer-list{
  text-align:center;
}
.footer-copyright{
  margin-bottom:0;
  color:#adb4b9;
}

.globalInner{
  padding:0 15px;
  transition:padding 0.3s;
}

.globalWrapper{
  flex:1;
}

.header{
  display:flex;
  align-items:center;
  position:fixed;
  top:0;
  left:0;
  z-index:1010;
  width:100%;
  transition:background-color 0.3s, box-shadow 0.3s;
  backdrop-filter:blur(20px);
}
.is-open-menu .header{
  background-color:#E9EFF2;
  transition:none;
  backdrop-filter:none;
}
.header-logo{
  padding:0 10px;
  width:calc(100% - 112px);
}
.header-logoLink{
  display:block;
  max-width:146px;
}
.header-contact, .header-btn{
  display:flex;
  justify-content:center;
  align-items:center;
  width:56px;
  height:56px;
}
.header-contact{
  background-image:linear-gradient(to right, #EE1B81 0%, #FE6F96 50%, #EE1B81 100%);
  background-position:left center;
  background-size:200% auto;
  transition:background 0.3s;
  flex-direction:column;
  color:#fff;
  text-decoration:none;
  text-align:center;
  white-space:nowrap;
}
.header-contact::before{
  content:"\f1f0";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  font-size:3.2rem;
}
.header-contactText{
  transform:scale(0.75);
  font-size:1rem;
  line-height:1.2;
}
.header-btn{
  padding:0;
  border:none;
  border-radius:0;
  width:56px;
  height:56px;
  background-color:#4D4D4D;
}
.header-btnLine{
  position:relative;
  border-radius:1.5px;
  width:26px;
  height:3px;
  background-color:#fff;
  transition:background-color 0.3s;
}
.is-open-menu .header-btnLine{
  background-color:transparent;
}
.header-btnLine::before, .header-btnLine::after{
  content:"";
  display:block;
  position:absolute;
  left:0;
  border-radius:1.5px;
  width:100%;
  height:3px;
  background-color:#fff;
  transition:transform 0.3s;
}
.header-btnLine::before{
  transform:translateY(-10px);
}
.is-open-menu .header-btnLine::before{
  transform:rotate(45deg);
}
.header-btnLine::after{
  transform:translateY(10px);
}
.is-open-menu .header-btnLine::after{
  transform:rotate(-45deg);
}
.header-menu{
  opacity:0;
  position:fixed;
  top:56px;
  left:0;
  z-index:-1;
  overflow:hidden;
  width:100%;
  height:calc(100% - 56px);
  background-color:#E9EFF2;
  transition:opacity 0.3s;
  pointer-events:none;
}
.header-menu.is-open{
  opacity:1;
  overflow-y:auto;
  pointer-events:auto;
}

.headerNav{
  padding:40px 15px;
}
.headerNav-list{
  line-height:1.4;
}
.headerNav-link{
  font-family:"Noto Sans JP", sans-serif;
  font-weight:700;
  position:relative;
  display:block;
  padding:0.85em 15px;
  min-height:50px;
  font-size:1.6rem;
  color:#1D1D1F;
  text-decoration:none;
  transition:color 0.3s;
}
.headerNav-link::after{
  content:"";
  display:block;
  position:absolute;
  width:6px;
  height:6px;
  border-top:2px solid #1D1D1F;
  border-right:2px solid #1D1D1F;
  transition:transform 0.3s;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  right:15px;
  left:auto;
}
.headerNav-linkText{
  position:relative;
}
.is-current .headerNav-linkText::before{
  content:"";
  position:absolute;
  top:50%;
  left:-15px;
  transform:translateY(-50%);
  border-radius:50%;
  width:5px;
  height:5px;
  background-color:#F22085;
}
.headerNav-contact{
  margin-top:40px;
}
.headerNav-contactItem:not(:first-child){
  margin-top:15px;
}
.headerNav-contactItem-tel{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:0.3em 2em 0.55em;
  border-radius:5em;
  min-height:70px;
  background-color:#fff;
  line-height:1.4;
  text-align:center;
}
.headerNav-telNumber{
  font-size:2.8rem;
  font-weight:700;
  color:#1D1D1F;
  text-decoration:none;
}
.headerNav-telNumber::before{
  content:"\f3f2";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  display:inline-block;
  margin-right:0.15em;
  font-size:3rem;
  color:#1D1D1F;
}
.headerNav-telTime{
  width:100%;
  font-size:1.2rem;
  color:#1D1D1F;
}
.headerNav-telNotes{
  margin-left:0.5em;
}
.headerNav-form{
  background-image:linear-gradient(to right, #EE1B81 0%, #FE6F96 50%, #EE1B81 100%);
  background-position:left center;
  background-size:200% auto;
  color:#fff;
  transition:background 0.3s;
  position:relative;
  font-family:"Noto Sans JP", sans-serif;
  display:flex;
  justify-content:center;
  align-items:center;
  padding:0.5em 1.75em;
  border-radius:5em;
  font-size:1.9rem;
  font-weight:700;
  text-decoration:none;
  text-align:center;
  min-height:70px;
}
.headerNav-form::after{
  content:"";
  display:block;
  position:absolute;
  width:8px;
  height:8px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transition:transform 0.3s;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  right:25px;
  left:auto;
}
.headerNav-form::before{
  content:"\f1f0";
  font-family:"Material Design Icons";
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  margin-right:0.25em;
  font-size:2.8rem;
}

.mv{
  display:grid;
  position:relative;
  padding-top:56px;
  background-color:#fff;
  grid-template:max-content max-content max-content/auto;
}
.mv-slider{
  width:100%;
  height:100%;
  grid-row:2/3;
  grid-column:1/2;
}
.mv-sliderList{
  width:100%;
  height:260px;
}
.mv-sliderItem{
  position:relative;
  height:100%;
  background:top center/cover no-repeat;
}
.mv-sliderItem::after{
  content:"";
  display:block;
  position:absolute;
  bottom:15px;
  left:30px;
  z-index:2;
  width:60px;
  height:140px;
  background:bottom left/contain no-repeat;
}
.mv-sliderItem-01{
  background-image:url(/images/home/mv-01-sp.jpg);
}
.mv-sliderItem-01::after{
  width:60px;
  background-image:url(/images/home/mv-logo-01.svg);
}
.mv-sliderItem-02{
  background-image:url(/images/home/mv-02-sp.jpg);
}
.mv-sliderItem-02::after{
  left:15px;
  width:100px;
  background-image:url(/images/home/mv-logo-02.png);
}
.mv-sliderItem-03{
  background-image:url(/images/home/mv-03-sp.jpg);
}
.mv-sliderItem-03::after{
  opacity:0.7;
  width:100px;
  background-image:url(/images/home/mv-logo-03-sp.svg);
}
.mv-header{
  padding:0 15px;
  width:100%;
  background-color:#fff;
  text-align:center;
  grid-row:1/2;
  grid-column:1/2;
}
.mv-headerImg{
  display:flex;
  justify-content:center;
  margin:0 auto 20px;
  max-width:300px;
  -moz-column-gap:15px;
       column-gap:15px;
}
.mv-headerImg img{
  min-width:0;
}
.mv-title{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:flex-end;
  margin:25px auto 10px;
  max-width:350px;
  font-weight:700;
  line-height:1.4;
  gap:0.5rem;
}
.mv-titleMain{
  font-size:4rem;
  white-space:nowrap;
}
.mv-titleMain:nth-of-type(2){
  font-size:2.8rem;
}
.mv-titleMain-emphasis{
  background-image:linear-gradient(to right, #EE1B81 0%, #FE6F96 50%, #EE1B81 100%);
  background-position:left center;
  background-size:200% auto;
  color:#fff;
  transition:background 0.3s;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}
.mv-titleSub{
  position:relative;
  padding-bottom:6px;
  font-size:2rem;
  white-space:nowrap;
}
.mv-titleSub::after{
  background-image:linear-gradient(to right, #EE1B81 0%, #FE6F96 50%, #EE1B81 100%);
  background-position:left center;
  background-size:200% auto;
  color:#fff;
  content:"";
  position:absolute;
  bottom:2px;
  left:0;
  transform:scale(0, 1);
  transform-origin:left bottom;
  border-radius:6px;
  width:6em;
  height:3px;
  transition:all 0.3s !important;
}
.mv-titleSub.is-show::after{
  transform:scale(1, 1);
}
.mv-footer{
  padding:15px 15px 75px;
  background-color:#fff;
  grid-row:3/4;
  grid-column:1/2;
}
.mv-lead{
  font-size:13px;
}
.mv-lead br:nth-child(2){
  display:none;
}
.mv-banner img{
  box-shadow:0 2px 4px rgba(42, 57, 122, 0.05), 0 6px 12px rgba(42, 57, 122, 0.1);
  transition:box-shadow 0.3s;
}
.mv-banner:hover img, .mv-banner:focus img{
  box-shadow:0 4px 8px rgba(42, 57, 122, 0.1), 0 10px 20px rgba(42, 57, 122, 0.2);
}
.mv-banner{
  position:absolute;
  bottom:-17vw;
  left:50%;
  z-index:1000;
  transform:translateX(-50%);
  width:calc(100% - 30px);
}
.mv-bannerInner{
  border-radius:10px;
}
.mv-bannerImg{
  border-radius:10px;
}

.mvLower{
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  padding:56px 15px 15px;
  min-height:200px;
  background-color:#FCE8F1;
}
.mvLower-title{
  line-height:1.4;
  text-align:center;
}
.mvLower-titleSub{
  margin-bottom:0.5em;
  font-size:1.4rem;
  font-weight:700;
  color:#F22085;
  letter-spacing:0.05em;
}
.mvLower-titleMain{
  font-size:3.2rem;
  font-weight:700;
  color:#1D1D1F;
}

.pageTop{
  opacity:0;
  position:fixed;
  right:15px;
  bottom:15px;
  z-index:1000;
  transition:opacity 0.3s;
  pointer-events:none;
}
.pageTop.is-show{
  opacity:1;
  pointer-events:auto;
}
.pageTop-link{
  display:flex;
  justify-content:center;
  align-items:center;
  box-shadow:0 0 10px rgba(0, 0, 0, 0.1);
  border-radius:50%;
  width:50px;
  height:50px;
  background-color:#fff;
  transition:box-shadow 0.3s;
  position:relative;
}
.pageTop-link::after{
  content:"";
  display:block;
  position:absolute;
  width:10px;
  height:10px;
  border-top:3px solid #1D1D1F;
  border-right:3px solid #1D1D1F;
  left:50%;
  transform:translateX(-50%) rotate(-45deg);
  top:auto;
  bottom:calc(50% - 6px);
  transition:border 0.3s;
}
.pageTop-link:hover, .pageTop-link:focus{
  box-shadow:0 0 10px rgba(0, 0, 0, 0.2);
}
.pageTop-link:hover::after, .pageTop-link:focus::after{
  border-color:#1D1D1F;
}

.section{
  position:relative;
  overflow-x:hidden;
  padding:60px 0;
  transition:padding 0.3s;
}
.section-problem{
  background-color:#FCE8F1;
  padding-top:29vw;
}
.section-brand{
  padding-top:30px;
}
.section-banner{
  padding-top:20px;
}
.section-voiceTop{
  overflow-y:hidden;
  padding:0 0 40px;
}
.section-voiceArticle{
  padding:40px 0;
}
.section-voiceArticle:nth-child(odd){
  background-color:#F0F7FA;
}
.section-title{
  margin-bottom:4rem;
  font-size:2.4rem;
  font-weight:700;
  line-height:1.4;
  text-align:center;
}
.section-title-notice{
  color:#F22085;
}
.section-titleNote{
  margin:calc(-4rem + 10px) 0 4rem;
}

* + .bannerList{
  margin-top:60px;
}
.title + .bannerList{
  margin-top:0;
}
.bannerList{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  row-gap:20px;
}
.bannerList-item{
  display:inline-block;
  border-radius:10px;
}
.bannerList-item-shadow img{
  box-shadow:0 2px 4px rgba(42, 57, 122, 0.05), 0 6px 12px rgba(42, 57, 122, 0.1);
  transition:box-shadow 0.3s;
}
.bannerList-item-shadow:hover img, .bannerList-item-shadow:focus img{
  box-shadow:0 4px 8px rgba(42, 57, 122, 0.1), 0 10px 20px rgba(42, 57, 122, 0.2);
}
.bannerList-img{
  border-radius:10px;
}

.brand{
  display:flex;
  flex-direction:column;
  row-gap:30px;
}
.brand-img{
  text-align:center;
}
.brand-img img{
  border-radius:10px;
}

.btn{
  -moz-appearance:none;
       appearance:none;
  -webkit-appearance:none;
  margin:0;
  border:none;
  outline:none;
  background-color:transparent;
  font-family:"Noto Sans JP", sans-serif;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  position:relative;
  z-index:1;
  overflow:hidden;
  padding:1.3em 2.5em;
  border-radius:5em;
  line-height:1.4;
  text-decoration:none;
  text-align:center;
  vertical-align:bottom;
  transition:border-color 0.3s, background-color 0.3s, color 0.3s;
  min-width:260px;
  font-size:1.6rem;
}
.btn::after{
  content:"";
  display:block;
  position:absolute;
  width:8px;
  height:8px;
  border-top:2px solid #fff;
  border-right:2px solid #fff;
  transition:transform 0.3s;
  top:50%;
  transform:translateY(-50%) rotate(45deg);
  right:1.5em;
  left:auto;
}
.btn:hover::after{
  transform:translateX(3px) translateY(-50%) rotate(45deg);
}
.btn::before{
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  transition:transform 0.3s;
  transform:scaleX(0);
  transform-origin:right center;
}
.btn:hover::before{
  transform:scaleX(1);
  transform-origin:left center;
}
.btn[target=_blank]::after, a[target=_blank] .btn::after{
  content:"\f3cc";
  font-family:"Material Design Icons";
  font-size:inherit;
  font-weight:normal;
  line-height:1;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  right:1em;
  border:none;
  width:auto;
  height:auto;
  transform:translateY(-50%) !important;
}
.btn span{
  position:relative;
  z-index:2;
}
* + .btn{
  margin-top:15px;
}
.title + .btn{
  margin-top:0;
}
.btn.is-disabled, .btn:disabled{
  opacity:0.5;
  pointer-events:none;
}
.btn-primary{
  background-color:#F22085;
  color:#fff;
}
.btn-primary::before{
  background-color:#f5509f;
  z-index:-1;
}
.btnRow{
  display:flex;
  flex-direction:column;
  flex-wrap:wrap;
  align-content:center;
  row-gap:15px;
}
.btnRow .btn{
  margin-top:0;
  max-width:260px;
}

.deliveryInfo{
  display:flex;
  flex-direction:column;
  margin:0 auto;
  max-width:280px;
  gap:20px;
}
* + .deliveryInfo{
  margin:30px auto 0;
}
.deliveryInfo-header, .deliveryInfo-footer{
  flex:1;
}
.deliveryInfo-footer{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  row-gap:1em;
}

.faqList-item{
  box-shadow:0 1px 1px rgba(42, 57, 122, 0.05), 0 3px 6px rgba(42, 57, 122, 0.1);
  margin-top:160px;
  border-radius:10px;
}
.faqList-header{
  padding:15px;
  border-radius:10px 10px 0 0;
  background-color:#F0F7FA;
}
.faqList-title{
  position:relative;
  font-size:1.8rem;
  font-weight:700;
  text-indent:30px;
}
.faqList-title::before{
  content:"";
  position:absolute;
  top:2px;
  left:0;
  width:24px;
  height:24px;
  background:url("/images/faq/icon-q.svg") no-repeat center;
  background-size:contain;
}
.faqList-title br{
  display:none;
}
.faqList-img{
  position:absolute;
  top:-135px;
  right:50%;
  z-index:-1;
  transform:translateX(50%);
  min-width:120px;
  height:auto;
}
.faqList-body{
  padding:20px 15px;
}
.faqList-text{
  position:relative;
}
.faqList-text:first-child{
  text-indent:30px;
}
.faqList-text:first-child::before{
  content:"";
  position:absolute;
  top:2px;
  left:0;
  width:24px;
  height:24px;
  background:url("/images/faq/icon-a.svg") no-repeat center;
  background-size:contain;
}
.faqList-text:not(:last-child){
  margin-bottom:1em;
}

.functionList{
  display:flex;
  flex-direction:column;
  row-gap:60px;
}
.functionList-card .functionList-img{
  box-shadow:0 1px 1px rgba(42, 57, 122, 0.05), 0 3px 6px rgba(42, 57, 122, 0.1);
  display:block;
  margin:0 auto 20px;
  border-radius:10px;
}
.functionList-item{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.functionList-title{
  margin-bottom:15px;
  font-size:2rem;
  font-weight:700;
  line-height:1.4;
}
.functionList-img{
  margin-bottom:20px;
}
.message-sub{
  margin-bottom:25px;
  font-weight:700;
  line-height:1.2;
  text-align:center;
}
.message-title{
  margin-bottom:40px;
  font-size:2.4rem;
  font-weight:700;
  line-height:1.5;
  text-align:center;
}
.message-text{
  line-height:2;
}
.message-company{
  margin-top:24px;
  text-align:right;
}

.pointList{
  display:flex;
  flex-direction:column;
  margin:0 auto 60px;
  row-gap:30px;
}
.pointList-item{
  display:flex;
  flex-direction:column;
  align-items:center;
}
.pointList-number{
  font-size:4rem;
  font-weight:700;
  color:#F22085;
  line-height:1;
}
.pointList-title{
  font-size:2rem;
  font-weight:700;
  margin-bottom:25px;
}
.pointList-img{
  width:200px;
  height:auto;
  margin-bottom:25px;
}
.pointList-text{
  line-height:1.8;
  text-align:left;
}

.priceInfo{
  margin:0 auto;
  max-width:280px;
}
* + .priceInfo{
  margin:60px auto 0;
}
.priceInfo-footer{
  text-align:right;
}

.priceList{
  display:flex;
  flex-direction:column;
  position:relative;
  font-weight:700;
  gap:4px;
}
.priceList-single .priceList-item{
  border-radius:10px !important;
}
.priceList-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  overflow:hidden;
}
.priceList-item:first-child{
  border-radius:10px 10px 0 0;
}
.priceList-item:first-child .priceText-message{
  padding:15px 15px 13px;
}
.priceList-item:last-child{
  border-radius:0 0 10px 10px;
}
.priceList-header{
  padding:15px;
  width:100%;
  background-color:#B3E8FF;
  font-weight:700;
  line-height:1.4;
  text-align:center;
}
.priceList-header-notice{
  background-color:#4D4D4D;
  color:#fff;
}
.priceList-body{
  padding:15px;
  width:100%;
  height:100%;
  background-color:#E9EFF2;
}

.priceText-list{
  padding:0 0.5em;
}
.priceText-listItem{
  display:flex;
  justify-content:space-between;
  align-items:center;
  -moz-column-gap:1em;
       column-gap:1em;
}
.priceText-listItem:not(:last-child){
  margin-bottom:1em;
}
.priceText-listText-badge{
  padding:1px 1em;
  border-radius:10vh;
  background-color:#fff;
}
.priceText-message{
  margin-top:1em;
  padding:10px 15px 13px;
  border-radius:10vh;
  min-height:50px;
  background-color:#fff;
  font-size:1.3rem;
  line-height:1.4;
  text-align:center;
}
.priceText-message br{
  display:none;
}

.problemList{
  display:flex;
  flex-direction:column;
  grid-gap:15px;
}
.problemList-item{
  box-shadow:0 1px 1px rgba(42, 57, 122, 0.05), 0 3px 6px rgba(42, 57, 122, 0.1);
  display:flex;
  flex-direction:column;
  align-items:center;
  padding:24px 20px;
  border-radius:10px;
  background-color:#fff;
  row-gap:30px;
}
.problemList-title{
  text-align:center;
  font-size:20px;
  font-weight:700;
}
.section-voiceTop .voiceArticle{
  margin-top:40px;
}
.voiceArticle-title{
  font-size:2.2rem;
  font-weight:700;
  line-height:1.5;
}
.voiceArticle-company{
  display:inline-block;
  margin-top:25px;
  font-weight:700;
}
.voiceArticle-location{
  font-size:1.3rem;
}
.voiceArticle-person{
  font-size:1.4rem;
}
.voiceArticle-mock{
  display:block;
  margin:40px auto 0;
  width:100%;
  max-width:455px;
}
.voiceArticle-body{
  margin-top:25px;
}
.voiceArticle-img{
  display:block;
  overflow:hidden;
  margin:0 auto;
  border-radius:10px;
  width:100%;
  max-width:400px;
}
.voiceArticle-imgOnlyPc{
  display:none;
}
.voiceArticle-text{
  margin-top:30px;
}
.voiceArticle-question{
  font-size:1.8rem;
  font-weight:700;
  color:#F22085;
  line-height:1.6;
  text-align:center;
}
.voiceArticle-answer + .voiceArticle-question{
  margin-top:30px;
}
.voiceArticle-answer{
  margin-top:10px;
  line-height:2;
}

.voiceProfile{
  margin:0 auto;
  padding:15px;
  border-radius:10px;
  background-color:#F0F7FA;
}
* + .voiceProfile{
  margin-top:40px;
}
.voiceProfile-img{
  float:right;
  overflow:hidden;
  margin-left:12px;
  border-radius:10px;
  width:150px;
  height:205px;
  background:url(/images/voice/img-voice-01-02-sp.jpg) center/cover;
}
.voiceProfile-body::after{
  content:"";
  display:block;
  clear:both;
}
.voiceProfile-title{
  margin-bottom:10px;
  font-size:1.6rem;
  font-weight:700;
}
.voiceProfile-text{
  font-size:1.3rem;
}

.voiceTop{
  display:flex;
  flex-direction:column-reverse;
  justify-content:space-between;
  margin:0 -15px;
  padding:40px 15px;
  min-height:320px;
  background:url(/images/voice/img-voice-01-01-sp.jpg) top center/cover;
  line-height:1.4;
}
.voiceTop-title{
  font-size:2.2rem;
  font-weight:700;
  line-height:1.7;
}
.voiceTop-title span{
  padding:4px 8px;
  background-color:#fff;
}
.voiceTop-title span:last-of-type{
  padding:4px 0 4px 8px;
}
.voiceTop-info{
  color:#fff;
}
.voiceTop-company{
  font-weight:700;
}
.voiceTop-location{
  font-size:1.3rem;
}
.voiceTop-person{
  margin-top:0.5em;
  font-size:1.4rem;
}

.bg-blue{
  background-color:#F0F7FA;
}

.mt-0{
  margin-top:0 !important;
}
* + .mt-sm{
  margin-top:15px !important;
}
* + .mt-md{
  margin-top:30px !important;
}
* + .mt-lg{
  margin-top:60px !important;
}

.text-center{
  text-align:center !important;
}
.text-right{
  text-align:right !important;
}
.text-left{
  text-align:left !important;
}
.text-notice{
  color:#F22085;
}
.text-secondary{
  color:#2A397A;
}
.text-muted{
  color:#E9EFF2;
}
small, .text-sm{
  font-size:0.875em;
}

.text-md{
  font-size:1.4rem;
}
.text-lg{
  font-size:1.38em;
}
.text-nowrap{
  white-space:nowrap;
}
.text-upper{
  text-transform:uppercase;
}
@media (min-width: 375px){
  .contact-form{
    font-size:2rem;
  }
  .headerNav-form{
    font-size:2rem;
  }}
@media (min-width: 390px){
  .mv-footer{
    padding:25px 40px 95px;
  }}
@media (min-width: 576px){
  body::after{
    content:"sm";
  }
  .contact-titleInner::before, .contact-titleInner::after{
    height:50px;
  }
  .contact-titleInner br:first-child{
    display:none;
  }
  .footer-address br{
    display:none;
  }
  .header{
    backdrop-filter:none;
  }
  .header.is-over-mv{
    backdrop-filter:blur(20px);
  }
  .mv-sliderList{
    height:360px;
  }
  .mv-sliderItem-01::after{
    width:100px;
  }
  .mv-sliderItem-02::after{
    width:140px;
  }
  .mv-sliderItem-03::after{
    width:140px;
  }
  .mv-title{
    max-width:420px;
  }
  .mv-titleMain{
    font-size:6rem;
  }
  .mv-titleMain:nth-of-type(2){
    font-size:3.6rem;
  }
  .mv-titleSub{
    padding-bottom:8px;
    font-size:2.4rem;
  }
  .mv-titleSub::after{
    bottom:5px;
  }
  .mv-footer{
    padding:25px 40px 75px;
  }
  .mv-lead{
    text-align:center;
  }
  .mv-lead br:nth-child(2){
    display:block;
  }
  .mv-banner{
    bottom:-120px;
    width:480px;
    max-width:480px;
  }
  .mvLower-titleMain br{
    display:none;
  }
  .section-problem{
    padding-top:170px;
  }
  .section-title br{
    display:none;
  }
  .section-price .section-title br:nth-child(2){
    display:block;
  }
  .section-titleNote{
    text-align:center;
  }
  .bannerList-img{
    max-width:460px;
  }
  .bannerList-single .bannerList-img{
    max-width:100%;
  }
  .deliveryInfo{
    max-width:400px;
  }
  .functionList-title br{
    display:none;
  }
  .priceInfo{
    max-width:400px;
  }
  .priceList-single{
    max-width:400px;
  }
  .priceText-listText br{
    display:block;
  }
  .voiceArticle-title br{
    display:none;
  }
  .voiceArticle-img{
    width:250px;
  }
  .voiceArticle-img-lg{
    width:360px;
  }
  .voiceArticle-question br{
    display:none;
  }
  .voiceTop{
    padding:50px;
    min-height:500px;
  }
  .voiceTop-title{
    font-size:3.2rem;
  }
  .voiceTop-title span{
    padding:8px 16px;
  }
  .voiceTop-title span:last-of-type{
    padding:8px 0 8px 16px;
  }
  .voiceTop-company{
    font-size:2rem;
  }
  .voiceTop-person{
    font-size:1.6rem;
  }}
@media (min-width: 768px){
  body::after{
    content:"md";
  }
  a[href^="tel:"]{
    pointer-events:none;
  }
  input[type=checkbox] + label::before, input[type=checkbox] + label::after, input[type=radio] + label::before, input[type=radio] + label::after{
    top:3px;
  }
  input[type=radio] + label::after{
    top:7px;
  }
  .contact-title{
    font-size:2rem;
    margin-bottom:30px;
  }
  .contact-titleInner{
    -moz-column-gap:20px;
         column-gap:20px;
  }
  .contact-list{
    display:flex;
    margin:0 -10px;
    max-width:none;
  }
  .contact-item{
    margin:0 10px;
    width:calc(50% - 20px);
  }
  .contact-item:not(:first-child){
    margin-top:0;
  }
  .contact-form:hover, .contact-form:focus{
    background-position:right center;
  }
  .contact-form{
    font-size:1.8rem;
  }
  .footer{
    padding:60px 0;
  }
  .footer-banner{
    display:flex;
    margin:0 -20px;
  }
  .footer-bannerItem{
    margin:0 20px;
    width:calc(33.3333333333% - 40px);
  }
  .footer-bannerItem:not(:first-child){
    margin-top:0;
  }
  .footer-bannerLink{
    transition:opacity 0.3s;
  }
  .footer-bannerLink:hover, .footer-bannerLink:focus{
    opacity:0.7;
  }
  .footer-info{
    position:relative;
  }
  .footer-infoHeader{
    text-align:left;
  }
  .footer-logo{
    transition:opacity 0.3s;
    margin-bottom:30px;
  }
  .footer-logo:hover, .footer-logo:focus{
    opacity:0.7;
  }
  .footer-companyName{
    margin-bottom:0.5em;
  }
  .footer-pMark{
    position:absolute;
    top:0;
    left:190px;
    margin:0;
  }
  .footer-infoBody{
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    align-content:space-between;
    margin-left:auto;
    width:70%;
  }
  .footer-relationLink{
    transition:opacity 0.3s;
  }
  .footer-relationLink:hover, .footer-relationLink:focus{
    opacity:0.7;
  }
  .footer-sns{
    margin-left:30px;
  }
  .footer-snsLink{
    transition:opacity 0.3s;
  }
  .footer-snsLink:hover, .footer-snsLink:focus{
    opacity:0.7;
  }
  .footer-list{
    display:flex;
    justify-content:flex-end;
    text-align:right;
  }
  .footer-listItem:not(:first-child){
    margin-left:1.5em;
  }
  .globalInner{
    padding:0 40px;
  }
  .globalInner-sm{
    margin:0 auto;
    max-width:1030px;
  }
  .header-logoLink{
    transition:opacity 0.3s;
  }
  .header-logoLink:hover, .header-logoLink:focus{
    opacity:0.7;
  }
  .header-contact:hover, .header-contact:focus{
    background-position:right center;
  }
  .headerNav-contact{
    display:flex;
    justify-content:space-between;
  }
  .headerNav-contactItem{
    width:calc(50% - 5px);
  }
  .headerNav-contactItem:not(:first-child){
    margin-top:0;
  }
  .headerNav-contactItem-tel{
    min-height:80px;
  }
  .headerNav-form:hover, .headerNav-form:focus{
    background-position:right center;
  }
  .headerNav-form{
    min-height:80px;
  }
  .mv-sliderList{
    height:460px;
  }
  .mv-sliderItem::after{
    width:170px;
  }
  .mv-sliderItem-01::after{
    width:120px;
  }
  .mv-sliderItem-02::after{
    width:170px;
  }
  .mv-sliderItem-03::after{
    width:190px;
  }
  .mv-header{
    padding:0 40px;
  }
  .mv-headerImg{
    margin:0 auto 40px;
    max-width:none;
    -moz-column-gap:10px;
         column-gap:10px;
  }
  .mv-titleSub{
    padding-bottom:10px;
    font-size:2.6rem;
  }
  .mv-titleSub::after{
    height:6px;
  }
  .mv-footer{
    padding:25px 40px 60px;
  }
  .mv-lead br:nth-child(2){
    display:none;
  }
  .mv-banner img{
    box-shadow:0 3px 6px rgba(42, 57, 122, 0.05), 0 10px 20px rgba(42, 57, 122, 0.1);
  }
  .mv-banner:hover img, .mv-banner:focus img{
    box-shadow:0 6px 12px rgba(42, 57, 122, 0.12), 0 15px 30px rgba(42, 57, 122, 0.2);
  }
  .mv-banner{
    bottom:-135px;
  }
  .section{
    padding:70px 0;
  }
  .section-problem{
    padding-top:180px;
  }
  .section-brand{
    padding-top:40px;
  }
  .section-message{
    background-color:#F0F7FA;
  }
  .section-banner{
    padding-top:40px;
  }
  .section-voiceArticle{
    padding:60px 0;
  }
  * + .bannerList{
    margin-top:80px;
  }
  .bannerList{
    -moz-column-gap:30px;
         column-gap:30px;
  }
  .bannerList-item-shadow img{
    box-shadow:0 3px 6px rgba(42, 57, 122, 0.05), 0 10px 20px rgba(42, 57, 122, 0.1);
  }
  .bannerList-item-shadow:hover img, .bannerList-item-shadow:focus img{
    box-shadow:0 6px 12px rgba(42, 57, 122, 0.12), 0 15px 30px rgba(42, 57, 122, 0.2);
  }
  .bannerList-img{
    transition:opacity 0.3s;
  }
  .bannerList-img:hover, .bannerList-img:focus{
    opacity:0.7;
  }
  .brand{
    row-gap:60px;
  }
  * + .btn{
    margin-top:40px;
  }
  .btn{
    font-size:1.8rem;
  }
  .btnRow{
    display:flex;
    flex-direction:row;
    justify-content:center;
    -moz-column-gap:50px;
         column-gap:50px;
  }
  .deliveryInfo{
    flex-direction:row;
    justify-content:center;
    align-items:center;
    max-width:620px;
    gap:30px;
  }
  .deliveryInfo-footer{
    text-align:left;
  }
  .faqList-item{
    box-shadow:0 1px 2px rgba(42, 57, 122, 0.05), 0 4px 8px rgba(42, 57, 122, 0.1);
    margin-top:60px;
  }
  .faqList-header{
    padding:24px 184px 24px 64px;
  }
  .faqList-title{
    font-size:2rem;
    text-indent:0;
  }
  .faqList-title::before{
    left:-46px;
    width:30px;
    height:30px;
  }
  .faqList-img{
    position:absolute;
    top:auto;
    right:-160px;
    bottom:-24px;
    z-index:1;
    transform:translate(0);
    min-width:160px;
  }
  .faqList-body{
    padding:24px 24px 24px 64px;
  }
  .faqList-text:first-child{
    text-indent:0;
  }
  .faqList-text:first-child::before{
    left:-46px;
    width:28px;
    height:28px;
  }
  .functionList-card .functionList-img{
    box-shadow:0 1px 2px rgba(42, 57, 122, 0.05), 0 4px 8px rgba(42, 57, 122, 0.1);
    margin:0 auto 30px;
  }
  .functionList-title{
    margin-bottom:30px;
    font-size:2.2rem;
  }
  .functionList-img{
    margin-bottom:30px;
  }
  .message{
    box-shadow:0 1px 1px rgba(42, 57, 122, 0.05), 0 3px 6px rgba(42, 57, 122, 0.1);
    padding:45px;
    border-radius:10px;
    background-color:#fff;
  }
  .message-sub{
    margin-bottom:20px;
    text-align:left;
  }
  .message-title{
    margin-bottom:30px;
    font-size:2.8rem;
    text-align:left;
  }
  .message br{
    display:none;
  }
  .pointList{
    max-width:950px;
    row-gap:60px;
    margin:0 auto 80px;
  }
  .pointList-item{
    display:grid;
    grid-template-columns:1fr 6.67fr 2.22fr;
    -moz-column-gap:30px;
         column-gap:30px;
  }
  .pointList-number{
    font-size:6rem;
    grid-row:1/3;
    grid-column:1/2;
  }
  .pointList-title{
    font-size:2.4rem;
    margin-bottom:15px;
    grid-row:1/2;
    grid-column:2/3;
    align-self:end;
  }
  .pointList-img{
    grid-row:1/3;
    grid-column:3/4;
    margin-bottom:0;
  }
  .pointList-text{
    grid-row:2/3;
    grid-column:2/3;
    align-self:start;
  }
  .problemList{
    display:grid;
    grid-gap:30px;
    grid-template-columns:repeat(2, 1fr);
  }
  .problemList-item{
    box-shadow:0 1px 2px rgba(42, 57, 122, 0.05), 0 4px 8px rgba(42, 57, 122, 0.1);
  }
  .voiceArticle-title{
    font-size:2.8rem;
  }
  .voiceArticle-company{
    margin-top:46px;
    font-size:2.4rem;
  }
  .voiceArticle-location{
    font-size:1.6rem;
  }
  .voiceArticle-person{
    font-size:2rem;
  }
  .voiceArticle-item-top .voiceArticle-mock{
    margin:40px auto 0;
    width:100%;
  }
  .voiceArticle-body{
    margin:20px auto 0;
    max-width:950px;
  }
  .voiceArticle-item-top{
    display:block;
  }
  .voiceArticle-question{
    text-align:left;
  }
  .voiceProfile{
    display:flex;
    flex-direction:row-reverse;
    margin:60px auto 0;
    padding:24px;
    max-width:950px;
    -moz-column-gap:20px;
         column-gap:20px;
  }
  .voiceProfile-img{
    float:none;
    margin:-24px -24px -24px 0;
    border-radius:0 10px 10px 0;
    width:25%;
    height:auto;
    background:url(/images/voice/img-voice-01-02-pc.jpg) center/cover;
  }
  .voiceProfile-body{
    width:75%;
  }
  .voiceProfile-title{
    font-size:1.8rem;
  }
  .voiceProfile-text{
    font-size:1.6rem;
  }
  .voiceTop{
    flex-direction:column;
    margin:0;
    padding:70px;
    border-radius:10px;
    min-height:580px;
    background:url(/images/voice/img-voice-01-01-pc.jpg) center/cover;
  }
  .voiceTop-title{
    font-size:3.6rem;
    line-height:2;
  }
  .voiceTop-title span{
    padding:12px 20px;
  }
  .voiceTop-title span:last-of-type{
    padding:12px 0 12px 20px;
  }
  .voiceTop-company{
    display:inline;
    font-size:2.4rem;
  }
  .voiceTop-location{
    font-size:1.6rem;
  }
  .voiceTop-person{
    font-size:2rem;
  }
  .text-md-center{
    text-align:center !important;
  }
  .text-md-right{
    text-align:right !important;
  }
  .text-md-left{
    text-align:left !important;
  }
  .text-md{
    font-size:1.6rem;
  }}
@media (min-width: 768px) and (min-width: 768px){
  .message{
    box-shadow:0 1px 2px rgba(42, 57, 122, 0.05), 0 4px 8px rgba(42, 57, 122, 0.1);
  }}
@media (min-width: 992px){
  body::after{
    content:"lg";
  }
  .contact{
    padding:60px 0;
  }
  .contact-title{
    font-size:2.4rem;
  }
  .contact-titleInner::before, .contact-titleInner::after{
    height:80px;
  }
  .contact-list{
    margin:0 -20px;
  }
  .contact-item{
    margin:0 20px;
    padding:25px;
    width:calc(50% - 40px);
  }
  .contact-lead{
    margin-bottom:0.75em;
    font-size:2rem;
  }
  .contact-telNumber{
    font-size:4rem;
    line-height:1.2;
  }
  .contact-telNumber::before{
    font-size:4rem;
  }
  .contact-telTime{
    margin-top:1em;
    font-size:1.4rem;
  }
  .contact-form{
    min-height:80px;
    font-size:2.4rem;
  }
  .contact-form::before{
    font-size:3.2rem;
  }
  .contact-form::after{
    width:10px;
    height:10px;
  }
  .footer-info{
    display:flex;
    justify-content:space-between;
    margin-top:60px;
  }
  .footer-infoHeader{
    margin-top:0;
  }
  .footer-address{
    display:flex;
  }
  .footer-address p{
    margin-right:1em;
  }
  .footer-infoBody{
    margin-top:0;
    width:50%;
  }
  .globalInner-sm{
    max-width:1030px;
  }
  .header-logo{
    padding:0 15px;
    width:220px;
  }
  .header-logoLink{
    max-width:100%;
  }
  .header-contact, .header-btn{
    display:none;
  }
  .header-menu{
    display:block !important;
    opacity:1;
    position:static;
    z-index:1010;
    width:calc(100% - 220px);
    height:100%;
    background-color:transparent;
    pointer-events:auto;
  }
  .headerNav{
    display:flex;
    justify-content:flex-end;
    padding:0;
    height:100%;
  }
  .headerNav-list{
    display:flex;
  }
  .headerNav-link{
    display:flex;
    justify-content:center;
    align-items:center;
    padding:8px;
    height:100%;
    min-height:auto;
    text-align:center;
  }
  .headerNav-link::after{
    content:none;
  }
  .headerNav-link:hover, .headerNav-link:focus{
    color:#F22085;
  }
  .is-current .headerNav-linkText::before{
    top:auto;
    bottom:-8px;
    left:50%;
    transform:translateX(-50%);
    width:6px;
    height:6px;
  }
  .headerNav-contact{
    margin-top:0;
    padding:15px 0;
  }
  .headerNav-contactItem{
    width:auto;
  }
  .headerNav-contactItem-tel{
    padding:0.5em 10px 0.8em;
    min-height:70px;
    background-color:transparent;
  }
  .headerNav-contactItem-form{
    padding-right:15px;
    padding-left:5px;
  }
  .headerNav-telNumber{
    font-size:1.8rem;
  }
  .headerNav-telNumber::before{
    font-size:2rem;
  }
  .headerNav-telTime{
    margin-top:0.25em;
  }
  .header.is-over-mv .headerNav-telTime{
    background-color:transparent;
  }
  .headerNav-telNotes{
    display:none;
  }
  .headerNav-form{
    padding-right:1em;
    padding-left:1em;
    width:160px;
    min-height:70px;
    font-size:1.6rem;
  }
  .headerNav-form::before{
    font-size:2.2rem;
  }
  .headerNav-form::after{
    content:none;
  }
  .headerNav-formText{
    display:none;
  }
  .mv{
    padding-top:0;
    grid-template:max-content max-content/520px auto;
  }
  .mv-slider{
    grid-row:1/3;
    grid-column:2/3;
  }
  .mv-sliderList{
    height:100%;
  }
  .mv-sliderItem::after{
    right:70px;
    bottom:40px;
    left:auto;
  }
  .mv-sliderItem-01{
    background-image:url(/images/home/mv-01-pc.jpg);
  }
  .mv-sliderItem-01::after{
    width:140px;
  }
  .mv-sliderItem-02{
    background-image:url(/images/home/mv-02-pc.jpg);
  }
  .mv-sliderItem-02::after{
    width:210px;
  }
  .mv-sliderItem-03{
    background-image:url(/images/home/mv-03-pc.jpg);
  }
  .mv-sliderItem-03::after{
    width:240px;
    background-image:url(/images/home/mv-logo-03-pc.svg);
  }
  .mv-header{
    padding:100px 40px 0 70px;
    text-align:left;
    grid-row:1/2;
    grid-column:1/2;
  }
  .mv-headerImg{
    margin:0 0 40px;
    -moz-column-gap:20px;
         column-gap:20px;
  }
  .mv-title{
    justify-content:start;
    margin:60px auto 28px;
    max-width:440px;
    row-gap:5px;
  }
  .mv-footer{
    padding:0 40px 75px 70px;
    grid-row:2/3;
    grid-column:1/2;
  }
  .mv-lead{
    font-size:16px;
    text-align:left;
  }
  .mv-banner{
    bottom:-110px;
    left:275px;
    width:410px;
  }
  .mvLower{
    padding:100px 40px 40px;
    min-height:400px;
  }
  .mvLower-titleSub{
    font-size:2rem;
  }
  .mvLower-titleMain{
    font-size:4rem;
  }
  .section{
    padding:80px 0;
  }
  .section-problem{
    padding-top:190px;
  }
  .section-brand{
    padding-top:40px;
  }
  .section-banner{
    padding-top:40px;
  }
  .section-voiceTop{
    padding:80px 0 60px;
  }
  .section-voiceArticle{
    padding:60px 0;
  }
  .section-title{
    margin-bottom:6rem;
    font-size:2.8rem;
  }
  .section-titleNote{
    margin:calc(-6rem + 10px) 0 6rem;
  }
  .functionList-card{
    flex-direction:row;
    flex-wrap:wrap;
    justify-content:center;
    gap:60px 40px;
  }
  .functionList-card .functionList-item{
    width:calc(50% - 20px);
  }
  .pointList-number{
    font-size:7.6rem;
  }
  .problemList{
    grid-template-columns:repeat(3, 1fr);
  }
  .voiceArticle-header{
    display:flex;
    align-items:center;
    -moz-column-gap:50px;
         column-gap:50px;
  }
  .voiceArticle-mock{
    margin:0 50px 0 0;
    width:40%;
  }
  .voiceArticle-item-top .voiceArticle-mock{
    margin:0 0 0 -126px;
    width:50%;
  }
  .voiceArticle-item{
    display:flex;
    align-items:center;
    -moz-column-gap:40px;
         column-gap:40px;
  }
  * + .voiceArticle-item{
    margin-top:30px;
  }
  .voiceArticle-item-reverse{
    flex-direction:row-reverse;
  }
  .voiceArticle-item-top{
    display:flex;
    -moz-column-gap:50px;
         column-gap:50px;
  }
  .voiceArticle-img{
    width:26%;
  }
  .voiceArticle-imgOnlySp{
    display:none;
  }
  .voiceArticle-imgOnlyPc{
    display:block;
  }
  .voiceArticle-text{
    flex:1;
    margin-top:0;
  }
  * + .mt-sm{
    margin-top:40px !important;
  }
  * + .mt-md{
    margin-top:60px !important;
  }
  * + .mt-lg{
    margin-top:80px !important;
  }}
@media (min-width: 1120px){
  .voiceTop{
    padding:90px;
    min-height:580px;
  }
  .voiceTop-title span:nth-of-type(2){
    padding-right:0;
  }
  .voiceTop-title span:last-of-type{
    padding:12px 0;
  }
  .voiceTop-title br:nth-of-type(2){
    display:none;
  }}
@media (min-width: 1200px){
  body::after{
    content:"xl";
  }
  .globalInner{
    margin:0 auto;
    padding:0 60px;
    max-width:1260px;
  }
  .globalInner-sm{
    max-width:1070px;
  }
  .globalInner-wide{
    max-width:none !important;
  }
  .mv{
    max-height:790px;
    grid-template:max-content max-content/620px auto;
  }
  .mv-sliderItem::after{
    right:100px;
    bottom:50px;
  }
  .mv-header{
    padding:100px 50px 0 100px;
  }
  .mv-headerImg{
    margin:0 0 45px;
  }
  .mv-titleMain{
    font-size:7.2rem;
    line-height:1.3;
  }
  .mv-titleMain:nth-of-type(2){
    font-size:7.2rem;
  }
  .mv-titleSub{
    margin-bottom:10px;
    font-size:3.2rem;
  }
  .mv-footer{
    padding:0 50px 75px 100px;
  }
  .mv-lead{
    font-size:18px;
  }
  .mv-banner{
    bottom:-135px;
    left:340px;
    width:480px;
  }
  .brand{
    flex-direction:row;
    -moz-column-gap:40px;
         column-gap:40px;
  }
  .brand-text{
    width:550px;
  }
  .brand-img{
    margin-left:-150px;
    width:700px;
  }
  .faqList-title br{
    display:block;
  }
  .priceInfo{
    max-width:100%;
  }
  .priceList{
    flex-direction:row;
  }
  .priceList-single{
    max-width:280px;
  }
  .priceList-item:first-child{
    border-radius:10px 0 0 10px;
  }
  .priceList-item:last-child{
    border-radius:0 10px 10px 0;
  }
  .priceList-item{
    flex:1;
  }
  .priceText-message{
    min-height:70px;
    font-size:1.4rem;
  }
  .priceText-message br{
    display:block;
  }
  .voiceArticle-title br{
    display:block;
  }}
@media (min-width: 1290px){
  .header-logo{
    padding:0 30px;
    width:310px;
  }
  .header-menu{
    width:calc(100% - 310px);
  }
  .headerNav-link{
    padding:15px;
    font-size:1.8rem;
  }
  .headerNav-contactItem-tel{
    padding-right:15px;
    padding-left:15px;
  }
  .headerNav-contactItem-form{
    padding-left:15px;
  }
  .headerNav-telNumber{
    font-size:2.2rem;
  }
  .headerNav-telNumber::before{
    font-size:2.6rem;
  }
  .headerNav-telTime{
    font-size:1.4rem;
  }
  .headerNav-form{
    width:200px;
    font-size:2rem;
  }
  .headerNav-form::before{
    font-size:2.6rem;
  }}
@media (min-width: 1680px){
  .mv{
    grid-template:max-content max-content/740px auto;
  }
  .mv-header{
    padding:100px 110px 0 160px;
  }
  .mv-footer{
    padding:0 110px 75px 160px;
  }
  .mv-banner{
    left:400px;
  }}