  body{
    font-family: "Yu Mincho", "YuMincho";
  }
  li{
    list-style: none;
  }
  a{
    text-decoration:none;
  }
  img{
    max-width: 100%;
  } 
  /* フェードイン時に入るクラス */
  .problemArea, .reasonArea, .pliceArea, .contactArea, .takeCareArea, .voiceArea, .greetArea, .faqArea, .contactArea, .lastArea{
    opacity: 0;
    visibility: hidden;
    transform: translateY(30px);
    transition: opacity 1s, visibility 1s, transform 1s;
  }
  .is-fadein {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  .firstViewArea .footerArea {
    background: #f5f5f5;
  }
  .firstViewArea .footerArea .footerSection img {
    width: 22px;
    margin-right: 33px;
  }
  .firstViewArea .footerArea .footerSection p {
    line-height: 2;
  }
  .firstViewArea .footerArea .footerSection {
    background: #f5f5f5;
    padding: 60px 0;
    width: 100%;
    max-width: 368px;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: flex-start;
  }
  .firstViewArea footer {
    background: #573165;
    padding: 26px 0;
    text-align: center;
    color: #fff;
  }
  .ECM_CheckboxInput {
    padding: 0;
    display: flex;
    align-items: center;
    cursor: pointer;
  }
  .ECM_CheckboxInput-Input {
    margin: 0;
    width: 0;
    opacity: 0;
  }
  .ECM_CheckboxInput:hover > .ECM_CheckboxInput-DummyInput {
    background: #dddddd !important;
    border: solid 2px #333333;
  }
  .ECM_CheckboxInput-Input:focus + .ECM_CheckboxInput-DummyInput {
    background: #dddddd !important;
    border: solid 2px #333333;
  }
  .ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput {
    border: solid 2px #333333;
    background: #ffffff;
  }
  .ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==")
      no-repeat center;
    background-size: contain;
  }
  .ECM_CheckboxInput-DummyInput {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    width: 16px;
    height: 16px;
    border: solid 1px #333333;
    background: #ffffff;
  }
  .ECM_CheckboxInput-LabelText {
    margin-left: 12px;
    display: block;
    font-size: 16px;
  }
  .firstViewArea .lastArea .checkBoxArea p {
    font-size: 16px;
    text-align: center;
    margin-left: 10px;
  }
  .firstViewArea .lastArea .checkBoxArea {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin: 0 auto 80px;
    max-width: 420px;
    width: 100%;
  }
  .firstViewArea .lastArea .inputPair p {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .firstViewArea .lastArea .inputPair input,
  .firstViewArea .lastArea .inputPair textarea {
    font-size: 18px;
    min-height: 50px;
    padding: 16px;
    max-width: 665px;
    width: 100%;
    background: #f5f5f5;
    box-shadow: 0px 0px 12px -6px rgba(0, 0, 0, 0.6) inset;
    border: none;
  }
  .firstViewArea .lastArea .inputPair span {
    color: #a03e3e;
    font-size: 14px;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
  }
  .firstViewArea .lastArea .inputPair {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin: 0 auto 40px;
    font-size: 18px;
    max-width: 1000px;
  }
  ::placeholder {
    color: #c6c6c6;
  }
  .firstViewArea .lastArea .noticeText {
    text-align: center;
    font-size: 16px;
    margin: 90px auto 40px;
    line-height: 2;
  }
  .firstViewArea .lastArea .lineButton {
    max-width: 1000px;
    display: block;
    margin: 0 auto 145px;
  }
  .firstViewArea .lastArea {
    padding: 80px 0 0;
    background: #fff;
  }
  .firstViewArea .lastArea .lastTitle {
    padding: 0;
    margin: 0 0 80px;
    text-align: center;
    font-size: 38px;
  }
  .firstViewArea .faqArea .flowArea > img {
    margin: 24px auto 30px;
    width: 32px;
    height: 16px;
    display: block;
  }
  .firstViewArea .faqArea .flowArea .flowItem h3 span {
    font-size: 32px;
  }
  .firstViewArea .faqArea .flowArea .flowItem h3 {
    font-size: 24px;
    padding: 12px 0;
    border-bottom: solid 1px #c6c6c6;
    margin-bottom: 30px;
    color: #573165;
    display: flex;
    align-items: center;
  }
  .firstViewArea .faqArea .flowArea .flowItem p {
    font-size: 16px;
  }
  .firstViewArea .faqArea .flowArea .flowItem {
    padding: 28px 46px 38px;
    box-shadow: 3px 3px 8px 3px rgba(0, 0, 0, 0.1);
    background: #fff;
    max-width: 830px;
    margin: 0 auto;
  }
  .firstViewArea .faqArea .flowArea {
    max-width: 1000px;
    margin: 0 auto;
    background: #faf8f5;
    padding: 50px 16px;
    width: 100%;
  }
  .firstViewArea .faqArea > p {
    max-width: 800px;
    margin: 16px auto 0;
    text-align: right;
    font-size: 12px;
  }
  .firstViewArea .faqArea .qaPair .qLine span,
  .firstViewArea .faqArea .qaPair .aLine span {
    display: block;
    margin-right: 24px;
  }
  .firstViewArea .faqArea .qaPair .aLine span {
    margin-right: 24px;
  }
  .firstViewArea .faqArea .qaPair .aLine {
    background: #faf8f5;
    padding: 32px 16px 32px 60px;
    font-size: 16px;
  }
  .firstViewArea .faqArea .qaPair .qLine {
    color: #573165;
    padding: 16px 0;
    font-size: 18px;
  }
  .firstViewArea .faqArea .qaPair .qLine,
  .firstViewArea .faqArea .qaPair .aLine {
    display: flex;
  }
  .firstViewArea .faqArea .qaPair {
    max-width: 800px;
    margin: 54px auto 0;
  }
  .firstViewArea .faqArea .qLine p{
    font-family: 游ゴシック体;
  }
  .firstViewArea .faqArea {
    padding: 80px 0 80px;
    background: #fff;
  }
  .firstViewArea .faqArea .flowTitle {
    padding: 0;
    margin: 140px 0 60px;
    text-align: center;
    font-size: 38px;
    line-height: 1.8;
  }
  .firstViewArea .faqArea .faqTitle {
    padding: 0;
    margin: 0 0 78px;
    text-align: center;
    font-size: 38px;
    line-height: 1.8;
  }
  .firstViewArea .greetArea .mapArea .mapColumn div h4 {
    color: #573165;
    margin: 0;
    font-size: 18px;
    text-align: center;
    padding: 20px;
    background: #fff;
  }
  .firstViewArea .greetArea .mapArea .mapColumn div p {
    color: #fff;
    margin: 0;
    padding: 20px;
    font-size: 18px;
    text-align: center;
  }
  .firstViewArea .greetArea .mapArea .mapColumn div {
    border: solid 1px #fff;
    margin-bottom: 68px;
    max-width: 480px;
    width: 100%;
  }
  .firstViewArea .greetArea .mapArea .mapColumn {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
    max-width: 480px;
    width: 100%;
  }
  .firstViewArea .greetArea .mapArea {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1000px;
    margin: 0 auto;
  }
  .firstViewArea .greetArea .greetPair .greetSentence h3 .title {
    min-width: 120px;
  }
  .firstViewArea .greetArea .greetPair .greetSentence h3 .borderLine {
    display: block;
    height: 1px;
    background: #fff;
    width: 100%;
    max-width: 350px;
  }
  .firstViewArea .greetArea .greetPair .greetSentence h3 {
    font-size: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .firstViewArea .greetArea .greetPair .greetSentence p {
    font-size: 16px;
    margin: 40px 0;
    line-height: 1.6;
  }
  .firstViewArea .greetArea .greetPair .greetSentence .greetSentenceBox {
    font-size: 16px;
    padding: 16px;
    border: solid 1px #fff;
    line-height: 2;
  }
  .firstViewArea .greetArea .bcg {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0.1;
  }
  .firstViewArea .greetArea .greetPair .greetSentence {
    max-width: 448px;
  }
  .firstViewArea .greetArea .greetPair * {
    color: #fff;
  }
  .firstViewArea .greetArea .greetPair > img {
    max-width: 500px;
  }
  .firstViewArea .greetArea .greetPair {
    max-width: 1000px;
    margin: 0 auto 160px;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .firstViewArea .greetArea .greetVideo {
    text-align: center;
    margin-bottom: 106px;
  }
  .firstViewArea .greetArea .greetVideo video {
    max-width: 800px;
    margin: 0 auto;
  }
  .firstViewArea .greetArea .greetVideo,
  .firstViewArea .greetArea .mapArea,
  .firstViewArea .greetArea .greetPair,
  .firstViewArea .greetArea .greetTitle {
    position: relative;
    z-index: 1;
  }
  .firstViewArea .greetArea {
    padding: 82px 0 100px;
    background-color: #573165;
    position: relative;
    overflow: hidden;
  }
  .firstViewArea .greetArea .greetTitle {
    padding: 0;
    margin: 0 0 120px;
    text-align: center;
    font-size: 32px;
    line-height: 1.8;
    color: #fff;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceContents p {
    font-size: 16px;
    line-height: 1.8;
    margin-top: 28px;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceContents h3 {
    color: #573165;
    font-size: 22px;
    padding-bottom: 14px;
    border-bottom: solid 1px #c6c6c6;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceContents h3 span {
    display: block;
    background: #573165;
    color: #fff;
    font-size: 14px;
    padding: 8px 12px;
  }
  .firstViewArea .voiceArea .voiceItem {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    margin: 0 auto 60px;
    padding-right: 0px;
    padding-left: 80px;
    flex-direction: row-reverse;
    max-width: 1160px;
  }
  .firstViewArea .voiceArea .voiceItem:nth-child(2n) {
    padding-left: 0;
    padding-right: 80px;
    flex-direction: row;
  }
  .firstViewArea .voiceArea .voiceItem .pattern {
    position: absolute;
    bottom: 28px;
    left: 0;
    width: 180px;
    height: 70px;
  }
  .firstViewArea .voiceArea .voiceItem:nth-child(2n) .pattern {
    position: absolute;
    bottom: 28px;
    right: 0;
    left: initial;
    width: 180px;
    height: 70px;
  }
  .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceContents {
    margin-left: 0;
    margin-right: 20px;
  }
  .firstViewArea .voiceArea .voiceItem:last-child {
    margin-bottom: 0 !important;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceContents {
    background: #fff;
    margin-left: 20px;
    margin-right: 0;
    padding: 44px 52px;
    box-shadow: 3px 3px 8px 3px rgba(0, 0, 0, 0.1);
    min-height: 310px;
    max-width: 750px;
    max-height: 315px;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceImg {
    max-width: 310px;
  }
  .firstViewArea .voiceArea {
    padding: 64px 0 102px;
    background: #f5f5f5;
  }
  .firstViewArea .voiceArea .voiceTitle {
    padding: 0;
    margin: 0 0 120px;
    text-align: center;
    font-size: 32px;
    line-height: 1.8;
  }
  .firstViewArea .voiceArea .voiceTitle > span {
    font-size: 20px;
  }
  .firstViewArea .takeCareArea .takeCareTitle > span {
    font-size: 20px;
  }
  .firstViewArea .takeCareArea .contactComicArea {
    max-width: 860px;
    margin: 90px auto 0;
  }
  .firstViewArea .takeCareArea {
    padding: 52px 0 146px;
    background-image: url(img/takeCareBcg.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
  }
  .firstViewArea .takeCareArea .takeCareTitle {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 32px;
    line-height: 1.8;
  }
  .firstViewArea .lastArea .lastContact img,
  .firstViewArea .contactArea .contactBox .contactBoxInner a img {
    width: 5px;
    height: 10px;
  }
  .firstViewArea .lastArea .lastContact,
  .firstViewArea .contactArea .contactBox .contactBoxInner a {
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 332px;
    margin: 24px auto 0;
    background: linear-gradient(#a03e3e, #6c2424);
    padding: 26px 40px;
    color: #fff;
    font-size: 14px;
  }
  .firstViewArea .lastArea .lastContact {
    justify-content: center;
    position: relative;
    margin: 80px auto 140px;
  }
  .firstViewArea .lastArea .lastContact img {
    position: absolute;
    right: 32px;
    top: 30px;
  }
  .firstViewArea
    .contactArea
    .contactBox
    .contactBoxInner
    > .contactNumber
    .openTime {
    font-size: 10px;
    padding: 6px 14px;
    border: solid 1px #573165;
    border-radius: 16px;
  }
  .firstViewArea
    .contactArea
    .contactBox
    .contactBoxInner
    > .contactNumber
    .phoneNumber {
    font-size: 38px;
  }
  
  .firstViewArea
    .contactArea
    .contactBox
    .contactBoxInner
    > .contactNumber
    .numberIcon {
    width: 25px;
    height: 32px;
  }
  .firstViewArea .contactArea .contactBox .contactBoxInner > .contactNumber {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .firstViewArea .contactArea .contactBox .contactBoxInner > p {
    text-align: center;
    font-size: 14px;
    line-height: 1.8;
    margin: 34px 0 40px;
  }
  .firstViewArea .contactArea .contactBox .contactBoxInner h3 {
    font-size: 24px;
    text-align: center;
  }
  .firstViewArea .contactArea .contactBox .contactBoxInner {
    border: solid 1px #dbcdac;
    padding: 32px 0;
  }
  .firstViewArea .contactArea .contactBox {
    max-width: 756px;
    background: #fff;
    padding: 10px;
    margin: 70px auto 0;
  }
  .firstViewArea .contactArea .contactTitle {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 32px;
    color: #fff;
  }
  .firstViewArea .contactArea {
    min-height: 636px;
    position: relative;
    background-image: url(img/contactBcg.png);
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    padding: 74px 0 120px;
  }
  .firstViewArea .pliceArea .pliceList > p {
    font-size: 12px;
    line-height: 2;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left .box {
    max-width: 234px;
    margin: 45px auto auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left .box p {
    border: solid 1px #573165;
    padding: 6px 16px;
    font-size: 10px;
    min-height: 38px;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left .box .plice span {
    color: #573165;
    font-size: 48px;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left .box .plice {
    color: #573165;
    font-size: 22px;
    border: none;
    padding: 0;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left .sentence {
    color: #333333;
    font-size: 0.75em;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left h4 {
    font-size: 16px;
    color: #573165;
    position: relative;
    text-align: center;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left h4::before {
    content: "";
    position: absolute;
    bottom: -14px;
    width: 28px;
    height: 1px;
    background: #573165;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .firstViewArea .pliceArea .pliceAreaInner {
    max-width: 1080px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
  .firstViewArea .pliceArea {
    padding: 112px 0 174px;
    background: #faf8f5;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem {
    display: flex;
    justify-content: center;
    max-height: 240px;
    margin-bottom: 20px;
    box-shadow: 3px 3px 8px 3px rgba(0, 0, 0, 0.1);
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .right {
    max-width: 320px;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left {
    max-width: 340px;
    background: #fff;
    padding: 20px 20px 30px;
  }
  .firstViewArea .pliceArea .pliceList {
    max-width: 660px;
    width: 100%;
  }
  .sticky{
    width: 25vw;
    height: 50vh;
    position: -webkit-sticky; /* Safariに対応する */
    position: sticky; /* 要素を固定/解除する */
    top: 80px; /* 縦方向の閾値 */
    left: 0; /* 横方向の閾値 */
  }
  .firstViewArea .pliceArea .pliceTitle p {
    font-size: 14px;
    max-width: 298px;
    margin-top: 40px;
    line-height: 1.8;
  }
  .firstViewArea .pliceArea .pliceTitle h3 {
    font-size: 28px;
    color: #573165;
    line-height: 1.8;
    min-width: 224px;
  }
  .firstViewArea .pliceArea .pliceTitle h3 span {
    font-size: 40px;
    line-height: 1.2;
  }
  .firstViewArea .reasonArea .reasonItem h3 span,
  .firstViewArea .reasonArea .reasonItemRebirth h3 span {
    font-size: 40px;
    line-height: 1.2;
  }
  .firstViewArea .reasonArea .reasonItem h3 {
    font-size: 28px;
    color: #573165;
    line-height: 1.8;
    min-width: 224px;
    margin-right: 56px;
  }
  .firstViewArea .reasonArea .reasonItemRebirth h3 {
    font-size: 28px;
    color: #573165;
    line-height: 1.8;
    min-width: 224px;
    margin-left: 56px;
  }
  .firstViewArea .reasonArea .reasonItem > div > img,
  .firstViewArea .reasonArea .reasonItemRebirth > div > img {
    max-width: 800px;
    margin-bottom: 20px;
  }
  .firstViewArea .reasonArea .reasonItem {
    margin-bottom: 192px;
  }
  .firstViewArea .reasonArea .reasonItem p,
  .firstViewArea .reasonArea .reasonItemRebirth p {
    font-size: 14px;
  }
  .firstViewArea .reasonArea .reasonItem::before {
    content: "";
    position: absolute;
    right: -80px;
    top: 115px;
    width: 800px;
    height: 400px;
    background: #faf8f5;
    z-index: -1;
  }
  .firstViewArea .reasonArea .reasonItemRebirth::before {
    content: "";
    position: absolute;
    left: -80px;
    top: 115px;
    width: 800px;
    height: 400px;
    background: #faf8f5;
    z-index: -1;
  }
  .firstViewArea .reasonArea .reasonItemRebirth > img {
    position: absolute;
    right: 220px;
    bottom: 24%;
    width: 278px;
    height: 108px;
  }
  .firstViewArea .reasonArea .reasonItem > img {
    position: absolute;
    left: 170px;
    bottom: 24%;
    width: 272px;
    height: 68px;
  }
  .firstViewArea .reasonArea .reasonItem,
  .firstViewArea .reasonArea .reasonItemRebirth {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .firstViewArea .reasonArea .reasonItemRebirth {
    flex-direction: row-reverse;
  }
  .firstViewArea .reasonArea .reasonItem {
    margin-top: 152px;
  }
  .firstViewArea .reasonArea .reasonTitle {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 38px;
    line-height: 2;
  }
  
  .firstViewArea .reasonArea .reasonTitle > span {
    font-size: 20px;
  }
  .firstViewArea .reasonArea {
    padding: 20px 0 132px;
    margin: 0 auto;
    max-width: 1080px;
  }
  .topPage .firstViewArea .firstContents .firstViewTitle {
    writing-mode: vertical-rl;
    color: #fff;
    font-size: 94px;
    line-height: 0.8;
    display: block;
    position: absolute;
    bottom: 55px;
    left: 0;
  }
  .topPage .firstViewArea .firstContents .firstViewTitle span {
    font-size: 26px;
    writing-mode: vertical-rl;
    color: #fff;
  }
  .topPage .firstViewArea .firstContents .firstViewSentence p {
    writing-mode: vertical-rl;
    font-size: 28px;
    color: #fff;
    line-height: 1.8;
    text-align: initial;
    display: block;
    position: absolute;
    top: 56px;
    right: 0;
  }
  .topPage .firstViewArea .firstContents .firstViewSentence p span {
    display: block;
    writing-mode: vertical-rl;
    color: #fff;
    margin-top: 56px;
  }
  .topPage .firstViewArea .firstContents {
    margin: 0 auto;
    max-width: 1000px;
    display: flex;
    justify-content: space-between;
    position: relative;
    z-index: 2;
    min-height: 550px;
  }
  .firstViewArea .problemArea .problemContents .problemItem {
    padding: 24px 34px;
    background: #fff;
    border-top: solid 4px #573165;
    box-shadow: 3px 3px 8px 3px rgba(0, 0, 0, 0.1);
    width: 130px;
  }
  .firstViewArea .problemArea .problemContents .problemItem h3 {
    writing-mode: vertical-rl;
    font-size: 18px;
    line-height: 1.8;
    margin: auto;
  }
  .firstViewArea .problemArea .problemContents {
    margin: 80px auto 70px;
    max-width: 700px;
    display: flex;
    justify-content: space-between;
  }
  .firstViewArea .problemArea .problemTitle {
    padding: 0;
    margin: 0;
    text-align: center;
    font-size: 38px;
    line-height: 1.6;
  }
  .firstViewArea .problemArea .problemTitle > span {
    font-size: 20px;
  }
  .firstViewArea .problemArea .problemImgArea {
    text-align: center;
    padding-bottom: 60px;
  }
  .firstViewArea .problemArea .problemImg {
    max-width: 860px;
    margin: 0 auto;
  }
  .firstViewArea .problemArea {
    background-image: url(img/bcg001.png);
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -33px;
    padding-top: 83px;
  }
  .headerArea {
    display: flex;
    background-color: #FFFFFF;
    height: 80px;
    position: fixed;
    z-index: 999;
    width: 100%;
    justify-content: center;
  }
  header{
    display: flex;
    max-width: 1160px;
    width: 100%;
    justify-content: space-between;
  }
  .headerMenu {
    display: flex;
  }
  .headerMenu li a {
    display: block;
    font-size: 14px;
    padding: 30px 15px;
    color: #333333;
  }
  .headerMenu li a {
    height: 100%;
  }
  .headerMenu li:last-child a {
    padding: 30px 0 30px 15px;
  }
  header .logoArea {
    max-width: 192px;
    margin-top: 1%;
  }
  .header-button{
    display:none;
  }
  .firstViewArea{
    padding-top: 80px;
  }
  /* wp 追加css */
  img.firstImg-sp{
    display: none;
  }
  .topPage .firstViewArea .firstImg,
  .topPage {
    margin-right: auto;
    margin-left: auto;
  }
  .topPage .firstViewArea .firstImg {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  }
  .topPage .firstViewArea .firstImgArea {
    text-align: center;
    position: relative;
    min-height: 550px;
    max-width: 1360px;
    margin: 0 auto;
  }
  img.linebutton1{
    position: absolute;
    top: 94%;
    right: 0;
    z-index: 1;
    max-width: 1360px;
  }
  img.linebutton3{
    display: none;
  }
  .firstViewArea .takeCareArea .contactComicArea .comic02SP,
  .firstViewArea .reasonArea .reasonItemRebirth h4,
  .firstViewArea .reasonArea .reasonItem h4,
  .firstViewArea .pliceArea .pliceTitle h4,
  .firstViewArea .problemArea .problemImgSP,
  .firstViewArea .voiceArea .voiceItem > .voiceImgSP,
  .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceImgSP {
    display: none;
  }
  .box p{
    color: #573165;
  }
  p.plice{
    display: block!important;
  }
  img.numberIcon{
    margin-bottom: 16px;
  }
  .inputPair input{
    height: 50px;
  }
  @media screen and (max-width: 768px) {
    .firstViewArea{
      padding-top: 70px;
    }
    .firstViewArea .takeCareArea .contactComicArea {
      padding: 0 24px;
      margin: 40px auto 0;
    }
    .firstViewArea .pliceArea .pliceList > p {
      display: none;
    }
    .firstViewArea .greetArea {
      padding: 82px 0 0;
    }
    .headerArea {
      padding: 0 24px;
      max-width: initial;
      height: 70px;
    }
    .topPage {
      overflow-x: hidden;
    }
    .topPage .firstViewArea .firstImgArea {
      min-height: 100vh;
      padding: 0 24px;
      z-index: 1;
    }
    .topPage .firstViewArea .firstContents {
      min-height: 100vh;
      max-width: initial;
    }
    .topPage .firstViewArea .firstImg {
      min-height: 100vh;
    }
    .firstViewArea .problemArea{
      margin-top: -200px;
    }
    .firstViewArea .problemArea .problemContents {
      max-width: initial;
      flex-direction: column;
      padding: 0 24px;
      margin: 40px auto 70px;
    }
  
    .firstViewArea .problemArea .problemContents .problemItem {
      border-top: none;
      border-left: solid 4px #573165;
      margin-bottom: 16px;
      padding: 24px 24px;
    }
    .firstViewArea .problemArea .problemContents .problemItem h3 {
      writing-mode: initial;
      font-size: 12px; 
    }
    .firstViewArea .problemArea .problemTitle > span {
      font-size: 14px;
    }
    .firstViewArea .problemArea .problemTitle[data-v-ed744216] {
      font-size: 22px;
      padding-top: 60px;
    }
    .firstViewArea .problemArea .problemImg {
      display: none;
    }
    .firstViewArea .problemArea .problemImgSP {
      display: block;
    }
    .firstViewArea .problemArea .problemImgArea {
      padding: 0 24px 70px;
    }
    .firstViewArea .reasonArea {
      padding: 20px 24px 0px;
    }
    .firstViewArea .reasonArea .reasonTitle {
      font-size: 26px;
    }
    .firstViewArea .reasonArea .reasonTitle > span {
    font-size: 14px;
    }
    .firstViewArea .reasonArea .reasonItem {
      flex-direction: column;
      margin-top: 42px;
    }
    .firstViewArea .reasonArea .reasonItem h3 {
      display: flex;
    }
    .firstViewArea .pliceArea {
      padding: 0px 0 80px;
    }
    .firstViewArea .pliceArea .pliceAreaInner {
      flex-direction: column;
    }
    .firstViewArea .pliceArea .pliceTitle h4 {
      display: flex;
      font-size: 40px;
      color: #573165;
      line-height: 1.4;
      min-width: initial;
      width: 100%;
      margin-right: 0px;
      justify-content: space-between;
      align-items: flex-start;
      padding: 40px 24px;
    }
    .firstViewArea .pliceArea .pliceTitle h4 .mTitle br {
      display: none;
    }
    .firstViewArea .pliceArea .pliceTitle h4 .lTitle {
      font-size: 40px;
      line-height: 1.0;
      display: block;
      margin-right: 48px;
    }
    .firstViewArea .pliceArea .pliceTitle > p {
      display: none;
    }
    .firstViewArea .reasonArea .reasonItem > img {
      left: -24px;
      width: 45%;
      height: 8%;
      margin-bottom: 63px;
    }
    .firstViewArea .pliceArea .pliceList {
      width: 100%;
      padding: 0 24px;
    }
    .firstViewArea .reasonArea .reasonItemRebirth > img {
      left: -24px;
      width: 35%;
      height: 10%;
      margin-bottom: 60px;
    }
    .firstViewArea .pliceArea .pliceTitle h4 .mTitle {
      font-size: 23px;
      line-height: 1.6;
      display: block;
    }
    .firstViewArea .pliceArea .pliceList .pliceItem .left h4 {
      font-size: 16px;
      color: #FFFFFF;
      background-color: #573165;
      padding: 13px 70px 13px 70px;
      position: relative;
      text-align: center;
  }
    .firstViewArea .pliceArea .pliceList .pliceItem {
      max-height: initial;
      flex-direction: column;
      max-width: initial;
    }
    .firstViewArea .pliceArea .pliceList {
      margin: 0 auto;
    }
    .firstViewArea .pliceArea .pliceList .pliceItem .right {
      width: 100%;
      padding: 0 20px 16px;
    }
    .firstViewArea .pliceArea .pliceList .pliceItem .right,
    .firstViewArea .pliceArea .pliceList .pliceItem .left {
      max-width: initial;
    }
    .firstViewArea .pliceArea .pliceList .pliceItem .right img,
    .firstViewArea .pliceArea .pliceList .pliceItem .left img {
      width: 100%;
    }
    .firstViewArea .contactArea {
      padding: 1px 20px 0px;
    }
    .firstViewArea .contactArea .contactBox .contactBoxInner > .contactNumber{
      display: block;
      text-align: center;
    }
    .firstViewArea .contactArea .contactBox .contactBoxInner > .contactNumber .numberIcon{
      display:inline;
    }
    .firstViewArea .contactArea .contactBox .contactBoxInner > .contactNumber .phoneNumber {
      display:inline;
    }
    .firstViewArea .contactArea .contactBox .contactBoxInner > .contactNumber .openTime {
      font-size: 16px;
      display: inline-block;
      padding: 6px 25px;
    }
    .firstViewArea .contactArea .contactBox .contactBoxInner a {
      margin: 47px auto 20px;
      width: 90%;
    }
    .firstViewArea .contactArea .contactTitle{
      display: none;
    }
    .firstViewArea .takeCareArea .contactComicArea .comic02 {
      display: none;
    }
    .firstViewArea .takeCareArea .contactComicArea .comic02SP {
      display: block;
    }
    .firstViewArea .voiceArea .voiceItem,
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) {
      flex-direction: column-reverse;
      max-width: initial;
      padding: 0 24px;
    }
    .firstViewArea .voiceArea .voiceTitle > span{
      font-size: 16px;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceImg,
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceImg {
      max-width: 100%;
      margin-bottom: 24px;
    }
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceContents,
    .firstViewArea .voiceArea .voiceItem > .voiceContents {
      padding: 20px;
      margin-right: 0;
      margin-left: 0;
    }
    .firstViewArea .voiceArea .voiceTitle {
      margin: 0 0 40px;
    }
    .firstViewArea .greetArea .greetPair {
      flex-direction: column-reverse;
      padding: 0 24px;
    }
    .firstViewArea .greetArea .greetPair .greetSentence,
    .firstViewArea .greetArea .greetPair > img {
      max-width: 100%;
      margin-bottom: 36px;
    }
    .firstViewArea .greetArea .mapArea {
      flex-direction: column;
      padding: 0 24px;
    }
    .firstViewArea .greetArea .mapArea .mapColumn,
    .firstViewArea .greetArea .mapArea .mapColumn div {
      max-width: 100%;
      width: 100%;
    }
    .firstViewArea .faqArea .qaPair {
      padding: 0 24px;
    }
    .firstViewArea .faqArea > p {
      padding: 0 24px;
    }
    .firstViewArea .lastArea {
      padding: 80px 24px 0;
    }
    .firstViewArea .lastArea .inputPair {
      flex-direction: column;
      align-items: flex-start;
    }
    .firstViewArea .lastArea .inputPair input,
    .firstViewArea .lastArea .inputPair textarea {
      max-width: initial;
    }
    .firstViewArea .lastArea .inputPair p {
      margin-bottom: 16px;
    }
    .firstViewArea .lastArea .noticeText br {
      display: none;
    }
    .firstViewArea .reasonArea .reasonItemRebirth h3,
    .firstViewArea .reasonArea .reasonItem h3,
    .firstViewArea .pliceArea .pliceTitle h3 {
      display: none;
    }
    .firstViewArea .reasonArea .reasonItemRebirth,
    .firstViewArea .reasonArea .reasonItem {
      flex-direction: column;
      margin-bottom: 60px;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceImg,
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceImg {
      display: none;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceImgSP,
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) > .voiceImgSP {
      display: block;
      margin-bottom: 36px;
    }
    .firstViewArea .voiceArea .voiceItem .pattern,
    .firstViewArea .voiceArea .voiceItem:nth-child(2n) .pattern {
      bottom: initial;
      top: 18%;
      right: 0;
      left: initial;
      width: 24%;
      height: 9%;
    }
    .firstViewArea .greetArea .greetVideo video{
      max-width: 90%;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceContents h3 span {
      display: block;
      margin-bottom: 16px;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceContents h3 {
      flex-direction: column-reverse;
      font-size: 16px;
    }
    .firstViewArea .voiceArea .voiceItem > .voiceContents p{
      font-size: 14px;
      line-height: 2;
    }
    .firstViewArea .reasonArea .reasonItemRebirth h4,
    .firstViewArea .reasonArea .reasonItem h4 {
      display: block;
      font-size: 40px;
      color: #573165;
      line-height: 1.8;
      min-width: initial;
      margin-left: 0px;
      display: flex;
      width: 100%;
      justify-content: space-between;
    }
    .firstViewArea .reasonArea .reasonItemRebirth h4 .lTitle,
    .firstViewArea .reasonArea .reasonItem h4 .lTitle {
      font-size: 40px;
      line-height: 1.0;
      display: block;
      margin-right: 48px;
    }
    .firstViewArea .reasonArea .reasonItemRebirth h4 .mTitle,
    .firstViewArea .reasonArea .reasonItem h4 .mTitle {
      font-size: 20px;
      line-height: 1.6;
      display: block;
    }
    .firstViewArea .reasonArea .reasonItem > div > img,
    .firstViewArea .reasonArea .reasonItemRebirth > div > img {
      max-width: initial;
      width: 100%;
      margin-bottom: 50px;
    }
    .firstViewArea .reasonArea .reasonItemRebirth::before,
    .firstViewArea .reasonArea .reasonItem::before {
      right: 0px;
      left: 24px;
      height: 43%;
    }
    .headerMenu{
      display: none;
    }
    .firstViewArea .greetArea .greetPair {
      margin:auto;
    }
    .firstViewArea .greetArea .greetPair span.signature{
      display: block;
      text-align: end;
    }
    .firstViewArea .greetArea .greetTitle {
      margin: 0 0 40px;
    }
    iframe{
      width: 342px !important;
      height: 224px !important;
      margin-bottom: 64px;
    }
    .firstViewArea .faqArea .faqTitle {
      margin: 0 0 60px;
      font-size: 26px;
    }
    .firstViewArea .faqArea .qaPair .aLine {
      padding: 32px 16px 32px 23px;
    }
    .firstViewArea .faqArea .flowTitle {
      margin: 80px 0 30px;
      font-size: 26px;
    }
    .firstViewArea .faqArea .flowArea .flowItem h3 span{
      font-size: 15px;
    }
    .firstViewArea .faqArea .flowArea .flowItem h3{
      font-size: 14px;
    }
    .firstViewArea .faqArea .flowArea .flowItem p{
      font-size: 12px;
    }
    .firstViewArea .faqArea .flowArea .flowItem {
      padding: 13px 46px 11px;
      box-shadow: 3px 3px 8px 3px rgba(0, 0, 0, 0.1);
      background: #fff;
      max-width: 830px;
      margin: 0 auto;
  }
    .firstViewArea .lastArea .lastTitle{
      font-size: 26px;
      margin: 0 0 40px;
    }
    .firstViewArea .lastArea .lineButton{
      margin: 0 auto 40px;
    }
    .firstViewArea .lastArea .noticeText{
      margin: 38px auto 40px;
    }
    .firstViewArea .lastArea .lastContact{
      margin: 80px auto 40px;
    }
    /* ヘッダーボタン */
    .header-button{
        display: flex;
        padding-right: 32px;
        cursor: pointer;
        position: relative;
        z-index: 100;
        margin-left: auto;
    }
    .phone-box img{
        padding-right: 30px;
    }
    .h-menu{
        position: fixed;
        padding-top: 5%;
      }
    .h-menu p{
        font-size: 10px;
        font-family: 游ゴシック体;
        font-weight: bold;
    }  
    /*inputのcheckboxは非表示に*/
    .h-menuCheckbox {
        display:none;
      }
      
    /*ハンバーガーメニュー*/
    .h-menu_icon {
        display: inline-block;
        width: 30px;
        height: 30px;
        vertical-align: middle;
      }
      
    /*3本線*/
    .hamburger-icon, .hamburger-icon::before, .hamburger-icon::after {
        content: '';
        display: block;
        position: absolute;
        z-index: 100;
        width: 42px;
        height: 4px;
        background: #707070;
        cursor: pointer;
    }
    .hamburger-icon:before {
        top: 10px;
    }
    .hamburger-icon:after {
        top: 20px;
    }
  
    /*メニュー以外を暗くする*/
    #h-menu_black {
        display: none;
        position: fixed;
        z-index: 98;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: black;
        opacity: 0;
        transition: .7s ease-in-out;
    }
  
    /*中身*/
    #h-menu_content {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 99;
        width: 100%;
        max-width: 320px;
        height: 100vh;
        padding: 85px 16px 16px;
        background: #1f2c37;
        overflow: auto;
        transition: .3s ease-in-out;
        -webkit-transform: translateX(-105%);
        transform: translateX(-105%);
    }
  
    /*チェックボックスにチェックが入ったら表示*/
    input:checked ~ .h-menu_icon .hamburger-icon{
        background: transparent;
    }
    input:checked ~ .h-menu_icon .hamburger-icon::before{
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top:10px;
        z-index:999;
    }
    input:checked ~ .h-menu_icon .hamburger-icon::after{
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        top:10px;
        z-index:999;
    }
    input:checked ~ #h-menu_black {
        display: block;
        opacity: .8;
    }
    #h-menu_checkbox:checked ~ #h-menu_content {
        -webkit-transform: translateX(0%);
        transform: translateX(0%);
        box-shadow: 6px 0 25px rgba(0,0,0,.15);
    }
    .h-menu_icon .hamburger-icon,
    .h-menu_icon .hamburger-icon::before,
    .h-menu_icon .hamburger-icon::after,
    #h-menu_black,
    #h-menu_content{
        -webkit-transition: all .3s;
        transition: all .3s;
    }
    #h-menu_content ul{
        list-style: none;
        margin: 0;
        padding: 0;
    }
    #h-menu_content ul li{
        border-bottom: solid 2px white;
    }
    #h-menu_content li a {
        display: block;
        color: white;
        font-size: 14px;
        padding: 24px;
        text-decoration: none;
        transition-duration: 0.2s;
    }
    #h-menu_content li a:hover {
        background: #455b6d;
    }
    /* wpへの追加css */
    img.linebutton1{
      display: none;
    }
    img.linebutton3{
      display: block;
      position: absolute;
      top: 83%;
      left: 6%;
      z-index: 1;
      max-width: 1360px;
      margin-top: 62px;
    }
    img.firstImg{
      display: none;
    }
    img.firstImg-sp{
      display: block;
      z-index: 1;
    }
    .firstViewArea .problemArea .problemTitle {
      padding: 0;
      margin: 0;
      text-align: center;
      font-size: 22px;
      line-height: 1.6;
      margin-top: 185px;
    }
    .firstViewArea .problemArea .problemTitle span{
      font-size: 14px;
      margin-top: 60px;
    }
    .firstViewArea .problemArea .problemContents .problemItem{
      width: 100%;
    }
    .firstViewArea .problemArea .problemContents .problemItem br{
      display: none;
    }
    .sticky{
      width: 100vw;
      height: 20vh;
    }
    .firstViewArea .pliceArea .pliceList .pliceItem .left {
      padding: 20px 20px 0px;
      line-height: 2;
  }
  .firstViewArea .pliceArea .pliceList .pliceItem .left h4::before {
    content: none;
  }
  .firstViewArea .takeCareArea .takeCareTitle,
  .firstViewArea .voiceArea .voiceTitle
   {
    font-size: 26px;
  }
  .firstViewArea .takeCareArea .takeCareTitle > span,
  .firstViewArea .voiceArea .voiceTitle > span {
    font-size: 14px;
  }
  .firstViewArea .takeCareArea {
    padding: 52px 0 80px;
  }
  .firstViewArea .voiceArea .voiceItem > .voiceContents {
    max-height: 100%;
  }
  .firstViewArea .faqArea {
    padding: 80px 0 0;
  }
  .firstViewArea .contactArea .contactBox .contactBoxInner > p{
    padding: 0 22px;
  }
  .firstViewArea .lastArea .noticeText{
    text-align: left;
  }
  .firstViewArea .footerArea .footerSection{
    padding: 30px 0;
  }
  .firstViewArea .footerArea .footerSection img{
    width: 16px;
    margin-right: 13px;
  }
  .firstViewArea .footerArea .footerSection p {
    font-size: 10px;
  }
}