@charset "UTF-8";
/* common */
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;700&display=swap');

html {
  font-size: 62.5%;
}

a {
  -webkit-transition: all .3s;
  transition: all .3s;
}

a:hover, a:focus {
  color: #000;
  text-decoration: none;
}

a:focus, *:focus {
  outline: none;
  color: #FFF;
}

body {
  font-family: 'Roboto',sans-serif;
  font-size: 1.6rem;
  line-height: 1.4;

}

ul, ol {
  margin: 0;
  padding: 0;
}

ul li {
  list-style: none;
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

p {
  font-size: 1.6rem;
}

a.btn,
.btn {
  text-transform: none;
  border-radius: 0;
  border: none;
  display: inline-block;
  text-transform: uppercase;
}

a.btn:focus, a.btn.focus,
.btn:focus,
.btn.focus {
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  color: #FFF;
}

@media screen and (max-width: 1300px) {
  .container {
    max-width: initial !important;
  }
}

@media screen and (max-width: 1200px) {
  .container {
    max-width: initial !important;
  }
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

@media screen and (max-width: 768px) {
  .pc {
    display: none;
  }
}

.sp {
  display: none;
}

@media screen and (max-width: 768px) {
  .sp {
    display: block;
  }
}



.container-fluid {
  padding-right: 0;
  padding-left: 0;
}

.container-fluid .row {
  margin-right: 0;
  margin-left: 0;
}

.container-fluid .col {
  padding-right: 0;
  padding-left: 0;
}

.headline {
  font-size: 2.4rem;
  font-weight: 700;
  margin-bottom: 30px;
  line-height: 1.5;
}

@media screen and (max-width:768px) {
  .headline {
    font-size: 2rem;
  }
}

/* header */

.header {
  width: 100%;
  height: 80px;
  background: #FFF;
}

@media screen and (max-width: 768px) {
  .header {
    height: 60px;
  }
}

.header .header-box {
  display: flex;
  align-items: center;
}

.header .header-box .logo-box {
  margin: 0 auto 0 0;
}

@media screen and (max-width: 768px) {
  .header .header-box .logo-box .logo {
    height: 60px;
  }
}

/* primary */

.primary {
  width: 100%;
  height: 100%;
  background: #E9E9E9;
}

.primary .primary-box {
  height: 500px;
  background: url(../img/primary_bg_pc.jpg) no-repeat right bottom;
  background-size: contain;
}

@media screen and (max-width:768px) {
  .primary .primary-box {
    max-height: 600px;
    background: url(../img/primary_bg_sp.jpg) no-repeat right bottom;
    background-size: auto;
  }
}
@media screen and (max-width:576px) {
    .primary .primary-box {
    max-height: 600px;
    background: url(../img/primary_bg_sp.jpg) no-repeat right bottom;
    background-size: cover;
    }
}

.primary .headline{
  font-size: 3.6rem;
  font-weight: 700;
}

@media screen and (max-width: 1200px) {
  .primary .headline{
    font-size: 2.8rem;
  }
}
@media screen and (max-width: 992px) {
  .primary .headline{
    margin: 60px 0 0 30px;
  }
}


/* feature */

.feature-icon-box {
  padding: 60px 0 70px;
  text-align: center;
  font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
  .feature-icon-box {
    padding: 40px 0 80px;
  }
}

.feature-icon-box .headline {
  margin-bottom: 54px;
}

@media screen and (max-width: 768px) {
  .feature-icon-box .headline span{
    display: inline-block;
  }
}

.feature-icon-box .feature-icon {
  margin: 0 auto 30px;
  display: block;
}

@media screen and (max-width: 768px) {
  .feature-icon-box .feature-icon-txt {
    margin-bottom: 60px;
  }
}

.feature-icon-box .txt-red{
  color: #C00;
}

/* contact */
.contact {
  background: url(../img/contact-bg.jpg) no-repeat;
  padding: 60px 0 48px;
  background-size: cover;
}

.contact .contact-txt-box {
  text-align: center;
}

.contact .headline {
  color: #FFF;
  margin-bottom: 20px;
}

.contact .contact-txt {
  color: #FFF;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .contact .contact-txt {
    font-size: 1.4rem;
    margin-bottom: 35px;
  }
}

.contact .contact-form {
  max-width: 700px;
  margin: 0 auto;
}

.contact .form-control,
.contact .form-select {
  padding: 8px 15px;
  margin-bottom: 20px;
  font-size: 1.6rem;
  color: #929292;
}



.contact ::placeholder {
  color: #929292;
}

.contact .textarea-box {
  height: 200px;
  margin-bottom: 48px;
}
@media screen and (max-width: 768px) {
  .contact .textarea-box {
    margin-bottom: 38px;
  }
}

.contact .btn-box {
  text-align: center;
}

.contact .btn-box .btn {
  background: #FFD874;
  width: 200px;
  height: 60px;
  font-size: 1.8rem;
  color: #000;
  -webkit-transition: all  0.5s ease;
  transition: all  0.5s ease;
}

.contact .btn-box .btn:hover {
  background: #000;
  color: #FFD874;
}

/* other */

.other{
  background: #F2F2F2;
}
.other-wrap{
  width: 980px;
  margin: 80px auto 90px;
}

@media screen and (max-width: 768px) {
  .other-wrap{
    width: 100%;
    margin: 30px auto 40px;
  }
}

.other-headline{
  font-size: 2.4rem;
  margin:0 0 20px;
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .other-headline{
    font-size: 2rem;
  }
}

.other-box{
  background: #FFF;
  padding: 30px 40px;
}


@media screen and (max-width: 768px) {
  .other-box{
    background: #FFF;
    padding: 20px 15px;
  }
}

.other-group{
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .other-group{
    margin-bottom: 20px;
  }
}

.other-group:last-child{
  margin-bottom:0;
}

.other-box .other-headline{
  font-size: 2rem;
  line-height: 1.5;
  margin-bottom: 15px;
  font-weight: 700;
}

/* footer */

.footer {
  padding: 35px 0 15px;
}

@media screen and (max-width: 768px) {
  .footer {
    padding: 30px 0 15px;
  }
}

.footer .footer-nav {
  margin-bottom: 35px;
}
@media screen and (max-width: 768px) {
  .footer .footer-nav {
    margin-bottom:20px;
  }
}

.footer .footer-nav a {
  color: #000;
  font-weight: 700;
  text-decoration: none;
}

.footer .footer-nav .footer-nav-item:first-child {
  margin-right: 15px;
}

.footer .copyright {
  text-align: center;
  font-size: 12px;
}

.thanks-head {
  text-align:center;
}

.thanks-red {
  color:#E21F1F;
}

