@charset "UTF-8";
/*** function ***/
/* ###################### */
/* ######## 変数 ######## */
/* ###################### */
/* カラー */
/* 書式 */
/* ###################### */
/* ######## 関数 ######## */
/* ###################### */
/* ###################### */
/* ######## 共通 ######## */
/* ###################### */
/* ボタン */
/*===============================================
  画面の横幅が767px以下に適用
===============================================*/
/************/
/*切り替え用*/
/************/
.sp-none {
  display: none;
}

/****パンくず****/
.bread {
  height: 36px;
}
.bread .breadcrumbs {
  width: 90%;
}
.bread .breadcrumbs li {
  font-size: 1.3rem;
}

/**100%**/
header,
address div,
.container img,
footer img,
#wrapper {
  width: 100%;
}

#wrapper {
  overflow: hidden;
}

/****header*****/
header .header {
  align-items: center;
  height: 72px;
  padding: 0 5%;
}
header .logo {
  width: 200px;
}
header .ri {
  display: none;
}

/***************footer***************/
footer .footer {
  padding: 32px 0 24px;
}
footer .logo {
  width: 200px;
  margin: 0 auto 20px;
}
footer .oth {
  display: block;
}
footer .oth .info {
  margin-right: 0;
  margin-bottom: 20px;
}
footer .oth .info .tel dt {
  font-size: 1.6rem;
}
footer .oth .info .tel dd {
  font-size: 2.4rem;
}
footer .oth .info .add {
  font-weight: 500;
}
footer .oth .link {
  width: 250px;
  height: 56px;
  margin: 0 auto;
}
footer .oth .link a span {
  font-size: 1.6rem;
  line-height: 1.25;
}
footer .f-nav {
  justify-content: center;
  padding-top: 20px;
}
footer .f-nav li {
  margin-right: 24px;
}

div.copy {
  padding: 5px 0;
}

/********メイン画像********/
.visual-wrap .main_bg {
  padding-top: 640px;
}
@media screen and (max-width: 700px) {
  .visual-wrap .main_bg {
    padding-top: 91.4286vw;
  }
}
@media screen and (max-width: 455px) {
  .visual-wrap .main_bg {
    padding-top: 416px;
  }
}
.visual-wrap .main_bg::before {
  background-size: auto 96px;
}
.visual-wrap .main_bg::after {
  width: 120%;
  min-width: 450px;
  height: 56%;
  padding-top: 0;
  margin-bottom: 0;
  background-position: right center;
  right: 50%;
  bottom: 3.90625%;
  transform: translateX(50%);
}
.visual-wrap .main_bg .in {
  width: 100%;
  padding-bottom: 0;
}
.visual-wrap .main_bg .in .catch {
  width: 100%;
  min-width: auto;
  padding: 8px 0;
  position: relative;
  z-index: 0;
}
.visual-wrap .main_bg .in .catch::before {
  content: "";
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, rgb(84, 221, 255) 0%, rgb(37, 106, 169) 100%);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  opacity: 0.83;
}
.visual-wrap .main_bg .in .catch > span {
  margin-bottom: 0;
}
.visual-wrap .main_bg .in .catch > span::before {
  display: none;
}
.visual-wrap .main_bg .in .catch > span.min {
  font-size: 3.6rem;
  line-height: 1.66667;
}
@media screen and (max-width: 600px) {
  .visual-wrap .main_bg .in .catch > span.min {
    font-size: 6vw;
  }
}
.visual-wrap .main_bg .in .catch > span.min span {
  font-size: 3rem;
}
@media screen and (max-width: 600px) {
  .visual-wrap .main_bg .in .catch > span.min span {
    font-size: 5vw;
  }
}
.visual-wrap .main_bg .in .catch > span.mid {
  font-size: 4.2rem;
  line-height: 1.42858;
}
@media screen and (max-width: 600px) {
  .visual-wrap .main_bg .in .catch > span.mid {
    font-size: 7vw;
  }
}
.visual-wrap .main_bg .in .catch > span.big {
  font-size: 5.1rem;
  line-height: 1.17648;
  padding-bottom: 0;
}
@media screen and (max-width: 600px) {
  .visual-wrap .main_bg .in .catch > span.big {
    font-size: 8.5vw;
  }
}
.visual-wrap .main_bg .mvSlide {
  width: 80%;
  height: calc(100% - 72px);
}
.visual-wrap .main_bg .mvSlide li:nth-of-type(1) {
  background-image: url(../images/common/visual/slide01_sp.png) !important;
}
.visual-wrap .main_bg .mvSlide li:nth-of-type(2) {
  background-image: url(../images/common/visual/slide02_sp.png) !important;
}
.visual-wrap .main_bg .mvSlide li:nth-of-type(3) {
  background-image: url(../images/common/visual/slide03_sp.png) !important;
}
.visual-wrap .main_bgs {
  height: 280px;
  padding-top: 72px;
  background-size: auto 96px, cover;
}
@media screen and (max-width: 400px) {
  .visual-wrap .main_bgs {
    height: 70vw;
  }
}
@media screen and (max-width: 350px) {
  .visual-wrap .main_bgs {
    height: 245px;
  }
}
.visual-wrap .main_bgs::before {
  width: 100%;
  height: calc(100% - 72px);
}
.visual-wrap .main_bgs.complete::before {
  background: url(../images/common/visual/sv-complete_sp.png) no-repeat center/cover;
}
.visual-wrap .main_bgs.site::before {
  background: url(../images/common/visual/sv-site_sp.png) no-repeat center/cover;
}
.visual-wrap .main_bgs .box p {
  font-size: 2.8rem;
  letter-spacing: 0.06em;
  line-height: 1.42858;
  padding: 4px calc(12px - 0.06em) 6px 12px;
}
@media screen and (max-width: 400px) {
  .visual-wrap .main_bgs .box p {
    font-size: 7vw;
  }
}

