@charset "UTF-8";

*, ::after, ::before {
  --tw-border-spacing-x: 0;
  --tw-border-spacing-y: 0;
  --tw-translate-x: 0;
  --tw-translate-y: 0;
  --tw-rotate: 0;
  --tw-skew-x: 0;
  --tw-skew-y: 0;
  --tw-scale-x: 1;
  --tw-scale-y: 1;
  --tw-pan-x: ;
  --tw-pan-y: ;
  --tw-pinch-zoom: ;
  --tw-scroll-snap-strictness: proximity;
  --tw-ordinal: ;
  --tw-slashed-zero: ;
  --tw-numeric-figure: ;
  --tw-numeric-spacing: ;
  --tw-numeric-fraction: ;
  --tw-ring-inset: ;
  --tw-ring-offset-width: 0px;
  --tw-ring-offset-color: #fff;
  --tw-ring-color: rgba(0,176,218,.5);
  --tw-ring-offset-shadow: 0 0 #0000;
  --tw-ring-shadow: 0 0 #0000;
  --tw-shadow: 0 0 #0000;
  --tw-shadow-colored: 0 0 #0000;
  --tw-content: attr(data-text);
  --tw-blur: ;
  --tw-brightness: ;
  --tw-contrast: ;
  --tw-grayscale: ;
  --tw-hue-rotate: ;
  --tw-invert: ;
  --tw-saturate: ;
  --tw-sepia: ;
  --tw-drop-shadow: ;
  --tw-backdrop-blur: ;
  --tw-backdrop-brightness: ;
  --tw-backdrop-contrast: ;
  --tw-backdrop-grayscale: ;
  --tw-backdrop-hue-rotate: ;
  --tw-backdrop-invert: ;
  --tw-backdrop-opacity: ;
  --tw-backdrop-saturate: ;
  --tw-backdrop-sepia: ;
}
:root {
  --red: #f6124e;
  --orange: #ff9000;
  --green: #00e596;
  --pink: #ff0190;
  --purple: #6a01ca;
  --yellow: #ffe75f;
  --blue: #097ba1;
  --gray100: #f1f1f0;
  --gray200: #dadad7;
  --gray300: #c3c3be;
  --gray400: #ababa5;
  --gray500: #999;
  --gray600: #7c7c74;
  --gray700: #64645d;
  --gray800: #4b4b46;
  --gray900: #333;
  --fontRegular: noto-sans,"Noto Sans JP",sans-serif;
  --fontDin: din-2014,sans-serif;
  --sizeRoot: 16px;
  --lineHeight: 1;
  --sizeH1: 3.4rem;
  --sizeH2: 3rem;
  --sizeH3: 2.6rem;
  --sizeH4: 2.2rem;
  --sizeH5: 1.8rem;
  --sizeH6: 1.3rem;
  --pageMaxWidth: 1280px;
  --modalHeight: calc(85vh - 4rem);
  --modalHeightNs: calc(85vh - 5.5rem);
  --modalHeightWithoutBar: calc(85vh - 1.5rem);
}
body {
width: 100%;
margin: 0;
overflow-x: hidden;
font-family: "Noto Sans JP",noto-sans,sans-serif;
}
.block {
  display: block;
}
#feature {
  position: absolute;
  top: 25%;
}

.relative {
  position: relative;
}
.inline-block {
  display: inline-block;
}
.bg-clip-text {
  -webkit-background-clip: text;
  background-clip: text;
}
.bg-gradient-to-t {
  background-image: linear-gradient(to top,var(--tw-gradient-stops));
}
.text-transparent {
  color: transparent;
}
.gradation_area {
  --tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to);
}
.whitespace-pre-wrap {
  white-space: pre-wrap;
}

.bg-striped-gradient-light {
  --mys-striped-bg: repeating-linear-gradient(-50deg,rgba(0,255,255,0),hsla(0,0%,100%,0) 0.5rem,hsla(0,0%,100%,.2) 0,hsla(0,0%,100%,.2) 1rem);
}
.bg-striped-gradient-to-t {
  background-image: var(--mys-striped-bg),linear-gradient(to top,var(--tw-gradient-stops));
}
.bg-gradient-to-r {
  background-image: linear-gradient(to right,var(--tw-gradient-stops));
}


/* テキストに陰を付ける */
.drop-shadow-text1 {
  --tw-drop-shadow: drop-shadow(0.1em 0.1em 0px rgba(0,0,0,.3));
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.drop-shadow-text2 {
  --tw-drop-shadow: drop-shadow(2px 2px 0px #810b30);
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}
.before_15em::before {
  -webkit-text-stroke-width: .12em;
  content: var(--tw-content);
}
.before_4px::before {
  -webkit-text-stroke-width: 4px;
  content: var(--tw-content);
}
.before_absolute::before {
  content: var(--tw-content);
  position: absolute;
  top: 0;
  left: 0;
}
.before_text-stroke-black::before {
  -webkit-text-stroke-color: #232323;
  content: var(--tw-content);
}
.before_text-stroke-blue::before {
  -webkit-text-stroke-color: #284f4c;
  content: var(--tw-content);
}


.before_data-text::before {
  --tw-content: attr(data-text);
  content: var(--tw-content);
}
.from-gradation-yellow {
  --tw-gradient-from: #fee101;
  --tw-gradient-to: rgba(150,15,57,0);
  --tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to);
}
.before_text-stroke-white::before {
  -webkit-text-stroke-color: #fff;
  content: var(--tw-content);
}
.blur_15px {
  --tw-blur: blur(1.5px);
}
.blur {
  filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow);
}

/* ここまでカスタムプロパティ設定部分 */



