@charset "utf-8";
/* CSS Document */
/*--------------------------------------
　Main Index
---------------------------------------*/
#contents { width: 100%; }
/*--------------------------------------
　visArea TOPページ
---------------------------------------*/
#visArea {
 overflow: hidden;
 background: url("img/mv_pic_pc.jpg") no-repeat center top / auto 100%;
}
#visArea .mainArea {
 display: block;
 width: 100%;
 max-width: 100%;
 height: auto;
 background: none;
}
#visArea .mainArea .mainAreaInner {
 width: 1300px;
 display: block;
 position: relative;
 z-index: 0;
 margin: 0 auto;
 padding: 6rem 0;
 min-height: 549px;
}
#visArea .mainArea__item {
 display: inline-block;
 margin: 0 auto 0 0;
}
#visArea .mainArea__item p:not([class]) {
 margin: 0;
 line-height: 2;
}
#visArea .mainArea__item .siteName {
 width: 80px;
 margin: 0 auto;
}
#visArea .mainArea .catchArea .catch {
 font-size: 4rem;
 line-height: 1.5;
 text-align: left;
 letter-spacing: 0.03em;
 margin: 5rem 0 3rem;
}
/*--------------------------------------
オリジナル
---------------------------------------*/
.interviewTitArea {
 position: relative;
 z-index: 1;
 margin: 0 0 8rem;
 border: 2px solid #1f2d45;
 border-left: none;
 display: table;
}
.interviewTitArea::before {
 content: "";
 position: absolute;
 top: 0;
 right: 0;
 bottom: 0;
 margin: auto 0;
 width: 100vw;
 border-top: 2px solid #1f2d45;
 border-bottom: 2px solid #1f2d45;
 height:calc(100% + 4px);
}
.interviewTitArea::after {
 content: "";
 width: 100vw;
 height: 100%;
 background: linear-gradient(to bottom, #bed2ef 0%, #afe5e1 100%);
 position: absolute;
 top: 20px;
 right: 22px;
 z-index: -1;
}
.interviewTitArea .interviewTit {
 display: table-cell;
 vertical-align: middle;
 white-space: nowrap;
 font-size: 4rem;
 line-height: 1.3;
 padding: 3rem 0 2rem;
 position: relative;
 letter-spacing: 0.05em;
}
.interviewTitArea .interviewTit a {
 display: inline-block;
 background: url("img/arrow02_black.svg") no-repeat right 50% / 19px auto;
 padding: 0 3rem 0 0;
}
.interviewTitArea .interviewTxt {
 display: table-cell;
 vertical-align: middle;
 width: auto;
 padding: 3rem 4.5rem 2rem 3rem;
}
/* .addParts02
---------------------------------------*/
.addParts02 { background: url("img/addParts02_bg.jpg") no-repeat center top / cover; }
/*addTopArea*/
.addParts02 .addTopArea {
 padding: 0 150px;
 margin: 0 auto 70px;
}
.addParts02 .addTopArea .sttl {
 font-size: 4.0rem;
 line-height: 1.4;
 text-align: center;
 letter-spacing: 0.15em;
 margin: 0 auto 4rem;
}
.addParts02 .addTopArea .sttl .small {
 font-size: 3.4rem;
 color: #00a3a5;
}
/*block*/
.addParts02 .block {
 background-color: #fff;
 padding: 8rem 0;
 margin: 0 auto;
 position: relative;
}
.addParts02 .block + .block { margin-top: 6rem; }
.addParts02 .block > .blockTitArea {
 width: 800px;
 max-width: 90%;
 text-align: center;
 margin: 0 auto 4.8rem;
 position: relative;
 z-index: 1;
}
.addParts02 .blockTitSub {
 font-size: 3.2rem;
 font-weight: 700;
 line-height: 1.4;
 letter-spacing: 0.03em;
 text-align: center;
 margin: 0 auto 4rem;
 border: 1px solid #555;
 background-color: #fff;
 padding: 3.2rem 1rem;
 position: relative;
}
.addParts02 .blockTitArea .blockTitSub::before {
 content: "";
 width: 100%;
 height: 100%;
 background: linear-gradient(to right, #afe5e1 0%, #bed2ef 100%);
 position: absolute;
 top: -25px;
 left: -30px;
 z-index: -1;
}
.addParts02 .blockTitArea .blockTitSub::after {
 content: "";
 width: 30px;
 height: 12px;
 background: url(img/detail_catch_deco.png) no-repeat;
 background-size: contain;
 position: absolute;
 bottom: -12px;
 left: 0;
 right: 0;
 margin: 0 auto;
}
.addParts02 .blockTitSub .orange { color:#eb8623; }
.addParts02 .blockTitArea .blockTit {
 text-align: center;
 display: block;
 font-size: 3.0rem;
 line-height: 1.5;
 padding: 0;
 position: relative;
}
.addParts02 .block > .pic {
 width: 75rem;
 max-width: 100%;
 margin: 0 auto;
 padding: 0 2rem;
 text-align: center;
}
.addParts02 .block__item {margin: 8rem 4rem 0;}
.addParts02 .block__item .blockTitArea {
 margin: 0 auto 4rem;
 text-align: center;
}
.addParts02 .block__item .blockTitArea .block__item__title {
 font-size: 2.8rem;
 line-height: 1.4;
 letter-spacing: 0.03em;
 display: inline-flex;
 align-items: center;
 min-height: 107px;
 padding: 0 6.6rem;
 background: url("img/icon_block__item__title.png") no-repeat left 50% / 99px auto
}
.personBox {
 display: table;
 padding: 4rem 3rem;
 position: relative;
 background: #fff;
 border: 1px solid #1f2d45;
 width: 100%;
}
.personBox + .personBox { margin-top: 2rem; }
.personBox .pic {
 display: table-cell;
 vertical-align: middle;
 width: 96px;
}
.personBox .pic img {
 display: inline-block;
 margin: 0 auto;
}
.personBox dl {
 display: table-cell;
 vertical-align: middle;
 padding: 0 0 0 2.8rem;
}
.personBox dl dt {
 font-size: 2.2rem;
 line-height: 1.4;
 font-weight: 700;
 color: #026b9a;
 margin: 0 auto 1rem;
}
.personBox dl dd + dd { margin-top: 2rem; }
.personBox dl dd.caption { text-align: right; }
.addParts02 .block .block__item.jirei > .catch {
 font-weight: 700;
 border-bottom: solid 1px #1f2d45;
 line-height: 1.4;
 font-size: 2.4rem;
 padding: 0 0 1rem;
}
.addParts02 .baBoxWrap {
 display: flex;
}
.addParts02 .baBoxWrap .baBox {
 width: 50%;
 background-color: #f9f9f9;
}
.addParts02 .baBoxWrap .baBox .baBox_head {
 background-color: #00a3a5;
 padding: 1rem 2rem;
 text-align: center;
 font-size: 2.2rem;
 line-height: 1.4;
 color: #fff;
 font-weight: bold;
 position: relative;
}
.addParts02 .baBoxWrap .baBox .baBox_body {
 padding: 4rem 2rem;
}
.addParts02 .baBoxWrap .baBox .baBox_body .catch {
 display: flex;
 align-items: center;
 font-size: 2.2rem;
 font-weight: 700;
 line-height: 1.4;
 color: #00a3a5;
}
.addParts02 .baBoxWrap .baBox.after { background-color:#eff5fe; }
.addParts02 .baBoxWrap .baBox.after .baBox_head  {
 background-color:#026b9a;
 position: relative;
}
.addParts02 .baBoxWrap .baBox.after .baBox_head::after {
 content: "";
 display: block;
 width: 50px;
 height: 100%;
 clip-path: polygon(0 0, 100% 50%, 0 100%);
 background-color: #00a3a5;
 position: absolute;
 left: 0;
 top: 0;
}
.addParts02 .baBoxWrap .baBox.after .baBox_body .catch { color:#026b9a; }
@media screen and (min-width: 480px) {
 .addParts02 .block__item.info th {width: 20%;}
}
/*slide*/
.addParts02 .sliderArea .caption { padding: 0 1rem; }
.addParts02 .slideTxtArea { z-index: 2; }
.addParts02 .slideTit {
 font-size: 2.2rem;
 line-height: 1.4;
 font-weight: 700;
 color: #026b9a;
 margin: 3rem 0 1rem;
}
.addParts02 .slideTxt { line-height: 1.6; }
.addParts02 .slideTxtArea {
 opacity: 0;
 transition: all 1s 0s ease;
 transition-delay: 300ms;
}
.addParts02 .slick-slide.slick-current .slideTxtArea,
.addParts02 .slick-slide.is-active-next .slideTxtArea { opacity: 1; }
.addParts02 .slideTxtInner {
 opacity: 0;
 margin-left: -15px;
 transition: all 0.5s 0s ease;
 transition-delay: 600ms;
}
.addParts02 .slick-slide.slick-current .slideTxtInner,
.addParts02 .slick-slide.is-active-next .slideTxtInner {
 opacity: 1;
 margin-left: 0;
}
@media screen and (min-width: 480px) {
 .addParts02 .sliderArea .slider .slick-prev,
 .addParts02 .sliderArea .slider .slick-next { top:229px; }
}
/* .addParts06
---------------------------------------*/
.addParts06 .tableblock { overflow-x: scroll; }
.addParts06 .tableblock > p {
 margin: 0;
 position: sticky;
 left: 0;
 text-align: center;
 margin-bottom: 1.5rem;
}
table.scroll {
 margin: 1rem 0;
 background-color: #fff;
 border-collapse: separate;
 border-spacing: 1px;
}
table.scroll th {
 border: none;
 background-color: #026b9a;
 width: 182px;
 color: #fff;
 font-weight: 700;
 line-height: 1.4;
 padding: 1.5rem 1rem;
}
table.scroll tr th.none {
 background-color: #fff;
 width: 132px;
}
table.scroll td {
 border: none;
 text-align: center;
}
table.scroll th[scope="row"] { background-color: #00a3a5; }
table.scroll tr th.none,
table.scroll th[scope="row"] {
 position: sticky;
 left: 0;
}
table.scroll .circle {
 color: #eb8623;
 font-weight: 700;
}
table.scroll .bar { font-weight: 700; }
/* .addParts04
---------------------------------------*/
.addParts04 { background-color: #f9f9f9; }
.addParts04 .addTopArea {
 width: 100%;
 margin: 0 auto 6.6rem;
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
}
.addParts04 .addTopArea .addTopPic {
 width: 538px;
 position: relative;
 order: 2;
}
.addParts04 .addTopArea .addTopPic img { display: block; }
.addParts04 .addTopArea .addTopTxt {
 width: calc(100% - 570px);
 order: 1;
 padding-right: 2rem;
}
.addParts04 .addTopArea .sttl {
 position: relative;
 margin: 0 auto 6rem;
 font-size: 4.0rem;
 background: none;
 border-bottom: 2px solid #1f2d45;
 padding:0 0 2rem 3.4rem;
 font-weight: bold;
 line-height: 1.5;
}
.addParts04 .addTopArea .sttl::before {
 content: "";
 width: calc(100% - 25px);
 height: 79px;
 background: linear-gradient(to bottom, #bed2ef 0%, #afe5e1 100%);
 position: absolute;
 left:0;
 bottom: -34px;
 z-index: -1;
}
.addParts04 .addTopArea .addTxt {
 padding: 0;
 margin: 0;
 font-size: 1.4rem;
}
.addParts04 .btn-accordion { background-color: #e9e9e9; }
/* .addParts03
---------------------------------------*/
.addParts03 .float-wrap { margin: 4rem 0 0; }
/* .addParts05
---------------------------------------*/
.addParts05 { background: url("img/addParts05_bg.jpg") no-repeat center top / cover; }
/* .addParts07
---------------------------------------*/
/* .addParts08
---------------------------------------*/
.bgBox {
 background-color: #f9f9f9;
 padding: 0.8rem 3rem 3rem;
 margin: 4rem 0 0;
}
.bgBox .bgBox-head {
 padding: 2rem 0;
 border-bottom: solid 1px #1f2d45;
 margin: 0 0 2rem;
 font-size: 2.2rem;
 font-weight: 700;
 line-height: 1.4;
}
.bgBox .bgBox-head a {
 text-decoration: none;
 display: inline-block;
 padding-right: 3rem;
 background: url("img/arrow02_black.svg") no-repeat right 50% / 19px auto;
}
.bgBox .bgBox-body > *:last-child { margin-bottom: 0; }
.addParts08 .btn-link { margin-top: 8rem; }





@media screen and (max-width: 480px) {
 /* SP */
 /*------------
	Index
	------------*/
 /*--------------------------------------
	　visArea
	---------------------------------------*/
 #visArea {
  margin: 0 auto 2rem;
  background: none;
 }
 #visArea .mainArea,
 #visArea .mainArea .mainAreaInner {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  min-height: auto;
 }
 #visArea .mainArea__item {
  width: 100%;
  max-width: 100%;
 }
 #visArea .mainArea__item .siteName {
  width: 100%;
  max-width: 100%;
  height: auto;
  background: url("img/mv_pic_sp.jpg") no-repeat center top / cover;
  aspect-ratio: 1920 / 549;
  padding: 0 18%;
  display: flex;
  flex-direction: column;
  justify-content: center;
 }
 #visArea .mainArea__item .siteName img {
  width: 45px;
  height: auto;
 }
 #visArea .mainArea .mainTxtBox {
  width: 100%;
  padding: 0 4%;  
 }
 #visArea .mainArea .catchArea .catch {
  font-size: 6.5vw;
  margin: 1rem 0;
 }
 /*--------------------------------------
	オリジナル
	---------------------------------------*/
 .interviewTitArea {
  display: block;
  padding: 0 4% 1rem 0;
  margin: 0 0 5rem;
 }
 .interviewTitArea::after {
  background-size: 12px auto;
  top: 15px;
  right: 10px;
 }
 .interviewTitArea .interviewTit {
  display: block;
  font-size: 2.4rem;
  letter-spacing: normal;
  white-space: normal;
  padding: 4rem 0 0;
 }
 .interviewTitArea .interviewTit:after {
  height: 30px;
  top: -23px;
  left: -5%;
 }
 .interviewTitArea .interviewTxt {
  display: block;
  padding: 0;
  font-size: 1.4rem;
 }
 /* .addParts02
 ---------------------------------------*/
 .addParts02 .addTopArea {
  padding: 0;
  margin: 0;
 }
 .addParts02 .addTopArea .sttl {
  font-size: 2.4rem;
  margin: 0 0 2rem;
 }
 .addParts02 .addTopArea .sttl .small { font-size: 1.8rem; }
 .addParts02 .block { padding: 3rem 0; } 
 .addParts02 .block + .block { margin-top: 5rem; }
 .addParts02 .blockTitArea {
  margin: 0 0 3rem;
 }
 .addParts02 .blockTitSub {
  font-size: 2.2rem;
  padding: 2.0rem 1rem;
 }
 .addParts02 .blockTitArea .blockTitSub::before {
  left: -6px;
  top: -6px;
  background-size: 13px auto;
 }
 .addParts02 .blockTitSub::after {
  width: 20px;
  height: 10px;
  bottom: -10px;
 }
 .addParts02 .blockTitArea .blockTit { font-size: 2.2rem; }
 .addParts02 .block__item {
  margin: 4rem 0 0;
  padding: 0 2rem;
 }
 .addParts02 .block__item .blockTitArea { margin-bottom: 2rem; }
 .addParts02 .block__item .blockTitArea .block__item__title {
  font-size: 2rem;
  letter-spacing: normal;
  padding: 0 2rem;
  background-size: 60px auto;
  min-height: 65px;
 }
 .addParts02 .block .block__item.jirei > .catch { font-size: 1.6rem; }
 .addParts02 .baBoxWrap { display: block; }
 .addParts02 .baBoxWrap .baBox { width: 100%; }
 .addParts02 .baBoxWrap .baBox .baBox_head,
 .addParts02 .baBoxWrap .baBox .baBox_body .catch { font-size: 1.7rem; }
 .addParts02 .baBoxWrap .baBox .baBox_body { padding: 2rem; }
 .addParts02 .baBoxWrap .baBox.after .baBox_head::after {
  width: 52px;
  height: 20px;
  clip-path: polygon(0 0, 100% 0%, 50% 100%);
  background-color: #f9f9f9;
  top: 0;
  left: 50%;
  margin-left: -26px;
 }
 .addParts02 .baBoxWrap .baBox.after .baBox_head { padding-top: 3rem; }
 .addParts02 .block .btn-internal,
 .addParts02 .block .btn-web,
 .addParts02 .block .btn-tel { max-width: 80%; }
 .personBox { padding: 2rem; }
 .personBox .pic {
  display: block;
  width: 55px;
  float: left;
  margin: 1rem 1.4rem 0.2rem 0;
 }
 .personBox dl {
  display: block;
  width: 100%;
  padding: 0;
 }
 .personBox dl dt {
  font-size: 1.6rem;
  margin: 0 auto 1.2rem;
 }
 .personBox dl dd { margin: 0 auto; }
 .personBox dl + dd { margin-top: 1.5rem; }
 /*slideTxtArea*/
 .addParts02 .slideTxtArea {
  width: calc(100% - 30px);
  padding: 2.5rem 1.5rem 1.5rem;
  margin: -1.5rem auto 0;
  position: relative;
  z-index: 2;
 }
 .addParts02 .slideTit {font-size: 1.8rem;}
 .addParts02 .slideTxt { line-height: 1.6; }
 .addParts02 .slideTxtArea {
  opacity: 0;
  transition: all 1s 0s ease;
  transition-delay: 300ms;
 }
 .addParts02 .slick-slide.slick-current .slideTxtArea,
 .addParts02 .slick-slide.is-active-next .slideTxtArea { opacity: 1; }
 .addParts02 .slideTxtInner {
  opacity: 0;
  margin-left: -15px;
  transition: all 0.5s 0s ease;
  transition-delay: 600ms;
 }
 .addParts02 .slick-slide.slick-current .slideTxtInner,
 .addParts02 .slick-slide.is-active-next .slideTxtInner {
  opacity: 1;
  margin-left: 0;
 }
 /* .addParts06
 ---------------------------------------*/
 /* .addParts04
 ---------------------------------------*/
 .addParts04 .addTopArea {
  width: 100%;
  margin: 0 0 3rem;
  display: block;
 }
 .addParts04 .addTopArea .addTopPic {
  width: 100%;
  margin: 0 0 2rem;
  position: relative;
 }
 .addParts04 .addTopArea .addTopTxt {
  width: 100%;
  padding-right: 0;
 }
 #contents .addParts04 .addTopArea .sttl {
  position: relative;
  margin: 0 auto 5rem;
  font-size: 2.4rem;
  letter-spacing: normal;
  background: none;
  border-bottom: 2px solid #1f2d45;
  padding: 0 2rem 1rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: left;
 }
 /* .addParts03
 ---------------------------------------*/
 /* .addParts05
 ---------------------------------------*/
 /* .addParts07
 ---------------------------------------*/
 /* .addParts08
 ---------------------------------------*/
 .bgBox .bgBox-head {font-size: 2rem;}
}

