@charset "UTF-8";

/*-----------------------------------------------------------
	=Reset default browser
-----------------------------------------------------------*/
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img,ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, hgroup,menu, nav, output, ruby, section, summary,time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
ol, ul {
  list-style: none;
}
img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}


/*-----------------------------------------------------------
	=Basic Setup
-----------------------------------------------------------*/
*, *::after, *::before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}
/* Link Style */
a {
  color: #111;
  text-decoration: none;
  transition: 0.2s ease all;
  -webkit-transition: 0.2s ease all;
  -moz-transition: 0.2s ease all;
}
a:focus, a:active, a:hover {
  color: #111;
  text-decoration: none;
}
a:hover img {
  opacity: .4;
  filter: alpha(opacity=40);
  -moz-opacity: 0.4;
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  zoom: 1;
}
/* Transform */
.transform {
  -webkit-transform:scale(1);
  transform:scale(1);
  -webkit-transition:all .3s ease-in-out;
  transition:all .3s ease-in-out;
}
a:hover .transform {
  -webkit-transform:scale(1.1);
  transform: scale(1.1);
}

/* Embed */
embed, iframe, object {
  max-width: 100%;
}
video {
  max-width: 100%;
  height: auto;
}



/*-----------------------------------------------------------
    Layout
-----------------------------------------------------------*/
html{
  font-size:62.5%;
}

/* ie11 */
_:-ms-lang(x)::-ms-backdrop, html {
  font-size  : 58.6%;
}

body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Yu Gothic", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; 
  font-size: 1.6rem;
  line-height: 1.8;
  color: #333;
  font-feature-settings: 'palt';
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing  : antialiased;
	-moz-osx-font-smoothing : grayscale;
  -ms-text-size-adjust: 100%;
}

/* Edge(Chromium) */
_:lang(x)::-ms-, body {
  font-family: "Yu Gothic", YuGothic, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; 
}

/* ie11 */
_:-ms-lang(x)::-ms-backdrop, body {
  font-family: "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; 
}


@media only screen and ( max-width:750px) {
  html{font-size:1.33vw;}
  body {
    font-size: 2.4rem;
  }
}


#page-top {
  position: fixed;
  bottom: 10px;
  right: 10px;
  width: 80px;
  z-index: 2;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}
#page-top:hover {
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
}

@media screen and ( max-width:750px) {
  .wrap {
    padding:50px 0 ;
  }
  .radius-box{
    border-radius: 15px;
    padding:30px 25px;
  }
  #page-top {
    width: 50px;
    bottom: 5px;
     right: 5px;
  }
}


/*-----------------------------------------------------------
	=Header
-----------------------------------------------------------*/
#header {
  background: rgba(255,255,255, 1);
  width: 100%;
  z-index: 10;
  transition: .5s;
  height: 70px;
}
#header .header-inner{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  width: 960px;
  margin:0 auto;
  height: 70px;
}
#header .logo{
  width: 106px;
  transition: .5s;
}

.header__60th-logo{
  margin: 0 0 0 24px;
  width: 52px;
}

@media screen and ( max-width:750px) {
  #header{
    height: 9.3vw;
    background: rgba(255,255,255, 1);
    font-size: 0;
    min-width: 320px;
    width: auto;
  }
  #header .header-inner{
    padding:0 5.3vw;
    height: 9.3vw;
    width: 100%;
  }
  #header .logo{
    width: 15.035vw;
  }
  
  .header__60th-logo{
    margin: 0 0 0 3.2vw;
    width: 6.933vw;
  }
}

sup{
  font-size:0.5em;
}

.onsp{
  display:none;
}

.onpc{
  display:block;
}


/*-----------------------------------------------------------
	=main contents
-----------------------------------------------------------*/
.main{
  min-width: 960px;
}

.main img{
  display:block
}

.content{
  margin: auto;
  width: 880px;
}

.mv--wrapper{
  background: url("../img/mv--bg_pc.png") no-repeat top center/1728px auto;
}

.mv{
  height: 660px;
  margin: 0 auto;
  position: relative;
  width: 920px;
}

.mv__title{
  left:18px;
  position: absolute;
  top:109px;
  width: 402px;
}