/* ここから要素に合わせてカスタム。 */
.from-gold {
  --tw-gradient-from: #fac13c;
  --tw-gradient-to: rgba(250,193,60,0);
}
.from-pink {
  --tw-gradient-from: #960f39;
  --tw-gradient-to: rgba(150,15,57,0);
}
.from-pink2 {
  --tw-gradient-from: #e32862;
--tw-gradient-to: rgba(227,40,98,0);
--tw-gradient-stops: var(--tw-gradient-from),var(--tw-gradient-to);
}
.from-black {
  --tw-gradient-from: #65e2d8;
  --tw-gradient-to: rgba(250,193,60,0);
}
.from-white {
  --tw-gradient-from: #fbfbfb;
  --tw-gradient-to: rgba(255,255255,0);
}
.to-pink {
  --tw-gradient-to: #e32862;
}
.to-black {
  --tw-gradient-to: #65e2d8;
}
.to-white {
  --tw-gradient-to: #ffffff;
}
.to-blue {
  --tw-gradient-to: #65e2d8;
}
.to-purple {
  --tw-gradient-to: #510098;
}
.to-gold {
  --tw-gradient-to: #f6e597;
}
.before_text-stroke-gold::before {
  -webkit-text-stroke-color: #6c0726;
  content: var(--tw-content);
}
.to-gradation-yellow {
  --tw-gradient-to: #fee101;
}
.menu {
  padding: 0;
margin-bottom: 0;
max-width: 1000px;
margin-right: auto;
margin-left: auto;
margin-top: 0;
display: flex;
justify-content: space-between;
}
.menu li {
  list-style: none;
min-height: 50px;
display: flex;
align-items: center;
justify-content: center;
width: 20%;
}
img {
width: auto;
max-width: 100%;
}
.center {
  text-align: center;
} 
.f15 {
  font-size: 15px;
}
.f30 {
  font-size: 30px;
}
.f35 {
  font-size: 35px;
}
.f40 {
  font-size: 40px;
}
.f45 {
  font-size: 45px;
}
.f50 {
  font-size: 50px;
}
.f55 {
  font-size: 55px;
}
.f60 {
  font-size: 60px;
}
.f65 {
  font-size: 65px;
}
.f70 {
  font-size: 70px;
}
.f75 {
  font-size: 75px;
}
.f80 {
  font-size: 80px;
}
section {
position: relative;
}
.flex {
  display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: stretch;
}
.mv {
  position: relative;
  max-width: 1920px;
  height: 25vh;
  margin-top: 80px;
}
h2 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 600;
}
.video-wrap video {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.video-wrap {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.serif {
  font-family: 'Noto Serif JP', serif;
  font-weight: 400;
  font-size: 20px;
}
h3 {
  font-family: 'Noto Serif JP', serif;
  font-weight: 600;
}

.absolute {
  position: absolute;
}
.introduction {
background-color: #000;
color: #fff;
text-align: center;
padding-top: 0;
padding-bottom: 0;
min-height: 1500px;
display: flex;
align-items: center;
justify-content: center;
z-index: 0;
padding-bottom: 100px;
}
.introduction .back_top {
content: "";
background-image: url(../image/IMG_8715.JPG);
right: 0;
position: absolute;
top: 0;
height: 450px;
width: 100%;
background-size: cover;
background-position: center right;
background-repeat: no-repeat;
}
.introduction .back_top::before {
content: "";
filter: blur(30px);
height: 150px;
width: 110%;
position: absolute;
background-color: #000;
left: 0;
right: 0;
bottom: -85px;
margin: auto;
z-index: 0;
}


.introduction .back_bottom {
content: "";
background-image: url(../image/IMG_8716.JPG);
left: 0;
position: absolute;
bottom: 0;
height: 450px;
width: 100%;
background-size: cover;
background-position: center left;
background-repeat: no-repeat;
}
.introduction .back_bottom::before {
content: "";
filter: blur(30px);
height: 150px;
width: 110%;
position: absolute;
background-color: #000;
left: 0;
right: 0;
top: -85px;
margin: auto;
z-index: 0;
}



.merit {
  padding-top: 100px;
  background-color: #000;
color: #fff;
}
.merit .inner {
max-width: 1200px;
margin-right: auto;
margin-left: auto;
width: 100%;
}
.merit .inner .merit_text {
  width: 50%;
margin-left: auto;
}
.merit .merit_img:nth-child(2n) .inner .merit_text {
  margin-left: 0;
margin-right: auto;
}
.merit_text h2 {
font-size: 60px;
margin-bottom: 15px;
font-weight: 600;
line-height: 1.2em;
color: #fff;
}
.merit_text h2 span {
color: #FFD700;
}

.merit_text .text_box {
  margin-top: 40px;
}
.merit_img {
  position: relative;
padding-top: 30px;
padding-bottom: 30px;
min-height: 750px;
display: flex;
align-items: center;
}
.back_img {
position: absolute;
max-width: 850px;
height: 100%;
left: 0;
top: 0;
bottom: 0;
overflow: hidden;
margin: auto;
}
.merit_img .inner {
  z-index: 2;
position: relative;
}
.back_img img {
object-fit: cover;
height: 100%;
width: 100%;
display: block;
}
.merit .merit_img .back_img {
  left: -10%;
}

.merit .merit_img:nth-child(2n) .back_img {
left: auto;
right: -10%;
transform: scale(-1, 1);
}
.bg_welding {
  z-index: 1;
  opacity: 0;
}
.introduction .inner {
  max-width: 1000px;
width: 100%;
margin-right: auto;
margin-left: auto;
position: relative;
z-index: 3;
padding-top: 70px;
}
.introduction h2 {
  color: #fff;
  font-size: 35px;
  line-height: 1.6em;
}
.introduction h2 span {
  color: #FFD700;
}

.introduction .text_box {
  font-size: 18px;
line-height: 1.8em;
}
  .merit {
    padding-bottom: 100px;
  }
.youtube {
  background-color: #2f2f2f;
text-align: center;
color: #fff;
padding-bottom: 80px;
padding-top: 50px;
}
.youtube h2 {
  font-size: 40px;
}
.movie > ul {
  max-width: 1600px;
margin-right: auto;
margin-left: auto;
display: flex;
align-items: center;
justify-content: space-between;
padding: 0;
margin-top: 60px;
}
.movie ul li {
  list-style: none;
  box-sizing: border-box;
}
.movie ul li .movie_box {
  padding: 0;
  box-sizing: border-box;
}  


.movie ul li iframe {
  border: 2px solid #fff;
}



.slick-slider {
  padding-left: 0;
  margin-top: 0;
margin-bottom: 0;
}
.slick-slide img {
  height: calc(100vh - 80px);
  margin: auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
  width: 100%;
}
.global {
background-color: rgba(0,0,0,.8);
position: fixed;
top: 0;
width: 100%;
z-index: 99999;
}
.header {
  padding-top: 80px;
  background-color: rgba(0,0,0,1);
}
.menu_box ul li {
  list-style: none;
}

.global_box {
min-height: 80px;
display: flex;
align-items: center;
justify-content: space-between;
margin: auto;
width: 93%;
}

.menu_box {
  max-width: 900px;
width: 100%;
display: flex;
align-items: center;
justify-content: space-between;
}

.tel {
background-color: #FFD700;
text-align: center;
border-bottom: 4px solid #978002;
border-radius: 3px;
}
.mail {
background-color: #FFD700;
text-align: center;
border-bottom: 4px solid #978002;
border-radius: 3px;
}
.merit_img .relative {
  position: static;
}
section.global {
  padding-right: 0;
padding-left: 0;
}

.tel a {
color: #000;
text-decoration: none;
text-align: center;
min-height: 40px;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
font-family: 'Oswald', sans-serif;
}
.mail a {
color: #000;
text-decoration: none;
min-height: 40px;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
font-family: 'Oswald', sans-serif;
}
.menu_box ul {
  display: flex;
width: 50%;
padding: 0;
justify-content: space-between;
align-items: center;
margin-top: 0;
margin-bottom: 0;
}
.menu_box ul li a {
  color: #fff;
text-decoration: none;
position: relative;
}
.menu_box ul li a::before {
content: "";
position: absolute;
width: 60%;
height: 2px;
background-color: #fff;
bottom: -1vh;
right: 0;
left: 0;
margin: auto;
}
.header::before {
content: "";
position: absolute;
background-image: url(../image/dot.png);
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
margin: auto;
z-index: 2;
}


.cv_box {
  width: 45%;
display: flex;
justify-content: space-between;
}
.cv_box > div {
display: flex;
align-content: center;
align-items: center;
width: 47%;
text-align: center;
}
.header_text {
z-index: 3;
color: #fff;
top: 50%;
transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-ms-transform: translateY(-50%);
left: 10vw;
}
.header_text h2 {
width: 100%;
font-size: 45px;
margin-top: 0;
margin-bottom: 20px;
text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.8);
}
.header_text .serif {
  width: 100%;
  text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.8);
}
.youtube::before {
  content: "";
  position: absolute;
  background-image: url(../image/dot.png);
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  margin: auto;
  z-index: 2;
}
.youtube .inner {
  z-index: 3;
  position: relative;
}
footer {
  background-color: #2f2f2f;
  color: #fff;
  padding-bottom: 0;
  padding-top: 80px;
  position: relative;
}
footer::before {
  content: "";
  position: absolute;
  background-image: url(../image/dot.png);
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit- transform: translateY(-50%) translateX(-50%);
  margin: auto;
  z-index: 2;
}
.footer_list {
margin-top: 0;
margin-bottom: 0;
padding: 0;
display: flex;
justify-content: space-between;
max-width: 1500px;
margin-right: auto;
margin-left: auto;
flex-wrap: wrap;
z-index: 3;
position: relative;
}
.footer_list li {
  list-style: none;
}
.footer_list > li {
  width: 32%;
}
.footer_list > li:first-child {
  width: 25%;
}


