@charset "utf-8";


/* -----------------------------------------------------------
main
------------------------------------------------------------*/
@media screen and (min-width:751px) {
  .sp {
    display: none!important;
  }
}
@media screen and (max-width:750px) {
  .pc {
    display: none!important;
  }
  #main {
    margin-top:50px;
  }
}

/*--------------------------------------------
home
----------------------------------------------*/
#home-mv {
  text-align: center;
  background-color: #6EC4F9;
}

.home-mv-inner {
  width:100%;
  max-width:1440px;
  margin:0 auto;
}
#home-mv,
.home-mv img {
  max-height: 652px;
}
.home-mv img {
  object-fit: cover;
  height: 100%;
  width:auto;
}
.home-info * {
  color: #fff;
  text-decoration: none;
  font-size: 96%;
  margin:0;
  line-height: 1.4;
  font-feature-settings: 'palt';
}
.home-info .date {
  margin-right: 1em;
}
.ttl-bd-area {
  text-align: center;
  margin:0 auto 1em;
}
.ttl-bd-area img {
  width:70%;
  max-width:600px;
}
.home-read-txt {
  max-width:1100px;
  width:100%;
  margin:0 auto 1em;
  text-align: center;
}
.home-read-txt * {
  font-size: 1em;
}
.bd-b {
  border-bottom:7px solid #154F9F;
  padding-bottom:0.1em;
}
.ttl-dot-sub {
  text-align: center;
  font-size: 1.2em;
  letter-spacing: 0.2em;
  line-height: 1.5;
  font-weight: bold;
  margin:0 0 1em;
}
.ttl-dot {
  text-align: center;
  padding:0 0 0.7em;
  position: relative;
  margin-bottom:1.1em;
}
.ttl-dot:after {
  content:"";
  position: absolute;
  left:0;
  right:0;
  margin:auto;
  bottom:0;
  width:215px;
  height: 15px;
  background: url(../img/common/ttl-dot.svg)no-repeat center bottom;
  background-size: 4em auto!important;
}
.ttl-dot.y:after {
  background: url(../img/common/dot-y.svg)no-repeat center bottom;
  background-size: 4em auto!important;
}
.good-price {
  margin-bottom:-1em;
}
.ttl-side {
  display: flex;
  justify-content: center;
}
.ttl-side span {
  font-size: 1em;
  padding:0 1.8em 0 1.6em;
  position: relative;
}
.ttl-side span {
  font-size: 1em;
}
.ttl-side span * {
  font-size: 1em;
}
.ttl-side span:before {
  content:"";
  position: absolute;
  bottom:0;
  left:0;
  width:1em;
  height: 1.2em;
  background:url(../img/common/side-l.svg)no-repeat 0 0;
  background-size:contain!important;
}
.ttl-side span:after {
  content:"";
  position: absolute;
  bottom:0;
  right:0;
  width:1em;
  height: 1.2em;
  background:url(../img/common/side-r.svg)no-repeat 0 0;
  background-size:contain!important;
}
.ttl-area .ttl-side span:before {
  background:url(../img/common/side-lf.svg)no-repeat 0 0;
  background-size:contain!important;
}
.ttl-area .ttl-side span:after {
  background:url(../img/common/side-rf.svg)no-repeat 0 0;
  background-size:contain!important;
}
.ttl-side.p span:before {
  background:url(../img/common/side-lp.svg)no-repeat 0 0;
  background-size:contain!important;
}
.ttl-side.p span:after {
  background:url(../img/common/side-rp.svg)no-repeat 0 0;
  background-size:contain!important;
}
.card-box {
  background-color: #fff;
  border-radius: 1.9em;
  padding:3% 1em 3%;
  text-align: center;
}
.card-thumb {
  width:78%;
  max-height: 191px;
  height: 15rem;
  margin:0 auto 1em;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  line-height: 1;
}
.card-thumb img {
  width:100%;
}
.card-box-ttl {
  color: #222;
  font-size: clamp(1.1vw,calc(25/1200*100vw),1.5em);
  height: 2.2em;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  line-height: 1;
  border-bottom:1px solid #ccc;
  margin:0 0 0.1em 0;
}
.month,
.barlow {
  font-family: "Barlow Semi Condensed", sans-serif;
  font-weight: 700;
  font-style: normal;
  line-height: 1;
}
.card-box a {
  display: block;
}
.card-box p {
  margin:0;
  line-height: 1.1;
}
.card-box .month {
  font-size: clamp(3.5vw,calc(54/1200*100vw),4.2em);
}
.card-box .bonus {
  font-size: clamp(1.1vw,calc(25/1200*100vw),1.5em);
  margin-top:0.5em;
}
/* .pat-dot {
  background:url(../img/common/pat-dot.png) repeat-y 0 0;
  background-size:cover;
} */
.card-box .month {
  color: #D40012;
  width:100%;
  text-align: right;
  /* padding: 0 1.1em 0 1.2em; */
  padding:0 0.8em 0 0;
  background: url(../img/common/month.svg)no-repeat 0 70%;
  background-size:contain;
}
.card-box .bonus {
  width:100%;
  text-align: left;
  font-weight: bold;
  padding:0 0 0 5.5em;
  background: url(../img/common/bonus.svg)no-repeat 0 70%;
  background-size:contain;
}
.card-box p.btn-more {
  margin-left:auto;
  margin-right:auto;
  margin-top:2em;
}
#home-plan figure + figure {
  margin:2em 0 0;
}
.ttl-area {
  max-height: 174px;
  height: calc(147/1000*100vw);
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  line-height: 1.2;
  background-color: #154F9F;
  padding-bottom:1.5em;
}
.ttl-area * {
  color: #fff;
  font-weight: bold;
}
.ttl-area .ttl-side {
  position: relative;
  text-align: center;
  display: inline-block;
}
.ttl-area .ttl-side:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: -0.6em;
    width: 215px;
    height: 15px;
    background: url(../img/common/dot-y.svg) no-repeat center bottom;
    background-size: 4em auto!important;
}
.ttl-area .ttl-dot {
  margin:0;
}
.ttl-area.pb0 {
  padding-bottom:0;
}
.box {
  background-color: #fff;
  border:3px solid #154F9F;
  border-radius: 1.5em;
  padding:3em 2em 3em;
}
.box + .box {
  margin-top:3em;
}
.box-inner {
  max-width:1000px;
  margin:0 auto;
}
.page-block h2,
.box-ttl {
  background-color: #154F9F;
  border-radius: 0.3em;
  color: #fff;
  margin:0 0 1em;
  padding:0.4em 0.8em 0.3em;
  line-height: 1.4;
}
.box-ttl * {
  font-size: 1em;
}
.box-ttl .icn {
  margin-right:0.8em;
}
.note-book {
  background-color: #fff;
  border-radius:1em;
  border:5px solid #ccc;
  padding:1.5em 1.5em 1.5em;
}
.note-book p {
  line-height: 1.5;
  font-weight: 500;
}
#home-reason .box {
  margin-bottom:3em;
}
p.reason02-img {
  margin-top:-10%;
  position: relative;
}
.mat {
  background-color: #fff;
  border-radius: 1.5em;
}
.mat .mat-inner {
  width:1100px;
  width:100%;
  margin:0 auto;
}
.voice-area li {
  border:3px solid #FF7F29;
  border-radius: 0.8em;
  background-color: #fff;
}
.voice-area dt {
  background-color: #FF7F29;
  color: #fff;
  text-align: center;
  padding:0.3em;
  font-size: 1.3em;
  font-weight: bold;
}
.voice-area dd {
  padding:1em;
}
.voice-area figure {
  width:80%;
  margin:0 auto;
  text-align: center;
}
.voice-txt-ttl {
  font-size: 1.2em;
  margin:0.5em 0 0.3em;
}
.voice-txt p {
  margin:0;
  font-size:0.9em;
  line-height: 1.5;
}
.card-box {
  box-shadow: 0.2em 0.2em 0.8em rgba(0,0,0,0.16);
}
.plan-wrap li + li {
  margin-top:2em;
}
.page-block h2:first-child {
  margin-top:0;
}
.page-block h2.ttl-base {
  background: none;
  color: #111;
  font-size: 2.2em;
  border-bottom: 3px solid #ddd;
  border-radius: 0;
}
.page-block h4,
.ttl01 {
  border-bottom: 2px solid #ddd;
  padding: 0 0 0.3em 0;
  margin: 2em 0 0.5em;
}
.page-block h4 *,
.ttl01 * {
  font-size: 1em;
}

.page-block .wp-block-separator {
  border-top:4px dotted #ccc;
  margin:3em 0;
}

/*----------------------------*/

  @media screen and (min-width:751px) {
  .ttl-bd {
    border-width:10px;
  }
  .home-point {
    display: flex;
    justify-content: space-between;
    gap:0 3%;
  }
  .home-point li {
    width:30%;
  }
  .home-point li:nth-child(2) {
    width:33%;
  }
  .home-read-txt {
    font-size:clamp(2vw,calc(35/1200*100vw),2.5em);
    letter-spacing: 0.1em;  
  }
  .ttl-dot,
  .ttl-side {
    font-size:clamp(2.5vw,calc(45/1200*100vw),2.8em);
    letter-spacing: 0.1em;
  }
  .ttl-area span {
    font-size:1em;
  }
  .card-wrap {
    display: flex;
    flex-wrap:wrap;
    margin:0 -2%;
  }
  .card-box {
    width:29%;
    margin:0 2% 2.5em;
  }
  .box-ttl {
    font-size: clamp(2vw,calc(34/1200*100vw),2.4em);
  }
  .box-ttl.s {
    font-size: clamp(1.8vw, calc(30 / 1200 * 100vw), 2.2em);
  }
  .page-block h2 {
    font-size: 2em;
    margin-top:1.8em;
  }
  .voice-area {
    display: flex;
    flex-wrap:wrap;
    margin:0 -1.5%;
  }
  .voice-area li {
    width:30.333%;
    margin:0 1.5% 2em;
  }
  .ttl-bd-area {
    max-width:70%;
  } 
  .ttl-bd {
    border-bottom:5px solid #154F9F;
    padding:0 1rem 2.5rem;
  }
  .box.-pt {
    padding-top:2em;
  }
  .mat {
    padding:2em;
  }
  .page-block .ttl-bd2,
  .ttl-bd2 {
    border-bottom: 3px solid #154F9F;
    border-top: 3px solid #154F9F;
    margin: 1.5em auto;
    font-size: 1.6em;
    padding: 0.5em 0;
    text-align: center;
    line-height: 1.5;
  }
  .page-block .ttl-bg,
  .ttl-bg {
    background-color: #e0e0e0;
    color: #154f9f;
    padding: 0.5em;
    border-radius: 0.3em;
    font-size: 1.5em;
    margin: 1em 0 0.8em;
  }
  .page-block h3 {
    background-color: #e0e0e0;
    color: #154f9f;
    padding: 0.5em 0.8em;
    border-radius: 0.3em;
    font-size: 1.5em;
    margin: 1.5em 0 0.8em;
  }
  .page-block h4,
  .ttl01 {
    font-size: 1.3em;
  }
}


