.wrap{ font-family: 'Noto Sans JP',"游ゴシック", 'YuGothic', "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro",'Meiryo', sans-serif }
#tect .content > .wrap h3{  max-width: 880px; margin-bottom: 50px;
box-sizing: border-box;
 background:#ea6188}
#tect .content > .wrap > h4.title{ text-align: left; padding:0 }
#topimage {  overflow: hidden;  text-align: center;}

.section2 p{ letter-spacing: -0.5px; }
.redtxt{ color: #e60012; }
.redtxt,
.boldtxt{ font-weight: 600;  }

.subbox dt{position: relative; display: inline; font-weight: 600; padding: 0 7px;}
.subbox dt::before{ position: absolute; content: ""; 
background-color: #f9d0e0; height: 12px; width: 100%; box-sizing: border-box;
display: inline-block; left:0; bottom: -1px; z-index: -1; }

.subbox dd{  margin-top: 11px; }

.section3 div,.section4wrap{ display: flex; justify-content: space-between; }
#tect .tag {
  text-align: center;
  line-height: 1;
  color: #e4007f;
  font-weight: 500;
  margin-top: 20px;
}
#tect .tag span {
  display: inline-block;
  border: 2px solid #e4007f;
  border-radius: 20px;
  padding: 3px 30px;}
#lineup .name {
  line-height: 1.333em;
}
@media screen and (min-width: 1081px), print {
  #tect .content { padding: 20px;  }
   #tect .content::before {
    display: block;
    width: 954px;
    top: 30px;
    bottom: 13px;
    left: 0;
    right: 0;
  }
  .product_brand { width: 980px; margin-right: auto;  margin-left: auto;}
 #tect section { margin-bottom: 50px;  }
  #topimage { margin-bottom: 70px;}
  #tect .content > .wrap h3{padding: 30px!important;}
  #tect.advance .content > .wrap { padding: 30px 40px;}
  #tect.advance .section2 figure{margin-top: 45px; margin-bottom: 100px;}
  #tect.advance .section3 figure{ margin:inherit }
.boldtxt{  font-size: 1.06em; }
.content p, dd{ font-size: 1.15em; }
.uptxt{ line-height: 1.4em; font-size: 1.24em; }
.subbox dt{font-size: 1.5em; }
.subbox dd{ margin-bottom: 35px; }

  #tect.advance .section4{ float: inherit; padding: inherit;}
  #tect.advance .section4 figure{ margin:inherit }
  #tect.advance .section4 h4 { margin-bottom: 30px;}
  #tect.advance .section4wrap { margin-bottom: 80px; }
  #tect.advance .section4wrap .section4:first-child h4{ margin-bottom: 19px; padding-top: 10px;}

  #tect.advance .section7 { padding-top: 90px;}
  #tect.advance .section7 figure > div:last-child{ margin-top: 15px; }
    #lineup .name {
    margin-top: 20px;  }
}

@media screen and (max-width: 1080px) {
#tect .content > .wrap h3{padding: 4% 3%}
.section3 div, .section4wrap{ flex-wrap: wrap; }

.boldtxt{  font-size: 1.03em; }
.uptxt{ line-height: 1.4em; font-size: 1.15em; }
.subbox dt{font-size: 1.15em; }
.subbox dd{ margin-bottom: 6%; }

#tect.advance  article .section3 figure{ margin:0 }
#tect.advance  article section { margin-bottom: 15%;}
#tect.advance article .section2 figure{ margin-top: 8%; margin-bottom: 15%;}
.section2 .title,.section3 .title,
.section4wrap .section4 .title { width: 92%; }
.section4wrap .section4:first-child { margin-bottom:13%}
#tect.advance article .section7 .section_tle{ width: 50%; }
}

@media screen and (max-width: 1080px) and (min-width: 901px) {
#tect.advance .content::before{height: calc(99% + -1.1vw);}
}

@media screen and (max-width: 900px) and (min-width: 751px) {
#tect.advance .content::before{height: calc(99% + -2px);}
}

@media screen and (max-width: 750px)  {
 #tect.advance > article { padding: 5% 5% 6%;}
}
@media screen and (max-width: 750px) and (min-width: 481px) {
 #tect.advance .content::before { height: calc(99% + -0.5%);  }
}

@media screen and (max-width: 480px) {
#tect.advance .content::before { height: calc(99% + -0.2%);  }
}