.mv__image{
  left:67px;
  position: absolute;
  top:389px;
  width:302px;
}

.offer-movie--wrapper{
  background: url("../img/bg--wood_pc.png") repeat center top/100% auto;
  padding: 720px 0 80px;
  position: relative;
}

.offer{
  margin: auto;
  position:relative;
  width: 922px;
}

.offer.offer--first {
  left: 50%;
  position:absolute;
  top:-60px;
  transform: translate(-50%,0);
  z-index: 2;
}

.offer--filter{
  margin: 0 auto 40px;
  position:relative;
  width: 922px;
}

.offer__spec-link{
  color:#1e1e96;
  font-size:2.2rem;
  font-weight: bold;
  position: absolute;
  text-decoration: underline;
  /* reset button */
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
}

.offer__spec-link:hover{
  opacity: 0.8;
}
  
.offer__spec-link--01{
  left: 231px;
  top: 361px;
}

.offer__spec-link--02{
  left: 231px;
  top:656px;
}

.offer__btn--01,
.offer__btn--02{
  position: absolute;
  width: 470px;
}

.offer__btn--01{
  left: 120px;
  top: 286px;
}

.offer__btn--02{
  left: 120px;
  top: 585px;
}

.offer--filter__btn{
  position: absolute;
  left: 108px;
  top: 182px;
  width: 472px;
}

.offer--filter__spec-link{
  left: 223px;
  top: 250px;
}

.movie{
  margin: 60px auto 0;
  width: 880px;
}

.movie__title{
  color:#be0000;
  font-size:3.2rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 20px;
  text-align: center;
  text-decoration: underline;
}

.movie--wrapper{
  padding-bottom: 56.25%;
  position: relative;
  height: 0;
  overflow: hidden;
  width: 100%;
}

iframe.movie__youtube{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}



.about-features--wrapper{
  background: url(../img/bg--yellow.png) repeat left top/100px auto;
  font-size:2.1rem;
}

.about{
  padding: 80px 0 0;
}

.about__title{
  margin: 0 auto 30px;
}

.about__item{
  margin: 0 auto 120px;
}

.about__item__title{
  border-bottom:2px solid #28780a;
  color: #28780a;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 20px;
  padding: 0 0 0.4em;
}

