/* slick */
.slick-next {right: 10px;}
.slick-prev {left: 10px;}
.slick_container {
    margin:0 auto;
    position:relative;
}
.slick-prev, .slick-next {
    width:30px;
    height:60px
}
.slick-prev:before, .slick-next:before {
    content:"";
}
button.slick-prev, button.slick-next {
    z-index:2;
}
.slick-prev{left:20px; /* 任意の値 */}
.slick-next{right:20px; /* 任意の値 */}

.slick-arrow{z-index:10;/* 値は適当に */}
/* content */
.topNews {
  /* padding: 100px 0; */
   padding: 50px 0;
}
.topNews .flexBox {
    justify-content: center;
}
.topNews .flexBoxLeft {
    width: 200px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin-right: 30px;
    background: -moz-linear-gradient(45deg, rgba(204,204,204,1) 0%, rgba(186,186,186,1) 20%, rgba(232,232,232,1) 80%, rgba(240,240,240,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(45deg, rgba(204,204,204,1) 0%,rgba(186,186,186,1) 20%,rgba(232,232,232,1) 80%,rgba(240,240,240,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(45deg, rgba(204,204,204,1) 0%,rgba(186,186,186,1) 20%,rgba(232,232,232,1) 80%,rgba(240,240,240,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cccccc', endColorstr='#f0f0f0',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}
.info_all {
    text-align: center;
    margin-bottom: 30px;
}

p.evnt_info {
    font-size: 1.7em;
    color: #494949;
    margin-bottom: 26px;
}
@media all and (max-width: 835px) {
    .infoimg {
        display: none;
    }
    p.evnt_info {
        font-size: 1.5em;
        color: #494949;
        margin-top: 10px;
    }
    .info_all {
        margin-bottom: 16px;
    }
  }
  .infoimg_sp {
    text-align: center;
    margin: 0 10px 20px;
}  

  @media all and (min-width: 836px) {
    .infoimg_sp {
        display: none;
    }
  }

.topNews {
    font-size: 1.5rem;
    color: #484848;
    display: block;
}
.topNews img {
   /* width: 142px; */
    height: auto;
}
.newsTitle {
    font-size: 1.6rem;
    margin-top: 10px;
}
.topNews .flexBoxRight {
    width: 700px;
}
.topNews .flexBoxRight2 {
    width: 700px;
    height: 300px;
    overflow-y: scroll;
}
.topNews li {
    margin-bottom: 12px;
}
.topNews li:last-child {
    margin-bottom: 0;
}
.topNews .cat {
    width: 8em;
    text-align: center;
    display: inline-block;
    font-size: 1.2rem;
    font-family: "Hiragino Kaku Gothic ProN","メイリオ", sans-serif;
    padding: 1px 5px;
    margin-right: 15px;
    vertical-align: top;
}
.topNews .follow {
    background: #FFEBEB;
}
.topNews .training {
    background: #EBFFED;
}
.topNews .open {
    background: #EBF0FF;
}
.topNews .news {
    background: #FFFCEB;
}
.topNews .date {
    width: 5em;
    text-align: center;
    display: inline-block;
    margin-right: 15px;
    vertical-align: top;
}
.topNews .newsText {
    display: inline-block;
    width: 70%;
    vertical-align: top;
}
.bg {
    position: relative;
    padding: 100px 0;
}
.bg:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1500px;
    background: url(../img/bg-top@2x.png) no-repeat top center;
    background-size: 100% auto;
    z-index: -1;
}
.bg:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2040px;
    background: url(../img/bg-bottom@2x.png) no-repeat bottom center;
    background-size: cover;
    z-index: -1;
}

@media  (max-width: 835px) {
    .bg:after {
        height: 3180px;
    }
}
@media  (max-width: 575px) {
    .bg:after {
        height: 2850px;
}
}
/* pickup */
.pickup {
    /* padding-bottom: 150px; */
}
.pickup .commonTtl1 img {
    width: 397px;
    height: 83px;
}
.pickInner {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.pickup .flexBox {
    align-items: flex-end;
}
.pickup a {
    color: #000;
    position: relative;
}
.pickup a:before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 0;
    width: 250px;
    z-index: -1;
    height: 250px;
    background: url(../img/circle-bg@2x.png) no-repeat;
    background-size: 100% auto;
}
.pickup h3 {
    font-size: 3rem;
}
.pickup h3 span {
    font-size: 1.8rem;
    display: block;
    text-align: right;
}
.pickup .more {
    font-size: 1.4rem;
    text-align: right;
    position: relative;
    padding-right: 10px;
}
.pickup .more:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 0;
    border: 2px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
.pickup .flex2 .flexBoxRight {
    margin-bottom: 100px;
}
/* products */
.products {
    text-align: center;
    /* padding-bottom: 150px; */
}
.products .commonTtl1 img {
    width: 307px;
    height: 83px;
}
.products .commonTtl2 {
    display: inline-block;
    color: #484848;
    font-size: 2rem;
    border: 1px solid;
    font-weight: normal;
    padding: 10px 20px;
    margin-bottom: 80px;
}
.products ul {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin-bottom: 80px;
}
.products li {
    width: 23%;
    margin-bottom: 80px;
    text-align: center;
    margin-right: 2%;
}
.products li:nth-child(4n) {
    margin-right: 0;
}
.products li a {
    color: #000;
}
.products li p {
    font-size: 3rem;
}
.products li .more {
    font-size: 1.4rem;
    position: relative;
    padding-right: 10px;
}
.products li .more:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 0;
    border: 2px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
/* others */
.others .commonTtl1 img {
    width: 173px;
    height: 83px;
}
.others .flexBox {
    justify-content: center;
}
.others .other {
    text-align: center;
}
.others .other a {
    color: #000;
}
.other2 {
    margin: 0 150px;
}
.others .subTitle {
    display: block;
    font-size: 1.4rem;
    text-align: left;
}
.others .ex {
    font-size: 1.6rem;
    text-align: center;
    margin-top: 40px;
}
.otherTitle {
    margin-top: 18px;
    font-size: 3rem;
    text-align: left;
}
.otherTitle .salon {
    background: #484848;
    color: #fff;
    font-size: 1.2rem;
    padding: 2px 5px;
    margin-left: 10px;
}
.other .more {
    display: block;
    text-align: right;
    font-size: 1.4rem;
    position: relative;
    padding-right: 10px;
}
.other .more:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 0;
    border: 2px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
/* modal */
.modalContent {
    display: flex;
    justify-content: center;
    overflow: auto;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.7);
    opacity: 0;
    transition: opacity 0.5s, transform 0s 0.5s;
    transform: scale(0);
}
.modalContent.show {
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s;
}
.modalBox {
    display: none;
    /* opacity: 0; */
    position: relative;
    align-self: center;
    width: 800px;
    max-width: 800px;
    padding: 30px 30px 15px;
    box-sizing: border-box;
    background: #fff;
    line-height: 1.4em;
    transition: 0.5s;
}
.modalBox.show {
    display: block;
}
.modalTitleBox {
    display: flex;
    align-items: center;
    margin-bottom: 20px;
}
.modalTitleBox h3 {
    font-weight: normal;
    font-size: 3.5rem;
    line-height: 1.2;
}
.modalTitleBox h3 span {
    color: #E65151;
    display: block;
    font-size: 2rem;
}
.modalTitleBox .type {
    margin-right: 20px;
}
.modalInfo {
    display: flex;
    justify-content: space-between;
}
.modalInfo .modalLeft {
    width: 219px;
    text-align: center;
}
.modalInfo .modalLeft span {
    display: block;
    text-align: center;
    font-size: 1.8rem;
    margin-top: 20px;
}
.modalInfo .modalRight {
    width: 472px;
}
.modalInfo .modalText1 {
    font-size: 2rem;
    line-height: 1.5;
    color: #125D9F;
    margin-bottom: 35px;
}
.modalInfo .modalText2 {
    font-size: 1.8rem;
    line-height: 1.5;
}
.close {
    text-align: right;
    margin-top: 100px;
}
.close a {
    font-size: 1.4rem;
    color: #fff;
    background: #484848;
    padding: 3px 5px;
}
/* fcTop */
.fcTop,
.qaTop {
    padding: 100px 0;
}
.fcTitle,
.qaTitle {
    font-weight: normal;
    font-size: 2.8rem;
    display: flex;
    align-items: flex-end;
    padding: 10px 0 10px 10px;
    border-left: 12px solid #EBEBEB;
    margin-bottom: 50px;
}
.qaTitle {
    display: block;
}
.qaTitle span {
    font-size: 1.8rem;
    display: block;
}
.fcTitle img,
.qaTitle img {
    margin-right: 10px;
}
.fcTopImg,
.qaTopImg {
    text-align: center;
    margin-bottom: 50px;
}
.fcTop .anc,
.qaTop .anc {
    display: flex;
    justify-content: center;
}
.fcTop .anc li,
.qaTop .anc li{
    margin-right: 20px;
}
.fcTop .anc li:last-child,
.qaTop .anc li:last-child {
    margin-right: 0;
}
.fcTop .anc a,
.qaTop .anc a {
    font-size: 1.4rem;
    color: #484848;
    border: 1px solid;
    padding: 8px 25px 8px 15px;
    position: relative;
    display: block;
}
.fcTop .anc a:after,
.qaTop .anc a:after {
    content: "";
    position: absolute;
    width: 8px;
    height: 8px;
    top: 12px;
    right: 8px;
    border: 2px solid;
    border-color: transparent transparent #484848 #484848;
    transform: rotate(-45deg);
}
/* produce */
.produce {
    padding-bottom: 100px;
}
.produceTitle {
    background: -moz-linear-gradient(left, rgba(244,248,253,1) 0%, rgba(255,255,255,1) 50%, rgba(244,248,253,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(244,248,253,1) 0%,rgba(255,255,255,1) 50%,rgba(244,248,253,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(244,248,253,1) 0%,rgba(255,255,255,1) 50%,rgba(244,248,253,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f8fd', endColorstr='#f4f8fd',GradientType=1 ); /* IE6-9 */
    font-size: 3.7rem;
    text-align: center;
    padding: 50px 0;
    box-shadow: 10px 1px 9px rgba(0,0,0,0.2);
}
.produceInner {
    background: url(../img/fc/fc-bg@2x.png) no-repeat top center;
    background-size: 100% auto;
    height: 522px;
    position: relative;
}
.produceInner .produceBox {
    position: absolute;
    background: #fff;
    top: 50%;
    left: 50%;
    margin-left: 10%;
    margin-top: 3%;
    transform: translateY(-50%) translateX(-50%);
    padding: 35px;
    width: 705px;
}
.produceInner .produceBox:before {
    content: "";
    position: absolute;
    top: -10px;
    left: 10px;
    display: block;
    width: 100%;
    height: 320px;
    border: 2px solid #89B4D9;
}
.produceInner .produceBox li {
    font-size: 3.4rem;
    margin-bottom: 15px;
    position: relative;
    padding-left: 60px;
}
.produceInner .produceBox li:before {
    content: "";
    position: absolute;
    top: 7px;
    left: 0;
    width: 40px;
    height: 40px;
    background: url(../img/fc/check.png) no-repeat;
    background-size: 40px auto;
}
.produceText {
    text-align: center;
    padding-top: 150px;
    position: relative;
    margin-top: 60px;
}
.produceText:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 90px 210px 0 210px;
    border-color: #125D9F transparent transparent transparent;
}
.produceText p {
    font-size: 3.8rem;
    border: 1px solid #E65151;
    display: inline-block;
    color: #fff;
    line-height: 1.2;
    border-radius: 10px;
    padding: 5px;
}
.produceText span {
    background: #E65151;
    display: block;
    padding: 10px 80px;
    border-radius: 10px;
}
/* shop */
.shop {
    text-align: center;
    padding-bottom: 100px;
}
.shop .shopTitle {
    display: inline-block;
    font-size: 3.2rem;
    padding: 50px 0;
    background: -moz-linear-gradient(top, rgba(244,248,253,1) 0%, rgba(255,255,255,1) 50%, rgba(244,248,253,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(244,248,253,1) 0%,rgba(255,255,255,1) 50%,rgba(244,248,253,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(244,248,253,1) 0%,rgba(255,255,255,1) 50%,rgba(244,248,253,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f4f8fd', endColorstr='#f4f8fd',GradientType=0 ); /* IE6-9 */
    box-shadow: 0px 0px 5px rgba(0,0,0,0.2);
    margin-bottom: 80px;
    width: 50%;
}
.shopText {
    font-size: 2.4rem;
    color: #125D9F;
    line-height: 3;
}
.shopText span {
    font-size: 3rem;
    display: block;
    color: #E65151;
}
.shop .flexBox{
    justify-content: center;
    margin-bottom: 100px;
}
.shop .flexBox > div {
    padding: 50px;
}
.shop .flexBox .flexBoxLeft {
    border-right: 1px solid #777777;
}
.shopList {
    text-align: left;
    font-size: 2rem;
    line-height: 2.5;
}
.shop1 {
    font-size: 2.4rem;
    color: #484848;
}
.shop2 {
    color: #125D9F;
    font-size: 3.2rem;
}
/* month */
.month {
    text-align: center;
    padding: 100px 0;
    background: #F9FAFC;
    color: #484848;
}
.month .monthTitle {
    display: inline-block;
    font-size: 3.2rem;
    padding: 50px 0;
    background: #125D9F;
    border: 1px solid #D8DDE3;
    color: #fff;
    font-weight: normal;
    margin-bottom: 80px;
    width: 35%;
}
.monthInner {
    text-align: left;
}
.monthInner h3 {
    font-size: 3.2rem;
    width: 35%;
    text-align: right;
    border-bottom: 4px solid #5A7691;
    margin-bottom: 30px;
    font-weight: normal;
}
.monthInner p {
    font-size: 2rem;
    margin-left: 35%;
    margin-bottom: 30px;
}
.monthInner .logoUse {
    margin-bottom: 80px;
}
.monthInner p span {
    font-weight: bold;
}
.monthInner h4 {
    font-size: 2.4rem;
    font-weight: normal;
    margin-left: 35%;
    margin-bottom: 10px;
}
/* simulation */
.simulation {
    padding: 100px 0;
    text-align: center;
    color: #484848;
}
.simulation .simulationTitle {
    display: inline-block;
    font-size: 3.2rem;
    padding: 50px 0;
    border: 1px solid #D8DDE3;
    font-weight: normal;
    margin-bottom: 80px;
    width: 50%;
}
.simulation h3 {
    font-size: 2.4rem;
    position: relative;
    margin-bottom: 30px;
}
.simulation h3:before {
    content: "";
    position: absolute;
    height: 34px;
    width: 40%;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #89B4D9;
}
.simulation h3:after {
    content: "";
    position: absolute;
    height: 34px;
    width: 40%;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #89B4D9;
}
.simulation table {
    width: 100%;
    border-collapse: collapse;
    border: 4px solid #484848;
    font-size: 1.8rem;
    margin-bottom: 80px;
}
.simulation tr {
    border-bottom: 1px dotted #484848;
}
.simulation tr:nth-child(even) {
    background: #F0F0F0;
}
.simulation tr:last-child {
    border-top: 4px solid #484848;
}
.simulation td {
    width: 50%;
    text-align: left;
    padding: 10px 40px;
    border-right: 1px dotted #484848;
}
.simulation .simulation1 .textSmall {
    font-size: 1.3rem;
}
.simulation .simulation2 th {
    background: #89B4D9;
    color: #fff;
    padding: 10px 40px;
    border-right: 1px dotted #484848;
    border-bottom: 4px solid #484848;
    font-size: 2.8rem;
}
.simulation .simulation2 td {
    width: 30%;
}
.simulation .simulation2 th:first-child {
    text-align: left;
}
.simulationText {
    font-size: 2.4rem;
    font-weight: bold;
    margin-bottom: 40px;
}
.simulationText span {
    display: inline-block;
    position: relative;
}
.simulationText .staff {
    padding-left: 78px;
    margin-right: 40px;
}
.simulationText .staff:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: 0;
    width: 68px;
    height: 50px;
    background: url(../img/fc/icon3.png) no-repeat;
    background-size: 68px auto;
}
.simulationText .bed {
    padding-left: 78px;
}
.simulationText .bed:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: 0;
    width: 70px;
    height: 48px;
    background: url(../img/fc/icon4.png) no-repeat;
    background-size: 70px auto;
}
.simulationPrice {
    font-size: 3.2rem;
    color: #E65151;
    display: inline-block;
    margin: 0 auto 80px;
}
.simulationPrice .bgBorder {
    letter-spacing: 0.1em;
    background: linear-gradient(transparent 60%, #FFE0E0 60%);
}
.simulationPrice .ex {
    font-size: 1.4rem;
    display: block;
    text-align: right;
    color: #484848;
    margin-top: 10px;
}
.contactBox .contactText {
    font-size: 2.2rem;
    margin-bottom: 10px;
}
.contactBtn a {
    color: #fff;
    background: #484848;
    font-size: 3rem;
    padding: 10px 80px;
    border-radius: 10px;
    display: inline-block;
}
/* group */
.group {
    background: #F9FAFC;
    text-align: center;
    padding: 100px 0;
}
.groupTitle {
    display: inline-block;
    font-size: 3.2rem;
    padding: 50px 0;
    font-weight: normal;
    margin-bottom: 80px;
    border: 1px solid #125D9F;
    background: #fff;
    color: #125D9F;
    width: 35%;
}
.groupTitle img {
    margin-bottom: 10px;
}
.groupBox {
    background: #FFFFFF;
    border: 1px solid #89B4D9;
    border-radius: 10px;
    padding: 50px 30px 0 30px;
    width: 960px;
    margin: 0 auto 80px;
    text-align: left;
}
.groupBox ul {
    display: flex;
    flex-wrap: wrap;
}
.groupBox li {
    width: 22%;
    margin-right: 4%;
    margin-bottom: 50px;
}
.groupBox li a {
    color: #484848;
}
.groupBox li:nth-child(4n) {
    margin-right: 0;
}
.groupBox h3 {
    font-size: 1.8rem;
}
.groupBox p {
    font-size: 1.4rem;
}
.groupBox img {
    margin-bottom: 8px;
}
/* assocation */
.assocation {
    text-align: center;
    padding: 100px 0;
}
.assocation .assocationTitle {
    display: inline-block;
    font-size: 3.2rem;
    padding: 50px 0;
    border: 1px solid #D8DDE3;
    font-weight: normal;
    margin-bottom: 80px;
    width: 50%;
}
.assocation .assocationText {
    font-size: 2rem;
    width: 77%;
    margin: 0 auto 50px;
    line-height: 1.8;
}
/* qaContent */
.qaSubTitle {
    padding: 0 0 0 20%;
    font-size: 3.2rem;
    font-weight: normal;
    position: relative;
}
.qaSubTitle:before {
    content: "";
    position: absolute;
    height: 40px;
    width: 19%;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #EBEBEB;
}
.qaSubTitle:after {
    content: "";
    position: absolute;
    height: 40px;
    width: 40%;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #EBEBEB;
}
/* #qa2 .qaSubTitle:after {
    width: 63%;
}
#qa3 .qaSubTitle:after {
    width: 61%;
} */
.qaInner {
    width: 900px;
    margin: 0 auto 100px;
    padding: 50px 0;
    color: #484848;
}
.qaInner .question {
    font-size: 2rem;
    position: relative;
}
.qaInner .question:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: -74px;
    width: 64px;
    height: 64px;
    background: url(../img/qa/q@2x.png) no-repeat;
    background-size: 64px auto;
}
.qaInner .answer {
    font-size: 2rem;
    position: relative;
    padding-left: 80px;
    margin-top: 30px;
    min-height: 64px;
}
.qaInner .answer span {
    display: block;
    font-size: 1.4rem;
    margin-top: 10px;
}
.qaInner .answer:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 64px;
    height: 64px;
    background: url(../img/qa/a@2x.png) no-repeat;
    background-size: 64px auto;
}
.qaInner li {
    border: 1px solid #707070;
    padding: 30px 40px;
    border-radius: 8px;
    margin-bottom: 40px;
}
.qaInner .flexBox{
    justify-content: space-between;
}
.qaInner a {
    color: #484848;
}
/* qaContact */
.qaContact {
    text-align: center;
    border-top: 40px solid #EBEBEB;
    padding: 100px 0;
}
.qaContactText {
    font-size: 3.2rem;
    letter-spacing: 0.1em;
    margin-bottom: 40px;
}
/* qaTop */
.contactFlow {
    display: flex;
    justify-content: space-between;
    margin-bottom: 50px;
}
.contactFlow li {
    width: 28%;
    text-align: center;
    position: relative;
}
.contactFlow li:after {
    content: "";
    position: absolute;
    width: 28px;
    height: 28px;
    top: 20px;
    right: -50px;
    border: 6px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
.contactFlow li:last-child:after {
    display: none;
}
.stepBox {
    background: #EBEBEB;
    padding: 10px 0;
    border-radius: 8px;
}
.selected .stepBox {
    background: #E65151;
    color: #fff;
}
.stepBox .step {
    font-size: 1.6rem;
    text-align: left;
    display: block;
}
.stepBox .stepText {
    font-size: 2rem;
    display: inline-block;
}
.stepDes {
    text-align: left;
    font-size: 1.4rem;
}
.contactCaution {
    width: 80%;
    margin: 0 auto 20px;
    border: 1px solid #707070;
    padding: 15px 30px;
    text-align: center;
}
.contactCaution h3 {
    font-size: 2.4rem;
    border-bottom: 1px solid #707070;
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.contactCaution p {
    font-size: 1.4rem;
}
.qaTop .ex {
    width: 61%;
    margin: 0 auto;
    font-size: 1.2rem;
}
/* contactForm */
.qaLogo h1 {
    text-align: center;
    margin-bottom: 100px;
}
.contactForm {
    width: 920px;
    margin: 0 auto;
}
.contactForm table {
    width: 100%;
}
.contactForm th {
    font-weight: normal;
    font-size: 1.6rem;
    background: #F9FBFC;
    padding: 30px;
    width: 18em;
    vertical-align: top;
}
.contactForm span.required {
    display: inline-block;
    color: #fff;
    background: #ea0000;
    font-size: 1.2rem;
    padding: 0 3px;
    margin-left: 10px;
    border-radius: 3px;
}
.contactForm .option {
    display: inline-block;
    color: #fff;
    background: #009688;
    font-size: 1.2rem;
    padding: 0 3px;
    margin-left: 10px;
    border-radius: 3px;
}
.contactForm .ex {
    font-size: 1.3rem;
}
.contactForm td {
    padding: 30px;
    font-size: 1.6rem;
}
.contactForm .mb10 {
    margin-bottom: 10px;
}
.contactForm .mr10 {
    margin-right: 10px;
}
.contactForm .mr20 {
    margin-right: 20px;
}
.contactForm .long,
.contactForm textarea {
    width: 87%;
}
.submitBtn {
    text-align: center;
    margin-top: 60px;
}
.contactForm .submit,
.contactForm .submitBtn input[type="submit"] {
    background: #E65151;
    font-size: 2rem;
    color: #fff;
    border: none;
    padding: 6px 70px;
    transition: .3s ease;
}
.contactForm .submitBtn input[type="button"] {
    background: #EBEBEB;
    font-size: 2rem;
    color: #484848;
    border: none;
    padding: 6px 70px;
    transition: .3s ease;
}
.contactForm .submit:hover {
    opacity: 0.5;
}
.contactForm .cautionText {
    font-size: 1.6rem;
}
.cautionBox .error_messe {
    font-size: 1.4rem;
}
/* responsible */
.privacySubTitle {
    padding: 0 0 0 20%;
    font-size: 3.2rem;
    font-weight: normal;
    position: relative;
}
.privacySubTitle:before {
    content: "";
    position: absolute;
    height: 40px;
    width: 19%;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #EBEBEB;
}
.privacySubTitle:after {
    content: "";
    position: absolute;
    height: 40px;
    width: 40%;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    background: #EBEBEB;
}
/* .responsible .privacySubTitle:after {
    width: 71%;
} */
.privacy {
    padding: 100px 0;
}
.privacyInner {
    width: 900px;
    margin: 50px auto;
    color: #484848;
    position: relative;
}
.privacyInner dl {
    padding: 50px;
    border: 1px solid #707070;
    text-align: center;
}
.privacyInner dt {
    font-size: 1.4rem;
    font-weight: normal;
    text-align: left;
    display: inline-block;
    margin: 0 auto;
    padding: 0 40px 20px;
    border-bottom: 1px solid #707070;
}
.privacyInner dd {
    text-align: left;
    padding: 30px 20px;
    font-size: 1.4rem;
}
.privacyInner .closeBtn {
    position: absolute;
    right: 10px;
    bottom: -27px;
}
.privacyInner .closeBtn a {
    font-size: 1.4rem;
    color: #484848;
    display: inline-block;
    padding: 6px 10px;
    border: 1px solid;
    background: #fff;
}
.privacyInner .closeBtn a:hover {
    opacity: 1;
    background: #484848;
    color: #fff;
}
.contactWindow {
    text-align: center;
    margin-top: 50px;
}
.contactWindow p {
    font-size: 1.4rem;
    border: 1px solid;
    display: inline-block;
    padding: 10px 50px;
    line-height: 2.2;
}
/* company */
.companyTitle img {
    width: 114px;
    height: 18px;
}
#company6 {
    padding: 0 0 100px;
}
#company6 .companyTitle img {
    width: 175px;
    height: 18px;
}
.phiTitle {
    font-size: 2rem;
    border-bottom: 1px solid;
    padding-bottom: 5px;
    margin-bottom: 15px;
    display: inline-block;
}
.phiText {
    font-size: 1.6rem;
    line-height: 2;
}
.phiName {
    font-size: 2.8rem;
}
.companyInfo {
    justify-content: space-between;
}
.companyInfo .companyText {
    font-size: 1.6rem;
    line-height: 1;
    padding: 18px 0;
    border-bottom: 1px solid #EBEBEB;
    margin-bottom: 0;
}
.companyInfo .flexBoxLeft {
    width: 500px;
}
.companyInfo .flexBoxRight {
    width: 600px;
}
.borderTop {
    border-top: 1px solid #EBEBEB;
}
.companyTextTitle {
    width: 8em;
    display: inline-block;
    vertical-align: top;
}
.companyTextValue {
    display: inline-block;
    vertical-align: top;
}
.companyTextValue a {
    display: block;
    color: #484848;
    margin-top: 8px;
}
.commonTtl3 {
    font-size: 3.2rem;
    font-weight: normal;
    position: relative;
}
.commonTtl3 span {
    display: block
}
.commonTtl3:before {
    content: "";
    position: absolute;
    height: 40px;
    width: 43%;
    left: 0;
    top: 0;
    background: #EBEBEB;
}
.commonTtl3:after {
    content: "";
    position: absolute;
    height: 40px;
    width: 43%;
    right: 0;
    top: 0;
    background: #EBEBEB;
}
.companyContainer {
    text-align: center;
    padding: 100px 0;
}
/* business */
.business .commonTtl3 img {
    height: 32px;
}
.companyContainer ul {
    display: inline-block;
    margin: 50px auto;
    text-align: left;
    font-size: 2rem;
}
.companyContainer li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 10px;
}
.business li:before {
    content: "";
    position: absolute;
    width: 12px;
    height: 12px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    left: 0;
    border: 3px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
/* relation */
.relation .commonTtl3 img {
    height: 32px;
}
.relation li {
    padding-left: 30px;
    margin-bottom: 30px;
}
.relation li:before {
    content: "";
    position: absolute;
    width: 20px;
    height: 8px;
    top: 12px;
    left: 0;
    background: #4B4B4B;
}
.relation ul {
    font-size: 2.4rem;
}
.relation ul span {
    font-size: 1.8rem;
}
.relation li .btnLink {
    display: block;
    width: 30%;
    text-align: center;
    font-size: 1.4rem;
    border: 1px solid #777777;
    padding: 5px 0;
    color: #484848;
    position: relative;
    margin-top: 10px;
}
.relation li .btnLink:after {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 12px;
    border: 2px solid;
    border-color: #4B4B4B #4B4B4B transparent transparent;
    transform: rotate(45deg);
}
.relation li .textLink {
    color: #484848;
    font-size: 1.8rem;
}
/* history */
.history .commonTtl3 img {
    height: 32px;
}
.history li {
    border-bottom: 1px solid #EBEBEB;
    padding-bottom: 10px;
}
.history li span:first-child {
    display: inline-block;
    width: 8em;
}
/* access */
.access .commonTtl3 img {
    height: 32px;
}
.access .commonTtl3 {
    margin-bottom: 50px;
}
.accessInner {
    display: inline-block;
    background: #F7F7F7;
    padding: 50px 50px 30px 50px;
}
.accessInner h3 {
    font-size: 2rem;
    font-weight: normal;
    text-align: left;
    position: relative;
    margin-bottom: 20px;
    padding-left: 20px;
    margin-top: -30px;
}
.accessInner h3:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: -35px;
    width: 51px;
    height: 75px;
    background: url(../img/company/map@2x.png) no-repeat;
    background-size: 51px auto;
}
.accessInner a {
    font-size: 1.6rem;
    color: #484848;
    display: block;
    margin-top: 25px;
}
/* prepare */
.prepare {
    margin: 200px 0;
    text-align: center;
    font-size: 2.4rem;
}
/* 20210325追記 */
.ttlex {
	display: block;
    font-size: 1.2rem;
    margin-top: 5px;
}
.productChoice {
	display: flex;
	flex-wrap: wrap;
}
.productChoice input {
	margin-right: 5px;
}
.productChoice label {
	width: 50%;
    font-size: 1.5rem;
}
/* 20210701追記 */
.bottomBanner {
    position: fixed;
    left: 0;
    bottom: 0;
    text-align: center;
    background: rgba(255,255,255, 0.8);
    width: 100%;
}
.bottomBannerInner {
    padding: 10px 0;
}
.bottomBanner img {
    animation: bomb 1.8s ease infinite;
}
.bottomBannerLink {
    margin-bottom: 0;
}
@keyframes bomb {
    0% {transform: scale(1);}
    50% {transform: scale(.95);}
    100% {transform: scale(1);}
}
@media screen and (max-width: 835px) {
    /* news */
    .topNews {
        padding: 20px 0 50px;
        width: 100%;
    }
    .topNews .flexBox {
        flex-direction: column;
    }
    .topNews .flexBoxLeft {
        width: auto;
        margin-right: 0;
        margin-bottom: 20px;
    }
    .topNews .flexBoxRight {
        width: auto;
        padding: 0 3%;
    }
    .topNews img {
       /* width: 100px; */
        height: auto;
    }
    .topNews .flexBoxLeft {
        padding: 10px 0;
    }
    .newsTitle {
        font-size: 1.2rem;
        margin-top: 0;
    }
    .topNews .newsText {
        width: 100%;
        margin: 10px 0;
    }
    /* pickup */
    .pickup {
        width: 94%;
        margin-bottom: -100px;
    }
    .pickup .commonTtl1 img {
        width: 290px;
        height: 60px;
    }
    .pickInner {
        flex-direction: column;
        align-items: center;
    }
    .pickup .flexBox {
        margin-bottom: 60px;
    }
    .pickup h3 span {
        font-size: 1.2rem;
    }
    .pickup h3 {
        font-size: 2.4rem;
        text-align: right;
    }
    /* product */
    .products {
        padding-bottom: 80px;
        width: 100%;
    }
    .products .commonTtl1 img {
        width: 230px;
        height: 60px;
    }
    .products .commonTtl2 {
        font-size: 1.4rem;
    }
    .products ul {
        margin: 0 3%;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
        margin-bottom: 0;
    }
    .products li {
        width: 45%;
        margin-bottom: 80px;
        text-align: center;
        margin-right: 0;
    }
    .products li p {
        font-size: 1.8rem;
    }
    .products li:nth-child(2) img {
        height: 150px;
    }
    /* other */
    .others {
        width: 94%;
    }
    .others .commonTtl1 img {
        height: 60px;
    }
    .others .flexBox {
        flex-direction: column;
        align-items: center;
    }
    .others .other {
        width: 60%;
        margin-bottom: 50px;
    }
    .other2 {
        margin: 0;
    }
    .others .ex {
        font-size: 1.4rem;
        text-align: left;
    }
    /* modal */
    .modalBox {
        width: 100%;
        max-width: 100%;
        overflow: scroll;
        align-self: flex-start;
    }
    .modalTitleBox h3 span {
        font-size: 1.2rem;
        margin-bottom: 3px;
    }
    .modalTitleBox h3 {
        font-size: 2rem;
    }
    .modalInfo .modalLeft {
        width: 150px;
    }
    .modalInfo .modalLeft span {
        font-size: 1.3rem;
    }
    .modalInfo {
        align-items: center;
        flex-direction: column;
    }
    .modalInfo .modalRight {
        width: auto;
        margin-top: 20px;
    }
    .modalInfo .modalText1 {
        font-size: 1.4rem;
    }
    .modalInfo .modalText2 {
        font-size: 1.4rem;
    }
    /* slick */
    .slick-prev, .slick-next {
        width: 20px;
        height: 45px;
    }
    .slick-next {
        right: 10px;
    }
    .slick-prev {
        left: 10px;
    }
    /* company */
    .inner {
        width: auto;
    }
    .fcTop, .qaTop {
        padding: 40px 0;
    }
    #map {
        position: relative;
        width: 100%;
        height: 0;
        padding-bottom: 56.25%;
        overflow: hidden;
    }
    #map iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .companyInfo {
        flex-direction: column;
    }
    .companyInfo .flexBoxLeft {
        width: 100%;
        margin-bottom: 15px;
    }
    .companyInfo .flexBoxRight {
        width: 100%;
    }
    .companyInfo .companyText {
        display: flex;
        font-size: 1.4rem;
    }
    .companyTextTitle {
        padding: 0 10px;
        width: 30%;
    }
    .companyTextValue {
        width: 70%;
        padding: 0 10px;
        line-height: 1.4;
    }
    .qaTitle {
        margin: 0 2% 20px;
    }
    #company6 {
        padding: 0;
    }
    #company6 .companyInfo {
        margin: 0 2%;
    }
    .phiName {
        font-size: 1.8rem;
        text-align: center;
    }
    .commonTtl3 {
        font-size: 1.6rem;
    }
    .commonTtl3:before,
    .commonTtl3:after {
        width: 20%;
    }
    .companyContainer ul {
        margin: 20px 2%;
        font-size: 1.4rem;
    }
    .companyContainer {
        text-align: center;
        padding: 50px 0 0;
    }
    .relation ul {
        font-size: 1.4rem;
    }
    .relation li:last-child {
        margin-bottom: 0;
    }
    .relation li:before {
        width: 16px;
        height: 5px;
        top: 7px;
    }
    .relation ul span {
        font-size: 1.4rem;
    }
    .relation li .btnLink {
        width: 40%;
    }
    .relation li .textLink {
        font-size: 1.4rem;
    }
    .history li {
        padding-left: 0;
        display: flex;
    }
    .history li span:first-child {
        width: 26%;
    }
    .history li span:last-child {
        width: 74%;
    }
    .accessInner h3:before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 25px;
        height: 37px;
        background: url(../img/company/map@2x.png) no-repeat;
        background-size: 25px auto;
    }
    .accessInner {
        display: block;
        background: #F7F7F7;
        padding: 10px 0 30px 0;
    }
    .accessInner h3 {
        font-size: 1.2rem;
        margin: 0 2% 15px;
        padding-left: 40px;
    }
    .accessInner a {
        font-size: 1.2rem;
    }
    .access {
        margin-bottom: 40px;
    }
    /* qa */
    .fcTop .anc,
    .qaTop .anc {
        flex-direction: column;
        margin: 0 2%;
    }
    .fcTop .anc a, .qaTop .anc a {
        border: 1px solid;
        border-bottom: none;
    }
    .fcTop .anc li:last-child a,
    .qaTop .anc li:last-child a {
        border-bottom: 1px solid;
    }
    .fcTopImg, .qaTopImg {
        text-align: center;
        margin-bottom: 30px;
    }
    .qaSubTitle {
        padding: 0;
        font-size: 1.8em;
        text-align: center;
    }
    .qaSubTitle:before {
        height: 30px;
        width: 15%;
    }
    .qaSubTitle:after {
        height: 30px;
        width: 15%;
    }
    .qaInner {
        width: auto;
        margin: 0 2% 0 6%;
    }
    .qaInner .question:before {
        content: "";
        position: absolute;
        top: 0;
        bottom: 0;
        margin: 0;
        left: -42px;
        width: 32px;
        height: 32px;
        background: url(../img/qa/q@2x.png) no-repeat;
        background-size: 32px auto;
    }
    .qaInner .flexBoxRight {
        display: none;
    }
    .qaInner li {
        padding: 15px 10px 15px 26px;
    }
    .qaInner .question {
        font-size: 1.6rem;
        display: flex;
    }
    .qaInner .answer {
        font-size: 1.3rem;
        margin-top: 15px;
        padding-left: 40px;
    }
    .qaInner .answer:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 32px;
        height: 32px;
        background: url(../img/qa/a@2x.png) no-repeat;
        background-size: 32px auto;
    }
    #qa2 .qaSubTitle:after {
        width: 15%;
    }
    #qa3 .qaSubTitle:after {
        width: 15%;
    }
    .qaContact {
        padding: 40px 0;
    }
    .qaContactText {
        font-size: 1.8rem;
        margin: 0 2% 40px;
    }
    .qaContactImg {
        margin: 0 2%;
    }
    /* fc */
    .fcTop .anc li,
    .qaTop .anc li {
        margin-right: 0;
    }
    .fcTitle {
        margin: 0 2% 20px;
        font-size: 1.8rem;
    }
    .fcTitle img {
        width: 40%;
    }
    .produceInner .produceBox {
        width: 96%;
        margin-left: -1%;
        background: rgba(255, 255, 255, 0.7);
        padding: 35px 20px;
    }
    .produceInner .produceBox:before {
        left: 2%;
        height: 100%;
        width: 100%;
    }
    .produceText:before {
        border-width: 46px 100px 0 100px;
    }
    .group {
        padding: 60px 0;
    }
    .groupBox {
        width: auto;
        padding: 20px 20px 0 20px;
        margin: 0 2% 40px;
    }
    .simulation .simulation2 th {
        padding: 10px;
        font-size: 1.6rem;
    }
    .simulation td {
        padding: 10px;
        font-size: 1.2rem;
    }
    .groupBox ul {
        justify-content: space-between;
    }
    .groupBox li {
        width: 46%;
        margin-bottom: 20px;
        margin-right: 0;
    }
    .groupBox h3 {
        font-size: 1.4rem;
    }
    .groupBox p {
        font-size: 1rem;
    }
    .produceTitle {
        font-size: 1.9rem;
    }
    .produceInner .produceBox li {
        font-size: 1.7rem;
        padding-left: 40px;
    }
    .produceInner .produceBox li:before {
        width: 20px;
        height: 20px;
        background: url(../img/fc/check.png) no-repeat;
        background-size: 20px auto;
    }
    .produceInner {
        background-size: cover;
        background-position: left;
        background-repeat: no-repeat;
        background-image: url(../img/fc/fc-bg@2x.png);
        height: 261px;
        position: relative;
    }
    .produceInner .produceBox li:last-child {
        margin-bottom: 0;
    }
    .produce {
        padding-bottom: 40px;
    }
    .produceText {
        margin-top: 10px;
    }
    .produceText {
        padding-top: 60px;
    }
    .produceText p {
        font-size: 1.8rem;
        display: block;
        border-radius: 6px;
        padding: 3px;
        margin: 0 2%;
    }
    .produceText span {
        padding: 20px 0;
        border-radius: 6px;
        line-height: 1.6;
    }
    .shop {
        padding-bottom: 40px;
    }
    .shop .shopTitle {
        display: block;
        font-size: 1.8rem;
        padding: 30px 0;
        margin-bottom: 30px;
        width: auto;
    }
    .shop .flexBox {
        flex-direction: column;
        margin-bottom: 40px;
    }
    .shop .flexBox > div {
        padding: 20px 5%;
    }
    .shopText {
        font-size: 1.7rem;
        line-height: 2;
    }
    .shopText span {
        font-size: 2rem;
    }
    .shopList {
        font-size: 1.4rem;
    }
    .shop .flexBox .flexBoxLeft {
        border-right: none;
    }
    .shop1 {
        font-size: 1.2rem;
    }
    .shop2 {
        font-size: 1.6rem;
    }
    .month .monthTitle {
        font-size: 1.8rem;
        padding: 40px 0;
        margin-bottom: 40px;
        width: 80%;
    }
    .monthInner h3 {
        font-size: 1.6rem;
        width: 50%;
        border-bottom: 2px solid #5A7691;
        margin-bottom: 20px;
    }
    .monthInner p {
        font-size: 1.4rem;
        margin: 0 2% 40px;
    }
    .monthInner h4 {
        font-size: 1.6rem;
        margin-left: 2%;
    }
    .monthInner .logoUse {
        margin-bottom: 40px;
    }
    .month {
        padding: 40px 0;
    }
    .simulation .simulationTitle {
        font-size: 1.8rem;
        padding: 40px 0;
        margin-bottom: 40px;
        width: 80%;
    }
    .simulation {
        padding: 60px 0;
    }
    .simulation h3 {
        font-size: 1.6rem;
    }
    .simulation h3:before,
    .simulation h3:after {
        height: 30px;
        width: 20%;
    }
    .simulation table {
        width: 96%;
        font-size: 1.2rem;
        margin: 0 auto 60px;
    }
    .simulationText .staff:before {
        width: 34px;
        height: 25px;
        background: url(../img/fc/icon3.png) no-repeat;
        background-size: 34px auto;
    }
    .simulationText {
        font-size: 1.2rem;
    }
    .simulationText .bed:before {
        width: 35px;
        height: 24px;
        background: url(../img/fc/icon4.png) no-repeat;
        background-size: 35px auto;
    }
    .simulationText .bed {
        padding-left: 45px;
    }
    .simulationText .staff {
        padding-left: 45px;
    }
    .simulation .simulation2 th:first-child {
        text-align: center;
    }
    .simulationPrice {
        font-size: 1.6rem;
    }
    .simulationPrice .ex {
        text-align: center;
    }
    .contactBox .contactText {
        font-size: 1.4rem;
    }
    .contactBtn a {
        font-size: 1.9rem;
        padding: 10px 0;
        display: block;
        margin: 0 2%;
    }
    .simulationPrice {
        margin: 0 auto 40px;
    }
    .groupTitle {
        font-size: 1.6rem;
        padding: 40px 0;
        margin-bottom: 40px;
        width: 80%;
    }
    .groupTitle img {
        width: 37%;
    }
    .assocation .assocationTitle {
        font-size: 1.6rem;
        padding: 40px 0;
        margin-bottom: 40px;
        width: 80%;
    }
    .assocation .assocationText {
        font-size: 1.2rem;
        width: auto;
        margin: 0 2% 50px;
        line-height: 2;
    }
    .assocation {
        padding: 60px 0;
    }
    /* contact */
    .contactFlow {
        margin: 0 2% 50px;
    }
    .stepBox .stepText {
        font-size: 1.2rem;
    }
    .stepBox .step {
        font-size: 1rem;
        text-align: center;
    }
    .stepBox {
        min-height: 71px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .stepDes {
        font-size: 1rem;
    }
    .contactFlow li:after {
        border: 3px solid;
        width: 14px;
        height: 14px;
        top: 30px;
        right: -18px;
        border-color: #4B4B4B #4B4B4B transparent transparent;
        transform: rotate(45deg);
    }
    .contactCaution {
        width: 96%;
        padding: 15px 10px;
    }
    .contactCaution h3 {
        font-size: 1.4rem;
    }
    .contactCaution p {
        font-size: 1rem;
    }
    .qaTop .ex {
        width: 96%;
        font-size: 1rem;
    }
    .contactForm {
        width: auto;
        margin: 0 2%;
    }
    .contactForm table {
        width: 100%;
    }
    .contactForm th {
        font-weight: normal;
        font-size: 1.2rem;
        padding: 15px 10px;
        width: 14em;
        vertical-align: top;
    }
    .contactForm span.required {
        font-size: 1rem;
    }
    .contactForm .option {
        font-size: 1rem;
    }
    .qaLogo h1 {
        text-align: center;
        margin-bottom: 40px;
    }
    .contactForm td {
        padding: 10px;
        font-size: 1.2rem;
    }
    .privacySubTitle {
        font-size: 1.8rem;
        padding: 0 0 0 15%;
    }
    .privacySubTitle:before {
        height: 30px;
        width: 10%;
    }
    .privacySubTitle:after {
        height: 30px;
        width: 30%;
    }
    .privacyInner {
        margin: 50px 2%;
        width: auto;
    }
    .privacyInner dl {
        padding: 10px;
    }
    .privacyInner dt {
        font-size: 1.2rem;
        line-height: 1.6;
        padding: 0 0 20px;
    }
    .privacyInner dd {
        padding: 20px 0;
        line-height: 1.6;
        font-size: 1.2rem;
    }
    .privacyInner .closeBtn a {
        font-size: 1.2rem;
    }
    .privacyInner .closeBtn {
        right: 40%;
    }
    .privacy {
        padding: 60px 0;
    }
    .responsible .privacySubTitle:after {
        width: 60%;
    }
    .contactWindow p {
        font-size: 1.2rem;
        padding: 10px;
        display: block;
    }
    .contactForm .cautionText {
        font-size: 1.2rem;
    }
    .contactForm .submit,
    .contactForm .submitBtn input[type="submit"] {
        margin-bottom: 20px;
    }
    /* prepare */
    .prepare {
        margin: 100px 0;
        text-align: center;
        font-size: 2rem;
    }
    /* 20200216 追記 */
    .contactForm input ,
    .contactForm textarea{
        font-size: 1.6rem;
    }
    .contactForm .long, .contactForm textarea {
        width: 100%;
    }
    .contactForm th {
        font-weight: normal;
        font-size: 1.2rem;
        padding: 15px 10px;
        width: 100%;
        display: block;
        vertical-align: top;
    }
    .contactForm td {
        width: 100%;
        display: block;
        padding: 10px;
        font-size: 1.2rem;
    }
    .contactForm .ex {
        font-size: 1rem;
    }
    .contactForm .name {
        width: 87%;
    }
	.productChoice label {
		width: 100%;
		font-size: 1.5rem;
	}
    /* 20210701追記 */
    .bottomBannerLink {
        width: 94%;
        margin: 0 auto;
    }
}
   /* 404ページ */
   p.hyperTtl404 {
    font-size: 2rem;
    font-weight: normal;
    position: relative;
    padding-bottom: 30px;
    margin-bottom: 40px;
}

.m404m {
    margin-top: 30px;
}

@media screen and (max-width: 835px) {
.top404 .anc {
    flex-direction: column;
    margin: 0 2%;
}
}

.top404 {
    margin-bottom: -100px;
    margin-top: -20px;
    }

@media screen and (max-width:835px) {
 .top404 {
     margin-bottom: 0;
     margin-top: 0;
 }
}
.con404{
    margin: 0 10px 20px;
    }

 /*404ページ*/
.img404{
   filter: drop-shadow(5px 5px 5px #aaa);
   margin-left: 10px;
   margin-right: 10px;
}

 /*PCでは無効（改行しない）*/
.sma{
    display: none;
}
/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:835px) {
    .sma{
        display: block;
    }
}