.copyright {
text-align: center;
margin-bottom: 0;
padding-bottom: 15px;
font-weight: 500;
}
.icon ul {
padding: 0;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
max-width: 200px;
}
.icon ul li a {
  max-width: 60px;
display: block;
}
.icon ul li {
  padding-right: 0;
padding-left: 0;
width: 33.3333%;
}
.logo img {
width: 100%;
max-width: 300px;
}
footer .logo {
  margin-bottom: 30px;
}
.gallery {
      display: flex;
      margin-top: 35px;
      flex-wrap: wrap;
      justify-content: space-between;
    }

    .gallery-item {
      position: relative;
      width: 200px;
      height: 200px;
      overflow: hidden;
      max-width: 30%;
      border: 2px solid #fff;
    }

    .gallery-item img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      cursor: pointer;
    }

    .popup-container {
      display: none;
      position: fixed;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(0, 0, 0, 0.7);
      z-index: 9999;
      overflow: hidden;
      justify-content: center;
      align-items: center;
      animation: fade-in 0.5s;
    }

    .popup-container.closing {
      animation: fade-out 0.5s;
    }

    .popup-container.open {
      display: flex;
    }

    .popup-content {
      position: relative;
      max-width: 80%;
      animation: zoom-in 1s;
    }
    @keyframes zoom-in {
      from {
        transform: scale(0.5);
      }
      to {
        transform: scale(1);
      }
    }

    .popup-content img {
      width: 100%;
      height: 100%;
      object-fit: contain;
    }

    .delete-button {
      position: absolute;
      top: 10px;
      right: 10px;
      width: 30px;
      height: 30px;
      background-color: #fff;
      border-radius: 50%;
      display: flex;
      justify-content: center;
      align-items: center;
      cursor: pointer;
    }

    .delete-button::before,
    .delete-button::after {
      content: "";
      position: absolute;
      width: 20px;
      height: 3px;
      background-color: #000;
      transition: transform 0.3s;
    }

    .delete-button::before {
      transform: rotate(45deg);
    }

    .delete-button::after {
      transform: rotate(-45deg);
    }

    /* アニメーション */
    @keyframes fade-in {
      from {
        opacity: 0;
      }
      to {
        opacity: 1;
      }
    }

    @keyframes fade-out {
      from {
        opacity: 1;
      }
      to {
        opacity: 0;
      }
    }
    .interrog .inner {
      max-width: 1400px;
margin-right: auto;
margin-left: auto;
padding-bottom: 50px;
    }
    .interrog {
      padding-top: 50px;
      padding-bottom: 0;
    }
