/*
Theme Name: kk_themes
Description: Description
Version: 1.0.0
--------------------------------------------------------------*/
@charset "UTF-8";
/* CSS Document */

.ani_sclAnime {
  transform: translateY(50px);
  opacity: 0;
  transition: opacity 0.5s, transform 0.5s;
}

.ani_sclAnime.ani_fadeIn.slide {
  transform: translate(50px,0);
}

.ani_sclAnime.rb {
  transform: translate(50px,50px);
}

.ani_sclAnime.lb {
  transform: translate(-50px,50px);
}

.ani_sclAnime.ani_fadeIn,
.ani_sclAnime.ani_fadeIn.slide {
  opacity: 1;
  transform: translate(0,0);
}

.badge {
  width: 229px;
  height: 229px;
  border-radius: 229px;
  background: #fff;
  text-align: center;
  padding-top: 70px;
  box-sizing: border-box;
}

.badge .el_font_en {
  font-size: 50px;
  letter-spacing: 0.1em;
  padding-bottom: 15px;
  display: block;
}

.badge .jp {
  display: block;
  font-size: 16px;
  letter-spacing: 0.02em;
  position: relative;
  padding-top: 20px;
}

.badge .jp::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  background: #000;
  width: 34px;
  height: 1px;
}

@media screen and (max-width: 480px) {
  .badge {
    width: 125px;
    height: 125px;
    border-radius: 125px;
    padding-top: 40px;
  }

  .badge .el_font_en {
    font-size: 29px;
    padding-bottom: 12px;
  }

  .badge .jp {
    font-size: 9px;
    padding-top: 10px;
  }

  .badge .jp::before {
    width: 45px;
  }
}


.sec_topHero {
  height: 100vh;
  position: relative;
  overflow: hidden;
}

.sec_topHero .conts {
  position: relative;
  z-index: 2;
  width: 1000px;
  margin: 0 auto;
  height: 100vh;
}

.sec_topMsg .overlay,
.sec_topHero .overlay {
  height: 100vh;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: rgba(0, 50, 100, .0);
  z-index: 1;
}

