@charset "UTF-8";
/*!
Theme Name: r-systems_child
Template: r-systems_child
Author: designL
Author URI: https://design-p.com/*/
.indent_content {
  padding: 150px 0;
}

#wrap {
  overflow-x: hidden;
}

body {
  opacity: 0;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
  width: 100%;
  height: 100%;
}

body.indication {
  opacity: 1;
}

/*header*/
header {
  background: #bb0400;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  padding: 10px 0;
  color: #fff;
}
header h1 {
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 2px;
}
header h1 span {
  font-size: 40px;
}
header .btn {
  background: #000;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px 0;
  font-size: 14px;
  line-height: 1;
  margin-bottom: 10px;
}
header nav a {
  font-size: 14px;
  line-height: 1;
  margin-left: 30px;
}
header nav a:nth-of-type(1) {
  margin-left: 0;
}

.frontMainBox {
  position: relative;
}
.frontMainBox .img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.frontMainBox .box {
  position: absolute;
}
.frontMainBox .box .txt01 {
  font-size: 50px;
  line-height: 1.7;
  color: #fff;
  font-weight: 900;
}

#index .box01 {
  background: url(img/index/box01_bg.jpg) center center repeat;
}
#index .box01 h2 {
  font-size: 40px;
  line-height: 1;
}
#index .box01 .txt01 {
  margin-top: 80px;
  font-size: 50px;
  line-height: 1;
}
#index .box01 .txt02 {
  margin-top: 70px;
  font-size: 16px;
  line-height: 2;
}
#index .add_box01 {
  background: #eee;
}
#index .add_box01 h2 {
  font-size: 40px;
  margin-bottom: 80px;
  letter-spacing: 2px;
}
#index .box02 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #bb0400;
}
#index .box02 h2 {
  text-align: center;
  font-size: 30px;
  line-height: 1;
  margin-bottom: 70px;
}
#index .box02 .item {
  width: 285px;
  margin-right: 130px;
  position: relative;
}
#index .box02 .item .img_box {
  position: relative;
}
#index .box02 .item .img_box .arrow {
  position: absolute;
  right: -80px;
  bottom: 40px;
}
#index .box02 .item .img_box .img {
  width: 100%;
  height: 190px;
}
#index .box02 .item .img_box .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#index .box02 .item .time {
  font-size: 16px;
  line-height: 1;
  margin-top: 20px;
}
#index .box02 .item h3 {
  font-size: 16px;
  line-height: 1;
  margin-top: 20px;
}
#index .box02 .item .text {
  font-size: 14px;
  line-height: 1.5;
  margin-top: 15px;
}
#index .box02 .item:nth-of-type(3) {
  margin-right: 0;
}
#index .box03 {
  background: url("img/index/box03_bg.jpg") center center repeat;
}
#index .box03 h2 {
  font-size: 45px;
  line-height: 1;
}
#index .box03 .min_txt {
  font-size: 16px;
  line-height: 1;
  margin-top: 20px;
}
#index .box03 .inner01 {
  margin-top: 80px;
}
#index .box03 .inner01 img {
  margin-right: 50px;
}
#index .box03 .inner01 h3 {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 15px;
}
#index .box03 .inner01 .txt01 {
  font-size: 18px;
  line-height: 2;
}
#index .box03 .inner02 {
  margin-top: 50px;
}
#index .box03 .inner02 img {
  margin-right: 50px;
}
#index .box03 .inner02 .txt02 {
  font-size: 16px;
  line-height: 2;
}
#index .box04 {
  background: #eee;
  padding-bottom: 100px;
}
#index .box04 h2 {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 100px;
  font-weight: 900;
}
#index .box04 .item h3 {
  font-size: 32px;
  line-height: 1;
  margin-bottom: 30px;
  font-weight: 900;
}
#index .box04 .item .inner img {
  margin-right: 30px;
}
#index .box04 .item .inner h4 {
  font-size: 30px;
  line-height: 1;
  margin-bottom: 20px;
  font-weight: 900;
}
#index .box04 .item .inner .text {
  font-size: 16px;
  line-height: 2;
}
#index .box04 .item:nth-of-type(n + 2) {
  margin-top: 60px;
}
#index .box05 {
  padding-bottom: 150px;
  background: #EEE;
}
#index .box05 h2 {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 100px;
  font-weight: 900;
}
#index .box06 {
  background: url(img/index/box01_bg.jpg) center center repeat;
}
#index .box06 h2 {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 100px;
  font-weight: 900;
}
#index .box06 .form-box {
  -webkit-transition-delay: 0.35s;
          transition-delay: 0.35s;
}
#index .box06 .min-txt {
  line-height: 1;
  font-size: 25px;
  margin: 20px auto 70px;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