@media screen and (max-width:750px) {
  .page-block .ttl-bd,
  .ttl-bd {
    border-bottom:4px solid #154F9F;
    padding:0 1rem 0.7em;
  }
  .page-block h2 {
    font-size: 1.1em;
  }
  .page-block .ttl-bd2,
  .ttl-bd2 {
    border-bottom: 2px solid #154F9F;
    border-top: 2px solid #154F9F;
    margin: 1.5em auto;
    font-size: 1.1em;
    padding: 0.5em 0;
    text-align: center;
    line-height: 1.5;
  }
  .ttl-bg {
    background-color: #e0e0e0;
    color: #154f9f;
    padding: 0.5em;
    border-radius: 0.3em;
    font-size: 1.1em;
    margin: 1em 0 0.8em;
  }
  .page-block h2.ttl-base {
    font-size: 1.3em;
  }
  .page-block h3 {
    background-color: #e0e0e0;
    color: #154f9f;
    padding: 0.5em;
    border-radius: 0.3em;
    font-size: 1.1em;
    margin: 1.5em 0 0.8em;
  }
  #home-read .container {
    padding-top:0;
    width:95%;
  }
  .home-point {
    display: flex;
    justify-content: space-between;
    gap:0 1.5%;
  }
  .home-point li {
    width:31%;
  }
  .home-point li:nth-child(2) {
    width:34%;
  }
  .bd-b {
    border-width:4px;
  }
  .home-read-txt {
    font-size:1.1em;
    margin-bottom:2em;
  }
  .ttl-dot-sub {
    font-size: clamp(3vw,calc(14/750*100vw),1.1em);
    padding-top:1.5em;
    letter-spacing: 0;
    margin-bottom:0.5em;
  }
  .ttl-dot,
  .ttl-side span {
    font-size: clamp(5.5vw,calc(17/750*100vw),1.6em);
  }
  .ttl-dot * {
    font-size: 1em;
  }
  #home-recomend {
    padding-top:1.5em;
  }
  .card-wrap {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -2%;
  }
  .card-box {
    border-radius: 0.9em;
    padding: 4% 0.8em 5%;
    text-align: center;
  }
  .card-box {
    width: 46%;
    margin: 0 2% 1em;
  }
  .card-thumb {
    width: 100%;
    max-height: 191px;
    height: 10rem;
  }
  .card-box-ttl {
    font-size: 3.5vw;
  }
  .card-box .month {
    font-size: 8vw;
  }
  #home-recomend .container {
    width:94%;
  }
  .card-box .bonus {
    font-size: 3.5vw;
    padding-left:5em;
  }
  .btn-more {
    font-size:0.8em;
    width: 140px;
    height: 34px;
  }
  .plan-wrap {
    padding-top:1em;
  }
  .ttl-area {
    height: 75px;
    padding-bottom:1em;
  }
  .home-present {
    padding-top:1em;
  }
  .box {
    border-width:2px;
    border-radius: 0.9em;
    padding: 1.5em 1em 2em;
  }
  .home-reason p.fs26 {
    font-size: 1.1em;
    text-align: left;
    letter-spacing: 0;
  }
  .note-book {
    padding:1em 1em 1em;
  }
  #home-reason .box {
    margin-bottom:1.5em;
  }
  .home-reason p.fs24 {
    font-size: 1em;
  }
  .voice-area li {
    margin-bottom:1.5em;
  }
  .flex-img {
    margin-bottom:1rem;
  }
  p.txt2 {
    margin-bottom:0;
  }
  .ar img {
    width:24%;
    margin:0 auto;
  }
  .mat {
    padding:1.5em;
  }
  .page-block h4,
  .ttl01 {
    font-size: 1.1em;
  }
}

/* home-info
------------------------------------------------------------*/
@media screen and (min-width:751px) {
  .home-info-ttl .btn {
    font-size: 90%;
  }
  .home-info {
    display: flex;
    justify-content: center;
    align-items: center;
    gap:0 3%;
    height: 90px;
  }
  .home-info dl {
    display: flex;
    align-items: center;
  }
  .home-info dd {
    padding-left:1em;
  }
}

@media screen and (max-width:750px) {
  .home-info {
    padding:1rem 0;
  }
  .home-info .btn {
    width: 120px;
    height: 27px;
    margin-bottom: 5px !important;
  }
  .home-info-ttl {
    display: flex;
    align-items: center;
  }
  .home-info-ttl .date {
    margin:0 0 3px 1rem;
  }

  .bg-flow:before, .pat3:before,
  .bg-flow:after, .pat3:after {
    height: 80%;
    max-height: inherit;
    background-size:cover;
  }
  .blog-archive {
    padding-top:2rem;
  }
}


/* cta
------------------------------------------------------------*/
.cta-top {
  text-align: center;
  background: url(../img/common/town.png) repeat-x 0 3em;
  background-size: auto;
  padding:10em 0 4em;
  position: relative;
}
.cta-area * {
  text-decoration: none;
}
.cta-bottom {
  background-color: #154F9F;
  padding:3.5em 0;
}
.cta-top-txt {
  width:90%;
  margin:0 auto;
}
.cta-inner {
  max-width:1180px;
  width:90%;
  margin:0 auto;
  position: relative;
}
.cta-ttl {
  position: relative;
  text-align: center;
  margin-bottom:1em;
}
.cta-ttl * {
  letter-spacing: 1px;
  font-size: 1em;
  padding: 0 1.8em 0 1.6em;
  color: #fff;
  position: relative;
}
.cta-ttl span:before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 1em;
    height: 1.2em;
    background: url(../img/common/side-lf.svg) no-repeat 0 0;
    background-size:contain!important;
}
.cta-ttl span:after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 1em;
    height: 1.2em;
    background: url(../img/common/side-rf.svg) no-repeat 0 0;
    background-size:contain!important;
}
.cta-btn img {
  box-shadow: 3px 4px 0px rgba(0,0,0,0.85);
  border-radius: 0.8em;
}

.cta-circle {
  position: absolute;
  top:-1em;
  left:-3em;
  z-index: 1;
  max-width:15vw;
}
.cta-btn {
  display: flex;
  justify-content: center;
  gap:0 3%;
}
.cta-btn li {
  width: 47%;
  max-width:390px;
}

@media screen and (min-width:751px) {
  .cta-ttl * {
   font-size: clamp(1.8vw,calc(30/1200*100vw),2em);
  }
  .cta-inner .mat {
    padding:3em;
  }
  .mat,.radius {
  border-radius: 1em;
  }

}


@media screen and (max-width:750px) {
  .cta-inner .mat {
    padding:1em;
  }
  .cta-circle {
    top: 2em;
    left: -1.1em;
    max-width: 19vw;
  }
  .cta-inner p {
    font-size: 0.85em;
    padding-left: 3.5em;
  }
  .mat, .radius {
    border-radius: 0.9em;
  }
  .cta-bottom {
    padding-top:2em;
    padding-bottom:2.5em;
  }
  .cta-top {
    background-size:100%;
    padding:6em 0 4em;
    background-position:0 2em;
  }
}

/* common
----------------------------------------------*/
.in {
  max-width:1000px;
  margin:0 auto!important;
  width:100%;
  position: relative;
}
.shadow {
  box-shadow: 0.2em 0.2em 0 rgba(0,0,0,0.15);
}
.movie-area {
  max-height:540px;
  height:calc(540/1400*100vw);
  overflow: hidden;
} 
.movie-area iframe {
  bottom:0;
}

/* blog-archive
----------------------------------------------*/
.blog-archive li {
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0,0,0,0.15);
  border-radius: 10px;
  padding:1em;
}
.blog-archive {
  display: flex;
  flex-wrap:wrap;
  margin:0 -1% 0;
}
.blog-archive a {
  text-decoration: none;
  color: #333;
}
.blog-archive figure {
  width:100%;
}
.blog-archive figure img {
  object-fit: cover;
  width:100%;
  max-height:155px;
  height:calc(155/1400*100vw);
  border-radius: 0.7em;
}
.blog-archive-detail {
  margin:0.5em 0 0;
}
.blog-archive p {
  margin:0;
  font-size: 90%;
  line-height: 1.4;
}
.blog-archive-ttl {
  font-size: 1em;
  line-height: 1.4;
  font-feature-settings: "palt";
  margin:0.3em 0 0.5em;
}
.blog-archive .day-cate {
  margin:0.5em 0;
}
.blog-archive .day {
  color:#999;
  font-weight: bold;
  font-size: 0.9em;
}
.cate {
  background:#fff;
  color: #D40012;
  border:1px solid #D40012;
  padding: 0.1em 1em;
  font-weight: bold;
  font-size:0.85em;
  display: inline-block;
  border-radius: 10em;
}
.single-detail .day-cate {
  margin-bottom:2rem;
}
.archive-ttl {
  margin-bottom:1rem;
}
.day-cate {
  display: flex;
  flex-wrap:wrap;
}
.day {
  font-size: 1.4rem;
  color: #666;
  font-weight: bold;
  margin-right: 1rem;
  margin-top: 0.1em;
}
.label {
  font-size:12px;
  padding:3px 0.8rem;
  color:#fff;
  background-color: #4B4B4B;
  line-height: 1;
  font-weight: bold;
  text-align:center;
  height:2em;
  display: flex;
  align-items: center;
  justify-content: center;
}