.interrog h2 {
font-size: 45px;
width: fit-content;
margin-right: auto;
margin-left: auto;
padding: 15px 20px;
background-color: #fff;
color: #000;
position: relative;
text-align: center;
line-height: 2em;
font-weight: 400;
}
.interrog h2 span {
color: #FFD700;
background-color: #000;
padding-right: 7px;
padding-left: 7px;
font-size: 1.1em;
display: inline-block;
margin-right: 7px;
margin-left: 7px;
border-radius: 0;
line-height: 1.5em;
font-weight: 500;
}
.interrog h3 {
width: fit-content;
margin-right: auto;
margin-left: auto;
font-size: 35px;
background-color: #FFD700;
padding: 15px 20px;
margin-top: 0;
margin-bottom: 0;
position: absolute;
bottom: -4.5vh;
right: 0;
left: 0;
z-index: 3;
border: 2px solid #978002;
display: none;
}
.interrog h3 span {
  position: relative;
z-index: 5;
}

.interrog h3::before {
  content: "";
width: 30px;
height: 30px;
background-color: #FFD700;
position: absolute;
right: 0;
left: -30px;
margin: auto;
bottom: -0.9vw;
display: inline-block;
text-align: center;
z-index: 4;
transform: rotate(45deg);
border-right: 2px solid #978002;
border-bottom: 2px solid #978002;
}
.dot_area {
  content: "";
position: absolute;
background-image: url(../image/dot.png);
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
margin: auto;
z-index: 2;
}
.introduction .dot_area {
  background-image: none;
}

.fukidashi {
  margin-bottom: 80px;
}
.worries_box {
display: flex;
justify-content: space-between;
max-width: 1400px;
margin-right: auto;
margin-left: auto;
align-items: center;
padding-top: 50px;
padding-bottom: 100px;
}
.worries_left,.worries_right {
  width: 33.3333333%;
  min-height: 400px;
}
.worries_center {
width: 400px;
height: 400px;
position: relative;
overflow: hidden;
border-radius: 100%;
background-color: #fff;
display: flex;
justify-content: center;
}
.worries_center img {
  object-fit: cover;
}
.white_border {
border-radius: 100%;
overflow: hidden;
}

.worries_left ul,.worries_right ul {
  padding: 0;
margin-top: 0;
margin-bottom: 0;
display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  flex-flow: column;
  -webkit-box-pack:justify;
  -ms-flex-pack:justify;
  justify-content:space-between;
  min-height: 400px;
}
.worries_left ul li,.worries_right ul li {
list-style: none;
background-color: #ccc;
padding: 5px;
font-size: 20px;
border-radius: 5px;
min-height: 80px;
display: flex;
align-items: center;
justify-content: center;
font-weight: 700;
position: relative;
color: #333;
}
.worries_left ul {
  padding-right: 10px;
}
.worries_right ul {
  padding-left: 10px;
}
.worries_left ul li span,.worries_right ul li span {
  z-index: 1;

}

.worries_left ul li::before {
content: "";
width: 45px;
height: 30px;
position: absolute;
margin: auto;
right: -.8vw;
display: inline-block;
text-align: center;
z-index: 1;
background-image: url(../image/fukidashi_kaku2.svg);
background-size: cover;
background-position: center;
transform: scaleX(-1);
}
.worries_right ul li::before {
content: "";
width: 45px;
height: 30px;
position: absolute;
margin: auto;
left: -.8vw;
display: inline-block;
text-align: center;
z-index: 1;
background-image: url(../image/fukidashi_kaku2.svg);
background-size: cover;
background-position: center;
}
.worries_left ul li:last-child::before {
  transform: scaleY(-1)scaleX(-1);
}
.worries_right ul li:last-child::before {
  transform: scaleY(-1);
}
.worries_text h2 {
  font-weight: 900;
}
.triangle {
  width: 0;
  height: 0;
  border-bottom: 150px solid #000;
  border-left: 100vw solid transparent;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
}
.triangle2 {
  width: 0;
  height: 0;
  border-top: 150px solid red;
  border-right: 100vw solid transparent;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
}



.youtube h2 {
  line-height: 1.6em;
}

.flow {
background-color: #000;
color: #fff;
min-height: 300px;
padding-top: 50px;
padding-bottom: 50px;
background-image: url(../image/IMG_8639.JPG);
background-repeat: no-repeat;
background-size: cover;
background-position: center;
}