.sec_topHero .el_mainCopy {
  width: 100%;
  max-width: 969px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.sec_topHero .bg {
  height: 100vh;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  background: url(assets/images/bg_main@2x.jpg) center top no-repeat;
  background-size: cover;
}

@media screen and (max-width: 1000px) {

  .sec_topHero .conts {
    width: 100%;
  }

  .sec_topHero .el_mainCopy {
    width: 90%;
  }
}

@media screen and (max-width: 480px) {

  .sec_topHero .conts {
    width: 100%;
  }

  .sec_topHero .el_mainCopy {
    width: 77.6%;
  }

  .sec_topHero .bg {
    background: url(assets/images/bg_main_sp@2x.jpg) center top no-repeat;
    background-size: cover;
  }
}

.sec_topMsg {
  position: relative;
}

.sec_topMsg .ly_inner {
  position: relative;
  z-index: 2;
  padding: 70px 0;
}

.sec_topMsg .overlay {
  height: 100%;
}

.sec_topMsg .lead,
.sec_topMsg .msg {
  text-align: center;
  color: #fff;
}

.sec_topMsg .lead {
  font-size: 20px;
  line-height: 2;
  margin-bottom: 20px;
  letter-spacing: 1px;
}

.sec_topMsg .lead:nth-child(3) {
  margin-bottom: 30px;
}

.sec_topMsg .msg {
  font-size: 38px;
}

@media screen and (max-width: 480px) {

  .sec_topMsg .ly_inner {
    padding: 35px 0;
    width: 82.6%;
  }

  .sec_topMsg .lead {
    text-align: left;
    font-size: 16px;
    margin-bottom: 10px;
  }

  .sec_topMsg .lead:nth-child(3) {
    margin-bottom: 15px;
  }

  .sec_topMsg .msg {
    font-size: 24px;
  }
}

.sec_topWorks {
  background: #0068b7 url(assets/images/bg_works_new@2x.jpg) center top no-repeat;
  background-size: 2000px 561px;
  padding: 85px 0 0;
  overflow: hidden;
}

.sec_topWorks .head {
  margin-bottom: 85px;
}

.sec_topWorks .badge .el_font_en {
  color: #0068b7;
}

.sec_topWorks .lead {
  padding-top: 25px;
  font-size: 18px;
  line-height: 2;
  color: #fff;
  width: 725px;
}

.el_worksBlock {
  margin-bottom: 100px;
  position: relative;
}

.el_worksBlock::before {
  content: "";
  display: block;
  width: 200%;
  height: 280px;
  background: rgba(255, 255, 255, .1);
  position: absolute;
  top: 25px;
  right: 0;
  transform-origin: right 0;
  transform: rotate(-5deg);
}

.el_worksBlock.rev::before {
  right: inherit;
  left: 0;
  transform-origin: left 0;
  transform: rotate(5deg);
}

.el_worksBlock .en {
  font-size: 90px;
  opacity: .2;
  color: #fff;
  margin-bottom: 10px;
  overflow: hidden;
  transform: translate(-100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

.el_worksBlock .en .cover {
  display: block;
  transform: translate(100%, 0);
  transition: transform cubic-bezier(0.215, 0.61, 0.355, 1) 0.5s;
}

.el_worksBlock .en.-visible,
.el_worksBlock .en.-visible .cover {
  transform: translate(0, 0);
}

.el_worksBlock .img {
  width: 496px;
  position: relative;
}

.el_worksBlock .info {
  width: 451px;
  padding-top: 40px;
  position: relative;
  margin-bottom: 20px;
}

.el_worksBlock .info .ttl {
  background: #80e246;
  padding: 10px 30px;
  color: #003d70;
  font-weight: 600;
  font-size: 36px;
  letter-spacing: 5px;
  text-align: center;
  display: inline-block;
  margin-bottom: 15px;
}

.el_worksBlock .desc {
  font-size: 16px;
  line-height: 1.9;
  color: #fff;
}

@media screen and (max-width: 1000px) {
  .sec_topWorks .lead {
    width: calc(100% - 250px);
  }

  .el_worksBlock .en {
    font-size: 10vw;
    text-align: left !important;
  }

  .el_worksBlock .img {
    width: 100%;
  }

  .el_worksBlock .info {
    width: 100%;
    padding-top: 0;
  }
}

@media screen and (max-width: 480px) {
  .sec_topWorks {
    background: #003264 url(assets/images/bg_works_sp_new@2x.jpg) center top no-repeat;
    background-size: 480px 389px;
    padding: 32px 0 65px;
  }

  .sec_topWorks .head {
    margin: 0 auto 40px;
  }

  .sec_topWorks .badge {
    margin: 0 auto 15px;
  }

  .sec_topWorks .lead {
    padding-top: 0;
    font-size: 16px;
    width: 88%;
    margin: 0 auto;
  }

  .el_worksBlock {
    margin-bottom: 100px;
  }

  .el_worksBlock::before {
    height: 464px;
    top: 40px;
  }

  .el_worksBlock .ly_inner {
    width: 88%;
    margin: 0 auto;
  }

  .el_worksBlock .info .ttl {
    padding: 10px 18px;
    font-size: 24px;
    letter-spacing: 3px;
    margin-bottom: 25px;
  }

  .el_worksBlock .desc {
    font-size: 14px;
    line-height: 1.9;
  }
}

.sec_topNews {
  background: #fff;
  padding: 75px 0;
}

.sec_topNews .head {
  width: 174px;
}

.sec_topNews .el_font_en {
  letter-spacing: 0.1em;
  font-size: 48px;
  margin-bottom: 15px;
  color: #0068b7;
}

.sec_topNews .jp {
  color: #000;
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 65px;
  display: block;
}

.sec_topNews .link {
  width: 174px;
  display: block;
  background: #0068b7 url(assets/images/ico_arw_r_w.svg) 140px center no-repeat;
  color: #fff;
  font-size: 16px;
  padding: 15px 0;
  padding-left: 30px;
  box-sizing: border-box;
  position: absolute;
  top: 122px;
  left: 0;
}

.sec_topNews .el_newslists {
  width: 720px;
}

.el_newslists li {
  margin-bottom: 10px;
  background: rgba(243, 243, 243, 1) url(assets/images/ico_arw_r_b.svg) right 15px center no-repeat;
  display: block;
}

.el_newslists li a {
  display: block;
  height: 65px;
  padding-top: 20px;
  box-sizing: border-box;
  color: #000;
  font-size: 16px;
  padding-left: 20px;
}

.el_newslists .date {
  font-size: 14px;
}

.el_newslists .cat {
  font-size: 14px;
  color: #fff;
  background: #000;
  display: inline-block;
  margin: 0 15px;
  padding: 5px 10px;
}
@media screen and (max-width: 1000px) {
  .sec_topNews {
    padding: 35px 0 140px;
  }

  .sec_topNews .ly_inner {
    width: 88%;
  }

  .sec_topNews .head {
    width: 100%;
  }

  .sec_topNews .el_font_en {
    margin-bottom: 10px;
  }

  .sec_topNews .jp {
    font-size: 14px;
    margin-bottom: 25px;
  }

  .sec_topNews .link {
    width: 174px;
    position: absolute;
    top: inherit;
    bottom: -70px;
    left: 50%;
    transform: translateX(-50%);
    line-height: 1;
  }

  .sec_topNews .el_newslists {
    width: 100%;
  }

  .el_newslists li a {
    display: block;
    height: auto;
    padding: 15px;
    box-sizing: border-box;
    font-size: 15px;
  }

  .el_newslists .cat {
    margin-bottom: 10px;
  }
}

@media screen and (max-width: 480px) {
}

.sec_topRecruit {
  background: #80e246 url(assets/images/bg_recruit2000_new@2x.jpg) center top no-repeat;
  background-size: 1921px 785px;
  padding: 45px 0 110px;
}

@media screen and (max-width: 1535px) {
  .sec_topRecruit {
    background: #80e246 url(assets/images/bg_recruit1535_new@2x.jpg) center top no-repeat;
    background-size: 1535px 698px;
  }
}

@media screen and (max-width: 1280px) {
  .sec_topRecruit {
    background: #80e246 url(assets/images/bg_recruit1280_new@2x.jpg) center top no-repeat;
    background-size: 1281px 640px;
  }
}

@media screen and (max-width: 480px) {
  .sec_topRecruit {
    background: #80e246 url(assets/images/bg_recruit480_new@2x.jpg) center top no-repeat;
    background-size: 480px 311px;
    padding-top: 210px;
	  padding-bottom: 70px;
  }
}

@media screen and (max-width: 375px) {
  .sec_topRecruit {
    background: #80e246 url(assets/images/bg_recruit375_new@2x.jpg) center top no-repeat;
    background-size: 375px 275px;
  }
}

.sec_topRecruit .badge {
  position: absolute;
  top: 0;
  right: 0;
}

.sec_topRecruit .badge .el_font_en {
  color: #80e246;
  letter-spacing: 1.25px;
}

.sec_topRecruit .head {
  margin-bottom: 175px;
}

.sec_topRecruit .head .heading {
  padding-top: 50px;
  background: url(assets/images/img_logo02.svg) left 50px no-repeat;
  color: #fff;
  font-weight: 700;
  font-size: 40px;
  letter-spacing: 5.6px;
  line-height: 1.4;
  padding-left: 165px;
  margin-bottom: 30px;
}

.sec_topRecruit .head .lead {
  font-size: 18px;
  line-height: 2;
}
@media screen and (max-width: 1000px) {

  .sec_topRecruit .head .heading {
    padding-top: 40px;
    background: url(assets/images/img_logo02.svg) left 40px no-repeat;
    background-size: 90px 68px;
    font-size: 26px;
    padding-left: 100px;
  }

  .sec_topRecruit .head .lead {
    font-size: 16px;
    padding-right: 250px;
  }
}

@media screen and (max-width: 480px) {
  .sec_topRecruit .badge {
    left: 50%;
    right: inherit;
    transform: translate(-50%, -236px);
	box-shadow: 2px 2px 6px #999;
  }

  .sec_topRecruit .head {
    margin-bottom: 40px;
  }

  .sec_topRecruit .ly_inner {
    width: 88%;
  }

  .sec_topRecruit .head .heading {
    padding-top: 60px;
    background: url(assets/images/img_logo02.svg) center top no-repeat;
    background-size: 63px 48px;
    font-size: 25px;
    letter-spacing: 0.1em;
    padding-left: 0;
    margin-bottom: 10px;
  }

  .sec_topRecruit .head .lead {
    font-size: 16px;
    line-height: 1.75;
    padding-right: 0;
  }
}

.msgBlock {
  background: rgba(255, 255, 255, .8);
  padding: 70px 85px;
  box-sizing: border-box;
  margin-bottom: 90px;
}

.msgBlock .msgBlockHead {
  margin-bottom: 20px;
}

.msgBlock .msgBlockHead_info {
  width: 420px;
}

.msgBlock .msgBlockHead_ttl {
  font-size: 54px;
  color: #80e246;
  border-bottom: solid 1px #80e246;
  padding-bottom: 10px;
  margin-bottom: 10px;
}

.msgBlock .msgBlockHead_lead {
  font-size: 28px;
  line-height: 1.4;
  letter-spacing: 1px;
  margin-bottom: 2rem;
}

.msgBlock .msgBlockHead_img {
  width: 400px;
}

.msgBlockBody .msgBlockBody_ttl {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  letter-spacing: 1px;
  margin-bottom: 35px;
}

.msgBlockBody .msgBlockBody_ttl:before,
.msgBlockBody .msgBlockBody_ttl:after {
  border-top: 1px solid black;
  content: "";
  width: 36px;
}

.msgBlockBody .msgBlockBody_ttl:before {
  margin-right: 20px;
}

.msgBlockBody .msgBlockBody_ttl:after {
  margin-left: 20px;
}

.msgBlockBody_list {
  margin-bottom: 40px;
  position: relative;
  padding: 12px 15px 0;
}

.msgBlockBody_list::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 50px;
  top: 0;
  left: 0;
  z-index: 0;
}

.msgBlockBody_list.line1::before {
  background: #0068b7;
}
.msgBlockBody_list.line1 b {
  color: #0068b7;
}

.msgBlockBody_list.line2::before {
  background: #88d247;
}
.msgBlockBody_list.line2 b {
  color: #88d247;
}

.msgBlockBody_list.line3::before {
  background: #a1a1a1;
}
.msgBlockBody_list.line3 b {
  color: #a1a1a1;
}

.msgBlockBody_list .info {
	position: relative;
}

.msgBlockBody_list .msgBlockBody_listTtl {
  color: #fff;
  background: url(assets/images/ico_triangle_r_w.svg) left center no-repeat;
  padding-left: 15px;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 35px;
}
.msgBlockBody_list .msgBlockBody_listTtl br,
.msgBlockBody_list .msgBlockBody_listTtl+b br{
	display: none;
}
.msgBlockBody_list .msgBlockBody_listTtl+b {
	font-size: 24px;
	line-height: 1.2;
	margin-bottom: 15px;
    display: block;
}

.msgBlockBody_list .desc {
  font-size: 16px;
  line-height: 1.75;
}

.msgBlockBody_list .img {
  width: 302px;
  z-index: 1;
}

@media screen and (max-width: 1000px) {
  .msgBlock {
    padding: 40px 25px 0;
    margin-bottom: 50px;
  }

  .msgBlock .msgBlockHead_info {
    width: 100%;
    text-align: center;
  }

  .msgBlock .msgBlockHead_ttl {
    font-size: 36px;
    text-align: center;
    display: inline-block;
    margin: 0 auto 10px;
  }

  .msgBlock .msgBlockHead_lead {
    text-align: left;
    margin-bottom: 20px;
	font-size: 24px;
  }

  .msgBlock .msgBlockHead_img {
    width: 100%;
  }

  .msgBlockBody .msgBlockBody_ttl {
    font-size: 18px;
    margin-bottom: 25px;
  }

  .msgBlockBody .msgBlockBody_ttl:before,
  .msgBlockBody .msgBlockBody_ttl:after {
    width: 30px;
  }

  .msgBlockBody .msgBlockBody_ttl:before {
    margin-right: 15px;
  }

  .msgBlockBody .msgBlockBody_ttl:after {
    margin-left: 15px;
  }

  .msgBlockBody_list {
    margin-bottom: 35px;
    border-bottom: solid 1px #000;
    padding: 12px 0 35px;
  }
	.msgBlockBody_list::before {
	  height: 70px;
	}
  .msgBlockBody_list.line3 {
    margin-bottom: 0;
    border-bottom: none;
  }

  .msgBlockBody_list .info {
    width: 100%;
  }

  .msgBlockBody_list .msgBlockBody_listTtl {
    color: #fff;
    background: url(assets/images/ico_triangle_r_w.svg) 15px center no-repeat;
    padding-left: 30px;
    font-size: 21px;
    line-height: 1.1;
  }
	.msgBlockBody_list .msgBlockBody_listTtl br,
	.msgBlockBody_list .msgBlockBody_listTtl+b br{
		display: block;
	}

  .msgBlockBody_list .desc {
    font-size: 14px;
  }

  .msgBlockBody_list .img {
    width: 100%;
  }
}

.recruitTtl {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 36px;
  letter-spacing: 7px;
  margin-bottom: 40px;
}

.recruitTtl:before,
.recruitTtl:after {
  border-top: 1px solid black;
  content: "";
  width: 36px;
}

.recruitTtl:before {
  margin-right: 20px;
}

.recruitTtl:after {
  margin-left: 20px;
}

.recruitTblBlock {
  margin-bottom: 50px;
}

.recruitTbl {
  border-top: solid 1px #000000;
  width: 48%;
}

.recruitTbl th {
  width: 21%;
  font-weight: 500;
}

.recruitTbl td {
  width: 79%;
}

.recruitTbl th,
.recruitTbl td {
  padding: 15px 0;
  border-bottom: solid 1px #000000;
  vertical-align: top;
  line-height: 1.75;
}

.linkRecruit {
  width: 260px;
  padding: 20px 0;
  display: block;
  background: #000;
  color: #80e246;
  font-size: 22px;
  font-weight: 700;
  box-sizing: border-box;
  padding-left: 40px;
  background: #000 url(assets/images/ico_arw_r_yg.svg) 210px center no-repeat;
  margin: 50px auto 0;
  letter-spacing: 0.1em;
  background-size: 32px;
}

.recruitBnr {
  margin: 80px 0 145px;
}

.recruitBnr a {
  display: block;
  position: relative;
}

.recruitBnr a .float{
  position: absolute;
  bottom: 0;
  left: 0;
  width: 277px;
}

.recruitBnr .bg {
  box-shadow: 3px 3px 3px 0px rgba(0,0,0,0.5);
}

@media screen and (max-width: 480px) {
  .recruitTtl {
    font-size: 20px;
    letter-spacing: 3px;
    margin-bottom: 25px;
  }

  .recruitTtl:before {
    margin-right: 10px;
  }

  .recruitTtl:after {
    margin-left: 10px;
  }

  .recruitTbl {
    border-top: solid 1px #000000;
    width: 100%;
    float: none !important;
  }

  .recruitTbl.hp_fr {
    border-top: none;
  }

  .recruitTbl th {
    width: 100%;
    border-bottom: none;
    padding: 15px 0 5px;
    font-size: 16px;
  }

  .recruitTbl td {
    width: 100%;
    padding: 0 0 15px;
  }

  .recruitTbl th,
  .recruitTbl td {
    display: block;
  }

  .recruitTbl.hp_fr td.last {
    border-bottom: none;
  }

  .linkRecruit {
    width: 260px;
    padding: 20px 0;
    display: block;
    background: #000;
    color: #80e246;
    font-size: 22px;
    font-weight: 700;
    box-sizing: border-box;
    padding-left: 40px;
    background: #000 url(assets/images/ico_arw_r_yg.svg) 210px center no-repeat;
    margin: 50px auto 0;
    letter-spacing: 0.1em;
	background-size: 24px;
  }

  .recruitBnr {
    margin: 40px 0 70px;
  }
}

.sec_sdgs {
	background: #fff url(assets/images/bg_sdgs.jpg) center no-repeat;
	background-size: cover;
	padding: 0 0 70px;
}
.sec_sdgs .head {
  margin-bottom: 50px;
  padding-top: 90px;
}
.sec_sdgs .head img {
	display: block;
	margin: 0 auto;
	width: 75%;
	max-width: 532px;
	margin-bottom: 10px;
}
.sec_sdgs .ja {
  font-family: 'source-han-sans-japanese', sans-serif;
  color: #000;
  font-size: 16px;
  letter-spacing: 0.2em;
  font-weight: 500;
  display: block;
  text-align: center;
}
.sdgs_txt {
	width: 90%;
	max-width: 640px;
	margin: 0 auto 1.5rem;
}
.sdgs_txt b {
	display: block;
	text-align: center;
	font-size: 36px;
	margin-bottom: 1rem;
}
.sdgs_txt p {
	font-size: 16px;
	line-height: 2;
	text-align: justify;
}
.linkSdgs {
  width: 300px;
  padding: 20px 0;
  display: block;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  box-sizing: border-box;
  padding-left: 20px;
  background: #0095d5 url(assets/images/ico_arw_r_w.svg) 260px center no-repeat;
  margin: 50px auto 0;
  letter-spacing: 0.1em;
  background-size: 24px;
}
@media screen and (max-width: 640px) {
	.sec_sdgs .head {
		padding-top: 60px;
		margin-bottom: 40px;
	}
}

.sec_topBottom {
  background: #fff;
  padding: 0 0 140px;
}

.sec_topBottom .head {
  margin-bottom: 30px;
  font-size: 48px;
  letter-spacing: 0.1em;
  color: #0068b7;
  padding-top: 90px;
}

.sec_topBottom .ja {
  font-family: 'source-han-sans-japanese', sans-serif;
  color: #000;
  font-size: 16px;
  letter-spacing: 0.2em;
  font-weight: 500;
  margin-left: 25px;
}

.company_ttl {
	text-align: center;
	letter-spacing: 0.025em !important;
	margin-bottom: 0 !important;
}
.company_ttl div {
	display: inline-block;
	border-left: solid 3px #0068b7;
	border-right: solid 3px #0068b7;
	padding: 5px 25px;
}
.company_ttl .ja {
	display: block;
	letter-spacing: 0.2em;
	margin-top: 0.5rem;
}
.message_wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.message_wrap p {
	font-size: 16px;
	line-height: 1.9;
	width: calc(100% - 350px);
}
.message_wrap p span {
	font-size: 18px;
	display: block;
	margin-top: 2rem;
}
.message_wrap p span small {
	font-size: 14px;	
}
.message_wrap img {
	width: 320px;	
}
.policy {
	padding: 3rem;
	margin-top: 3rem;
	background: #f4f4f4;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.policy .head {
	padding-top: 0;
	letter-spacing: 0.05em;
	font-size: 36px;
	width: 200px;
}
.policy .head .ja {
	display: block;
	margin-left: 0;
	margin-top: 1rem;
}
.policy p {
	width: calc(100% - 250px);
	font-size: 16px;
	line-height: 2;
	padding-left: 40px;
	border-left: solid 10px #b2d2e9;
}
.policy p b {
	font-size: 28px;
	line-height: 1;
	font-weight: 500;
	letter-spacing: 0.2em;
	display: block;
	margin-bottom: 1rem;
}
@media screen and (max-width: 640px) {
	.message_wrap {
		display: block;
	}
	.message_wrap p {
		width: 100%;	
	}
	.message_wrap img {
		display: block;
		width: 80%;
		margin: 2rem auto 0;
	}
	.policy {
		padding: 1.75rem;
		display: block;
	}
	.policy .head {
		padding-top: 0 !important;
		margin-bottom: 2rem !important;
	}
	.policy .head .ja {
		margin-top: 0.25rem;	
	}
	.policy p {
		width: 100%;
		padding-left: 20px;
		box-sizing: border-box;
	}
}

.defTbl {
  border-top: solid 1px #818994;
}

.defTbl th,
.defTbl td {
  border-bottom: solid 1px #818994;
  padding: 15px 0;
  vertical-align: top;
  line-height: 1.75;
}

.defTbl th {
  color: #818994;
  font-weight: 500;
}

.defTbl td {}

.uni_outline {
  width: 48%;
}

.uni_outline a {
	color: #000;
}

.uni_outline th {
  width: 21%;
}

.uni_outline td {
  width: 79%;
}

.uni_license {
  width: 48%;
}

.uni_license td {
  width: 60%;
}

.uni_license td:last-child {
  width: 40%;
  text-align: right;
  font-size: 16px;
  font-weight: 500;
}

.sec_topBottomTbls .img {
  width: 32%;
}

.uni_history {
  width: 63%;
}

.uni_history td {
  width: 32%;
}

.uni_history td:last-child {
  width: 68%;
}

.sec_topBottom .addr {
  width: 34.5%;
  font-size: 18px;
  margin-bottom: 40px;
}

.sec_topBottom .detail {
  width: 65.5%;
  font-size: 16px;
  margin-bottom: 40px;
}

.sec_topBottom .map iframe {
  width: 100%;
  height: 360px;
}

.el_contact {
  padding-top: 110px;
}

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

.el_contact .head .ja {
  display: block;
  padding-top: 20px;
  padding-right: 15px;
}

.el_contact .lead {
  line-height: 2;
  margin-bottom: 20px;
}

.el_contact .caution {
  font-size: 16px;
  margin-bottom: 40px;
  letter-spacing: 0.02em;
}

.el_contact .caution span {
  color: #D90012;
}

.el_contactTbl {
  margin-bottom: 90px;
}

.el_contactTbl th,
.el_contactTbl td {
  padding: 15px 0;
  vertical-align: top;
  line-height: 1.75;
  font-weight: 500;
  font-size: 18px;
}

.el_contactTbl th {}

.el_contactTbl th span {
  color: #D90012;
}

.el_contactTbl td {
  width: 72.4%;
}

.el_contactTbl input[type="text"],
.el_contactTbl input[type="email"],
.el_contactTbl textarea {
  border: none;
  background: #f4f4f4;
  color: #000;
  padding: 15px;
  width: 100%;
  box-sizing: border-box;
  font-size: 18px;
}

.el_contactTbl .privacy {
  border: solid 1px #818994;
  padding: 15px 20px;
  line-height: 1.75;
  font-size: 14px;
}

.el_contactTbl .privacy ul {
  height: 160px;
  overflow-y: scroll;
}

.el_contactTbl .privacy li {
  text-indent: -1em;
  padding-left: 1em;
}

.el_contactTbl input[type="submit"] {
  width: 215px;
  padding: 20px 0;
  display: block;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  background: #0068b7;
  margin: 50px auto 0;
  letter-spacing: 0.1em;
  border: none;
  cursor: pointer;
  -webkit-border-radius : 0;
  -webkit-appearance : none;
  -webkit-tap-highlight-color : rgba(0,0,0,0);
}

.el_concactBox {
  border-top: solid 1px #818994;
  border-bottom: solid 1px #818994;
  height: 100px;
  line-height: 100px;
  box-sizing: border-box;
}


.el_concactBox a {
  color: #fff;
}

.el_concactBox .txt {
  border-right: solid 1px #818994;
  font-size: 18px;
  letter-spacing: 0.2em;
  width: 38%;
  box-sizing: border-box;
  text-align: center;
  height: 98px;
}

.el_concactBox .tel {
  padding-left: 70px;
  font-size: 48px;
  width: 62%;
  box-sizing: border-box;
}

.el_concactBox .tel span {
  font-size: 30px;
}

@media screen and (max-width: 1000px) {

  .el_concactBox {
    border: none;
    height: auto;
    text-align: center;
    line-height: 1;
  }

  .el_concactBox .txt {
    border: none;
    font-size: 16px;
    width: 100%;
    background: rgba(255,255,255,.1);
    height: 60px;
    line-height: 60px;
  }

  .el_concactBox .tel {
    height: 60px;
    line-height: 60px;
    padding-left: 0;
    font-size: 40px;
    width: 100%;
  }

  .el_concactBox .tel span {
    font-size: 24px;
  }
}


@media screen and (max-width: 480px) {
  .sec_topBottom {
    padding: 0 0 60px;
  }

  .sec_topBottom .ly_inner {
    width: 88%;
  }

  .sec_topBottom .head {
    margin-bottom: 20px;
    padding-top: 65px;
  }

  .sec_topBottom .ja {
    display: block;
    font-size: 14px;
    padding-top: 10px;
    margin-left: 0;
  }

  .defTbl th,
  .defTbl td {
    display: block;
  }

  .defTbl th {
    padding-bottom: 10px;
    border-bottom: none;
  }

  .defTbl td {
    padding-top: 0;
  }

  .uni_outline {
    width: 100%;
  }

  .uni_outline.hp_fr {
    border-top: none;
  }

  .uni_outline th {
    width: 100%;
    font-size: 16px;
  }

  .uni_outline td {
    width: 100%;
  }

  .uni_license {
    width: 100%;
  }

  .uni_license tr:nth-child(odd) {
    background: rgba(255, 255, 255, .1);
  }

  .uni_license td {
    border-bottom: solid 1px #818994;
    width: 80%;
    display: table-cell;
    padding: 10px 10px;
  }

  .uni_license td:last-child {
    width: 20%;
    font-size: 16px;
    font-weight: 500;
  }

  .uni_license tr:last-child td {
    border-bottom: none;
  }

  .sec_topBottomTbls .img {
    width: 100%;
    margin-bottom: 20px;
  }

  .uni_history {
    width: 100%;
    border-top: none;
  }

  .uni_history td {
    width: 100%;
  }

  .uni_history td:first-child {
    color: #818994;
    padding-top: 15px;
    padding-bottom: 10px;
    border-bottom: none;
  }

  .uni_history td:last-child {
    width: 100%;
  }

  .sec_topBottom .addr {
    width: 100%;
    font-size: 16px;
    margin-bottom: 10px;
  }

  .sec_topBottom .detail {
    width: 100%;
    font-size: 14px;
    margin-bottom: 20px;
  }

  .sec_topBottom .map iframe {
    height: 300px;
  }

  .el_contact {
    padding-top: 55px;
  }

  .el_contact .head .ja {
    display: block;
    padding-top: 10px;
    padding-right: 0px;
  }

  .el_contact .lead {
    margin-bottom: 15px;
    text-align: left;
  }

  .el_contact .lead br {
    display: none;
  }

  .el_contact .caution {
    font-size: 14px;
    margin-bottom: 30px;
  }

  .el_contactTbl {
    margin-bottom: 80px;
  }

  .el_contactTbl th,
  .el_contactTbl td {
    display: block;
    width: 100%;
    font-size: 16px;
  }

  .el_contactTbl th {
    padding-bottom: 0;
  }

  .el_contactTbl td {
    width: 100%;
  }

  .el_contactTbl input[type="text"],
  .el_contactTbl input[type="email"],
  .el_contactTbl textarea {
    font-size: 16px;
  }

  .el_contactTbl tr.chk th {
    display: none;
  }

  .el_contactTbl tr.chk td {
    text-align: center;
    font-size: 18px;
  }

  .el_contactTbl tr:first-child td:last-child {
    line-height: 1;
  }

  .el_contactTbl td label {
    display: block;
  }

  .el_contactTbl .privacy {
    font-size: 12px;
  }

  .el_contactTbl input[type="submit"] {
    margin-top: 25px;
  }
}

#main.news {
  background: #fff url(assets/images/bg_news_new@2x.jpg) center top no-repeat;
  background-size: 2000px 400px;
  padding-top: 100px;
}

.el_pageTtl {
  font-size: 68px;
  letter-spacing: 0.1em;
  text-align: center;
  color: #006abc;
  margin-bottom: 125px;
}

.el_pageTtl .ja {
  display: block;
  font-size: 20px;
  letter-spacing: 0.2em;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-top: 10px;
  color: #000;
}

.el_pageTtl .ja:before,
.el_pageTtl .ja:after {
  border-top: 1px solid #000;
  content: "";
  width: 28px;
}

.el_pageTtl .ja:before {
  margin-right: 10px;
}

.el_pageTtl .ja:after {
  margin-left: 10px;
}


.sec_newslist .el_newslists {
  width: 90%;
  margin: 0 auto 60px;
}

.el_pageNav {
  text-align: center;
  margin-bottom: 80px;
}

.el_pageNav a,
.el_pageNav span {
  color: #fff;
  font-size: 16px;
  display: inline-block;
  padding: 10px 15px;
  background: #006abc;
  margin: 0 3px;
}

.el_pageNav span {
  background: #000;
}

.el_pageNav .nextlink,
.el_pageNav .prevlink {
  padding: 10px;
}
.el_pageNav .listlink {
  padding: 10px 15px;
}

@media screen and (max-width: 480px) {
  #main.news {
    background: #fff url(assets/images/bg_news_sp_new@2x.jpg) center top no-repeat;
    background-size: 480px 300px;
    padding-top: 110px;
  }

  .el_pageTtl {
    font-size: 48px;
    margin-bottom: 60px;
  }

  .el_pageTtl .ja {
    font-size: 14px;
  }

  .el_pageTtl .ja:before,
  .el_pageTtl .ja:after {
    width: 19px;
  }

  .el_pageTtl .ja:before {
    margin-right: 10px;
  }

  .el_pageTtl .ja:after {
    margin-left: 10px;
  }
}
.el_newsConts {
  width: 90%;
  margin: 0 auto;
}
.el_newsConts .head {
  border-bottom: solid 1px #000;
  color: #000;
  font-size: 24px;
  font-weight: 700;
  padding-bottom: 15px;
}
.el_newsConts .date {
  font-size: 16px;
  font-weight: 500;
}
.el_newsConts .cat {
  font-size: 14px;
  color: #fff;
  background: #000;
  display: inline-block;
  margin: 0 15px;
  padding: 5px 10px;
}
.el_newsConts .body {
  width: 83%;
  margin: 0 auto;
  padding: 60px 0 90px;
}
.el_newsConts .body img {
  margin-bottom: 40px;
}
.el_newsConts .body p {
  font-size: 16px;
  line-height: 2;
}


@media screen and (max-width: 480px) {
  .el_newsConts {
    width: 89.3%;
  }
  .el_newsConts .head {
  }
  .el_newsConts .date {
  }
  .el_newsConts .cat {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 10px;
  }
  .el_newsConts .body {
    width: 100%;
    padding: 45px 0 60px;
  }
  .el_newsConts .body img {
    margin-bottom: 30px;
  }
  .el_newsConts .body p {
    font-size: 14px;
  }
}