@media screen and (min-width:751px) {
/* common
----------------------------------------------*/
.anchor {
    display:block;
    margin-top:-100px;
    padding-top:100px;
  }
  .w48 {
    width:48%;
  }
  .w30 {
    width:30%;
  }
  .w70 {
    width:70%;
  }
  .w35 {
    width:35%;
  }
  .w65 {
    width:65%;
  }
  .w400 {
    max-width:400px;
    margin:auto;
    text-align: center;
  }
  .inner {
    padding:3rem;
    width:80%;
    margin:0 auto!important;
    position: relative;
  }
  .col3-area {
    margin:0 -1.5%;
  }
  .col3 {
    width:30.333%;
    margin:0 1.5%;
  }
  .col3 li {
    width:31%;
  }
  .col4 li {
    width:23%;
  }
  .col3-1 figure,
  .col3-1 .flex-img {
    width:34%;
  }
  .feature-box .flex-txt,
  .col3-1 .flex-txt {
    width:62%;
  }
  .col4-1 figure,
  .col4-1 .flex-img {
    width:26%;
  }
  .col4-1 .flex-txt {
    width:72%;
  }
  .w3-1 {
    width:30%;
  }
  .w3-2 {
    width:65%;
  }
  .col2 figure,
  .col2 .flex-txt {
    width:48%;
  }

/* blog
----------------------------------------------*/
  .blog-archive li {
    width:23%;
    margin:0 1% 3em;
  }
  .archive-thumb img {
    object-fit: cover;
    width:100%;
    max-height:220px;
    height:calc(220/1400*100vw);
  }
}
@media screen and (max-width:1400px) {
  .in {
    width:90%;
  }
}

/* blog SP
----------------------------------------------*/
@media screen and (max-width:750px) {
.archive-thumb img {
    object-fit: cover;
    width: 100%;
    max-height: 180px;
    height: calc(180 / 750 * 100vw);
  }

}

/* car slide
----------------------------------------------*/
@media screen and (min-width:751px) {
  .car-main {
      display: flex;
      justify-content: space-between;
  }
  .car-img,
  .car-detail {
    width:50%;
  }
}

@media screen and (max-width:750px) {

}

/* ----------------------------------------------
商品詳細　slider
-------------------------------------------------*/
.detail-wrap {
  margin:3em 0 3em;
}
.detail-flex {
  display: flex;
  justify-content: space-between;
}
#slider .slider-container{
  width:50%;
  margin:0 auto;
}
#thumbs .slick-slide{
  padding:2px;
}
#thumb .slick-slider {
  margin:0 -2px;
}
#slider .slick-slide img {
  width:100%;
  height: 100%;
}
#thumbs img {
  cursor: pointer;
}
#thumbs .slick-list {
  max-width:100%;
  margin:0;
}
.mfp-container {
  max-width: 900px;
  margin: 0 auto;
  right: 0;
  padding: 0 60px;
}
.modal-inner img,
img.mfp-img {
  width:100%;
}
.mfp-close-btn-in .mfp-close {
  color: #fff;
}
.modal-inner {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  margin: 0 auto;
  padding:40px 60px;
}
button.mfp-close {
  right:44px;
}
.modal-inner * {
  color: #fff;
}

#thumbs .slick-track {
  transform: unset !important;
  width: 100% !important;
  display: flex;
  /* justify-content: space-between; */
  flex-flow: row wrap;
  align-items: center;
}
#thumbs .slick-slide {
    display: block!important;
    float: none !important;
    flex: 0 0 30%;
}
.car-img .slick-track {
  display: flex;
  align-items: center;
}


/* -----------------------------------------------------------
lower
------------------------------------------------------------*/
#kv,
.kv-inner {
  position: relative;
  text-align: center;
}
#kv {
    background: url(../img/common/town.png) repeat-x 0 bottom;
    background-size: auto;
    margin-bottom:1.2em;
}
.kv-inner {
  max-width: 1100px;
  width: 90%;
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  align-content: center;
  line-height: 1.2;
  flex-wrap: wrap;
  z-index: -1;
}
.kv-ttl *{
  letter-spacing: 0.1em;
  font-size: 1em;
}
.kv-ttl {
  margin:0 0 0.6em;
  font-weight: bold;
}
.kv-ttl .icn {
  background: url(../img/common/icn-car.svg)no-repeat 0 center;
  display: inline-block;
  padding:0 0 0 1.8em;
  background-size: 1.3em;
}
.carlist-mv-inner,
.flat7-mv-inner {
  max-width:1092px;
  margin:0 auto;
}
.carlist-wrap,
.flat7-top,
.flat7-bottom {
  background: url(../img/common/pat-mv.png)no-repeat center 3em;
  background-color: #6EC4F9;
  position: relative;
}
.btc-ttl {
  margin:0 auto;
  text-align: center;
}
.line-bdf {
  font-size: 1em;
  font-weight: bold;
  line-height: 1.6;
  display:inline-block;
  border-bottom:10px solid rgba(255,255,255,0.7);
  padding-bottom:0.2em;
}
.list-1em.s li {
  font-size: 0.95em;
  margin:0 0 0.3em 1em;
  text-indent: -1em;;
}
.car-main {
  margin-bottom:3em;
}
.car-ttl {
  text-align: center;
  background-color: #154F9F;
  border-radius: 0.4em;
  font-size: 1em;
  padding:0.3em;
  margin-bottom:1em;
}
.car-ttl * {
  color: #fff;
}
.car-ttl .maker {
  vertical-align: 0.4em;
  margin-right: 0.5em;
}
.car-ttl-area p {
  font-weight: bold;
  margin:0;
}
.car-ttl-inner {
  background-color: #fff;
  border-radius: 1em;
  padding:1.5em;
}
.month-price-area,
.bonus-price-area {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap:0 2%;
}
.yen-zei {
  margin-bottom:0.7em;
}
.bonus-price-area {
  margin:0.8em 0;
}
.bonus-price {
  font-size: 2em;
  font-weight: bold;
  margin:0;
  line-height: 1;
}
.bonus-price-sub {
  /* font-size: 0.6em; */
  font-weight: bold;
}
.price-plan-area {
  text-align: center;
}
.car-option {
  border: 2px solid #154F9F;
  margin:1.5em 0;
}
.car-option dt {
  background-color: #154F9F;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 1.2em;
  padding:0.3em;
}
.car-option dd {
  color: #154F9F;
  font-weight: bold;
  font-size: 1.1em;
  padding:0.8em;
}
.car-features {
  border: 1px solid #ccc;
  padding: 1em;
  margin:1.5em 0;
}
.car-features * {
  font-size: 1.1em;
}
.car-features .car-features-ttl {
  font-size: 1.2em;
  font-weight: bold;
  margin:0 0 0.5em;
}
.car-recommend {
  border:3px solid #45BC90;
  border-radius: 1.5rem;
}
.car-recommend.blue {
  border-color: #154F9F;
}
.car-rec-ttl {
  display: flex;
  justify-content: center;
  background-color: #45BC90;
  color: #fff;
  text-align: center;
  font-weight: bold;
  font-size: 2.2em;
  letter-spacing: 1px;
  padding:0.5em;
  border-radius: 1rem 1rem 0 0;
}
.car-rec-txt {
  padding:1.5em 1.5em;
}
.car-rec-list li {
  position: relative;
  margin:0 0 0.5em 0;
  line-height: 1.6;
}
/* .car-rec-list li:before {
  content:"";
  position: absolute;
  top:0.3em;
  left:0;
  background-color: #45BC90;
  width:0.7em;
  height: 0.7em;
  border-radius: 10em;
} */
.car-recommend,
.car-reason,
.car-strong {
  margin-bottom:3em;
}
.car-reason {
  background-color: #FFEFE9;
  border: 3px solid #FF593C;
  padding:1.5em 2em;
  border-radius: 1em; 
}
.car-reason .box-ttl {
  background-color: #FF593C;
}
.car-reason-box {
  border: 2px solid #FF593C;
  background-color: #fff;
  display: flex;
  justify-content: space-between;
  border-radius: 1rem;
  margin:1.5em 0;
}
.car-reason-box figure {
  background-color: #FF593C;
  display: flex;
  align-items: center;
  justify-content: center;
}
.car-reason-txt {
  width:calc(100% - 5em);
}
.car-reason-ttl {
  color: #FF593C;
  font-weight: bold;
  margin: 0 0 0.3em;
}
.car-reason-txt {
  padding:1em 1.5em;
}
.car-reason-txt p {
  margin:0;
  font-size: 1.15em;
  line-height: 1.6;
}
.car-strong {
  background-color: #DFF0FF;
  border: 3px solid #154F9F;
  padding:1.5em 2em;
  border-radius: 1em; 
}
.car-strong-box {
  border: 2px solid #154F9F;
  background:url(../img/common/check-b.svg)no-repeat 0.8em 1em;
  background-color: #fff;
  border-radius: 0.8rem;
  margin:1.5em 0;
  padding:1em 1.5em 1em 4.5em;
}
.car-strong-txt {
  margin:0;
  line-height: 1.6;
}
.car-strong-box p {
  margin:0;
}
.car-shop-img {
  max-width:540px;
  margin:2em auto 0;
}
.num-circle {
  font-size: 1em;
  margin-right: 0.5em;
  color: inherit;
  line-height: 1;
}
.ttl-check {
  border-bottom: 5px solid #D9D9D9;
  background: url(../img/common/check-b.svg) no-repeat 0 0.2em;
  margin: 0 0 0.5em;
  padding: 0.3em 0 0.3em 1.8em;
  text-align: left;
  background-size: 1.3em;
}
.ttl-check.red {
  background: url(../img/common/check-red.svg) no-repeat 0 0.2em;
}
.txt-m {
  font-weight: bold;
  margin:0;
  line-height: 1.6;
}
.mat-box {
  background-color: #E9F6FE;
  padding:1em;
}
.mat-box-ttl {
  text-align: center;
  margin-bottom:0.5em;
}
.mat-box p {
  line-height: 1.5;
  margin:0;
}
.ar {
  padding:1em 0;
  text-align: center;
}
.faq-area .faq-box:first-of-type {
  margin-top:0;
}
.faq-box {
  margin:3rem 0;
  border-bottom:1px solid #ccc;
}
.faq-box dt {
  padding:0.3em 1em 0.3em 6rem;
  color: #3C3C3C;
  font-weight: bold;
  line-height:1.3;
  position: relative;
  margin-bottom:0.4em;
}
.faq-box dd {
  padding:0.3em 1em 0.3em 6rem;
  margin:0;
  position: relative;
}
.faq-box dt:before,
.faq-box dd:before {
  content:"";
  position: absolute;
  left:0;
  width:3em;
  height: 100%;
}
.faq-box dt:before {
  background: url(../img/common/q.svg)no-repeat 0 center;
  top:0;
  bottom:0;
  margin:auto;
}
.faq-box dd:before {
  background: url(../img/common/a.svg)no-repeat 0 0;
  top:0;
}
.faq-detail {
  position: relative;
}
.local-nav {
  display: flex;
  justify-content: center;
  margin: 0 auto 4em;
  flex-wrap: wrap;
  gap: 1rem 1%;
}
.local-nav li {
  display: flex;
  text-align: center;
}
.icn-img {
  margin-right: 1em;
}
.map-btn a {
  font-size: 1.5em;
  padding-bottom:0.3em;
}
.pat-dot {
  position: relative;
}