.se_triangle::before {
content: "";
display: block;
width: 72px;
height: 36px;
position: absolute;
top: 0;
right: .5vw;
left: 0;
margin-right: auto;
margin-left: auto;
border-top: 36px solid #fff;
border-right: 36px solid transparent;
border-left: 36px solid transparent;
box-sizing: border-box;
z-index: 3;
}
.ht_triangle {
content: "";
display: block;
width: 72px;
height: 36px;
position: absolute;
top: 0;
right: .5vw;
left: 0;
margin-right: auto;
margin-left: auto;
border-top: 36px solid #fff;
border-right: 36px solid transparent;
border-left: 36px solid transparent;
box-sizing: border-box;
z-index: 3;
}
.price {
  padding-top: 50px;
padding-bottom: 50px;
}
.price .inner {
max-width: 100%;
margin-right: auto;
margin-left: auto;
}
.price h2 {
  font-size: 40px;
text-align: center;
line-height: 1.6em;
margin-bottom: 0;
}
.price .subtitle {
text-align: center;
margin-bottom: 25px;
color: #a7a7a7;
}
.price_box {
border: 1px solid #ccc;
padding: 0;
margin-bottom: 80px;
border-radius: 10px;
overflow: hidden;
max-width: 1150px;
margin-right: auto;
margin-left: auto;
}
.price_title.ip_only .price_size {
  padding-top: 5px;
padding-bottom: 15px;
font-size: 1.7em;
}

.ac_body {
  display: none;
}
.ac {
width: 100%;
}
.ac_button {
  width: 100%;
  background-color: #ffd700;
  text-align: center;
  min-height: 40px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  cursor: pointer;
}
.price_box > .flex {
  padding: 40px 30px;
}
.price_box > .flex.price_left {
  padding-right: 10px;
}
.price_box > .flex.price_right {
padding-left: 0;
}

.price_left {
max-width: 65%;
box-sizing: border-box;
}
.price_number span {
font-size: 1.1em;
padding-left: 0;
}
.price_number f {
  font-size: .6em;
font-family: "Noto Sans JP",noto-sans,sans-serif;
font-weight: 700;
padding-left: 5px;
}
.plan_img_title {
font-family: 'Noto Serif JP', serif;
font-style: italic;
text-align: center;
font-size: 2em;
margin-top: 50px;
margin-bottom: 50px;
background-image: url(../image/img_head-black02.webp);
color: #fff;
font-weight: 600;
min-height: 300px;
background-position: center;
background-size: cover;
background-repeat: no-repeat;
display: flex;
justify-content: center;
align-items: center;
text-shadow: 3px 3px 3px rgba(0, 0, 0, 0.8);
}
.plan_img_second {
  background-image: url(../image/headline_coating02.webp);
}


.price_number {
width: 100%;
}
.price_cv {
width: 100%;
display: flex;
justify-content: right;
align-items: end;
}

.price_right {
  width: 35%;
box-sizing: border-box;
align-items: end;
}
.price_img {
width: 40%;
min-height: 215px;
}
.price_img img {
object-fit: cover;
height: 100%;
width: 100%;
border-radius: 10px;
}

.price_title {
  padding-left: 20px;
width: 60%;
box-sizing: border-box;
}
.price_size {
font-size: 1.7em;
letter-spacing: 0.05em;
font-weight: 700;
padding-left: 5px;
}
.price_explanation {
margin-top: 25px;
background-color: #f4f4f4;
padding: 15px;
border-radius: 10px;
color: #555;
font-weight: 500;
font-size: 15px;
letter-spacing: 0.07em;
line-height: 1.6em;
min-height: 150px;
box-sizing: border-box;
}
.ac_body {
  padding: 30px;
}
.ac_body table {
  width: 50%;
}
.ac_body .flex {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: baseline;
}


.ac_body table tr:first-child th,.ac_body table tr:first-child td {
  border-top: #eee 1px dotted;
}
.ac_body table tr th {
color: #888;
padding: 12px 10px;
font-size: 13px;
border-bottom: #eee 1px dotted;
text-align: left;
box-sizing: border-box;
width: 40%;
}
.ac_body table tr td {
color: #555;
padding: 12px 10px;
font-size: 15px;
border-bottom: #eee 1px dotted;
font-weight: 700;
width: 60%;
}
.ac_button_icon {
width: 20px;
height: 20px;
background-color: #000;
border-radius: 100%;
display: flex;
margin-right: 10px;
justify-content: center;
align-items: center;
margin-bottom: -3px;
}
.open .ac_button_icon .plus {
  display: none;
}
.ac_button_icon .minus {
  display: none;
}
.open .ac_button_icon .minus {
  display: block;
}

.price_cv a {
background-color: #193fff;
color: #fff;
text-decoration: none;
border-radius: 5px;
min-height: 60px;
width: 100%;
display: flex;
justify-content: center;
align-items: center;
max-width: 200px;
}
.price_number {
font-family: 'Oswald', sans-serif;
color: #dd1f0b;
font-size: 2.3em;
font-weight: 900;
line-height: 1em;
margin-bottom: 20px;
}
.price_number b {
  margin-top: 20px;
  display: block;
  text-align: right;
}
.price_number b.black {
  margin-top: 0;
  color: #333;
}
#procoating .price_number b {
  margin-top: 0;
}
#procoating .price_number {
  margin-bottom: -.7em;
}
#procoating .price_box > .flex {

}





/*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.d-demo {
  display: -ms-grid;
  overflow: hidden;
}
/*----------------------------*/

.d-demo__wrap {
  display: flex;
  overflow: hidden;
}

.d-demo__list {
display: flex;
list-style: none;
margin-top: 0;
margin-bottom: 0;
padding: 0;
}

