
/*-------------------------------------------------------------*/
body{
overflow-x: hidden !important;
    width: 100%;
}
#content .mv-for-page .mv-img {
    position: relative;
    margin-inline: auto 0;
    height: 100% !important;
    width: 100% !important;
    background-size: cover;
    background-position: center;
}
/* 高出力・高効率を兼ね備えたN型セル画像にドロップシャドウと白ふち */
._main_contents1 img, ._main_contents2 img{
  background: #fff;
  padding: 0;
  transition: box-shadow 0.3s;
  display: block;
  margin: 0 auto;
}
._main_contents1 img {
  box-shadow: 0 0px 5px rgba(0, 0, 0, 0.25);
  border: solid 30px #fff;
}
._main_contents2 img {
  padding: 20px 30px;
}

.compact ._main_contents2 img, ._main_contents2 img {
  padding: 30px 0px;
}
.compact_con_right p {
  font-size: 20px;
  text-align: center;
  padding: 40px 0px;
  margin: 0px;
  color: #333333;
}
.features ._main-title, .features2 ._main-title {
  font-size: 3.5em;
  font-weight: 700;
  color: #1976d2;
  margin-bottom: 20px;
  background: linear-gradient(90deg, #ff7e3c 0%, #a0542b 40%, #5f1001 80%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  position: relative;
  text-align: left;
  z-index: 3;
}
.four_advanced_features h2{
  font-size: 32px;
    color: #8C2920 !important;
}
h2.product-detail-title, .download-title, h2.simulation-title, h2.contact-title, ._main_contents2 li {
    color: #8C2920 !important;
}
.features ._main_contents1 h3, .features ._main_contents2 h3{
  display: block;
  text-align: center;
  z-index: 6;
  padding: 40px 0px 20px;
}
.contact-inner h2 {
  text-align: center;
  padding: 50px 0px;
  font-size: 32px;
}
.features2::after {
  content: '';
  position: absolute;
  top: 0%;
  right: 0%;
  width: 0;
  height: 0;
  z-index: 9;
  background: #ffffff8c;
  width: 86vw;
  height: auto;
  min-height: 100%;
  z-index: -1;
  transform: scale(-1, 1);
}
/*背景台形*/
.triangle {
  width: 0;
  height: 0;
  border-right: 86vw solid transparent;
  border-bottom: 100px solid #ffffff8c;
  border-top: 0;
}
.triangle2 {
  width: 0;
  height: 0;
  border-right: 86vw solid transparent;
  border-top: 100px solid #ffffff8c;
  border-bottom: 0;
}
.triangle3 {
  width: 0;
  height: 0;
  border-right: 86vw solid transparent;
  border-bottom: 100px solid #ffffff8c;
  border-top: 0;
  transform: scale(-1, 1);
  margin-left: auto;
  margin-right: 0;
  display: block;
}
.triangle4 {
  width: 0;
  height: 0;
  border-right: 86vw solid transparent;
  border-top: 100px solid #ffffff8c;
  border-bottom: 0;
  transform: scale(-1, 1);
  margin-left: auto;
  margin-right: 0;
  display: block;
}
.triangle5 {
  width: 0;
  height: 0;
  border-right: 86vw solid transparent;
  border-top: 100px solid #ffffff8c;
  border-bottom: 0;
}
.features::after {
  content: '';
  position: absolute;
  top: 0%;
  left: 0%;
  width: 0;
  height: 0;
  z-index: 9;
  background: #ffffff8c;
  width: 86vw;
  height: auto;
  min-height: 100%;
  z-index: -1;
}
/*背景台形*/
/* contents2の横間隔調整 */
.contents2 .product-row {
  gap: 30px;
  justify-content: center;
  padding: 90px 20px 20px;
}
.contents2 .product-item {
  flex: 1 1 0;
  min-width: 160px;
  max-width: 200px;
  border-radius: 12px;
  padding: 20px 0px;
  transition: transform 0.2s, box-shadow 0.3s ease;
  background: linear-gradient(135deg, #d29d8c 0%, #ffc2af 50%, #fff 100%);
  box-shadow: 0 4px 15px rgba(255, 200, 120, 0.18);
}

.anti-glare-bottom-text {
  margin: 50px 0px 30px;
  font-size: 28px;
  color: #fff;
  text-align: center;
}
.anti-glare-strength-item {
  background: none;
  border-radius: 18px;
  padding: 36px 24px 28px 24px;
  text-align: center;
  flex: 1 1 220px;
  max-width: 300px;
  min-width: 220px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
/* anti-glare-row部分の背景をグラデーションに */
.anti-glare-row {
  display: flex;
  gap: 40px;
  align-items: center;
  margin-bottom: 60px;
  flex-wrap: wrap;
  border-radius: 24px;
  padding: 40px 32px;
}
/* anti-glare-back1に背景グラデーションを適用 */
.anti-glare-back1 {
  background: transparent linear-gradient(180deg, #FF5A2800 0%, #FF5A2880 100%) 0% 0% no-repeat padding-box;
  border-radius: 32px;
  padding: 0 0 0 0;
  padding: 180px 0px;
  position: relative;
  overflow: hidden;
}
.anti-glare-back2 {
  background-color: #2B0F07;
  padding: 0px 0px 100px;
}
.anti-glare-title {
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  text-align: left;
  margin: 100px 0px;
  letter-spacing: 0.02em;
  position: absolute;
  top: -231px;
  z-index: 9;
}
.anti-glare-title2 {
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  text-align: left;
  margin: 100px 0px;
  letter-spacing: 0.02em;
}
.anti-glare-texts {
  flex: 1;
  color: #fff;
  font-size: 1.2em;
  line-height: 2;
  min-width: 220px;
}
.anti-glare-texts {
  background: #fff;
  width: 54%;
  max-width: 100%;
  height: 500px;
  position: absolute;
  left: 0;
  top: 69px;
}
.anti-glare-texts p {
  text-align: center;
  color: #000;
  padding: 50px 0px;
  background: linear-gradient(0deg, #cea193 0%, #ffffff 100%);
}
.sp_side_bt{
  display: none;
}
.pc_img1{
  display: block !important;
}
.sp_img1{
  display: none !important;
}
.mv_name {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  bottom: 15%;
  font-size: 9em;
  background: linear-gradient(90deg, #be270a 0%, #ffffff 50%, #ffffff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.mv_main_text1 {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  top: 5%;
  font-size: 7em;
}

.mv_main_text2 {
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  color: #fff;
  top: 24%;
  font-size: 1.4em;
  font-weight: normal;
}

.product-row {
    display: flex;
    flex-wrap: wrap;
    gap: 100px;
    justify-content: center;
    padding: 0 20px;
}
.sp_side_bt ul{
  display: flex;
}
.sp_side_bt li{
  width: 100%;
}

.features ._main_contents2 ul, .features2 ._main_contents2 ul {
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
  gap: 20px;
  z-index: 5;
}
li._contact_contenner {
  box-shadow: 0 0px 5px rgba(0, 0, 0, 0.25);
  background: #fff;
  padding: 10px 0px;
  margin: 0px;
  border-radius: 20px;
}

li.fadein.compact_con_right.visible, li.recommendation.compact_con_right{
  width: 670px;
  max-width: 670px;
}

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

@media (max-width: 900px) {
#content .mv-for-page .mv-img {
  height: 100vh !important;
  width: 100% !important;
}
._main_contents1 img {
    box-shadow: unset;
    border: unset;
}
._main_contents1 img {
    box-shadow: unset;
}
._main_contents1 img, ._main_contents2 img{
  background: #ffffff00;
  padding: 0;
  transition: box-shadow 0.3s;
  display: block;
  margin: 0 auto;
}
.compact ._main_contents2 img, ._main_contents2 img {
  padding: 15px;
}
.hamburger span {
    background: #fd6230 !important;
  display: block;
  width: 30px;
  height: 4px;
  margin: 5px auto;
  border-radius: 2px;
  transition: all .3s;
}
.compact_con_right p {
    padding: 10px 0px;
}
.features ._main-title, .features2 ._main-title {
  font-size: 3.2em;
}
._main_contents1 h3, ._main_contents2 h3, .download-inner h2, .contact-inner h2, .four_advanced_features h2, .product-detail-inner h2 {
  font-size: 1.8em;
  color: #8C2920;
}
.triangle {
  border-right: 100vw solid transparent;
  border-bottom: 100px solid #ffffff8c;
}
.triangle2 {
  border-right: 100vw solid transparent;
  border-top: 100px solid #ffffff8c;
}
.triangle3 {
  border-right: 100vw solid transparent;
  border-bottom: 100px solid #ffffff8c;
}
.triangle4 {
  border-right: 100vw solid transparent;
  border-top: 100px solid #ffffff8c;
}
.triangle5 {
  border-right: 100vw solid transparent;
  border-top: 100px solid #ffffff8c;
}
.features2::after {
  width: 100vw;
}
span.no6 {
    display: block;
    font-size: 3.5em !important;
    line-height: 1.3;
}
html {
    background: #340d04;
}
.product-item-container {
    max-width: 49%;
}
.anti-glare-bottom-text {
    max-width: 90%;
    margin: 0 auto;
}
.anti-glare-strength-item {
  max-width: 90%;
  min-width: 90%;
}
.anti-glare-title2 {
    text-align: center;
    margin: 100px 0px 50px;
}
.anti-glare-row {
  margin-bottom: 0px;
}
.anti-glare-back1 {
  padding: 180px 0 0px;
}
.anti-glare-title {
  text-align: center;
}
.anti-glare-texts {
  flex: 1;
  color: #fff;
  font-size: 1.2em;
  line-height: 2;
  min-width: 220px;
}
.anti-glare-texts {
  background: unset;
  width: 54%;
  max-width: 100%;
  height: 500px;
  position: absolute;
  left: 0;
  top: 69px;
}
.anti-glare-texts p {
    text-align: center;
    color: #fff;
    padding: 50px 0px;
    background: unset;
}
.anti-glare-texts {
    background: unset;
    width: 54%;
    max-width: 100%;
    height: 500px;
    position: absolute;
    left: 0;
    top: 69px;
    z-index: 10;
}
.pc_img1{
  display: none !important;
}
.sp_img1{
  display: block !important;
}
.features ._main_contents2 ul, .features2 ._main_contents2 ul {
  display: inline-block !important;
}
li._contact_contenner {
  margin: 20px 0px !important;
}
.sp_side_bt{
  display: block;
  position: fixed;
  bottom: 0px;
}
  .sp_side_bt ul {
    display: flex;
    width: 100vw;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .sp_side_bt li {
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .sp_side_bt a {
    display: block;
    width: 100%;
    height: 100%;
    padding: 18px 0 14px 0;
    font-size: 15px;
    font-weight: bold;
    text-align: center;
    border-radius: 0;
    box-sizing: border-box;
    line-height: 1.3;
    letter-spacing: 0.01em;
    border: none;
    transition: background 0.2s;
  }
  .sp_side_bt li:first-child a {
    background: #fd6230;
    color: #fff;
  }
  .sp_side_bt li:last-child a {
    background: #343333;
    color: #fff;
  }
li.fadein.compact_con_right.visible, li.recommendation.compact_con_right {
    width: 100%;
    max-width: 100%;
}
.mv_name {
  font-size: 3.5em;
  bottom: 25%;
}
}

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

@media (max-width: 840px) {
.side_bt{
  display:none;
}
.mv-button {
  bottom: 10%;
}
.mv_main_text1 {
  font-size: 4em;
  top: 10%;
}
.mv_main_text2 {
  font-size: 1.2em;
  top: 22%;
}
.mv_main_img {
  bottom: 33%;
}
.accordion-content.active {
  padding: 0px 10px;
  max-width: 50%;
  margin: 0 auto;
}
.contents1 .text-block p {
  font-size: 1.5em;
  margin: 12% auto;
}
.text_color_orenge {
  font-size: 20px;
}
.contents2 .product-row {
  gap: 0px;
  padding: 90px 0px 20px;
}
.product-item-container {
  padding: 10px 10px 0px 0px;
}
.features::after, .features2::after {
  width: 100%;
  min-height: 100%;
}
.features ._text, .features2 ._text {
  padding: 20px 0px 20px 0px;
}
.features ._main_contents2 ul, .features2 ._main_contents2 ul {
  display: block;
}
li._contact_contenner {
  margin: 20px 0px !important;
}
li.fadein.compact_con_right.visible, li.recommendation.compact_con_right {
  width: 100%;
  max-width: 100%;
}
.features ._inner::after, .features2 ._inner::after {
  z-index: 3;
}
.anti-glare-texts {
  width: 100%;
  max-width: 100%;
  height: auto;
  position: static;
}
.anti-glare-image img {
  position: static;
}
.anti-glare-row {
  margin-bottom: 0px;
}
.features ._main-title, .features2 ._main-title {
  font-size: 2.5em;
}
div#wpcf7-f3820-o1{
  max-width: 95%;
  margin: 0 auto;
  width: 95%;
}
.row.udescription, .row.utype, .row.ucompany, .row.uname, .row.ukana, .row.uaddress, .row.uemail, .row.utel, .row.ucontent, .row.utrigger, .row.uagree {
  display: block;
}
form.wpcf7-form.init > div {
  margin: 0px auto;
}
input.wpcf7-form-control.wpcf7-submit.has-spinner.submit-btn {
  margin: 10px auto;
  max-width: 100% !important;
  width: 100% !important;
}
.footer-inner > .footer-logo {
  max-width: 100%;
  width: 100%;
}
section#simulation {
  padding: 100px 0px 100px;
}
section#download {
  margin-bottom: 0px;
}
body{
  overflow-x: hidden !important;
  max-width: 100%;
}
.side_bt ul:nth-child(1) {
  position: fixed;
  bottom: 26%;
  right: 0;
  width: 130px;
  height: auto;
  margin: 0px;
  border-radius: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.side_bt ul:nth-child(2) {
  position: fixed;
  bottom: 10%;
  right: 0;
  color: #fff;
  text-align: center;
  width: 50%;
  height: auto;
  background-color: rgba(52, 51, 51, 0.56);
  margin: 0px;
  border-radius: 0px;
  display: block;
}
.one-column-section, .contact-section {
  max-width: 100%;
  padding: 40px 10px;
}
.recommendation ul {
  padding: 0px 0px 50px;
}
.hr-sns {
  margin: 0 calc(75% - 80vw);
}
}

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

@media (max-width: 620px) {
.mv_main_img {
  bottom: 30%;
}
.mv_main_text2 {
  font-size: 1.2em;
  top: 23%;
}
.hr-sns {
  margin: 0 calc(76% - 80vw);
}
.accordion-content.active {
  padding: 0px 5px;
  max-width: 65%;
  margin: 0 auto;
}
.mv_main_text2 {
    font-size: 1.2em;
}
  .contact-btn-row {
    flex-direction: column;
    gap: 18px;
    align-items: center;
  }
  .contact-btn.orange-btn {
    width: 90%;
    min-width: unset;
  }
}