@media screen and (min-width: 751px) {
  .kv-ttl {
    font-size: 4.4rem;
  }
  .kv-ttl.s {
    font-size: 4.4rem;
  }
  #kv, .kv-inner {
    height: calc(200 / 1400 * 100vw);
    min-height: 200px;
    height: 200px;
  }
  .btc-ttl {
    font-size: 1.8em;
  }
  .carlist-wrap {
    padding-bottom:5em;
  }
  .carlist-wrap:before,
  .flat7-top:before,
  .pat-dot:before {
    content:"";
    position: absolute;
    bottom:0;
    left:0;
    background: url(../img/common/pat-dot.png) repeat-y 0 0;
    width:100%;
    height: 87%;
    background-size:150%;
    z-index: 0;
  }
  .carlist-mv-inner {
    padding:6em 0 4em;
  }
  .carlist-archive .ttl-side {
    margin-bottom:1.5em;
  }
  .car-ttl .maker {
    font-size:1.3em;
  }
  .car-ttl .car-name {
    font-size:2.8em;
  }
  .car-ttl-area {
    height: calc(240 / 1400 * 100vw);
    min-height: 240px;
    height: 240px;
    background: url(../img/common/pat-mv.png) no-repeat center 0;
    background-color: #6EC4F9;
    padding:2.5em 0;
    text-align: center;
    position: relative;
  }
  .car-rec-txt {
    display: flex;
    justify-content: space-between;
    max-width:1000px;
    margin:0 auto;
  }
  .car-rec-list {
    width:72%;
  }
  .car-rec-txt figure {
    width: 28%;
    display: flex;
    align-items: flex-end;
  }
  .car-detail {
    margin:3em 0 0 5%;
  }
  .flat7-read-mat {
    margin:0 auto;
    text-align: left;
    padding:2em 3em;
  }
  .flat7-choose figure {
    width:31%;
  }
  .flat7-choose .flex-txt {
    width:69%;
    padding-left:4%;
  }
  .flat7-choose .flex-txt p {
    font-size: 1.4em;
    line-height: 2;
    font-weight: 500;
  }
  .mat-inner {
    padding:1.5em;
  }
  .mat-box-wrap {
    gap:0 2%;
  }
  .mat-box-wrap .mat-box {
    width:23%;
  }
  .flow-wrap .flex-img {
    width:36%;
  }
  .flow-wrap .flex-txt {
    width:64%;
    padding-left:5%;
  }
  p.txt2 {
    font-size: 2rem;
    line-height: 2;
    margin:0;
  }
  .company-access figure {
    width:48.6%;
  }
  .company-access .flex-txt {
    padding-left:5%;
    width:50%;
  }
  .ttl-normal {
    font-size: 2em;
    margin-bottom:0.5em;
  }
  .faq-box dt {
    font-size: 1.55em;
  }
  .faq-box dt:before,
  .faq-box dd:before {
    background-size:4rem auto!important;
  }
  .ttl-check {
    font-size: 2em;
  }
  .ttl-check.s {
    background-size: 1.2em;
    background-position:0 0.3em;
    font-size: 1.6em;
  }
  .txt-m {
    font-size: 1.5em;
  }
  .mat-box-ttl {
    font-size: 1.4em;
    margin-top:1rem;
  }
  .car-ttl-area p {
    font-size: 1.2em;
  }
  .car-detail .month {
    color: #D40012;
    font-size: clamp(5.5vw,calc(70/1200*100vw),7em);
    margin:0;
  }
  .price-plan {
    font-weight: bold;
    font-size: 1.2em;
  }
  .car-rec-list li {
    font-size: 1.3em;
  }
  .car-reason-box figure {
    width:5em;
  }
  .car-reason-ttl{
    font-size: 1.8em;
  }
  .car-strong-txt {
    font-size: 1.3em;
    background-size:2.5em;
  }
  .car-reason-read {
    font-size: 1.2em;
    text-align: center;
  }
}


/* 750以下 lower
------------------------------------------------------------*/
@media screen and (max-width: 750px) {
  .anchor {
    display: block;
    margin-top: -60px;
    padding-top: 60px;
  }
  #kv, .kv-inner, .kv-img {
    height: 100px;
  }
  #kv {
    background-position:center bottom;
    background-size:110%;
  }
  .kv-ttl {
    margin: 0;
    font-size: 2rem;
  }
  .kv-ttl.s {
    font-size: 1.8rem;
  }
  .kv-inner {
    padding:3rem 0;
  }
  .carlist-wrap {
    padding-bottom:2em;
  }
  .carlist-wrap {
    background-size:contain,0;
    background-repeat: no-repeat,no-repeat;
    background-position:center 3em, center 100em;
    position: relative;
  }
  .carlist-wrap:before {
    content:"";
    position: absolute;
    bottom:0;
    left:0;
    background: url(../img/common/pat-dot.png) repeat-y 0 0;
    width:100%;
    height: 87%;
    background-size:150%;
    z-index: 0;
  }
  .carlist-mv-inner {
    padding:2em 0 0;
  }
  .car-ttl-area {
    height: calc(160 / 750 * 100vw);
    min-height: 150px;
    background: url(../img/common/pat-mv.png) no-repeat center 0;
    background-color: #6EC4F9;
    padding:1.5em 0;
    text-align: center;
    position: relative;
    background-size: 100%;
  }
  .box-ttl .icn img {
    width:3em;
  }
  .carlist-archive .ttl-side {
    margin-bottom:0.8em;
  }
  .car-ttl .maker {
  font-size:1em;
  }
  .car-ttl .car-name {
    font-size:1.8em;
  }
  /* .local-nav li {
    width:48%;
  } */
  .ttl-normal {
    font-size: 1.4em;
    margin-bottom:0.5em;
  }
  .faq-box {
    margin-top:2rem;
  }
  .faq-box dt {
    font-size: 1.2em;
  }
  .faq-box dt,
  .faq-box dd {
    padding-left:4rem;
  }
  .faq-box dt:before,
  .faq-box dd:before {
    background-size: 2.8rem;
  }
  .ttl-check {
    background-size: 1.3em!important;
    font-size: 1.2em;
  }
  .txt-m {
    font-size: 1.1em;
  }
  .flat7-rec .txt-m {
    text-align: left!important;
  }
  .box-ttl {
    font-size: 1.3em;
    margin-bottom:0.5em;
  }
  .mat-box-ttl {
    font-size: 1.4em;
    margin-top:1em;
  }
  .mat-box + .mat-box {
    margin-top:2em;
  }
  .mat-box {
    padding:1.5em;
  }
  .car-ttl-area p {
    font-size: 1em;
  }
  .car-ttl-inner {
    padding:1em;
  }
  .car-detail .month {
    color: #D40012;
    font-size: 13vw;
    margin:0;
  }
  .bonus-price {
    font-size: 1.3em;
  }
  .price-plan {
    font-weight: bold;
    font-size: 1em;
  }
  .car-rec-ttl {
    font-size: 1.3em;
  }
  .car-rec-list li {
    font-size: 1.15em;
  }
  .car-recommend figure {
    width:70%;
    margin:1em auto -1em;
  }
  .car-reason {
    padding:1em 1.5em;
  }
  .car-reason-box figure {
    width: 4em;
    padding:1rem;
  }
  .car-reason-txt {
    padding: 1em 0.5em 1em 0;
  }
  .car-reason-ttl{
    font-size: 1.3em;
  }
  .car-reason-txt p {
    font-size: 1em;
  }
  .car-strong-txt {
    font-size: 1.1em;
  }
  .car-strong-box {
    background-size:1.8em;
    padding:1em 0.5em 1em 3em;
  }
  .car-strong {
    padding:1em 1.5em;
  }
  .car-reason-read {
    font-size: 1em;
  }
  .line-bdf {
    font-size: 1.1em;
  }
}


/* greeting
-------------------------------------------- */
.interview-top {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  position: relative;
  max-width:1600px;
  margin:0 auto;
}
.interview-img {
  width: 60%;
  display: block;
}
.interview-txt {
  width: 46%;
  position: absolute;
  top: 17%;
  left: 5%;
  z-index: 2;
}
.interview-txt-in {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap:wrap;
  height: calc(310/1440*100vw);
  min-height: 10em;
  max-height: 400px;
  padding:8%;
  background-color: rgba(210,0,18,0.9);
  padding-right: 13%;
}
.ttl-interview img {
  width:calc(281/1440*100vw);
  max-width:281px;
}
.interview-txt-in * {
  color: #fff;
}
.interview-ttl {
  font-size: clamp(1.8vw,calc(28/1440*100vw),22em);
  line-height: 1.6;
  margin:1em 0 0;
  display: block;
  width: 100%;
  text-align: center;
}
.interview-sns {
  background-color: #fff;
  border-radius: 10em;
  padding:1rem;
  max-width:400px;
  margin:3em 0 0 5%;
}
.interview-sns {
  display: flex;
  gap:0 4%;
  align-items: center;
  justify-content: center;
}
.interview-wrap p + p {
  margin-top:3em;
}
.interview-wrap h2 {
  margin-top:2em;
}
.ttl-circle {
  background:url(../img/common/circle.svg)no-repeat 0 0.4em;
  padding:0.3em 0 0.3em 1.5em;
  margin-bottom:0.5em;
}
.ttl-circle {
  font-size: 1.8em;
  margin-top:3em;
}
.interview-wrap h2 + h3 {
  margin-top:1em;
}