.d-demo__list--left{
animation :infinity-scroll-left 70s infinite linear 0.5s both;
}
.d-demo__list--left.speed{
animation :infinity-scroll-left 40s infinite linear 0.2s both;
}
.d-demo__item {
  width: calc(100vw / 6);
  padding: 15px;
}
.d-demo__item > img{
width: 100%;
border: 2px solid #fff;
box-sizing: border-box;
}
.d-demo {
  margin-top: 0;
}

.cv {
padding-top: 80px;
padding-bottom: 30px;
background-color: #000;
}

.cv h2 {
line-height: 1.6em;
margin-bottom: 0;
margin-top: 0;
color: #FFD700;
font-weight: 500;
font-family: 'Oswald', sans-serif;
letter-spacing: 0.05em;
font-size: 3.5em;
}
.cv .subtitle {
  color: #fff;
  margin-bottom: 30px;
  font-family: "Noto Sans JP",noto-sans,sans-serif;

}
.cv_explanation {
  color: #fff;
line-height: 1.6em;
font-size: 15px;
}

.cv .inner {
  max-width: 1000px;
margin-right: auto;
margin-left: auto;
padding-bottom: 50px;
}
footer h3 {
  letter-spacing: .05em;
background-color: #3d3d3d;
border-radius: 10px;
padding: 1em;
font-size: 16px;
line-height: 1;
font-weight: 700;
margin-top: 0;
margin-bottom: 20px;
font-family: "Noto Sans JP",noto-sans,sans-serif;
}
.address,.business {
padding-right: 5px;
padding-left: 5px;
line-height: 1.6em;
}
iframe {
width: calc(100% - 10px);
margin-right: auto;
margin-left: auto;
display: block;
}
dl {
display: flex;
justify-content: space-between;
align-items: center;
margin-bottom: 20px;
}
dt {
  width: 25%;
}
dd {
  width: 75%;
  margin-left: 0;
}
.cv_left {
width: 50%;
}
.cv_right {
width: 50%;
padding-left: 50px;
padding-top: 15px;
box-sizing: border-box;
}
.cv_right a {
  display: flex;
justify-content: center;
align-items: center;
color: #fff;
text-decoration: none;
border: 2px solid #fff;
min-height: 60px;
position: relative;
font-size: 18px;
}
.cv_mail a img,.cv_line a img {
max-width: 20px;
height: 20px;
position: absolute;
top: 0;
bottom: 0;
left: 1.5vw;
margin: auto;
}
.cv_mail,.cv_line {
  margin-bottom: 30px;
}
.cv_tel {

}
.cv_tel img {
max-width: 30px;
height: 30px;
display: inline-block;
padding-right: 5px;
}
.cv_tel f {
  font-family: 'Oswald', sans-serif;
  font-size: .7em;
  padding-left: 15px;
}
.cv_tel b {
  font-family: 'Oswald', sans-serif;
font-size: 1.5em;
display: flex;
justify-content: center;
align-items: center;
font-weight: 500;
}
.cv_right a span {
text-align: center;
padding-top: 10px;
padding-bottom: 8px;
line-height: 1.5em;
}
.none {
display: none !important;
}
.flow::before {
content: "";
width: 100%;
height: 100%;
position: absolute;
background-color: rgba(0,0,0,.85);
top: 0;
}
.flow .inner {
z-index: 2;
position: relative;
}
body .slick-dots li button::before {
  color:#fff;
}
body .slick-dots li.slick-active button::before {
  color:#fff;
}

.flow h2 {
  font-size: 40px;
text-align: center;
line-height: 1.6em;
margin-bottom: 0;
}
.youtube h2 {
  margin-bottom: 0;
}
.youtube .subtitle {
  text-align: center;
  margin-bottom: 0;
  color: #a7a7a7;
}



.flow .subtitle {
  text-align: center;
  margin-bottom: 50px;
  color: #a7a7a7;
}

.flow_list {
  display: flex;
max-width: 1200px;
margin-right: auto;
margin-left: auto;
justify-content: space-between;
align-items: stretch;
}
.flow_list li {
  list-style: none;
width: 33.33333%;
box-sizing: border-box;
padding: 30px;
}
.flew_box {
padding: 30px;
border: 1px solid #FFD700;
background-color: rgba(0,0,0,.7);
height: 100%;
max-height: 100%;
box-sizing: border-box;
position: relative;
}
.flew_title {
font-size: 1.3em;
font-weight: 700;
letter-spacing: 0.05em;
color: #fff;
text-align: center;
}
.flew_img {
  text-align: center;
  margin-top: 0;
margin-bottom: ;
}
.flew_img img {
  max-width: 150px;
width: 100%;
}
.flew_number {
font-family: 'Oswald', sans-serif;
background-color: #FFD700;
color: #000;
font-weight: 500;
text-align: center;
width: 50px;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
font-size: 35px;
left: 0;
top: 0;
position: absolute;
}






.price h2 {
position: relative;
}
.price .subtitle {
position: relative;
}


.filter_right {
content: "";
filter: blur(30px);
height: 110%;
width: 150px;
position: absolute;
background-color: #000;
right: -60px;
top: 0;
bottom: 0;
margin: auto;
z-index: 5;
}
.filter_bottom {
content: "";
filter: blur(30px);
height: 150px;
width: 110%;
position: absolute;
background-color: #000;
left: -90px;
right: 0;
bottom: -70px;
margin: auto;
z-index: 5;
}
.ac_body tbody {
  display: flex;
justify-content: center;
align-items: stretch;
flex-wrap: wrap;
justify-content: space-between;
}
.ac_body tbody tr {
  width: 50%;
display: flex;
align-items: stretch;
}
.ac_body table {
width: 100%;
table-layout: fixed;
}