/******共通*****/
#container {
  font-size: 1.5rem;
  line-height: 1.8;
  letter-spacing: 0em;
}

/*******/
.g-nav,
.h1_bg {
  display: none;
}

.table table,
.table table tbody,
.table table th,
.table table tr,
.table table td {
  display: block !important;
  width: 100% !important;
}

/********共通********/
.cont {
  width: 90%;
}

.fle {
  display: block;
}

div[class^=contents],
article[class^=contents] {
  padding: 56px 0;
}

div.contents1,
article.contents1 {
  padding-top: 80px;
}

.h2_1 > span {
  font-size: 4rem;
  letter-spacing: 0.06em;
  padding-left: 0.06em;
}
@media screen and (max-width: 400px) {
  .h2_1 > span {
    font-size: 10vw;
  }
}
.h2_1.deco > span {
  font-size: 3.6rem;
  padding: 0;
  margin: 0 12px;
}
@media screen and (max-width: 400px) {
  .h2_1.deco > span {
    font-size: 9vw;
    margin: 0 3vw;
  }
}
.h2_1.deco::before, .h2_1.deco::after {
  width: 90px;
  height: 0;
  padding-top: 20px;
}
@media screen and (max-width: 400px) {
  .h2_1.deco::before, .h2_1.deco::after {
    width: 22.5vw;
    padding-top: 5vw;
  }
}