@media screen and (min-width: 751px) {
  #greeting {
      background: url(../img/company/greeting/naname.svg) no-repeat right 20%;
      background-size: contain;
  }
  .interveiw-flex {
    display: flex;
    justify-content: space-between;
  }
  .interveiw-flex .flex-img {
    width:44%;
    order:2;
  }
  .interveiw-flex .flex-txt {
    width:56%;
    padding-right: 4%;
  }
  .ttl-interview {
    margin-left:-0.5em;
  }
  .interview-sns img {
    width:2.5em;
  }
  .interview-sns span {
    font-weight: bold;
    font-size: 1.2em;
  }
  .interview-wrap p {
    font-size: 1.1em;
    line-height: 2;
  }
}

@media screen and (max-width: 750px) {
  #greeting {
      background: url(../img/company/greeting/naname.svg) repeat-x right 10%, url(../img/company/greeting/naname.svg) repeat-x right 30%, url(../img/company/greeting/naname.svg) repeat-x right 55%,url(../img/company/greeting/naname.svg) repeat-x right 78%,url(../img/company/greeting/naname.svg) repeat-x right 95%;
      background-size: contain,contain,contain,contain,contain;
  }
  .ttl-circle {
    font-size: 1.3em;
  }
  .ttl-circle {
    background-size:1em;
  }
  .interview-ttl {
    font-size: 3.3vw;
    margin:0 0 1em;
  }
  .interview-img {
    width: 68%;
  }
  .interview-sns {
    width:95%;
    max-width:100%;
    margin:3em 0 0 0;
  }
  .interview-top {
    flex-wrap:wrap;
    padding-bottom:5em;
  }
  .interview-txt {
    width:95%;
  }
  .interview-txt-in {
    width:54%;
    padding:0.6em 0 0;
  }
  .interview-sns img {
    width: 2em;
  }
  .interview-sns span {
    font-weight: bold;
    font-size: 1em;
  }
  .interview-wrap p {
    line-height: 2;
  }

}


/* -----------------------------------------------------------
モーダル
------------------------------------------------------------*/
#staff .modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  right:0;
  width: 100%;
  z-index: 100;
}
.modal__bg{
  background: rgba(69,56,52,0.9);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content{
  background: #fff;
  left: 50%;
  padding: 2.5em 5%;
  position: absolute;
  top: 50%;
  transform: translate(-50%,-50%);
  max-width:880px;
  text-align:left;
}
.modal__content {
  overflow: auto;
  height: 80vh;
}
.modal__content a {
  text-align:center;
}
a.js-modal-close {
  text-align: center;
  background: #154F9F;
  width: 2em;
  height: 2em;
  color: #fff!important;
  justify-content: center;
  align-items: center;
  display: flex;
  font-size: 1.5em;
  margin: 0;
  position: absolute;
  right: 0;
  top: 0;
  line-height: 1;
}
p.pr-txt-sub {
  margin-top:20px;
  padding-top:20px;
  border-top:1px solid #0052a6;
}
.modal-photo-more {
  display: flex;
  margin:1rem -1.5% 0;
}
.modal-photo-more img.modal-img {
  max-width: 100%;
  margin-bottom:0;
}
.modal-photo-more li {
  margin:1rem 1.5%;
  width:47%;
}
.staff-area li {
  background-color: #fff;
}
.staff-area li a:hover {
  opacity: 1;
}
.staff-area figure {
  position: relative;
}
.staff-area figure:before {
  content:"";
  position: absolute;
  bottom:0;
  right: 0;
  width:2.6em;
  height: 2.6em;
  background:url(../img/company/staff/plus.png)no-repeat right bottom;
  background-size:contain;
  z-index: 1;
}
.staff-area .staff-thumb {
  padding:0.8em;
}
#staff .modal * {
  color: #4d4d4d;
}
.staff-thumb01 {
  font-size: 1em;
}
.staff-thumb02 {
  font-size: 1.5em;
  font-weight: bold;
}
.staff-thumb03 {
  letter-spacing: 0.25em;
  font-size: 0.95em;
}
.staff-thumb p,
.modal-pr-img p {
  margin:0;
  line-height:1.6;
}
.staff-txt {
  font-size: 0.9em;
}
.staff-faq {
  padding:1.5em 0;
  border-bottom:1px dashed #4d4d4d
}
.staff-faq:last-of-type {
  border-bottom:0;
}
.staff-faq dt {
  font-weight: bold;
  font-size: 1.2em;
  margin-bottom: 0.5em;
}
.staff-faq dd {
  font-size: 0.95em;
}
.modal-pr-img img {
  margin-bottom:1em;
}
.switch {
  position: relative;
}
.switch img {
  transition: opacity 0.5s;
}
.switch:hover img:first-of-type {
  opacity: 0;
}
.switch img:last-of-type {
  position: absolute;
  top: 0px;
  left: 0px;
  opacity: 0;
}
.switch:hover img:last-of-type {
  opacity: 1;
}
.staff-bottom i {
  letter-spacing: 0;
}
.staff-bottom i {
  position: relative;
  font-style: normal;
}
.staff-bottom i:after {
  content:"";
  position: absolute;
  bottom:-1rem;
  left:0;
  width:100%;
  height: 10px;
  background-color: #F9E747;
}

@media screen and (min-width: 751px) {
  .staff-area {
    display: flex;
    flex-wrap:wrap;
    margin:0 -2%;
  }
  .staff-area li {
    width:29%;
    margin:0 2% 3em;
  }
  .staff-bottom i {
    font-size: clamp(2.2vw,calc(32/1440*100vw),2.8em);
  }
  .modal-profile {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap:wrap;
  }
  .modal-pr-img {
    max-width:350px;
    width:48%;
  }
  .modal-pr-txt {
    width:52%;
    padding-left:4%;
  }
  .modal__content{
    width: 60%;
  }
}

@media screen and (max-width: 750px) {
  .staff-area li {
    width:80%;
    margin:0 auto 3em;
  }
  .modal__content{
    width: 85%;
  }
}



/* 以下削除 */


/* news 
--------------------------------------------*/
.news-archive dl {
  border-bottom:1px solid #ddd;
}
.news-archive dl:first-of-type {
  border-top:1px solid #ddd;
}
.news-archive a {
  color:#666;
  font-weight: 500;
  text-decoration: none;
}

/* -----------------------------------------------------------
	blog
------------------------------------------------------------*/

.headline {
  font-size: 140%;
  margin: -1em 0 1em;
  color: #333;
}
.category-flex {
  display: flex;
  flex-wrap:wrap;
  gap:0 1%;
  margin:1rem 0 2rem;
}
.category-flex li {
  margin-top:1rem;
}
.category-flex a {
  color:#505050;
  background-color: #fff;
  border:1px solid #505050;
  border-radius: 10em;
  font-weight: 500;
  padding:1rem 2em;
  min-width:8em;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}
.current-cat a {
  background:#505050;
  border-color:#505050;
  color:#fff;
}
.category-all a,
.category-blog .category-all a, 
.category-news .category-all a {
  background:#505050;
  color: #fff;
}
.category-flex a,
.category-flex span {
  font-size: 1.4rem;
}
.archive-day {
  color:#8F9DA2;
  font-size: 1.4rem;
  background-size:0.9em auto;
  margin:1rem 0 0.5rem;
}
.archive-ttl {
  font-weight: bold;
  line-height: 1.4;
}
.cate-flex {
  display: flex;
  flex-wrap:wrap;
  gap:5px;
  margin:0;
}
.blog-label {
  padding:0.6rem 2rem;
  font-size:1.3rem;
  border-radius: 10em;
  border:1px solid #707070;
  color:#707070;
  font-weight: 500;
  text-decoration: none;
  line-height: 1;
}
.cat-item-none {
  display: none;
}
.category-flex ul.children {
  display: none;
}


/* -----------------------------------------------------------
	single
------------------------------------------------------------*/
.single-outer {
  max-width:880px;
  margin:0 auto;
  position: relative;
  z-index: 1;
  padding-top:2rem;
}
.single-wrap .label {
  width:auto;
  font-size: inherit;
  line-height: 1;
}
.single-wrap .ttl-blue  {
  position: relative;
  z-index: 1;
}
.ttl span {
  display: block;
}
#blog .single-detail h1,
.ttl {
  margin: 0.8em 0 1em;
  position: relative;
  line-height: 1.4;
}
.single-ttl {
  background-color: #939AA2;
  display:inline-block;
  padding:0 1em;
  margin-bottom:3rem;
}
.single-ttl * {
  color:#fff;
  font-weight: bold;
  display:inline-block;
}
.single-ttl dd {
  position: relative;
  padding-left:2em;
}
.single-ttl dd:after {
  content:"";
  position: absolute;
  left:1rem;
  top:0;
  bottom:0;
  margin:auto;
  background-color: #fff;
  width:1em;
  height: 1px;
}
.single-ttl dd {
  font-size: 2.2rem;
}
.single-wrap figure {
  margin:0 0 2rem;
}
.block-wrap .block-area {
  display: flex;
  justify-content: space-between;
  align-items: center;
  align-content: center;
  line-height: 1;
}
.block-wrap .block-area:nth-child(odd) figure {
  order:1;
}
.block-area figure {
  width:50%;
}
.block-area .block-txt {
  width:50%;
  padding:0 5%;
}
.block-txt p {
  font-size: 110%;
  text-align: center;
  font-weight: 500;
  line-height: 2;
}
.ttl02 {
  margin: 5rem 0 0.7em;
  padding-bottom: 1.5rem;
  position: relative;
  line-height: 1.3;
  border-bottom: 4px solid #ddd;
}
.ttl02:before {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 5em;
  height: 4px;
  background: #005397;
}
.cate-day {
  display: flex;
  align-items: center;
}
.cate-day .archive-day {
  margin-right:1em;
}
.single-wrap .cate-day .label {
  margin-left:0;
}
.cate-day a,
.label a {
  text-decoration: none;
  color:#D40012;
  width:100%;
}
.wp-block-image {
  margin-bottom:2em;
}
.single-detail a {
  color:#0054AC;
}
.single-detail .wp-block-button a {
  color: #fff;
}
.single-detail .link {
  padding:1em 2em;
  border:3px solid #ddd;
  width:100%;
  text-decoration: none;
  font-weight: bold;
  margin:2rem 0;
}
.day-cate .cate + span {
  margin-left:8px;
}