.filter_top {
content: "";
filter: blur(30px);
height: 150px;
width: 110%;
position: absolute;
background-color: #000;
left: -90px;
right: 0;
top: -70px;
margin: auto;
z-index: 5;
}
.flow .flow_list {
  padding-left: 0;
}
.flow_list {
  flex-wrap: wrap;
}
.ip_only {
  display: none;
}
.pc_only {
  display: block;
}

.c-button_shiny::before {
    position: absolute;
    content: '';
    display: inline-block;
    top: -180px;
    left: 0;
    width: 30px;
    height: 100%;
    background-color: #b5e7ff;
    transition: 300ms;
    animation: shinyshiny 5s ease infinite;
    display: none;
  }
  .flex.price_left {
flex-wrap: nowrap;
  }
  .ac_body .car_size tbody tr {
    width: 100%;
  }
  .ac_body .car_size tbody tr th {
    width: 18%;
  }
  .ac_body .car_size tbody tr td {
    width: 82%;
  }
  span.red {
    display: inline-block;
margin-left: 10%;
  }


@-webkit-keyframes shinyshiny {
    0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
    9% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.5; }
    10% { -webkit-transform: scale(4) rotate(45deg); opacity: 1; }
    20% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
    100% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
}

@media screen and (max-width: 1000px) {
  .pc_only {
  display: none;
}
  .price_title {
    width: 100%;
  }
  .price_number {
    margin-bottom: 30px;
justify-content: left;
  }
  #procoating .price_number {
    margin-bottom: 30px;
  }
  .white_border {
    position: relative;
border-radius: 0;
display: flex;
justify-content: center;
align-items: center;
  }
  .price_cv {
    justify-content: center;
  }





  .flex.price_left {
flex-wrap: wrap;
  }
.introduction .back_top { 
  height: 65vw;
}
.introduction .back_bottom { 
  height: 65vw;
}
.price h2 {
  font-size: 30px;
}



.ip_only {
  display: block;
}
.menu_box > ul {
  display: none;
}
.menu_box {
  justify-content: right;
}
.cv_box {
  width: 100%;
  padding-left: 20px;
}
.global_box {
  width: 95%;
}
.se_triangle .flex {
  display: block;
}
section {
padding-right: 15px;
padding-left: 15px;
overflow: hidden;
}
.cv_left {
  width: 100%;
}
.tel a {
  font-size: 13px;
}
.mail a {
  font-size: 13px;
}
.header_text {
  position: absolute;
top: 55%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
-webkit- transform: translateY(-50%) translateX(-50%);
margin: auto;
width: 95%;
text-align: center;
}
.header_text h2 {
	font-size: 26px;
	font-weight: 700;
}
.header_text .serif {
  font-size: 17px;
line-height: 1.8em;
}



.cv_right {
  width: 100%;
  padding-left: 0;
padding-top: 40px;
}
.d-demo__item {
  width: calc(100vw / 2);
  padding: 5px;
}
section.header {
padding-right: 0px;
padding-left: 0px;
}

.flow::before {
  right: 0;
  left: 0;
}
.flow h2 {
  line-height: 2em;
  font-weight: 900;
  font-size: 23px;
}
.flow_list li {
  width: 100%;
  padding: 10px;
}
.interrog h2 {
	font-size: 25px;
	padding-right: 0;
	padding-left: 0;
	letter-spacing: 0.05em;
}
.worries_left, .worries_right {
  width: 100%;
  min-height: 0;
}
.worries_box {
padding-top: 0;
padding-bottom: 40px;
flex-wrap: wrap;
position: relative;
}
.worries_left ul, .worries_right ul {
  min-height: 0;
  padding-right: 0;
padding-left: 0;
}

.worries_left ul li, .worries_right ul li {
padding: 10px;
font-size: 15px;
min-height: 65px;
}
.worries_left ul li {
  margin-bottom: 25px;
}
.worries_right ul li {
  margin-top: 25px;
}

.worries_left ul li::before,.worries_right ul li::before {
	right: -2.5vw;
}
.worries_left ul li::before,.worries_right ul li::before {
  transform: scaleY(-1)scaleX(-1);
}
.worries_left ul li::before {
  transform: scaleX(-1);
background-image: url(../image/fukidashi_kaku3.svg);
top: 3.7vh;
height: 45px;
width: 30px;
right: 0;
left: 0;
margin: auto;
}
.worries_left ul li:last-child::before {
transform: scaleX(-1);
background-image: url(../image/fukidashi_kaku3.svg);
top: 3.7vh;
height: 45px;
width: 30px;
right: 0;
left: 0;
margin: auto;
}




.worries_right ul li:last-child::before {
  transform: scaleX(1);
background-image: url(../image/fukidashi_kaku4.svg);
top: -1.2vh;
height: 45px;
width: 30px;
right: 0;
left: 0;
margin: auto;
}
.worries_right ul li::before {
  transform: scaleX(1);
background-image: url(../image/fukidashi_kaku4.svg);
top: -1vh;
height: 45px;
width: 30px;
right: 0;
left: 0;
margin: auto;
}
.introduction h2 {
  font-size: 20px;
  font-weight: 700;
margin-top: 0;
}
.ht_triangle {
width: 50px;
height: 25px;
border-top: 26px solid #fff;
border-right: 26px solid transparent;
border-left: 26px solid transparent;
}
.se_triangle::before {
  width: 50px;
height: 25px;
border-top: 26px solid #fff;
border-right: 26px solid transparent;
border-left: 26px solid transparent;
}
.cv_right a {
  font-size: 15px;
}