/*********index***********/
.index .contents1 {
  padding-top: 56px;
  background-size: cover, 42%, 50%;
}
.index .contents1 .movie-wrap {
  margin-bottom: 32px;
}
.index .contents1 .box {
  padding: 32px 5.556% 28px;
}
.index .contents1 .box::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-width: 2px;
  top: 4px;
  left: 4px;
}
.index .contents1 .box h2 {
  margin-bottom: 24px;
}
.index .contents1 .box h2 .min {
  font-size: 1.8rem;
  letter-spacing: 0.08em;
  margin-bottom: 12px;
}
@media screen and (max-width: 400px) {
  .index .contents1 .box h2 .min {
    font-size: 4.5vw;
  }
}
.index .contents1 .box h2 > span:not(.min) {
  font-size: 2.8rem;
  line-height: 1.42858;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 400px) {
  .index .contents1 .box h2 > span:not(.min) {
    font-size: 7vw;
  }
}
.index .contents1 .box h2 > span:not(.min) .br {
  display: inline-block;
}
.index .contents1 .box .txt p {
  margin-bottom: 15px;
}
.index .contents1 .box .txt p br {
  display: none;
}
.index .contents2 .text h2 {
  margin-bottom: 32px;
}
.index .contents2 .text .txt p {
  margin-bottom: 15px;
}
.index .contents2 .text .txt p br {
  display: none;
}
.index .contents2 figure {
  margin-bottom: 24px;
}
.index .contents2 figure div {
  width: 32%;
  min-width: 131px;
  margin: 0 auto;
}
.index .contents2 figure figcaption {
  font-size: 1.6rem;
  line-height: 1.625;
  padding-top: 8px;
}
.index .contents3 h2 {
  margin-bottom: 32px;
}
.index .contents3 h2 > span {
  font-size: 3.6rem;
}
@media screen and (max-width: 400px) {
  .index .contents3 h2 > span {
    font-size: 9vw;
  }
}
.index .contents3 .txt {
  text-align: center;
  line-height: 2.06667;
}
.index .contents3 .txt .br {
  display: inline-block;
}
.index .contents3 .box {
  padding-top: 56px;
}
.index .contents3 .box h3 {
  font-size: 2.4rem;
  letter-spacing: 0.06em;
  padding-left: 0.06em;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents3 .box h3 {
    font-size: 6vw;
  }
}
.index .contents3 .box .list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  max-width: 558px;
  padding: 24px 31px;
  margin: 0 auto;
}
@media screen and (max-width: 620px) {
  .index .contents3 .box .list {
    padding: 24px 5vw;
  }
}
.index .contents3 .box .list::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-width: 2px;
  top: 4px;
  left: 4px;
}
.index .contents3 .box .list li {
  width: 33.3333333333%;
  font-size: 1.8rem;
  line-height: 2.22223;
}
@media screen and (max-width: 520px) {
  .index .contents3 .box .list li {
    width: 50%;
  }
}
@media screen and (max-width: 400px) {
  .index .contents3 .box .list li {
    font-size: 4.5vw;
  }
}
.index .contents3 .box .memo {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.77778;
  padding-top: 24px;
}
@media screen and (max-width: 400px) {
  .index .contents3 .box .memo {
    font-size: 4.5vw;
  }
}
.index .contents3 .box .memo .br {
  display: inline-block;
}
.index .contents4 h2 {
  font-size: 4rem;
  letter-spacing: 0.06em;
  padding-left: 0.06em;
  padding-bottom: 32px;
  margin-bottom: 24px;
  background-size: auto 80%;
}
@media screen and (max-width: 400px) {
  .index .contents4 h2 {
    font-size: 10vw;
  }
}
.index .contents4 .box-wrap {
  padding: 24px 16px;
  margin-bottom: 32px;
}
.index .contents4 .box-wrap .box {
  padding-bottom: 24px;
  margin-bottom: 24px;
}
.index .contents4 .box-wrap .box figure {
  width: 80%;
  margin: 0 auto 16px;
}
.index .contents4 .box-wrap .box figure div {
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  position: relative;
  z-index: 0;
}
.index .contents4 .box-wrap .box figure div img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
.index .contents4 .box-wrap .box:nth-of-type(1) figure img {
  -o-object-position: center top;
     object-position: center top;
}
.index .contents4 .box-wrap .box h3 {
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents4 .box-wrap .box h3 {
    font-size: 6vw;
  }
}
.index .contents4 .box-wrap .box h3 .br {
  display: inline-block;
}
.index .contents4 .box-wrap .box .txt p {
  margin-bottom: 15px;
}
.index .contents4 .box-wrap .box .txt p br {
  display: none;
}
.index .contents4 .listBox {
  max-width: 420px;
  padding: 24px 0;
  margin: 0 auto;
}
@media screen and (max-width: 440px) {
  .index .contents4 .listBox {
    margin-bottom: 160px;
  }
}
.index .contents4 .listBox::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-width: 2px;
  top: 4px;
  left: 4px;
}
.index .contents4 .listBox h3 {
  font-size: 2.2rem;
  line-height: 1.45455;
  letter-spacing: 0.06em;
  padding: 0 20px;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents4 .listBox h3 {
    font-size: 5.5vw;
  }
}
.index .contents4 .listBox h3 .br {
  display: inline-block;
}
.index .contents4 .listBox .ul-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}
.index .contents4 .listBox .ul-wrap ul li {
  justify-content: flex-start;
}
.index .contents4 .listBox .ul-wrap ul li::before {
  width: 15px;
  height: 11px;
  margin-top: 8px;
  margin-right: 8px;
}
.index .contents4 .listBox .imgs li {
  margin-bottom: -48px;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 440px) {
  .index .contents4 .listBox .imgs li {
    width: 50% !important;
    height: 198px;
    text-align: center;
    margin-bottom: -188px;
  }
}
@media screen and (max-width: 440px) {
  .index .contents4 .listBox .imgs li img {
    width: auto;
    height: 100%;
  }
}
.index .contents4 .listBox .imgs li:nth-of-type(1) {
  width: 140px;
  left: -32px;
}
@media screen and (max-width: 440px) {
  .index .contents4 .listBox .imgs li:nth-of-type(1) {
    left: 0px;
  }
}
.index .contents4 .listBox .imgs li:nth-of-type(2) {
  width: 150px;
  right: -40px;
}
@media screen and (max-width: 440px) {
  .index .contents4 .listBox .imgs li:nth-of-type(2) {
    right: 0px;
  }
}
.index .contents5 {
  background-size: cover, 56%, 56%;
}
.index .contents5 h2 {
  margin-bottom: 32px;
}
.index .contents5 h2 .min {
  font-size: 1.8rem;
  padding-top: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents5 h2 .min {
    font-size: 4.5vw;
  }
}
.index .contents5 .txt {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  margin-bottom: 32px;
}
@media screen and (max-width: 350px) {
  .index .contents5 .txt {
    font-size: 1.5rem;
  }
}
.index .contents5 .txt .br {
  display: inline-block;
}
.index .contents5 .flowList {
  position: relative;
  z-index: 0;
}
.index .contents5 .flowList::after {
  display: block;
  width: 50%;
  height: 0;
  padding-top: 69%;
  margin-top: -42px;
  margin-left: auto;
  margin-right: -6vw;
  position: relative;
  z-index: 5;
}
.index .contents5 .flowList .box {
  text-align: center;
  padding: 32px 5.5556% 16px;
}
.index .contents5 .flowList .box::before, .index .contents5 .flowList .box::after {
  height: 16px;
}
.index .contents5 .flowList .box:first-of-type {
  padding-top: 24px;
}
.index .contents5 .flowList .box:last-of-type {
  padding-bottom: 40px;
}
.index .contents5 .flowList .box h3 {
  font-size: 2.6rem;
  letter-spacing: 0.06em;
  margin-bottom: 12px;
}
@media screen and (max-width: 400px) {
  .index .contents5 .flowList .box h3 {
    font-size: 6.5vw;
  }
}
.index .contents5 .flowList .box h3 .min {
  font-size: 1.8rem;
  padding-top: 8px;
}
@media screen and (max-width: 400px) {
  .index .contents5 .flowList .box h3 .min {
    font-size: 4.5vw;
  }
}
.index .contents5 .flowList .box p {
  display: inline-block;
  text-align: left;
  font-size: 1.4rem;
  line-height: 1.71429;
}
.index .contents5 .flowList .box p br {
  display: none;
}
.index .contents5 .text {
  font-size: 1.6rem;
  line-height: 1.875;
  padding: 20px 5.556%;
  margin: -16px auto 0;
}
.index .contents5 .text::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-width: 2px;
  top: 4px;
  left: 4px;
}
.index .contents5 .text p br {
  display: none;
}
.index .contents6 h2 {
  font-size: 2.8rem;
  margin-bottom: 40px;
}
@media screen and (max-width: 400px) {
  .index .contents6 h2 {
    font-size: 7vw;
  }
}
.index .contents6 h2 > span {
  margin-left: 32px;
}
.index .contents6 h2 > span::before {
  width: 56px;
  height: 54px;
  top: -24px;
  left: -64px;
}
.index .contents6 h2 > span::after {
  width: calc(100% + 56px);
  height: 20px;
  right: -40px;
  bottom: -12px;
}
.index .contents6 .box {
  padding: 24px 5.556%;
  margin-bottom: 24px;
}
.index .contents6 .box::after {
  width: 20px;
  height: 16px;
  right: 5%;
}
.index .contents6 .box dt {
  font-size: 2rem;
  line-height: 1.4;
  padding-bottom: 6px;
  margin-bottom: 10px;
}
@media screen and (max-width: 400px) {
  .index .contents6 .box dt {
    font-size: 5vw;
  }
}
.index .contents7 h2 {
  padding-bottom: 12px;
  margin-bottom: 24px;
  background-size: auto 44%;
}
.index .contents7 .txt {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.875;
  margin-bottom: 32px;
}
@media screen and (max-width: 400px) {
  .index .contents7 .txt {
    font-size: 4.5vw;
  }
}
.index .contents7 .txt .br {
  display: inline-block;
}
.index .contents7 .flowList {
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
  margin-top: -20px;
  overflow: hidden;
}
@media screen and (max-width: 450px) {
  .index .contents7 .flowList {
    justify-content: space-between;
  }
}
.index .contents7 .flowList dl {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: calc(33.3334% - 10px);
  height: 120px;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.25;
  margin-right: 15px;
  margin-top: 20px;
}
@media screen and (max-width: 450px) {
  .index .contents7 .flowList dl {
    width: calc(50% - 10px);
    margin-right: 0;
  }
}
.index .contents7 .flowList dl::before {
  width: calc(100% - 8px);
  height: calc(100% - 8px);
  border-width: 2px;
  top: 4px;
  left: 4px;
}
.index .contents7 .flowList dl::after {
  width: 7px;
  left: calc(100% + 4px);
}
@media screen and (max-width: 450px) {
  .index .contents7 .flowList dl::after {
    width: 8px;
    left: calc(100% + 6px);
  }
}
.index .contents7 .flowList dl:nth-of-type(3n), .index .contents7 .flowList dl:last-of-type {
  margin-right: 0;
}
.index .contents8 h2 {
  margin-bottom: 32px;
}
.index .contents8 .in .table {
  padding: 24px 5.556% 40px;
}
.index .contents8 .in .table dl {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 15px;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents8 .in .table dl {
    display: block;
  }
}
.index .contents8 .in .table dl dt {
  color: #256aa9;
}
@media screen and (max-width: 400px) {
  .index .contents8 .in .table dl dt {
    margin-bottom: 4px;
  }
}
.index .contents8 .in .table dl dd {
  width: 70%;
}
@media screen and (max-width: 400px) {
  .index .contents8 .in .table dl dd {
    width: 100%;
  }
}
.index .contents8 .in figure {
  width: 32%;
  margin-top: -64%;
  margin-left: auto;
  margin-right: -4%;
}
@media screen and (max-width: 400px) {
  .index .contents8 .in figure {
    width: 116px;
    margin-top: -230px;
  }
}
.index .contents8 .box {
  padding-top: 48px;
}
.index .contents8 .box h3 {
  font-size: 2.6rem;
  letter-spacing: 0.06em;
  margin-bottom: 24px;
}
@media screen and (max-width: 400px) {
  .index .contents8 .box h3 {
    font-size: 6.5vw;
  }
}
.index .contents8 .box h3::after {
  margin-top: 8px;
}
.index .contents8 .box .list dl {
  padding: 40px 0 24px;
}
.index .contents8 .box .list dl dt {
  font-size: 2.4rem;
  line-height: 1;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents8 .box .list dl dt {
    font-size: 6vw;
  }
}
.index .contents8 .box .list dl::before {
  content: "";
  width: 50%;
  height: 20px;
  position: absolute;
  left: 0;
  top: 100%;
  z-index: 1;
}
.index .contents8 .box .list dl::after {
  content: "";
  width: 50%;
  height: 20px;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 1;
}
.index .contents8 .box .list dl:nth-of-type(1) {
  padding-top: 32px;
  z-index: 2;
}
.index .contents8 .box .list dl:nth-of-type(1)::before {
  background: linear-gradient(to left bottom, #48caed 50%, transparent calc(50% + 1px));
}
.index .contents8 .box .list dl:nth-of-type(1)::after {
  background: linear-gradient(to right bottom, #48caed 50%, transparent calc(50% + 1px));
}
.index .contents8 .box .list dl:nth-of-type(2) {
  z-index: 1;
}
.index .contents8 .box .list dl:nth-of-type(2)::before {
  background: linear-gradient(to left bottom, #3694c9 50%, transparent calc(50% + 1px));
}
.index .contents8 .box .list dl:nth-of-type(2)::after {
  background: linear-gradient(to right bottom, #3694c9 50%, transparent calc(50% + 1px));
}
.index .contents8 .box .list dl:nth-of-type(3)::after {
  display: none;
}
.index .contents9 h2 {
  margin-bottom: 32px;
}
.index .contents9 .in .table {
  padding: 24px 5.556% 40px;
}
.index .contents9 .in .table dl {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom: 15px;
  margin-bottom: 16px;
}
@media screen and (max-width: 600px) {
  .index .contents9 .in .table dl {
    display: block;
  }
}
.index .contents9 .in .table dl dt {
  color: #256aa9;
}
@media screen and (max-width: 600px) {
  .index .contents9 .in .table dl dt {
    margin-bottom: 4px;
  }
}
.index .contents9 .in .table dl dd {
  width: 70%;
}
@media screen and (max-width: 600px) {
  .index .contents9 .in .table dl dd {
    width: 100%;
  }
}
.index .contents9 .in figure {
  width: 40%;
  margin-top: -44%;
  margin-left: auto;
  margin-right: -6%;
}
@media screen and (max-width: 600px) {
  .index .contents9 .in figure {
    width: 216px;
    margin-top: -320px;
  }
}
@media screen and (max-width: 600px) and (max-width: 440px) {
  .index .contents9 .in figure {
    width: 49.09091vw;
    margin-top: -72.7273vw;
  }
}
.index .contents9 .mapBox {
  padding-top: 48px;
}
.index .contents9 .mapBox h3 {
  font-size: 2rem;
  margin-bottom: 12px;
}
@media screen and (max-width: 400px) {
  .index .contents9 .mapBox h3 {
    font-size: 5vw;
  }
}
.index .contents9 .mapBox .map {
  height: 240px;
}
.index .contents10 .cont {
  width: 100%;
}
.index .contents10 h2 {
  text-shadow: 1px 1px 7px rgb(255, 255, 255), 0px 0px 20px rgba(255, 255, 255, 0.6), 0px 0px 20px rgba(255, 255, 255, 0.6), 0px 0px 20px rgba(255, 255, 255, 0.6), 0px 0px 20px rgba(255, 255, 255, 0.6), 0px 0px 20px rgba(255, 255, 255, 0.6);
}
.index .contents10 .contact-box {
  padding-top: 48px;
}
.index .contents10 .contact-box h3 {
  font-size: 2rem;
  letter-spacing: 0.06em;
  margin-bottom: 16px;
}
@media screen and (max-width: 400px) {
  .index .contents10 .contact-box h3 {
    font-size: 5vw;
  }
}
.index .contents10 .contact-box h3::before {
  width: 20px;
  height: 14px;
  margin-right: 10px;
}
@media screen and (max-width: 400px) {
  .index .contents10 .contact-box h3::before {
    width: 5vw;
    height: 0;
    padding-top: 3.5vw;
    margin-right: 2.5vw;
  }
}
.index .contents10 .contact-box .table {
  padding: 24px 5%;
  margin: 0 auto;
}
.index .contents10 .contact-box .table th {
  margin-bottom: 8px;
}
.index .contents10 .contact-box .table tr {
  padding-bottom: 20px;
  margin-bottom: 20px;
}
.index .contents10 .contact-box .table tr:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
}
.index .contents10 .contact-box .inline-privacy-policy {
  padding: 40px 5% 0;
  margin-bottom: 32px;
}
.index .contents10 .contact-box .inline-privacy-policy h4 {
  font-size: 2rem;
  padding-bottom: 12px;
  margin: 0 auto 12px;
}
@media screen and (max-width: 400px) {
  .index .contents10 .contact-box .inline-privacy-policy h4 {
    font-size: 5vw;
  }
}
.index .contents10 .contact-box .inline-privacy-policy .inline-privacy-policy-inner {
  height: 240px;
  margin-bottom: 20px;
}
.index .contents10 .contact-box .inline-privacy-policy .check input[type=checkbox] + label {
  font-size: 1.4rem;
  line-height: 1.85715;
}
.index .contents10 .contact-box input[type=radio] + label,
.index .contents10 .contact-box input[type=checkbox] + label {
  font-size: 1.5rem;
  line-height: 1.73334;
  padding-left: 27px;
  margin-right: 24px;
}
.index .contents10 .contact-box input[type=radio] + label::before,
.index .contents10 .contact-box input[type=checkbox] + label::before {
  width: 14px;
  height: 14px;
}
.index .contents10 .contact-box input[type=radio] + label:after,
.index .contents10 .contact-box input[type=checkbox] + label:after {
  width: 5px;
  height: 10px;
  left: 6px;
  bottom: 10px;
}

/****エラーページ*****/
/*==================================================
 サイトマップ
================================================== */
.site .contents1 h2 {
  margin-bottom: 24px;
}
.site .contents1 .site_list {
  width: 100%;
}
.site .contents1 .site_list ul {
  padding: 16px 5.556%;
}
.site .contents1 .site_list ul li a {
  padding: 12px 12px;
}

/*==================================================
 お問い合わせ
================================================== */
.input-mid {
  width: 100%;
}

.input-min {
  width: 62px;
}

form input {
  font-size: 1.5rem;
  line-height: 1.33334;
}
form textarea {
  font-size: 1.5rem;
  line-height: 1.33334;
  height: 136px;
}

/* 必須マーク
-------------------------------------------------- */
.required-mark {
  margin-left: 12px;
}

/* 確認、バック、送信ボタン
-------------------------------------------------- */
.contact-submits {
  padding-top: 32px;
}
.contact-submits input,
.contact-submits button {
  font-size: 1.5rem;
  line-height: 1.66667;
  padding: 12px 15px;
  margin: 0 5px;
}

.contact-submits-wrap {
  padding-top: 32px;
}
.contact-submits-wrap input {
  font-size: 1.5rem;
  line-height: 1.66667;
  padding: 12px 35px;
}

/**************************/
/*--------------------------------------
		common
	--------------------------------------*/
html {
  font-size: 62.5%;
}

a:link {
  text-decoration: underline;
}

/* box-sizing */
*,
*:before,
*:after {
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

img {
  max-width: 100%;
}

body,
#wrapper,
footer {
  width: auto;
  min-width: 320px;
}

body {
  background: #fff;
}

#wrapper {
  font-size: 1rem;
  padding: 0;
}

/* #pagetop */
#pagetop {
  width: 40px;
  right: 8px;
  bottom: 8px;
}