/* single　ブロックエディタ
------------------------------------------------- */

.read-ttl,
.single-detail h1,
.single-detail .ttl {
  line-height: 1.6;
  border-bottom:6px solid #154F9F;
  padding-bottom:0.4em;
  margin-bottom:0.5em;
}
.detail-txt p {
  line-height: 2;
}
.single-detail h2 {
  font-weight: bold;
  border-bottom: 6px dotted #9FCCF0;
  padding: 1.5rem 1rem 1.2rem 0;
  line-height: 1.2;
  margin: 1.5em 0 1em;
  position: relative;
}
.single-detail h3 {
  padding: 0;
  position: relative;
  margin: 1.5em 0 0.5em;
  line-height: 1.4;
  font-weight: bold;
  background-color: #154f9f;
  color: #fff;
  padding: 0.4em 0.6em 0.3em;
  line-height: 1.2;
  position: relative;
  border-radius: 4px;
}
.single-detail h3.ttl01 {
  background: none;
  border-bottom:none;
}
#plan h1,
#plan .bg-ttl {
  padding: 0;
  position: relative;
  margin: 1.5em 0 0.5em;
  line-height: 1.4;
  font-weight: bold;
  background-color: #154f9f;
  color: #fff;
  padding: 0.4em 0.6em 0.3em;
  line-height: 1.2;
  position: relative;
  border-radius: 4px; 
}
#plan h3 {
  background-color: #e0e0e0;
  color: #154f9f;
}
#plan h4 {
  font-size: 1.2em;
  font-weight: bold;
  margin:1em 0 0.5em;
}
#plan .single-detail h2 {
  margin-top:0;
}

.single-detail .wp-block-quote {
  margin:0;
}
.single-detail .wp-block-quote.has-background.space {
  padding:4%;
  margin-bottom:1em;
}
.wp-block-list li {
  padding-left:1.1em;
  margin:0 0 1em;
  line-height: 1.6;
  position: relative;
}
.wp-block-list li:before {
  content:"●";
  position: absolute;
  left:0;
  top:0.25em;
  color:#154f9f;
  font-size: 1.2rem;
}

/* SNS　投稿シェアボタン */
.single-detail .addtoany_content {
  margin: 0 auto 1rem;
  text-align: right;
}
.single-detail .a2a_kit a {
  width:1.4em;
}
.kv-thumb img {
  height: auto;
}
.single-nav {
    display: flex;
    justify-content: center;
    margin: 6em auto 5rem;
    text-align: center;
    gap: 0 1.5%;
}

/* plan-archive
----------------------------------------------*/
.plan-archive li {
  background-color: #fff;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.15);
  border-radius: 10px;
  padding: 1em;
  margin-bottom:2em;
}
.plan-thumb img {
  object-fit: cover;
  height: 100%;
  width:auto;
}
.plan-ttl {
    font-weight: bold;
    margin-top: 0.5em;
}


@media screen and (min-width: 751px) {
  .read-ttl.l {
    font-size: 2em;
  }
  .read-ttl,
  .single-detail h1,
  .single-detail .ttl {
    font-size: 1.8em;
  }
  #plan h1,
  #plan .bg-ttl {
    font-size: 2.4em;
  }
  .plan-archive {
    display: flex;
    justify-content: center;
    gap:0 5%;
  }
  .plan-archive li {
    width:45%;
  }
}

@media screen and (max-width: 750px) {
  .single-nav {
    margin: 3rem auto 5rem;
  }
  .read-ttl,
  .single-detail h1,
  .single-detail .ttl {
    font-size: 1.5em;
  }
  .wp-pagenavi a, .wp-pagenavi span{
    width:2em;
    height:2em;
    border-radius: 2em;
    margin:5px;
    font-size: 1.4rem;
  }
  .single-detail .addtoany_list.a2a_kit_size_32 a {
    font-size: 25px;
  }
  #plan h1,
  #plan .bg-ttl {
    font-size: 1.5em;
  }
}

/* toc 記事のブロックエディタ リセット
------------------------------------------------- */

/* original */
#ez-toc-container {
  width:100%;
}
#rtoc-mokuji-widget-wrapper * {
  font-family:'Noto Sans JP',sans-serif;
}
.simpletoc,
#rtoc-mokuji-widget-wrapper.rtoc-mokuji-content {
  background-color: #f0f0f0;
  padding:5% 4% 2%;
  margin:4rem 0 5rem;
}
#rtoc-mokuji-title button {
  display: none;
}
#ez-toc-container .ez-toc-title,
h2.simpletoc-title,
#rtoc-mokuji-title span {
  text-align: center;
  margin:0 auto 0.8em;
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #61A0DF;
  font-weight: bold;
  font-size: 2.4rem;
  padding: 0.5rem 3em;
  line-height: 1;
  position: relative;
}
#ez-toc-container a {
  color: #61A0DF!important;
}
#ez-toc-container {
  border-color:#ddd;
  padding:2% 4% 4%;
}
.ez-toc-title-container {
  margin:0 auto;
  width:12em;
  display: block;
}
h2.simpletoc-title:before {
  content:none;
  background-color: none;
}
.rtoc-mokuji-content #rtoc-mokuji-title {
  text-align: center;
}
.rtoc-mokuji a,
.simpletoc-list a {
  color:#61a0df!important;
  font-weight: 500;
  text-decoration:none;
  font-size: 95%;
  position: relative;
}
.simpletoc-list li,
.rtoc-mokuji li {
  margin:0 0 0.5em 0;
  color:#61a0df!important;
  list-style:inside;
}
.simpletoc-list ul,
.rtoc-mokuji ul {
  margin:0.5em 1em;
}
ul.rtoc-mokuji.level-1 {
  padding:2rem 0;
  max-width:600px;
  margin:0 auto;
}
ul.simpletoc-list {
  max-width:600px;
  margin:0 auto;
}
.single-detail figure {
  margin-top:1em;
  margin-bottom:1em;
}

/* single-detail youtube */
.wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

/* wp管理画面 */
body.wp-admin .wp-list-table #last_modified {
  width: 14%;
}
body.wp-admin .wp-list-table td .date_same {
  color: transparent;	/* 文字は透明にして、見かけ上は非表示 */
}
body.wp-admin .wp-list-table td .date_same:before {
  content: "（更新なし）";
  color: #a1a0a0; /* 若干薄い色で文字表示*/
}
.single-wrap .bgf {
  border-radius: 1.5em;
}



@media screen and (min-width:751px) {
  .news-archive dl {
    padding:2rem;
    display: flex;
  }
  .news-archive dt {
    width:10.5em;
    display: flex;
  }
  .news-archive dd {
    width:calc(100% - 13em);
    padding-top:4px;
  }
  .single-wrap {
    padding:6rem 0 10rem;
  }
  .single-wrap {
    padding-left:5%;
    padding-right:5%;
  }
  .ttl02 {
    font-size: 3rem;
  }
  .ttl02.s {
    font-size: 2.4rem;
  }
  #blog .single-detail h1,
  .ttl,
  .ttl * {
    font-size: 3.4rem;
  }
  .ttl.m {
    font-size: 3rem!important;
  }
  .ttl.s {
    font-size: 2.4rem!important;
  }
  .single-detail {
    margin:1rem 0 8rem;
  }
  .single-nav {
    margin:12rem auto 10rem;
  }
  .single-nav {
    margin:6rem auto 5rem;
  }
  .single-detail h2 {
    font-size: 2.8rem;
  }
  .single-detail h3 {
    font-size: 2.4rem;
  }

}


@media screen and (max-width:1300px) {
  .ttl-bg,
  .single-detail h1,
  .ttl {
    font-size: calc(34/1400*100vw);
  }
  .blog-archive li {
    margin-bottom:3rem;
  }
}