.about__item__description--wrapper{
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.about__item01 .about__item__description{
  line-height: 2;
  width: 430px;
}

.about__item01__description-image{
  width: 420px;
}

.about__item02 .about__item__description--wrapper{
  height: 330px;
  position: relative;
}

.about__item02__description-image{
  position: absolute;
  right:0;
  top:0;
  width: 640px;
}


.about__item03{
  align-items:flex-start;
  background: #fff;
  display: flex;
  justify-content: space-between;
  padding: 40px 35px;
}

.about__item03__image01{
  border-right: 2px dotted #000;
  height: 417px;
  padding: 0 18px 0 0;
  width: auto;
}

.about__item03__image02--wrapper{
  position: relative;
  width: auto;
}

.about__item03__image02{
  height: 417px;
  width: auto;
}

.about__item03__image02-btn{
  position: absolute;
  right: 7px;
  top: 209px;
  width: 187px;
}

.features{
  padding: 0 0 80px;
}

.features__title{
  margin: 0 0 80px;
}

.features__item{
  margin: 0 0 80px;
}

.features__item:last-child{
  margin: 0;
}

.features__item__title{
  border-bottom:2px solid #28780a;
  color: #28780a;
  font-size: 3.2rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 20px;
  padding: 0 0 0.4em;
}
  
.features__item01__description-image{
  display: flex;
  justify-content: space-between;
  margin: 20px 0;
}

.features__item01__description-image li{
  width: 285px;
}

.features__item02__description--wrapper{
  margin: 0 0 75px;
  position: relative;
}

.features__item02__description-image--wrapper{
  left: 0;
  position: absolute;
  top:0;
  width: 640px;
}

.features__item02__description-image{
}

.features__item02__description-image-footnote{
  font-size:1.6rem;
}

.features__item02__description{
  height: 330px;
  text-align: right;
}

.features__item02-2__description--wrapper{
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}

.features__item02-2__description{
  
}

.features__item02-2__description-image{
  width: 420px;
}

.features__item03__description--wrapper{
  align-items: flex-start;
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
}

.features__item03__description-image{
  margin: 0 30px 0 0;
  width: 420px;
}

.features__item03__description{
  width: 408px;
}

.features__item04__description--wrapper{
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}

.features__item04__description{
  width: 400px;
}

.features__item04__description-image{
  width: 420px;
}


.offer--wrapper{
  background: url("../img/bg--wood_pc.png") repeat center top/100% auto;
  padding: 80px 0;
}

.lineup-offer--wrapper{
  background: url(../img/bg--yellow.png) repeat left top/100px auto;
  padding: 80px 0;
}

.lineup{
  margin: 0 auto 60px;
}


@media screen and ( max-width:750px) {
  .onsp{
    display:block;
  }
  
  .onpc{
    display:none;
  }
  
  .main{
    min-width: 320px;
  }
  
  .content{
    width: 100%;
  }

  .mv--wrapper{
    background: url("../img/mv--bg_sp.png") no-repeat top center/100% auto;
  }

  .mv{
    height: 90.133vw;
    width: 100%;
  }

  .mv__title{
    left:-1.1vw;
    position: absolute;
    top:15.2vw;
    width: 58.8vw;
  }

  .mv__image{
    left:11vw;
    top:68.666vw;
    width:40.266vw;
  }

  .offer-movie--wrapper{
    background: url("../img/bg--wood_sp.png") repeat center top/100% auto;
    padding: 7vw 0 10.666vw;
    position: static;
  }

  .offer{
    margin: auto;
    position:relative;
    width: 100%;
  }

  .offer.offer--first {
    position:static;
    transform: translate(0,0);
  }
  
  .offer--filter{
    margin: 0 auto 5vw;
    width: 94.4vw;
  }
  
  .offer__spec-link{
    font-size: 2.4rem;
    left: 50%;
    text-align: center;
    transform: translate(-50%, 0);
  }
  
  .offer__spec-link--01{
    top: 66.2vw;
  }

  .offer__spec-link--02{
    top: 125.5vw;
  }
  
  .offer__btn--01,
  .offer__btn--02{
    left: 50%;
    transform: translate(-50%,0);
    width: 68vw;
  }

  .offer__btn--01{
    top: 51.4vw;
  }

  .offer__btn--02{
    top: 110.6vw;
  }
  
  .offer--filter__btn{
    left: 50%;
    transform: translate(-50%,0);
    top: 30.4vw;
    width: 68.4vw;
  }

  .offer--filter__spec-link{
    left: 50%;
    top: 45.33vw;
  }



  .movie{
    margin: 8vw auto 0;
    width: 88.933vw;
  }

  .movie__title{
    font-size:3.9rem;
    margin: 0 0 2.666vw;
  }
  
  /*
  .movie--wrapper{
    padding-bottom: 50.025%;
    position: relative;
    height: 0;
    overflow: hidden;
    width: 100%;
  }*/
  
  
  .about-features--wrapper{
    background: url(../img/bg--yellow.png) repeat left top/13.333vw auto;
    font-size:3.1rem;
  }

  .about{
    padding: 10.666vw 0 0;
  }

  .about__title{
    margin: 0 auto 4vw;
    width: 91.6vw;
  }

  .about__item{
    margin: 0 auto 16.666vw;
    width: 89.333vw;
  }

  .about__item__title{
    border-bottom:none;
    font-size: 4.5rem;
    margin: 0;
    padding: 0;
  }
  
  .about__item__title span{
    border-bottom:2px solid #28780a;
    display: inline-block;
    margin: 0 0 4vw;
    padding: 0 0 0.05em;
  }
  
  .about__item__description--wrapper{
    display: block;
    width: 100%;
  }

  .about__item__description,
  .about__item01 .about__item__description{
    line-height: 1.9;
    margin: 0 0 2.666vw;
    width: 100%;
  }

  .about__item01__description-image{
    width: 100%;
  }

  .about__item02 .about__item__description--wrapper{
    height: auto;
  }

  .about__item02__description-image{
    position: static;
    width: 100%;
  }


  .about__item03{
    display: block;
    padding: 5.333vw 0 5.333vw 4vw;
  }

  .about__item03__image01{
    border-right: none;
    height: auto;
    margin: 0 0 4vw;
    padding: 0 0 4vw;
    width: 100%;
  }

  .about__item03__image02--wrapper{
    width: 100%;
  }

  .about__item03__image02{
    border-top: 1px dotted #000;
    height: auto;
    padding: 5.333vw 0 0 0;
    width: 96%;
  }

  .about__item03__image02-btn{
    right: 4.8vw;
    top: 51.2vw;
    width: 40.533vw;
  }

  .features{
    padding: 0 0 10.666vw;
  }

  .features__title{
    margin: 0 auto 10.666vw;
    width: 91.6vw;
  }

  .features__item{
    margin: 0 auto 10vw;
    width: 89.333vw;
  }

  .features__item:last-child{
    margin: 0 auto;
  }

  .features__item__title{
    border-bottom:none;
    font-size: 4.5rem;
    margin: 0;
    padding: 0;
  }
  
  .features__item__title span{
    border-bottom:2px solid #28780a;
    display: inline-block;
    margin: 0 0 4vw;
    padding: 0 0 0.05em;
  }


  .features__item01__description-image{
    display: block;
    margin: 2.666vw auto 1.333vw;
    width: 56vw;
  }

  .features__item01__description-image li{
    margin: 0 0 4vw;
    width: 100%;
  }
  
  .features__item01__description-image li:last-child{
    margin: 0;
  }

  .features__item02__description--wrapper{
    margin: 0 0 10vw;
    position: static;
  }
  
  .features__item02__description{
    height: auto;
    line-height: 1.9;
    margin: 0 0 2.666vw;
    text-align: left;
  }
  
  .features__item02__description-image--wrapper{
    position: static;
    width: 100%;
  }
  
  .features__item02__description-image{
    
  }
  
  .features__item02__description-image-footnote{
    font-size:2.1rem;
  }
  
  
  .features__item02-2__description--wrapper{
    display: block;
  }

  .features__item02-2__description{
    margin: 0 0 2.666vw;
  }

  .features__item02-2__description-image{
    width: 100%;
  }

  .features__item03__description--wrapper{
    display: block;
  }

  .features__item03__description-image{
    width: 100%;
  }

  .features__item03__description{
    margin: 0 0 2.666vw;
    width: 100%;
  }
  
  .features__item04__description--wrapper{
    display: block;
  }

  .features__item04__description{
    margin: 0 0 2.666vw;
    width: 100%;
  }

  .features__item04__description-image{
    width: 100%;
  }


  .offer--wrapper{
    background: url("../img/bg--wood_sp.png") repeat center top/100% auto;
    padding: 6.666vw 0 8vw;
  }

  .lineup-offer--wrapper{
    background: url(../img/bg--yellow.png) repeat left top/13.333vw auto;
    padding: 10.666vw 0 8vw;
  }

  .lineup{
    margin: 0 auto 10.666vw;
    width: 89.333vw;
  }
}

/*-----------------------------------------------------------
	=FOOTER
-----------------------------------------------------------*/
#footer{
  min-width: 960px;
  padding:55px 0 40px;
  text-align: center;
}
#footer .inner{
  max-width:940px;
  margin:0 auto;
  padding: 0 20px;
}
.bnr-30year{
  margin-bottom:50px;
}
.other-service-ttl{
  font-size:32px;
  font-weight: bold;
  line-height: 1.2;
  margin-bottom:25px;
}
.other-bnr{
  margin-bottom:60px;
}
.other-bnr li{
  width: 31.3%;
  margin: 0 3% 0 0;
}
.other-bnr li:nth-child(3n) {
  margin: 0 0 0 0;
}
.other-bnr li a p{
  background: #ff9600;
  color:#fff;
  padding:10px 15px;
  line-height: 1.1;
  font-size:24px;
  font-weight: bold;
}
#footer .copy {
    font-size: 24px;
}
@media screen and ( max-width:750px) {
  #footer{
    min-width: 100%;
    padding:6.93vw 0 1.73vw;
    text-align: center;
  }
}

