#gHeader { background: none; border-bottom: none; }

#gHeader.is_hide { background: none; }

#gHeader .language .item.is_en a { color: #fff; }

@media all and (min-width: 600px) { #gNav .list { color: #fff; } }

@media all and (min-width: 600px) { #gNav .list a[target]:after { background: url(../img/common/ico_blank01.png) no-repeat center/contain; } }

/* #emergency
================================================ */
#emergency { padding: 10px 0; }
#emergency .inner { display: -webkit-box; display: -ms-flexbox; display: flex; }
#emergency .cat { width: 20%; color: #fff; background: #ff0000; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#emergency .txt { width: 80%; padding-left: 15px; }
#emergency .txt a { color: #ff0000; font-size: 1.4rem; }
#emergency .cat2 { width: 20%; color: #fff; background: #0174bd; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
#emergency .txt2 { width: 80%; padding-left: 15px; }
#emergency .txt2 a { font-size: 1.4rem; }

@media all and (min-width: 600px) { #emergency { padding: 15px 0; }
  #emergency .cat { width: 150px; color: #fff; background: #ff0000; text-align: center; }
  #emergency .txt { padding-left: 20px; width: calc(1100px - 150px); }
  #emergency .txt a { font-size: 1.6rem; }
  #emergency .cat2 { width: 150px; color: #fff; background: #0174bd; text-align: center; }
  #emergency .txt2 { padding-left: 20px; width: calc(1100px - 150px); }
  #emergency .txt2 a { font-size: 1.6rem; } }

/* #pickup
================================================ */
#pickup { border-top: 5px solid #1cacda; }

#pickup .inner { position: relative; padding-top: 26px; padding-bottom: 20px; }

#pickup .sliderWrap { margin: 0 -18px 0; }

#pickup .slick-slider { margin: 0; }

#pickup .slick-list { overflow: visible; padding-bottom: 5px; }

#pickup .slick-dots { position: static; margin-top: 15px; }

#pickup .slide { box-sizing: border-box; height: auto; padding: 0 8px; }

#pickup .slide a { display: block; }

#pickup .slide .name { margin-top: 10px; font-weight: 600; font-size: 1.4rem; line-height: 1.22; }

#pickup .slide .name span { font-size: 1.1rem; line-height: 1.57; }

#pickup .slick-dots li { position: relative; margin: 0; }

#pickup .slick-dots li button:before { color: #eeeeee; opacity: 1; }

#pickup .slick-dots li.slick-active button:before { color: #0171b8; }

@media all and (min-width: 600px) { #pickup .line { top: -38px; left: 1px; }
  #pickup .inner { padding-top: 22px; padding-bottom: 70px; }
  #pickup .sliderWrap { margin: 0 -12px; }
  #pickup .slick-list { padding-bottom: 5px; }
  #pickup .slick-dots { margin-top: 5px; }
  #pickup .slide { padding: 0 12px; }
  #pickup .slide a { text-decoration: none; position: relative; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #pickup .slide a:before { content: ""; display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #fff; opacity: 0; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #pickup .slide a:hover:before { opacity: 0.3; }
  #pickup .slide .name { margin-top: 17px; font-size: 2rem; }
  #pickup .slide .name span { font-size: 1.6rem; } }

#about .inner { position: relative; padding-top: 20px; padding-bottom: 58px; }

#about .inner .line { top: 0; left: 340px; }

#about .logo { box-sizing: border-box; max-width: 338px; padding: 40px 27px 20px 27px; margin: auto; background: url("../img/common/logo05.png") no-repeat 0 0/124px; text-align: center; }

#about .logo img { width: 150px; }

#about .areaTxt { margin-top: 30px; }

#about .tit { margin-bottom: 13px; font-size: 2rem; line-height: 1.75; letter-spacing: .08em; }

#about .txt { font-size: 1.3rem; }

#about .btn { position: relative; z-index: 1; }

@media all and (min-width: 600px) { #about { background: url(../img/home/bg_about01.png) no-repeat center bottom/1920px; }
  #about .inner { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; padding-top: 48px; padding-bottom: 145px; }
  #about .inner .line { top: 0; left: 290px; }
  #about .areaLogo { width: 280px; }
  #about .logo { max-width: 377px; padding: 33px 0 0 102px; margin: 0 0 0 -100px; background-size: 139px; text-align: center; }
  #about .logo img { width: 100%; }
  #about .areaTxt { width: calc(100% - 280px - 92px); margin-top: 0; padding: 21px 0 0; }
  #about .tit { margin-bottom: 22px; font-size: 3rem; }
  #about .txt { font-size: 1.6rem; line-height: 1.8; }
  #about .btn { margin: 104px 0 0; } }

/*  #solution
================================================== */
#solution { position: relative; background: #eeeeee; color: #fff; }

#solution .inner { position: relative; overflow: hidden; min-height: 804px; padding-top: 57px; padding-bottom: 60px; }

#solution .line { top: 30px; left: 0; }

#solution .circleBorder { box-sizing: border-box; position: absolute; top: 50%; right: -60px; width: 1542px; height: 1542px; margin-top: -771px; border-radius: 50%; border: 1px solid #e4f5fb; }

#solution .circle { box-sizing: border-box; position: absolute; top: 0; bottom: 0; width: 140%; right: 0; overflow: hidden; }

#solution .circle .circleCenter { position: absolute; top: 50%; right: -60px; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); height: 1542px; width: 1542px; border-radius: 50%; background: #016cb1; }

#solution .content { position: relative; z-index: 1; }

#solution .areaHead { font-size: 1.3rem; }

#solution .areaHead .en { font-size: 1rem; }

#solution .areaHead .tit { position: relative; margin-bottom: 22px; padding-bottom: 16px; font-size: 2.1rem; line-height: 1.5; font-weight: 700; }

#solution .areaHead .tit:after { content: ""; display: block; position: absolute; bottom: 0; left: 0; width: 42px; height: 2px; background: #1cacda; }

#solution .areaList { margin-top: 22px; }

#solution .areaList .item { position: relative; background: #fff; box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.15); font-size: 1.2rem; color: #333; }

#solution .areaList .item + .item { margin-top: 15px; }

#solution .areaList .item a { display: block; text-decoration: none; }

#solution .areaList .txt { position: relative; padding: 17px 20px 20px; }

#solution .areaList .txt:after { position: absolute; top: 50%; right: 0; content: ""; display: block; width: 20px; height: 1px; background: #016cb1; }

@media all and (min-width: 600px) { #solution .inner { overflow: inherit; height: 870px; padding-top: 120px; }
  #solution .line { left: 180px; top: 0; }
  #solution .circleBorder { right: 50%; width: 1320px; height: 1320px; margin: -658px -495px 0 0; border: 0; }
  #solution .circleBorder svg { -webkit-transform: rotate(90deg); -ms-transform: rotate(90deg); transform: rotate(90deg); }
  #solution .circle { right: 210px; width: 1320px; }
  #solution .circle .circleCenter { width: 1320px; height: 1320px; overflow: hidden; }
  #solution .circle .circleCenter:after { position: absolute; z-index: 2; top: 732px; left: -40px; content: ""; display: block; width: 747px; height: 839px; background: url("../../img/home/bg_solution01.png") no-repeat center/contain; }
  #solution .circle .circleCenterParticle { position: absolute; bottom: -176px; left: -50px; width: 800px; height: 800px; border-radius: 50%; overflow: hidden; }
  #solution .content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #solution .areaHead { width: calc(100% - 675px); padding: 42px 0 0; font-size: 1.6rem; }
  #solution .areaHead .en { font-size: 1.6rem; }
  #solution .areaHead .tit { margin-bottom: 22px; padding-bottom: 16px; font-size: 3.2rem; }
  #solution .areaHead .tit:after { width: 60px; }
  #solution .areaHead .txt { font-size: 1.7rem; line-height: 1.85; }
  #solution .areaList { width: 630px; margin-right: -44px; margin-top: 0; }
  #solution .areaList .item { box-sizing: border-box; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15); font-size: 1.4rem; cursor: pointer; overflow: hidden; }
  #solution .areaList .item + .item { margin-top: 30px; }
  #solution .areaList .item:nth-child(odd) { right: 100px; }
  #solution .areaList .item:nth-child(even) { right: 40px; }
  #solution .areaList .item:after { width: 30px; }
  #solution .areaList .areaTit { box-sizing: border-box; width: 305px; }
  #solution .areaList .txt { box-sizing: border-box; width: calc(100% - 305px); -webkit-transition: all 0.3s ease; transition: all 0.3s ease; padding: 0 60px 0 30px; font-size: 1.6rem; } }

/*  #solution fadeIn
================================================== */
@media all and (min-width: 600px) { #solution .fadeInContent { position: absolute; top: 0; left: 0; right: 0; bottom: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 0 25px; pointer-events: none; opacity: 0; background: #fff; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #solution .fadeInContent:after { position: absolute; top: 50%; right: 0; content: ""; display: block; width: 20px; height: 1px; background: #016cb1; }
  #solution .fadeInTit { font-size: 1.6rem; text-align: left; }
  #solution .fadeInTit a { position: relative; display: block; text-decoration: none; padding-left: 24px; font-weight: 700; }
  #solution .fadeInTit a:before { position: absolute; top: 5px; left: 0; content: ""; display: block; width: 14px; height: 14px; background: url("../../img/common/ico_arw01.png") no-repeat center/contain; }
  #solution .fadeInListWrap { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #solution .fadeInList { box-sizing: border-box; width: 50%; margin-top: 8px; padding: 0 10px 0 6px; font-size: 1.3rem; line-height: 1.4; }
  #solution .fadeInList.hasColumn { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #solution .fadeInList .fadeInListItem { box-sizing: border-box; position: relative; padding: 0 0 0 18px; font-weight: 700; border-left: 1px solid #016cb1; }
  #solution .fadeInList .fadeInListItem:before { position: absolute; top: 12px; left: 8px; content: ""; display: block; width: 3px; height: 1px; background: #016cb1; }
  #solution .fadeInList.list1 { width: 60%; }
  #solution .fadeInList.list2 { width: 40%; }
  #solution .fadeInList.list3 { width: 33.3%; }
  #solution .fadeInList.list4 { width: 33.3%; }
  #solution .fadeInList.list5 { width: 33.3%; }
  #solution .fadeInList.list6 { width: 90%; }
  #solution .fadeInList a { display: block; padding: 4px 0 3px; text-decoration: none; -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #solution .fadeInList a:hover { color: #016cb1; }
  #solution .item:hover .areaTit, #solution .item:hover .txt { opacity: 0; pointer-events: none; }
  #solution .item:hover .fadeInContent { opacity: 1; pointer-events: auto; } }

/*  #event
================================================== */
#event .inner { position: relative; padding-top: 46px; padding-bottom: 30px; }

#event .line { left: 50%; margin-left: -100px; top: 0; z-index: 1; }

#event .line span { background: #1cacda; }

@media all and (min-width: 600px) { #event .line { top: 0; left: 160px; }
  #event .inner { padding-top: 100px; padding-bottom: 60px; }
  #event .btn a:before { top: 0; width: 100%; height: 100%; } }

#info .inner { position: relative; padding-top: 30px; padding-bottom: 37px; }

#info .line { top: 0; left: 50%; width: 60px; margin-left: -40px; }

@media all and (min-width: 600px) { #info .inner { padding-bottom: 34px; }
  #info .line { top: 0; width: 160px; margin-left: 0; }
  #info .btn a:before { top: 0; width: 100%; height: 100%; } }

#recruit .inner { position: relative; padding-top: 37px; padding-bottom: 45px; }

#recruit .line { top: 30px; left: 50%; margin-left: -60px; }

@media all and (min-width: 600px) { #recruit .inner { padding-top: 105px; padding-bottom: 0; }
  #recruit .line { top: 100px; margin-left: -90px; } }








/*  装飾
================================================== */


.keyword-tit{ font-weight: 900;  font-size: 2.5rem;
  font-feature-settings: "palt"; line-height: 1.4;
}

.keyword{ box-shadow:0px 0px 10px #fff; 
background-color:#fff; 
margin-bottom: 5px; font-size: 1.25rem; 
font-weight: 700; 
color:#000; 
padding:2px 10px; 
border-radius: 1em;
}

@media all and (min-width: 600px) {

.keyword-tit{ font-weight: 900;  font-size: 4rem;
  font-feature-settings: "palt";
}
.keyword{
 box-shadow:0px 0px 10px #fff; 
background-color:#fff; 
margin-bottom: 5px; font-size: 1.5rem; 
font-weight: 700; 
color:#000; 
padding:2px 10px; 
border-radius: 1em;
}
}



/*　黄色アンダーライン　*/
.yeunline {background: linear-gradient(transparent 75%, #FFC000 0%);}
/*　bold　*/
.bold {font-weight: bold; }