@media screen and (max-width:750px) {
  .news-archive dl {
    padding:1rem;
  }
  .news-archive dt,
  .day-cate {
    display: flex;
    flex-wrap:wrap;
  }
  .news-archive dd {
    margin-top:1rem;
  }


  .single-detail h1,
  .ttl {
    margin-top:3rem;
  }
  .ttl-bg, .single-detail h1, .ttl, .single-detail h1 * {
    font-size: 1.8rem;
    line-height: 1.4;
  }
  .single-detail h1, .ttl {
    padding-top:1em;
  }
  .triangle {
    background-position:0.3em 0.6em;
  }
  .ttl.s {
    font-size: 1.8rem;
  }
  .ttl02 {
    font-size: 1.7rem;
  }
  .single-ttl dd {
    font-size: 1.6rem;
  }
  .single-ttl dd {
    padding-left:1em;
  }
  .single-ttl dd:after{
    left:0;
    width:0.8em;
  }
  .single-detail h1,
  .ttl {
    margin-top:0;
    font-size: 1.8rem;
    padding:2rem 0 1.5rem;
  }
  .ttl.s {
    font-size: 1.8rem;
  }
  .block-wrap {
    padding-top:2rem;
  }
  .block-wrap .block-area {
    display: block;
  }
  .block-txt p {
    margin-bottom:0;
    font-size: 1.3rem;
    line-height: 1.6;
    text-align: left;
  }
  .block-area figure,
  .block-area .block-txt {
    padding:0;
    width:100%;
  }
  .single-nav {
    margin:3rem auto 5rem;
  }
  .single-nav li {
    width:33.333%;
  }
  .nav-prev .btn01, .nav-archive .btn01, .nav-next .btn01 {
    background-image: none !important;
    font-size: 1.3rem;
    height: 40px;
    padding:0;
  }
  .arrow::before {
    width:7px;
    height:7px;
  }
  .blog-archive {
    margin:0 -2%;
  }
  .blog-archive li {
    width: 46%;
    margin:0 2% 1.5em;
    border-radius: 0.6em;
    padding:1rem;
  }
  .blog-archive p {
    color: #555;
  }
  .day-cate .cate {
    padding-left:0.5em;
    padding-right: 0.5em;
  }
  .blog-archive figure img {
    object-fit: cover;
    width: 100%;
    max-height: 220px;
    height: calc(190 / 750 * 100vw);
  }
  .blog-label {
    padding: 0.3rem 0.5rem;
    font-size: 1.1rem;
  }
  .blog-archive-ttl br {
    display: none;
  }
  .blog-archive-ttl {
    font-size: 0.92em;
    font-feature-settings: "palt"
  }
  .single-outer {
    padding-top:0;
    width:90%;
  }
  #blog .single-outer {
    padding-top:2rem;
  }
  .cate-flex {
    margin:1rem 0;
  }
  .block-area {
    margin-bottom:2rem;
  }
  .single-wrap .container {
    padding-bottom:3rem;
  }
  .single-wrap {
    padding-top:2rem;
    padding-bottom:4rem;
  }
  .category-flex li {
    margin:5px;
  }
  .category-flex a {
    font-size: 1.3rem;
    padding:0.45rem 1rem;
    min-width: inherit;
  }
  .category-flex a, .category-flex span {
    font-size: 1.3rem;
    min-width:auto;
  }
  .wp-block-columns.right .wp-block-column:first-of-type {
    order:2;
  }
  .wp-block-columns.left .wp-block-column:nth-child(2) {
    order:1;
  }
  .wp-block-columns .wp-block-quote {
    margin:0;
  }
  .single-detail h2 {
    font-size: 1.9rem;
    margin-top:2em;
  }
  .single-detail h3 {
    font-size: 1.6rem;
  }
  .single-detail .sol-ttl {
    font-size: 160%;
  }
}


/* -----------------------------------------------------------
	form
------------------------------------------------------------*/

#contact {
  padding: 8rem 0 10rem;
  position: relative;
}
.privacy-link {
  text-align: center;
}
.privacy-area {
  border: 1px solid #ccc;
  padding: 20px;
  text-align: left;
  font-size: 1.5rem;
  line-height: 1.6;
  margin-top: 1em;
  color: #666;
}
.contact-wrap .privacy-area {
  font-size: 1.4rem;
}
.accept-box {
  margin: 0 auto;
  text-align: center;
}
.td-radio {
  display: flex;
}
.flex-th .th {
  line-height: 1.4;
}
.contact-wrap th, .contact-wrap td {
  padding: 1.5rem 1rem;
}
.contact-wrap option, .contact-wrap textarea, .contact-wrap input[type="number"], .contact-wrap input[type="email"], .contact-wrap input[type="tel"], .contact-wrap input[type="text"], .contact-wrap input[type="option"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  appearance: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  border-radius: 5px;
  outline: 0;
  margin: 0;
  padding: 1rem;
  border: 1px solid #ccc;
  font-weight: normal;
  background: #fff;
  color: #555;
  width: 100%;
}
.submit-btns {
  margin: 2rem auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
}
.submit-btns button[type="submit"], .submit-btns input[type="submit"], .submit-btns input[type="button"] {
  cursor: pointer;
}
.submit-btns [type=button] {
  background: #777;
  border-color:#777;
  color:#fff;
}
button, input, select, textarea {
  background: 0;
  /* border: 0; */
  border-radius: 0;
  font: inherit;
  outline: 0;
}
input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
}
.contact-wrap label {
  margin: 0.3em 1em 0.3em 0;
  display: inline-block;
  vertical-align: middle;
  align-items: center;
  position: relative;
}
.contact-wrap input[type="radio"] + span {
  margin:2px 0 0 5px;
}
.contact-wrap input {
  vertical-align: middle;
}
.contact-wrap label span {
  /* display: inline-block; */
  line-height: 1;
}
.contact-wrap button {
  border-radius: 48px;
  width: 202px;
  height: 48px;
}
.contact-wrap button, .contact-wrap button:hover, .contact-wrap button:active, .contact-wrap button:focus {
  background: #F57700;
  color: #fff;
}

.contact-wrap .wq-Form .wq-TextInput.wq-size-normal {
  width: 100%;
}
.contact-wrap .wq-Form .wq-TextInput.wq-size-normal {
  width: 100%;
}
.contact-wrap select:hover, .contact-wrap label:hover, input[type="radio"]:hover, input[type="checkbox"]:hover, .accept-box *:hover {
  cursor: pointer;
}