@media screen and ( max-width:750px) {
  .other-service-ttl{
    font-size:24px;
    margin-bottom:15px;
  }
  .other-bnr{
    margin-bottom:40px;
  }
  .other-bnr li a p{
    padding:8px;
    font-size:15px;
  }
  
  #footer .copy {
    font-size: 2.66vw;
  }
}

.callcenter_bannerAnchor {
  font-size: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  /* vertical-align: top; */
  display: block;
}
.special_bannerAnchor {
  font-size: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  /* vertical-align: top; */
  display: block;
}
.sns_list {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
}
.sns_anchor {
  font-size: 0;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  display: block;
}
@media screen and (min-width: 940px) {
  .callcenter_bannerAnchor {
    background: url(../img/common/bn_callcenter_pc.png) no-repeat left top/contain;
    height: 108px;
    margin-bottom: 40px;
    pointer-events: none;
  }
  .special_bannerAnchor {
    background: url(../img/common/bn_special_pc.jpg) no-repeat left top/contain;
    height: 217px;
    margin-bottom: 50px;
    -webkit-transition: opacity 300ms;
    transition: opacity 300ms;
  }
  .sns_list {
    margin-bottom: 40px;
    width: 362px;
  }
  .sns_item {
    width: 70px;
  }
   .sns_anchor {
    height: 70px;
    position: relative;
  }
  .sns_anchor:before{
    content: '';
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .sns_anchorLn:before {
    background: url(../img/common/bnr_footer_line.webp) no-repeat left top/contain;
  }
  .sns_anchorTw:before {
    background: url(../img/common/bnr_footer_x.webp) no-repeat left top/contain;
  }
  .sns_anchorFb:before {
    background: url(../img/common/bnr_footer_facebook.webp) no-repeat left top/contain;
  }
}

@media screen and (max-width: 939px) {
  .callcenter_bannerAnchor {
    background: url(../img/common/bn_callcenter_sp.png) no-repeat left top/contain;
    margin-bottom: 2.666667vw;
    padding-top: 42.4vw;
  }
  .special_bannerAnchor {
    background: url(../img/common/bn_special_sp.jpg) no-repeat left top/contain;
    margin-bottom: 6.4vw;
    padding-top: 52.666667vw;
  }
  .sns_list {
    margin-bottom: 5.6vw;
    width: 48vw;
  }
   .sns_item {
    width: 11.2vw;
  }
  .sns_anchor {
    padding-top: 11.2vw;
  }
  .sns_anchorLn {
    background: url(../img/common/bnr_footer_line.webp) no-repeat left top/contain;
  }
  .sns_anchorTw {
    background: url(../img/common/bnr_footer_x.webp) no-repeat left top/contain;
  }
  .sns_anchorFb {
    background: url(../img/common/bnr_footer_facebook.webp) no-repeat left top/contain;
  }
}




/*************
* modal 
**************/
body.is-modal {
  height: 100%;
  overflow: hidden;
}

.spec-modal--wrapper{
  background: rgba(0,0,0,0.75);
  display: none;
  height:100vh;
  left: 0;
  overflow-y: auto;
  position: fixed;
  top:0;
  width:100%; 
  z-index: 20;
}

.spec-modal{
  background: #fff;
  border-radius: 10px;
  box-shadow: 5px 5px 5px rgba(0,0,0,0.15);
  display: none;
  flex-wrap: wrap;
  font-size: 1.6rem;
  justify-content: space-between;
  margin: 80px auto 40px;
  padding: 40px 40px 10px;
  position: relative;
  width: 880px;
}

.spec-modal__close-btn{
  appearance: none;
  background: none;
  border:none;
  cursor: pointer;
  outline: none;
  padding: 0;
  position: absolute;
  right:0;
  top:-40px;
}

.spec-modal__title{
  font-size:3.2rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 40px;
  width: 100%;
}


.spec-modal__item{
  font-size:1.6rem;
  font-weight: bold;
  margin: 0 0 30px;
  width: 390px;
}

.spec-modal02 .spec-modal__item.spec-modal__item--03{
  width: 100%;
}

.spec-modal__item__title{
  font-size:2.4rem;
  line-height: 1;
  margin: 0 0 5px;
}

.spec-modal__item table{
  border-top:1px solid #000;
  font-weight: bold;
  width: 100%;
}

.spec-modal__item table th{
  background: #3c3c3c;
  border-bottom: 1px solid #fff;
  color: #fff;
  text-align: center;
  width: 120px; 
}

.spec-modal__item table tr:last-child th{
  border-bottom: 1px solid #000;
}

.spec-modal02 .spec-modal__item table th span{
  margin: 0 0 0 0.7em; 
}

.spec-modal__item table th sup{
  margin: 0 0 0 0.2em 
}

.spec-modal__item table td{
  border-bottom:1px solid #000;
  line-height: 1.6;
  padding: 5px 5px 5px 10px;
  width: 270px;
}

.spec-modal__item.spec-modal__item--01  table tr:nth-child(1) td,
.spec-modal__item.spec-modal__item--01  table tr:nth-child(2) td,
.spec-modal01 .spec-modal__item.spec-modal__item--01  table tr:nth-child(5) td{
  padding: 10px 5px 10px 10px;
}

.spec-modal02 .spec-modal__item--01  table tr td{
  padding: 12px 5px 12px 10px;
}

.spec-modal__item--02 .spec-modal__item__title{
  border-bottom:1px solid #000;
  padding: 0 0 5px;
}

.spec-modal02 .spec-modal__item--01 table,
.spec-modal__item--02 table{
  margin: 0 0 10px;
}

.spec-modal__item--02__image{
  width: 111px;
  margin: 20px auto;
}

.spec-modal__item__footnote{
  font-size: 1.55rem;
  line-height: 1.55;
}

.spec-modal__item__contact-info__description li{
  line-height: 1.65;
  margin: 0 0 0 1em;
  text-indent: -1em;
}

@media screen and (max-width: 667px) {
  body.is-modal {
    height: 100vh;
  }
  
  .spec-modal{
    border-radius: 1.333vw;
    font-size: 2.6rem;
    margin: 10.666vw auto 5.333vw;
    padding: 5.97vw;
    width: 89.333vw;
  }
  
  .spec-modal__close-btn{
    top:-6vw;
    width: 3.6vw;
  }

  .spec-modal__title{
    font-size:3.6rem;
    margin: 0 0 5.333vw;
  }


  .spec-modal__item{
    font-size:2.6rem;
    font-weight: bold;
    margin: 0 0 5.333vw;
    width: 100%;
  }
  
  .spec-modal__item--02,
  .spec-modal__item--03{
    margin: 0 0 4vw;
  }
  
  .spec-modal02 .spec-modal__item--03{
    margin: 0;
  }
  
  .spec-modal__item--04{
    margin: 0;
  }

  .spec-modal__item__title{
    font-size:3.0rem;
    margin: 0 0 1.333vw;
  }

  .spec-modal__item table th{
    width: 25.6vw; 
  }

  .spec-modal__item table td{
    padding: 0.666vw 2vw;
    width: 53.066vw;
  }

  .spec-modal__item.spec-modal__item--01  table tr:nth-child(1) td,
  .spec-modal__item.spec-modal__item--01  table tr:nth-child(2) td,
  .spec-modal01 .spec-modal__item.spec-modal__item--01  table tr:nth-child(5) td{
    padding: 1.333vw 2vw;
  }
  
  .spec-modal02 .spec-modal__item--01  table tr td{
    padding: 1.333vw 2vw;
  }

  .spec-modal__item--02 .spec-modal__item__title{
    border-bottom:1px solid #000;
    padding: 0 0 1.333vw;
  }

  .spec-modal__item--02 table{
    margin: 0 0 1.333vw;
  }

  .spec-modal__item--02__image{
    width: 23.733vw;
    margin: 2.666vw auto;
  }

  .spec-modal__item--02__footnote{
    font-size: 2.3rem;
    letter-spacing: -0.01em;
  }

  .spec-modal__item--04{
    padding:0;
  }
  
  .spec-modal__item__contact-info__description{
    letter-spacing: -0.05em;
  }
}