.worries_center {
  width: 100%;
  height: 100%;
}
.worries_center {
  position: relative;
width: 100%;
height: 100%;
right: 0;
border-radius: 0;
}
.worries_right ul {
	padding-left: 0;
	padding-right: 10px;
}
.introduction .text_box {
  font-size: 14px;
  z-index: 5;
}
.introduction::after {
  width: 100%;
  max-height: 300px;
}
.introduction::before {
  width: 100%;
  max-height: 300px;
}
.introduction .inner {
  padding-top: 70vw;
padding-bottom: 70vw;
min-height: 0;
z-index: 5;
}
.introduction {
  min-height: 0;
padding-bottom: 0;
padding-right: 10px;
padding-left: 10px;
}

.ac_body tbody tr {
  width: 100%;
}





.merit .inner .merit_text {
width: 100%;
padding-right: 15px;
padding-left: 15px;
padding-top: 0;
margin-top: -10vh;
}
.merit_text h2 {
	font-size: 35px;
}
.youtube h2 {
	font-size: 22px;
}
.merit .serif {
	font-size: 17px;
	line-height: 1.7em;
}

body .slick-next {
right: -10px;
background-color: rgba(0,0,0,.7);
height: 30vw;
width: 7%;
border-radius: 5px;
z-index: 2;
}
body .slick-prev {
left: -10px;
background-color: rgba(0,0,0,.7);
height: 30vw;
width: 7%;
border-radius: 5px;
z-index: 2;
}
body .slick-prev:hover,body .slick-prev:focus,body .slick-next:hover,body .slick-next:focus {
  color: transparent;
  outline: none;
  background-color: rgba(0,0,0,.7);
}


.slick-prev, .slick-next {

}

.movie > ul {
  margin-top: 30px;
}
.filter_top,.filter_bottom {
  width: 200%;
}
.gallery {
  display: block;
}
.gallery-item {
	width: 100%;
	height: auto;
	max-width: 100%;
	margin-bottom: 30px;
}
.popup-content {
  max-width: 95%;
}
.popup-content img {
  border: 2px solid #fff;
}
.popup-container {
  z-index: 999999;
}
.popup-container.open {
  z-index: 99999999999;
}

h2 {
	letter-spacing: 0.05em;
}
.cv h2 {
  font-size: 2.5em;
}
.price_left {
  max-width: 100%;
}
.price_title {
  padding-left: 0;
}
.price_box > .flex.price_left {
  padding-right: 15px;
  padding-left: 15px;
  padding-top: 15px;
  padding-bottom: 15px;
}
.price_size {
  font-size: 1.5em;
  padding-left: 5px;
padding-top: 20px;
}
.price_explanation {
  margin-top: 15px;
}
.price_box > .flex.price_right {
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 10px;
	padding-bottom: 20px;
	width: 100%;
}
.price_img {
  width: 100%;
  max-width: 500px;
  min-height: 150px;
}
.price_number {
  font-size: 2em;
}
.ac_body table {
  width: 100%;
}
.ac_body {
  padding: 10px 5px;
}
.ac_body table tr th {
  width: 50%;
max-width: 100%;
}
.ac_body table tr td {
  padding: 12px 10px;
  width: 50%;
  font-size: 13px;
}
.ac_body tbody tr {
  align-items: top;
}
.ac_body tbody {
  display: block;
}
.ac_body table.car_size tr th {
width: 35%;
}
.ac_body table.car_size tr td {
width: 65%;
}


.price {
	padding-bottom: 0;
  padding-right: 0;
padding-left: 0;
}
.plan_img_title {
  min-height: 150px;
  font-size: 1.8em;
}
.price .price_area {

}
.price_box {
  margin-right: 15px;
margin-left: 15px;
}





.footer_list {
  display: block;
}
footer {
padding-right: 15px;
padding-left: 15px;
}
.footer_list > li:first-child {
  width: 100%;
}
footer .logo img {
  width: 100%;
  max-width: 200px;
}
.icon {
  max-width: 200px;
}
.footer_list .icon li {
  width: 30%;
}
.footer_list > li {
  width: 100%;
  margin-bottom: 30px;
}
.footer_list li {
  list-style: none;
  width: 100%;
}
.icon ul li a {
	padding: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
footer .logo {
  margin-bottom: 10px;
}
.address dd {
  font-size: 14px;
}
.address dt {
  font-size: 14px;
}
.copyright {
  font-size: 12px;
}
.flow_target {
  position: absolute;
top: 20vh;
right: 0;
left: 0;
}
.flow {
  position: relative;
}
.interrog {
  padding-top: 15px;
}
section.merit {
padding-right: 0;
padding-left: 0;
padding-top: 30px;

}
.merit_img {
  min-height: 0;
}
.merit_text {

}
* {
  box-sizing: border-box;
}
.merit_text .text_box {
  margin-top: 30px;
font-size: 15px;
}
.merit_img {
  flex-wrap: wrap;
}
.filter_right,.filter_left {
  display: none;
}
.merit .relative {
  position: relative;
  width: 100%;
  height: 400px;
}
.slick-slide img {
  height: calc(70vh - 80px);
}
.header::before {
  background-color: rgba(0,0,0,.25);
}
.worries_left ul li span,.worries_right ul li span {
  z-index: 1;
  text-align: center;
}
.worries_right ul {
  padding-right: 0;
}
span.red {
display: block;
margin-top: 10px;
margin-left: 0;
}
.movie ul li iframe {
  border: none;
}

.movie ul li iframe section {
  padding-right: 30px;
padding-left: 30px;
}
.youtube_target {
  padding-right: 0px;
padding-left: 0px;
}
#feature {
  position: absolute;
  top: 20%;
}



}

span.red {
  color: #dd1f0b;
}

.ac_body h4 {
    padding-right: 10px;
    padding-left: 10px;
    color: #333;
    font-size: 20px;
    margin-bottom: 10px;
margin-top: 0;
}
.ac_body table {
  margin-bottom: 30px;
}