#index .box06 table {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 100%;
}
#index .box06 table th, #index .box06 table td {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-bottom: 1px solid #000;
  vertical-align: middle;
  padding: 20px;
  font-weight: 500;
  font-size: 20px;
}
#index .box06 table th {
  width: 370px;
  line-height: 1;
  font-weight: bold;
  padding: 20px 50px;
}
#index .box06 table th p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 100%;
}
#index .box06 table th .essential {
  background: #232323;
  padding: 7px 0;
  font-size: 14px;
  color: #fff;
  font-weight: 500;
}
#index .box06 table td input, #index .box06 table td textarea {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  background: #fff;
  line-height: 1.7;
  border: none;
  width: 100%;
  outline: none;
  font-size: 16px;
  font-family: "Noto Sans JP", sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;
  font-weight: 500;
}
#index .box06 table td .wpcf7-radio input {
  width: auto;
}
#index .box06 table td .wpcf7-list-item.first {
  margin-left: 0;
}
#index .box06 .wpcf7 form .wpcf7-response-output, #index .box06 .wpcf7 form.invalid .wpcf7-response-output, #index .box06 .wpcf7 form.unaccepted .wpcf7-response-output, #index .box06 .wpcf7 form.payment-required .wpcf7-response-output {
  border: none;
  color: #ff0000;
  font-size: 14px;
  text-align: center;
}
#index .box06 .wpcf7-not-valid-tip {
  font-size: 14px;
  line-height: 1;
  font-weight: 500;
  margin-top: 16px;
  color: #ff0000;
}
#index .box06 .thanks {
  font-size: 16px;
  line-height: 2;
}
#index .box06 div.wpcf7-mail-sent-ok, #index .box06 .wpcf7-spinner {
  display: none !important;
}
#index .box06 .btn_box {
  width: 400px;
  margin: 50px auto 0;
  height: 65px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  border-radius: 32.5px;
  background: #232323;
  position: relative;
}
#index .box06 .btn_box p {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#index .box06 .btn_box p .arrow {
  font-size: 10px;
  position: absolute;
  color: #fff;
  right: 30px;
}
#index .box06 .btn_box input {
  font-size: 16px;
  color: #fff;
  line-height: 1;
  -webkit-transition-duration: 0.4s;
          transition-duration: 0.4s;
  background: no-repeat;
  border: none;
  font-weight: 500;
  position: relative;
  z-index: 20;
  font-family: "Noto Sans JP", sans-serif, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif, -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, Meiryo, sans-serif;
  font-weight: 500;
  cursor: pointer;
  width: 100%;
  height: 100%;
}
#index .box06 .btn_box:hover input {
  color: #fff;
}
#index .box07 {
  background: url("img/index/box07_bg.jpg") top left repeat;
}
#index .box07 h2 {
  font-size: 40px;
  line-height: 1;
  letter-spacing: 5px;
}
#index .box07 .inner {
  margin-top: 50px;
}
#index .box07 .inner .img {
  margin-right: 50px;
}
#index .box07 .inner .txt01 {
  font-size: 40px;
  line-height: 1;
  margin-bottom: 40px;
}
#index .box07 .inner table tr th, #index .box07 .inner table tr td {
  font-size: 16px;
  line-height: 1.7;
  font-weight: bold;
}
#index .box07 .inner table tr:nth-of-type(n + 2) th, #index .box07 .inner table tr:nth-of-type(n + 2) td {
  padding-top: 35px;
}

footer {
  background: #BB0400;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 60px 0;
  font-size: 50px;
  line-height: 1;
  color: #fff;
  letter-spacing: 2px;
  font-weight: 900;
}