/* radio */
input[type="radio"] {
  width: 18px;
  height: 18px;
  border-radius: 100px;
  position: relative;
  vertical-align: sub;
}
input[type="radio"]::before,
input[type="radio"]::after{
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}
input[type="radio"]::before {
  background-color: #fff;
  border: 1px solid #ccc;
  height: 18px;
  width: 18px;
  left: 0px;
}
input[type="radio"]::after {
  background-color: #585858;
  opacity: 0;
  height: 10px;
  width: 10px;
  left: 4px;
}
input[type="radio"]:checked::after {
  opacity: 1;
}
.contact-wrap .flex-td {
  display: flex;
}
.contact-wrap .flex-td div {
  margin: 0 5px 0 0;
}
input[type="text"], input[type="tel"], textarea, select,
input[type="password"] {
  padding: 0.6em 1rem;
  border: 1px solid #ccc;
  background-color: #fff;
  border-radius: 5px;
}
textarea {
  width: 100%;
}
.required {
  border-radius: 3px;
  font-size: 1.1rem;
  font-weight: bold;
  padding: 0.3rem 0.5rem 0.3rem;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  background-color: #d9534f;
  width: 3em;
  margin-right:1rem;
}
.nini {
  border-radius: 3px;
  font-size: 1.1rem;
  font-weight: bold;
  padding: 0.3rem 0.5rem 0.3rem;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  background-color: #f5b555;
  width: 3em;
  margin-right:1rem;
}
.contact-wrap .th {
  /* width: calc(100% - 3em); */
  letter-spacing: 0.1em;
}
.contact-wrap table.type01 th {
  width: 28%;
}
.check_btn label {
  display: inline-block;
  line-height: 1em;
}
.contact-wrap label::before, .contact-wrap label::after {
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
}
.contact-wrap option:focus, .contact-wrap textarea:focus, .contact-wrap input:focus,
.contact-wrap select:focus  {
  border-color: #66afe9;
  outline: 0;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.contact-wrap input[type="checkbox"]:focus::before {
  border-color: #66afe9;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
.contact-wrap input[type="radio"]:focus {
  box-shadow:none;
}
.contact-wrap input[type="radio"]:focus::before {
  border-radius: 10em;
  -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
  box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6);
}

.contact-wrap input[type="file"] {
  padding: 1.5rem;
  border: 1px solid #ddd;
  width: 100%;
}

/* select */
select {
	/* appearance: none; */
}
.select-box{
	position:relative;
  display:inline-block;
}
.select-box::after{
		position: absolute;
	  content:'▼';
		top: 25%;
		right: 4%;
		color: #333;
    pointer-events: none;
}
.wpcf7-select{
	box-sizing:border-box;
   /* appearance: none; */
   padding-right:2em;
   color:#333;
   position: relative;
}
.wpcf7-select::after{
  content: "";
  position: absolute;
  display: inline-block;
  border-top: 1.5px solid #333333;
  border-right: 1.5px solid #333333;
  height: 12px;
  width: 12px;
  top: 20px;
  right: 50px;
  transform: rotate(135deg);
  pointer-events: none;
}
.contact-wrap .calendar input[type="text"] {
  width:17em;
}

/**/
input[type="checkbox"] {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

input[type="checkbox"] {
  cursor: pointer;
  padding-left: 24px;
  vertical-align: 6px;
  position: relative;
}

input[type="checkbox"]::before, input[type="checkbox"]::after {
  content: "";
  display: block;
  position: absolute;
}

input[type="checkbox"]::before {
  content:"";
  position: absolute;
  background-color: #fff;
  border: 1px solid #bbb;
  width: 20px;
  height: 20px;
  /* transform: translateY(-50%); */
  top: 1px;
  bottom:0;
  margin:auto;
  left: 0;
  border-radius: 3px;
}
input[type="checkbox"]::after {
  border-bottom: 3px solid #585858;
  border-left: 3px solid #585858;
  opacity: 0;
  height: 8px;
  width: 13px;
  transform: rotate(-45deg);
  top: 0;
  bottom:0;
  margin:auto;
  left: 4px;
  content: "";
  position: absolute;
}
input[type="checkbox"]:checked::after {
  opacity: 1;
} 
.contact-wrap [type=submit] {
  width: 300px;
  margin: 10px 5px;
  color: #fff;
  border: 0;
  border-radius: 8px;
  height: 70px;
  font-weight: bold;
}
.contact-wrap button[type="submit"], .contact-wrap input[type="submit"] {
  cursor: pointer;
}
.submit-btns {
  margin: 3em auto;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap:0 10px;
}
.contact-wrap th {
  background-color: #F0F0EF;
  position: relative;
  padding: 1em 2%;
  text-align: left;
}
.contact-wrap th,
.contact-wrap td {
  border-bottom: 1px solid #ccc;
  border-color:#ccc;
}
.contact-wrap tr:first-of-type th,
.contact-wrap tr:first-of-type td {
  border-top: 1px solid #dccdb8;
  border-color:#ccc;
}
.contact-wrap td {
  padding: 1.5em 2%;
  background: #FFF;
}


/* contact7 reset
------------------------------------------------------------*/
.contact-wrap .wpcf7-spinner {
  width:0;
  margin:0;
  display: none;
}

.wpcf7-list-item {
  margin:0;
}
.p-postal-code {
  width:6em!important;
  height: 3em;
}
.p-locality {
  width:100%!important;
}
label.w100 {
  width:100%!important;
  white-space: nowrap;
}
.flex-ad {
display: flex;
justify-content: flex-start;
align-items: center;
gap: 0 5px;
}
.contact-wrap label.c-yubin,
.contact-wrap label.c-address {
    margin-left:0;
    margin-right:0;
}
.c-flex .last.has-free-text {
  display: flex;
}
.contact-wrap .c-flex label {
  width:4em;
}
.c-flex {
  display: flex;
  align-items: center;
}
.accept-area {
  text-align: center;
  margin: 2em 0;
  padding:2rem;
  border:1px solid #ccc;
}
.select-wrap .wpcf7-date  {
  margin-right:1em;
}
.flex-th p {
  margin:0;
}
.flex-th .th {
  font-weight: bold;
  font-size: 1.1em;
}
.contact-wrap dl {
  margin-bottom:2em;
}
.form-txt {
  color: #666;
  line-height:1.6;
  font-size: 0.94em;
  margin:0.5em 0 0;
}
.contact-wrap .temp {
  padding:1.5rem;
  background-color: #fff;
  border:1px solid #ddd;
}
.select-time {
  width:17em;
  margin-right:5px;
}


/* 767以下 form blog
------------------------------------------------------------*/
@media screen and (min-width:751px) {

/* form */
  .flex-th {
    display: flex;
    align-items: center;
    align-content: center;
    line-height: 1.2;
  }
  .contact-wrap th {
      width: 25%;
  }
  .contact-wrap td {
      width: 70%;
      text-align: left;
  }
  .submit-btns button:hover, .submit-btns input:hover {
      opacity: 0.9;
  }
  .contact-wrap .read-txt {
    text-align: center;
  }
  .thanks-txt p {
    font-size:106%;
    line-height:2.5;
    text-align: center;
  }
  #contact {
    padding: 8rem 0 10rem;
    position: relative;
  }
}


@media screen and (min-width: 960px) {
  .contact-wrap dd {
      padding: 1rem 0;
  }
}


@media screen and (max-width:750px) {
  .submit-btns {
    margin: 1em auto;
  }
  /* form */
  .contact-wrap th, .contact-wrap td {
    width: 100%;
    display: block;
    text-align: left;
  }
  .flex-th {
    padding: 1rem 0;
  }
  .contact-wrap th {
    padding: 0;
  }
  .contact-wrap th, .contact-wrap td {
    border-bottom: 1px solid #ccc;
  }
  .contact-wrap td {
    padding-left: 0;
    padding-top: 1rem;
    padding-bottom: 2rem;
    padding-right: 0;
  }
  .contact-wrap tr:first-of-type td {
    border-top:none;
  }
  .form-main {
    margin:3rem 0 0;
  }
  .contact-wrap [type=submit] {
    width: 240px;
    height: 54px;
  }
  .contact-wrap label {
    display: flex;
  }

}



/* -----------------------------------------------------------
	animation
------------------------------------------------------------*/

.fadeLeft {
  animation-name: ani01;
  }
  @keyframes ani01 {
  0% {
  opacity: 0;
  -webkit-transform: translateX(-12%);
  -ms-transform: translateX(-12%);
  transform: translateX(-12%);
  }
  60% {
	opacity: 1;
	-webkit-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
  }
  }

/* -----------------------------------------------------------
	inview
------------------------------------------------------------*/
.inviewupdown {
  opacity: 0;
  height: 8.58vw;
}
.inviewupdown.updown {
  opacity: 1;
}
.inviewfadeInUp.delay {
  transition-delay: .5s;
}
.inviewfadeInUp {
opacity:0;
transform:translate(0,15%);
transition: 0.7s ease;
}
.fadeInUp {
opacity:1;
transform:translate(0, 0);
}
.inviewfadeInRight {
opacity:0;
transform:translate(10%,0);
transition:0.5s ease;
}
.fadeInRight {
opacity:1;
transform:translate(0, 0);
}
.inviewfadeInDown {
opacity:0;
transform:translate(0,-30%);
transition:0.5s ease;
}
.fadeInDown {
opacity:1;
transform:translate(0, 0);
}
.inviewfadeInLeft {
opacity:0;
transform:translate(-10%,0);
transition:0.5s ease;
}
.fadeInLeft {
opacity:1;
transform:translate(0, 0);
}
.inviewfadeIn {
opacity:0;
transition:0.5s ease;
}
.fadeIn {
opacity:1;
}

@media screen and (max-width:750px) {
  .inviewupdown {
    height:11vw;
  }
  .updown span {
   font-size: clamp(44px,calc(44/767*100vw),44px);
  }

}


/*------------------------------------------------------------*/
/* wp reset
------------------------------------------------------------*/
.page-block .wp-block-columns {
  margin-bottom:0;
}
.page-block .btn-blue .wp-block-button__link {
  padding:0;
  background:none;
}
.wp-block-columns.feature-wrap,
.wp-block-columns .pat,
.wp-block-columns .bg-grid {
  padding-left:5%;
  padding-right:5%;
}
.page-block .wp-block-columns.feature-wrap .in,
.page-block .wp-block-columns .in {
  flex-grow: 0.9!important;
}
.wp-block-columns .bg-mark .container {
  flex-basis: 90%!important;
}
.bg-mark .container {
  flex-basis: 95%!important;
}
@media (max-width: 781px) {
  .page-block .bgf.mat {
    padding-left:5%;
    padding-right:5%;
  }
  .wp-block-columns.bg-mark .container{
    padding-left:5%;
    padding-right:5%;
  }
  .page-block .container .in {
    padding-left:0;
    padding-right:0;
    width:100%;
  }
  .folding-map-case .container .in {
    width:90%;
  }
  .wp-block-buttons>.wp-block-button {
    margin:auto;
  }
  .wp-block-button__link {
    font-size: 1em;
  }
  .page-block .folding-map-case .bgf.mat {
    padding:0;
  }
  
}


@media screen and (min-width:751px) {
  .page-block .order2 {
    order:2!important;
  }
}


@media screen and (max-width:750px) {
  .single-area .addtoany_list.a2a_kit_size_32 a:not(.addtoany_special_service)>span {
    height: 26px;
    line-height: 26px;
    width: 26px;
  }
  .ecoscrach-case-txt {
    width:100%;
  }
  .ecoscratch-case {
    width:90%;
    margin:auto;
  }
  .container .short {
    width:100%;
  }

}


/*------------------------------------------------------------*/
/* case slide1
------------------------------------------------------------*/
#slide-wrap {
  margin:auto;
  max-width:900px;
  width:100%;
}
.slide-in {
  border:1px solid #ccc;
  margin:0 auto 1em;
}
#slider1 {
}
.slide-txt {
  margin:1em 0 2em;
}
.slide-item .ttl-normal {
  margin-bottom:0.8em;
}
#slide-wrap .slick-slide  {
  height: auto;
}
.slide-item{
    width: 100%;
}
#thumbnail_slider {
  margin:0 -8px;
}
#thumbnail_slider .slick-slide { 
  margin:0 8px;
}
.thumbnail-item {
  border:1px solid #ccc;
  box-sizing: border-box;
}
.slick-current.slick-active .thumbnail-item {
  border:3px solid #009DE8;
}
.thumbnail-item:hover{
cursor: pointer;
}
#thumbnail_slider .slick-prev,
#thumbnail_slider .slick-next{
  width:40px;
  height: 40px;;
}
#thumbnail_slider .slick-prev {
  left: -40px;
}
#thumbnail_slider .slick-next {
  right: -40px;
}
#thumbnail_slider .slick-prev:before, 
#thumbnail_slider .slick-next:before {
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  margin:auto;
  left:0;
  background:url(../img/common/prev.svg)no-repeat 0 0;
  background-size:40px 40px!important;
  width:40px;
  height: 40px;;
  opacity: .75;
}
.slick-next:before {
  background:url(../img/common/next.svg)no-repeat 0 0; 
  right:0;
  left:inherit;
}

/* -----------------------------------------------------------
  popup
------------------------------------------------------------*/
/* popup */
.popup-link,
.popup-gallery1 a,
.popup-gallery2 a,
.popup-gallery3 a,
.popup-gallery4 a {
  text-decoration: none;
}
.mfp-arrow-right:before {
  border-left:none!important;
}
.mfp-arrow-left:after {
  border-left:none!important;
}
.mfp-arrow-left:before {
  border-right: none!important;
}
.mfp-close {
  font-size:2em;
}

/* popup youtube
------------------------------------------------- */
.mfp-bg{
  opacity: 0;
  transition: opacity 0.5s;
}
.mfp-bg.mfp-ready{
  opacity: 0.8;
}
.mfp-bg.mfp-removing{
  opacity: 0;
}
.mfp-wrap .mfp-content{
  opacity: 0;
  transition: opacity 0.5s;
}
.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

/* ギャラリー
------------------------------------------------- */
/* オーバーレイ 初期状態 */
.mfp-fade.mfp-bg {
  opacity: 0;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
/* オーバーレイ 表示アニメーション */
.mfp-fade.mfp-bg.mfp-ready {
  opacity: .8;
}
/* オーバーレイ 非表示アニメーション */
.mfp-fade.mfp-bg.mfp-removing {
  opacity: 0;
}
/* コンテンツ 初期状態 */
.mfp-fade.mfp-wrap .mfp-content {
  opacity: 0;
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
/* コンテンツ 表示アニメーション */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content {
  opacity: 1;
}
/* コンテンツ 非表示アニメーション */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content {
  opacity: 0;
}
.fuchinori .mfp-figure {
  padding:2em;
}
.fuchinori .mfp-wrap .mfp-img {
  background-color: #fff;
  padding-right:1em;
  padding-left:1em;
  margin-bottom:1em;
}
.fuchinori .mfp-figure:after {
  content:none!important;
}
.fuchinori .mfp-figure .mfp-bottom-bar {
  padding-left:2em;
}
@media screen and (max-width: 750px) {
  .mfp-container {
    padding: 0 10px;
  }
  #thumbnail_slider {
    margin:0 -3px;
  }
  #thumbnail_slider .slick-slide {
    margin: 0 3px;
  }
}