.ttlEn {display:inline-block; position:relative; margin:0 0 10px; padding:0 3px; font-size:20px; line-height:28px; color:#00457f; font-weight:bold; overflow:hidden; font-family:'Montserrat',sans-serif;}
.ttlEn::after {content:''; position:absolute; left:50%; bottom:0; width:100%; height:2px; background:#00457f; transform:translateX(-50%); transition:all 0.3s;}


/* HOME */
.hero {position:relative; width:100%; height:675px; background:url(../img/home/bg_hero.jpg) no-repeat 50% 50% / cover;}
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) { 
  .hero {background:url(../img/home/bg_hero@2x.jpg) no-repeat 50% 50% / cover;}
}

.hero_txt {position:absolute; top:calc((100% - 80px) / 2); left:50%; width:100%; color:#ffffff; text-align:center; transform:translate3d(-50%,-50%,0);}
.hero_ttl {text-align:center; font-weight:bold; font-size:4rem; line-height:6.4rem; letter-spacing:1px; white-space:nowrap;}
.hero_sub {margin:20px 0 0; font-weight:bold; font-size:2rem; white-space:nowrap;}
.hero_btn {position:absolute; bottom:80px; right:5px;}
@media screen and (max-width:1023px) {
  .hero {height:600px; background:url(../img/home/bg_hero_sp.jpg) no-repeat 50% 50% / cover;}
  .hero_txt {position:relative; top:50%; left:18px; width:calc(100% - 36px); transform:translateY(-70%);}
  .hero_ttl {font-size:24px; line-height:40px; letter-spacing:0;}
  .hero_sub {margin:20px 0 0; font-weight:bold; font-size:18px; line-height:1.4;}
  .hero_btn {max-width:378px; width:100%; bottom:70px; left:0; right:0; margin:0 auto;}
  .hero_recruite {display:flex; justify-content:center; align-items:center; position:absolute; bottom:88px; left:0; right:0; width:calc(100% - 36px); height:70px; margin:0 auto; border-radius:3px; color:#00457f; font-weight:bold; font-size:16px; background:#ffffff;}
  .hero_recruite img {width:31px; flex:0 0 31px; margin:0 10px 0 0;}
}



.update {position:absolute; bottom:0; left:0; width:100%; height:80px; background:rgba(255,255,255,0.9); overflow:hidden;}
.update_items {position:relative; width:970px; height:52px; margin:14px auto; padding:0 40px 0 0; overflow:hidden;}
.update_item {display:flex; justify-content:flex-start; align-items:center; position:absolute; left:0; height:52px; margin:0 40px 0 0; overflow:hidden; transition:all 0.5s;}
.update_item.prev {top:-52px;}
.update_item.current {top:0;}
.update_item.next {top:52px;}
.update_item span.new {margin:0 30px 0 0; color:#f6ad76; font-size:18px; font-weight:bold; font-family:'Montserrat',sans-serif;}
.update_item time {margin:0 25px 0 0; color:#000000; font-size:16px; font-weight:bold;}
.update_item .catTag {margin:0 25px 0 0;}
.update_item a {font-size:16px; letter-spacing:1px; line-height:26px; text-overflow:ellipsis;}
.update_arrow {display:block; position:absolute; right:calc(50% - 485px); width:8px; height:8px; border-top:solid 2px #dcdcdc; border-right:solid 2px #dcdcdc;}
.update_arrow.up {top:25px; transform:rotate(-45deg);}
.update_arrow.down {bottom:25px; transform:rotate(135deg);}
.update_arrow.act {border-top:solid 2px #808080; border-right:solid 2px #808080; cursor:pointer;}
@media screen and (max-width:1023px) {
  .update {position:absolute; bottom:0; left:0; width:100%; height:70px; padding:0 18px; background:rgba(255,255,255,0.9); overflow:hidden;}
  .update_items {width:100%; height:42px; margin:14px auto; padding:0 25px 0 0;}
  .update_item {display:flex; justify-content:flex-start; flex-wrap:wrap; align-items:center; width:100%; height:42px; margin:0; padding:0 25px 0 0; overflow:hidden; transition:left 0.5s;}
  .update_item.current {top:0; left:0; opacity:1;}
  .update_item.next {top:0; left:100%; opacity:0;}
  .update_item span.new {margin:0 8px 0 0; color:#f6ad76; font-size:16px;}
  .update_item time {margin:0 8px 0 0; color:#808080; font-size:14px;}
  .update_item .catTag {width:130px; flex:0 0 130px; margin:0; font-size:11px;}
  .update_item a {font-size:15px; letter-spacing:0; line-height:26px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
  .update_arrow.up {display:none;}
  .update_arrow.down {display:block; position:absolute; top:50%; right:18px; width:8px; height:8px; border-top:solid 2px #808080; border-right:solid 2px #808080; transform:translateY(-50%) rotate(45deg);}
}




.aboutBox {display:flex; position:relative; flex-wrap:wrap; align-items:flex-start; max-width:1120px; margin:140px auto;}
.aboutBox::after {content:''; display:block; position:absolute; bottom:0; right:calc((100vw - 100%) / 2 * -1); width:calc(100% + ((100vw - 100%) / 2)); height:260px; background:#f5f5f5; z-index:10;}
.about_doc {width:calc(100% - 520px); flex:1 1 calc(100% - 520px); padding:0 40px 0 0;}
.about_ttl {margin:0 0 30px; font-size:33px; font-weight:bold; line-height:52px; text-align:left;}
.about_text {font-size:1.6rem; line-height:2;}
.about_cap {margin:10px 0 0;}
.about_items {display:flex; justify-content:space-between; position:relative; width:100%; flex:0 0 100%; margin:140px 0 90px; z-index:50;}
.about_item {}
.about_item a {display:flex; align-items:flex-end; width:340px; height:340px; padding:15px 20px; transition:all 0.3s;}
.about_item.medical a {background:url(../img/home/btn_medical.jpg) no-repeat 50% 50% / cover;}
.about_item.net a {background:url(../img/home/btn_net.jpg) no-repeat 50% 50% / cover;}
.about_item.guide a {background:url(../img/home/btn_guide.jpg) no-repeat 50% 50% / cover;}
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and (   min--moz-device-pixel-ratio: 2),
only screen and (     -o-min-device-pixel-ratio: 2/1),
only screen and (        min-device-pixel-ratio: 2),
only screen and (                min-resolution: 192dpi),
only screen and (                min-resolution: 2dppx) { 
  .about_item.medical a {background:url(../img/home/btn_medical@2x.jpg) no-repeat 50% 50% / cover;}
  .about_item.net a {background:url(../img/home/btn_net@2x.jpg) no-repeat 50% 50% / cover;}
  .about_item.guide a {background:url(../img/home/btn_guide@2x.jpg) no-repeat 50% 50% / cover;}
}
@media screen and (min-width:1024px) {
  .about_item a:hover {opacity:0.5;}
}
.about_item span {display:flex; justify-content:space-between; align-items:center; width:100%; flex:0 0 100%; height:90px; color:#ffffff; font-size:28px; font-weight:bold; letter-spacing:1px; line-height:45px;}
.about_item span::after {content:''; width:34px; height:34px; border-top:solid 2px #ffffff; border-right:solid 2px #ffffff; transform:translateX(-25%) rotate(45deg);}

@media screen and (max-width:1023px) {
  .aboutBox {margin:60px 18px 20px;}
  .aboutBox::after {right:-18px; width:50vw; height:calc((100vw - 36px) * (480 / 678) * 3 + 140px);}
  .about_doc {width:100%; flex:1 1 100%; padding:0;}
  .about_ttl {margin:0 0 35px; font-size:28px; line-height:44px;}
  .about_text {font-size:16px; line-height:2;}
  .about_items {display:flex; justify-content:space-between; flex-direction:column; position:relative; width:100%; flex:0 0 100%; margin:70px 0 22px; z-index:50;}
  .about_item {margin:0 0 24px;}
  .about_item a {position:relative; align-items:center; width:100%; height:auto; padding:calc(100% * (480 / 678)) 0 0;}
  .about_item.medical a {background:url(../img/home/btn_medical_sp.jpg) no-repeat 50% 50% / cover;}
  .about_item.net a {background:url(../img/home/btn_net_sp.jpg) no-repeat 50% 50% / cover;}
  .about_item.guide a {background:url(../img/home/btn_guide_sp.jpg) no-repeat 50% 50% / cover;}
  .about_item span {position:absolute; justify-content:space-around; width:100%; height:100%; top:0; left:0; text-align:center; letter-spacing:0;}
  .about_item span::after {position:absolute; width:17px; height:17px; right:35px; transform:translateX(-25%) rotate(45deg);}
}



.jadecom {padding:100px 0; background:#f5f5f5;}
.jadecom_ttl {margin:0 0 50px; font-size:33px; font-weight:bold; line-height:52px; text-align:center;}
.jadecom_items {display:flex; justify-content:center;}
.jadecom_item {margin:0 17px; text-align:center;}
.jadecom_item a {display:block;}
.jadecom_item img {display:block; margin:0 0 20px;}
.jadecom_item span {display:inline-block; position:relative; padding:0 2rem 0 0; font-size:1.6rem;}
.jadecom_item span::before {content:''; display:block; position:absolute; top:0.3rem; right:0; width:1.1rem; height:0.9rem; border:solid 1px #808080;}
.jadecom_item span::after {content:''; display:block; position:absolute; top:0.5rem; right:0.2rem; width:1.1rem; height:0.9rem; border-bottom:solid 1px #808080; border-left:solid 1px #808080;}

@media screen and (max-width:1023px) {
  .jadecom {background:#ffffff; padding:30px 0;}
  .jadecom_ttl {margin:0 0 40px; font-size:28px; line-height:44px;}
  .jadecom_items {flex-direction:column;}
  .jadecom_item {margin:0 18px 35px;}
  .jadecom_item img {margin:0 0 15px;}
}




.newsBox {display:flex; position:relative; flex-wrap:wrap; justify-content:space-between; align-items:flex-start; max-width:1120px; margin:140px auto;}
.news_ttlBox {width:230px; flex:0 0 230px;}
.news_ttl {margin:0 0 30px; font-size:33px; font-weight:bold; line-height:40px; text-align:left;}
.news_ttl .ttlEn {}
.news_items {width:calc(100% - 230px); flex:1 1 calc(100% - 230px); margin:-10px 0 0;}
.news_item {width:100%; padding:25px 0; border-bottom:solid 1px rgba(113,176,169,0.5);}
.news_item div {display:flex; justify-content:flex-start; align-items:center; margin:0 0 15px;}
.news_item time {margin:0 20px 0 0; font-size:1.6rem; color:#808080; font-weight:600; font-family:'Montserrat',sans-serif;}
.news_item span {}
.news_item a {font-size:1.6rem; line-height:2;}
.news_link {position:relative; margin:40px 0 0 auto; padding:0 25px 0 0; font-size:1.8rem; font-weight:bold;}
.news_link::after {content:''; position:absolute; top:50%; right:0; display:block; width:10px; height:10px; border-top:solid 2px #342c2b; border-right:solid 2px #342c2b; transform:translateY(-50%) rotate(45deg);}
@media screen and (min-width:1024px) {
  .news_link:hover {opacity:0.5;}
}

@media screen and (max-width:1023px) {
  .newsBox {flex-direction:column; margin:0 0 25px; background:#f5f5f5;}
  .news_ttlBox {width:100%; flex:0 0 100%;}
  .news_ttl {margin:60px 0 0; font-size:28px; line-height:40px; text-align:center;}
  .news_items {width:calc(100% - 36px); flex:1 1 calc(100% - 36px); margin:0 auto;}
  .news_item {border-bottom:solid 1px rgba(128,128,128,0.15);}
  .news_item a {line-height:1.6;}
  .news_item time {margin:0 10px 0 0;}

  .news_link {display:flex; justify-content:space-around; align-items:center; width:calc(100% - 76px); height:52px; margin:20px auto 40px; padding:0; border-radius:2px; font-size:16px; text-align:center; color:#ffffff; background:#00457f;}
  .news_link::after {right:50%; border-top:solid 2px #ffffff; border-right:solid 2px #ffffff; transform:translate(80px,-50%) rotate(45deg);}

}



