

/* -----------------------------------------------------------
　common
----------------------------------------------------------- */
html {font-size:62.5%;}
* {box-sizing:border-box;}
img {max-width:100%;}
.fcred {color:#FF0000;}
.fwbold {font-weight:bold;}
.left {float:left;}
.right {float:right;}
.center {text-align:center;}
.clear {clear: both;}
.italic {font-style:italic;}
hr.anc {
  border:none;
  height:0;
  padding:120px 0 0;
  margin:-120px 0 0;
}

a {
  color:inherit;
  text-decoration:none;
}

body {
  font-family: "Microsoft YaHei", "Arial";sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-size:1.6rem;
  line-height:1.78;
  color:#231815;
} 

.roboto {font-family:'Roboto', sans-serif;}
.roboto_c {font-family:'Roboto Condensed', sans-serif;}

@media screen and (min-width: 768px){ 

  .sp_cont {display:none;} 
  
}

a:hover {
  text-decoration:underline;
  color:inherit;
}
  
.hover_btn {transition:0.5s;opacity:1;}
.hover_btn:hover {transition:0.5s;opacity:0.75;}


/* -----------------------------------------------------------
  template
----------------------------------------------------------- */
 
/* :::::::::: header :::::::::: */
  
header {
  position:fixed;
  width:100%;
  height:120px;
  padding:28px 40px;
  background:#FFFFFF;
  z-index:10;
  top:0;
  left:0;
  right:0;
  transition:background 0.5s;
}
/*
header.home {background:none;}
*/
.header_entry {
  position:absolute;
  width:144px;
  height:56px;
  line-height:56px;
  margin:auto;
  top:0;
  bottom:0;
  right:40px;
}
.header_entry::before {
  position:absolute;
  display:block;
  content:"";
  width:20px;
  height:1px;
  background:#FFFFFF;
  margin:auto;
  top:0;
  bottom:0;
  right:0;
}
.header_entry a {
  display:block;
  width:100%;
  height:100%;
  font-family:'Roboto', sans-serif;
  font-size:2.1rem;
  font-weight:900;
  color:#FFFFFF;
  text-align:center;
  background:#006AB7;
  text-decoration:none;
  transition:0.5s;
}
.header_entry a:hover {background:#00B4ED;}
  
/* :::::::::: nav :::::::::: */
  
nav {
  position:fixed;
  width:100%;
  z-index:10;
  top:0;
}
nav .menu,
nav .menu_title,
nav .menu_entry,
nav .menu_career {display:none;}
nav .main_nav {
  position:absolute;
  display:block;
  width:auto;
  top:28px;
  right:180px;
  z-index:5;
}
nav .main_nav > li {
  display:inline-block;
  margin:0 30px 0 0;
}
nav .main_nav > li > p {
  position:relative;
  height:56px;
  line-height:56px;
  font-weight:500;
  font-size:1.7rem;
  color:#006AB7;
  cursor:pointer;
}
nav .main_nav > li > p::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:4px;
  background:#006AB7;
  transition:0.25s;
  transform:scaleX(0);
  transform-origin: left bottom;
  bottom:0;
}
nav .main_nav > li.active > p::after {
  transform:scaleX(1);
  transform-origin: right bottom;
}
nav .main_nav > li p a {text-decoration:none;}
nav .main_nav > li > div {
  position:fixed;
  width:100vw;
  height:150px;
  color:#FFFFFF;
  padding:35px 40px;
  background:#006AB7;
  left:0;
  top:120px;
  opacity:0;
  visibility:hidden;
  transition:0.5s;
}
nav .main_nav > li.active > div {
  opacity:1;
  visibility:visible;
}
nav .main_nav > li > div div {
  width:780px;
  height:80px;
  margin:0 auto;
}
nav .main_nav > li > div div p {
  display:table;
  width:220px;
  height:80px;
  font-size:2.4rem;
  font-weight:500;
  line-height:1.5;
  margin:0 40px 0 0;
  float:left;
  border-right:solid 1px #FFFFFF;
}
nav .main_nav > li > div div p span {
  display:table-cell;
  vertical-align:middle;
}
nav .main_nav > li > div div ul {
  display:block;
  width:520px;
  float:left;
}
nav .main_nav > li > div div ul li {
  width:50%;
  font-size:1.5rem;
  line-height:40px;
  float:left;
}
nav .main_nav > li > div div ul li a {
  position:relative;
  padding:0 0 0 15px;
  opacity:1;
  transition:0.5s;
}
nav .main_nav > li > div div ul li a::before {
  position:absolute;
  display:block;
  content:"";
  width:4px;
  height:4px;
  border-top:solid 2px #FFFFFF;
  border-right:solid 2px #FFFFFF;
  margin:auto;
  top:0;
  bottom:0;
  left:0;
  transform:rotate(45deg);
}
nav .main_nav > li > div div ul li a:hover {opacity:0.5;}
nav .sub_nav {display:none;}

/* :::::::::: main :::::::::: */
  
main {
  display:block;
  width:100%;
  height:auto;
  min-height:65vh;
  margin:120px 0 0;
}
main.home {
  margin:0;
  opacity:1;
  transition:0.5s;
}
main.home.hidden {opacity:0;}
main article {
  width:100%;
  height:auto;
  overflow:hidden;
  margin:0 auto;
}
.breadcrumbs {
  width:100%;
  max-width:1080px;
  margin:0 auto 10px;
  padding:20px 40px 0;
}
.breadcrumbs > span {
  font-size:1.4rem;
  color:#727171;
}
.breadcrumbs > span::after {
  content:"/";
  margin:0 0.5em;
}
.breadcrumbs > span:nth-last-of-type(1)::after {content:none;}
.view_box {
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
}
.view_box:after {
  content: "";
  clear: both;
  display: block;
}
.box {
  width:100%;
  max-width:1080px;
  margin:0 auto;
  padding:0 40px;
}
.btn_common {
  position:relative;
  width:126px;
  height:32px;
  line-height:32px!important;
  font-family:'Roboto', sans-serif;
  font-weight:500;
  text-align:center;
  border:solid 2px #006AB7;
  z-index:0;
}
.btn_common::before ,
.btn_common::after {
  position:absolute;
  display:block;
  content:"";
  margin:auto;
  top:0;
  bottom:0;
}
.btn_common::before {
  width:2px;
  height:6px;
  background:#FFFFFF;
  right:-2px;
  z-index:1;
}
.btn_common::after {  
  width:24px;
  height:2px;
  background:#006AB7;
  right:-13px;
  z-index:2;
}
.btn_common.btn_w {border:solid 2px #FFFFFF;}
.btn_common.btn_w::before {background:#006AB7;}
.btn_common.btn_w::after {background:#FFFFFF;}
.btn_common a {
  position:relative;
  display:block;
  width:100%;
  height:100%;
  text-decoration:none;
  color:#006AB7;
  z-index:0;
}
.btn_common.btn_w a {color:#FFFFFF;}
.btn_common a::after {
  position:absolute;
  display:block;
  content:"";
  width:0;
  height:100%;
  background:#00B4ED;
  transition:0.5s;
  left:0;
  top:0;
  z-index:-1;
} 
.btn_common a:hover::after {width:100%;}
.list_box {
  margin:0 auto 40px;
  overflow:hidden;
}
.list_box li {
  width:48%;
  margin:0 4% 4% 0;
  float:left;
}
.list_box li:nth-child(even) {margin:0 0 4%;}
.list_box li a {text-decoration:none;}
.list_box li a figure {overflow:hidden;}
.list_box li a figure img {
  display:block;
  width:100%;
  transform:scale(1);
  transition:0.5s;
}
.list_box li a:hover figure img  {transform:scale(1.1);}
.list_box li p {
  position:relative;
  width:100%;
  padding:20px 70px 20px 20px;
  font-size:1.8rem;
  line-height:24px;
  color:#FFFFFF;
  font-weight:500;
  background:#006AB7;
  z-index:1;
  bottom:0;
  left:0;
  transition:0.5s;
}
.list_box li p::after {
  position:absolute;
  display:block;
  content:"";
  width:38px;
  height:9px;
  background:url(../image/arrow.png) no-repeat center / cover;
  z-index:1; 
  margin:auto;
  top:0;
  bottom:0;
  right:20px;
  transition:0.5s;
}
.list_box li:hover p::after {right:10px;}
.entry_area {
  width:100%;
  padding:60px 40px;
  background:#DFF2FC;
  clear:both;
}
.common_entry {
  width:100%;
  max-width:1000px;
  height:56px;
  margin:0 auto;
  line-height:56px;
}
.common_entry a {
  display:block;
  width:100%;
  height:100%;
  font-family:'Roboto', sans-serif;
  font-size:2.1rem;
  font-weight:900;
  color:#FFFFFF;
  text-align:center;
  background:#006AB7;
  text-decoration:none;
  transition:0.5s;
}
.common_entry a:hover {background:#00B4ED;}

/* :::::::::: footer :::::::::: */
  
footer {
  width:100%;
  padding:30px 40px;
  background:#4D4C4D;
}
footer .career_nav {
  position:fixed;
  width:50px;
  right:0;
  top:160px;
  z-index:20;
  background:#00A9AC;
  transition:0.5s;
}
footer .career_nav:hover {
  width:60px;
}
footer .career_nav img {display:block;}
footer .pagetop {
  position:fixed;
  width:80px;
  height:80px;
  right:0;
  bottom:120px;
  z-index:20;
  cursor:pointer;
}
footer .pagetop img.pc_cont {display:block;}
footer .footer_box {
  position:relative;
  width:100%;
  max-width:1200px;
  min-height:60px;
  margin:0 auto;
  overflow:hidden;
}
footer .footer_box .f_logo {
  position:absolute;
  left:0;
  top:0;
}
footer .footer_box .f_logo img {display:block;}
footer .footer_box ul {
  position:absolute;
  display:inline-block;
  color:#ECEDED;
  right:0;
  top:20px;
}
footer .footer_box ul li {
  display:inline-block;
  font-size:1.3rem;
  margin:0 0 0 20px;
}
footer .footer_box ul li a::after {
  display:inline-block;
  content:"";
  width:14px;
  height:10px;
  margin:0 0 0 5px;
  background:url(../image/bg_target.png) no-repeat center /cover;
}
footer .footer_box .copyright {
  font-size:1.2rem;
  color:#959596;
  margin:25px 0 0;  
  text-align:center;
}

@media screen and (max-width:1000px){ 
  footer .footer_box .f_logo {
    position:static;
    float:left;
    margin:0 0 20px;
  }
  footer .footer_box ul {
    position:static;
    margin:20px 0 0;
    float:right;
  }
  footer .footer_box .copyright {
    clear:both;
  }
}

/* -----------------------------------------------------------
 subpage
----------------------------------------------------------- */

.title_archive {
  width:100%;
  height:200px;
  padding:0 40px;
  margin:45px 0 90px;
  background:#006AB7;
}
.title_archive > div {
  display:flex;
  align-items: center;
  width:100%;
  max-width:1000px;
  height:100%;
  margin:0 auto;
}
.title_archive figure {
  width:60%;
  margin:0 3% 0 0;
}
.title_archive figure img {
  display:block;
  width:100%;
}
.title_archive > div > div {width:37%;}
.title_archive > div > div h1 {
  font-size:3rem;
  font-weight:700;
  line-height:1.2;
  color:#FFFFFF;
}
.title_page {
    display: flex;
    align-items: center;
    width: 100%;
    height: 150px;
    padding: 0 40px;
    margin: 0 0 40px;
    background: url(/temp/main/srcl/images/bg_title_pc.jpg) no-repeat center / auto 100%;
}
.title_page .p_title {
  width:100%;
  font-size:3.5rem;
  font-weight:700;
  line-height:1.2;
  color:#006AB7;
  text-align:center;
}
.editor_contents {margin:0 auto 70px;}
.editor_contents hr.clear {
  border:none;
  height:0;
  padding:0;
  margin:0;
  width:100%;
  clear:both;
}
.editor_contents h1 {
  width:100%;
  font-size:3rem;
  font-weight:700;
  line-height:1.5;
  margin:20px 0 40px;
  padding:10px 0;
  border-top:solid 1px #221714;
  border-bottom:solid 1px #221714;
  clear:both;
}
.editor_contents h2 {
  position:relative;
  width:100%;
  font-size:2.8rem;
  font-weight:700;
  line-height:1.5;
  margin:50px 0 40px;
  padding:0 0 15px;
  z-index:0;
  clear:both;
}
.editor_contents h2::before ,
.editor_contents h2::after {
  position:absolute;
  display:block;
  content:"";
  width:200px;
  height:4px;
  bottom:0;
  z-index:0;
}
.editor_contents h2::before {
  background:#006AB7;
  left:0;
}
.editor_contents h2::after {
  left:200px;
  background:#00AAEB;
}
.editor_contents h3 {
  position:relative;
  width:100%;
  font-size:2.6rem;
  font-weight:500;
  line-height:1.5;
  margin:50px 0 30px;
  padding:0.3em 1em;
  background:#E6F4FD;
  z-index:0;
  clear:both;
}
.editor_contents h3::before ,
.editor_contents h3::after {
  position:absolute;
  display:block;
  content:"";
  width:0;
  height:0;
  top:0;
  left:0;
  z-index:1;
}
.editor_contents h3::before {
  border-left:solid 16px #FFFFFF;
  border-bottom:solid 16px transparent;
}
.editor_contents h3::after {
  border-right:solid 16px #00AAEB;
  border-top:solid 16px transparent;
}
.editor_contents h4 {
  position:relative;
  width:100%;
  font-size:2.6rem;
  font-weight:500;
  line-height:1.5;
  margin:50px 0 20px;
  padding:0 0 10px;
  z-index:0;
  clear:both;
}
.editor_contents h4::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:4px;
  bottom:0;
  left:0;
  background:-webkit-linear-gradient(left,  #006AB7 0%,#00AED6 50%,#00A9AC 100%);
  background:linear-gradient(to right,  #006AB7 0%,#00AED6 50%,#00A9AC 100%);
  z-index:0;
}
.editor_contents h5 {
  position:relative;
  width:100%;
  font-size:2.2rem;
  font-weight:500;
  line-height:1.5;
  margin:40px 0 20px;
  padding:0 0 0 20px;
  z-index:0;
  clear:both;
}
.editor_contents h5::after {
  position:absolute;
  display:block;
  content:"";
  width:4px;
  height:22px;
  top:6px;
  left:0;
  background:#00AAEB;
  z-index:0;
}
.editor_contents h2 a,
.editor_contents h3 a,
.editor_contents h4 a,
.editor_contents h5 a {color:#006AB7;}

.editor_contents p {
  margin:0 0 1em;
  line-height:2;
}
.editor_contents p a {
  color:#006AB7;
  text-decoration:underline;
}
.editor_contents p a:hover {opacity:0.5;}
.editor_contents table {
  width: auto;
  height: auto;
  margin:0 0 1em;
  max-width: 100%;
  clear:both;
}
.editor_contents table {
  width:auto;
  margin:0 0 20px;
}
.editor_contents table th {
  padding:10px;
  background:#DFF2FC;
  border:solid 1px #9A9B9B;
  font-weight:normal;
}
.editor_contents table td {
  padding:10px;
  border:solid 1px #9A9B9B;
}

.editor_contents .h_table table tr:nth-of-type(1) th ,
.editor_contents .h_table table tr:nth-of-type(1) td {
  color:#FFFFFF;
  background:#00AAEB;
}
.editor_contents .caption {display:none;}
.editor_contents ul {
  list-style-type:none;
  margin:0 0 1em;
} 
.editor_contents ul li {
  position:relative;
  padding:0 0 0 1em;
  margin:0 0 0.5em;
  z-index:0;
}
.editor_contents ul li::before { 
  position:absolute;
  display:block;
  content:"";
  width:4px;
  height:4px;
  background:#005EAD;
  border-radius:50%;
  left:0;
  top:0.75em;
  z-index:0;
}
.editor_contents .anc_list {
  width:100%;
  clear:both;
  background:#E6F4FD;
  padding:1em;
  margin:0 0 40px;
}
.editor_contents .anc_list li {
  display:inline-block;
  color:#006AB7;
  margin:0.5em 2em 0.5em 0;
}
.editor_contents .anc_list li::before { 
  width:4px;
  height:4px;
  border-top:solid 2px #005EAD;
  border-right:solid 2px #005EAD;
  background:none;
  border-radius:0%;
  left:0;
  top:0.65em;
  transform:rotate(135deg);
  z-index:0;
}
.editor_contents .link_list li {font-size:1.6rem;} 
.editor_contents .link_list li::before { 
  position:absolute;
  display:block;
  content:"";
  width:4px;
  height:4px;
  border-top:solid 2px #005EAD;
  border-right:solid 2px #005EAD;
  background:none;
  border-radius:0%;
  left:0;
  top:0.75em;
  transform:rotate(45deg);
  z-index:0;
}
.editor_contents .link_list li a {color:#005EAD;}
.editor_contents .link_list li a::after {
  display:inline-block;
  vertical-align:middle;
  content:"";
  margin:0 0 0 5px;
}
.editor_contents .link_list li a[target="_blank"]::after {
  width:20px;
  height:15px;
  background:url(../image/bg_blank.png) no-repeat center / cover;
}
.editor_contents .link_list li a[href$=".pdf"]::after {
  width:22px;
  height:19px;
  background:url(../image/bg_pdf.png) no-repeat center / cover;
}
.editor_contents .link_list li a[href$=".doc"]::after ,
.editor_contents .link_list li a[href$=".docx"]::after {
  width:21px;
  height:20px;
  background:url(../image/bg_word.png) no-repeat center / cover;
}
.editor_contents .link_list li a[href$=".xlsx"]::after ,
.editor_contents .link_list li a[href$=".xls"]::after {
  width:21px;
  height:20px;
  background:url(../image/bg_excel.png) no-repeat center / cover;
}
.editor_contents .btn_link a {
  display:inline-block;
  width:auto;
  height:100%;
  line-height:1.3;
  font-size:1.6rem;
  text-align:center;
  border:solid 2px #006AB7;
  color:#006AB7;
  padding:0.3em 2em;
  text-decoration:none;
  transition:0.5s;
}
.editor_contents .btn_link a:hover {
  opacity:1;
  color:#FFFFFF;
  background:#006AB7;
}
.editor_contents .btn_link a::after {
  display:inline-block;
  vertical-align:baseline;
  content:"〉";
  margin:0 0 0 10px;
}
.editor_contents .btn_link a[target="_blank"]::after {
  vertical-align:middle;
  content:"";
  width:20px;
  height:15px;
  margin:0 0 0 5px;
  background:url(../image/bg_blank.png) no-repeat center / cover;
}
.editor_contents .btn_link a[target="_blank"]:hover::after {background:url(../image/bg_blank_hover.png) no-repeat center / cover;}
.editor_contents .btn_link a[href$=".pdf"] {
  border:solid 2px #BE0D23;
  color:#BE0D23;
}
.editor_contents .btn_link a[href$=".pdf"]:hover {
  color:#FFFFFF;
  background:#BE0D23;
}
.editor_contents .btn_link a[href$=".pdf"]::after {
  width:22px;
  height:19px;
  background:url(../image/bg_pdf.png) no-repeat center / cover;
}
.editor_contents .btn_link a[href$=".pdf"]:hover::after {
  width:20px;
  height:19px;
  background:url(../image/bg_pdf_hover.png) no-repeat center / cover;
}
.editor_contents .btn_link a[href$=".docs"] ,
.editor_contents .btn_link a[href$=".doc"] {
  border:solid 2px #003980;
  color:#003980;
}
.editor_contents .btn_link a[href$=".docs"]:hover ,
.editor_contents .btn_link a[href$=".doc"]:hover {
  color:#FFFFFF;
  background:#003980;
}
.editor_contents .btn_link a[href$=".docs"]::after ,
.editor_contents .btn_link a[href$=".doc"]::after {
  width:21px;
  height:20px;
  background:url(../image/bg_word.png) no-repeat center / cover;
}
.editor_contents .btn_link a[href$=".docs"]:hover::after ,
.editor_contents .btn_link a[href$=".doc"]:hover::after {
  width:21px;
  height:20px;
  background:url(../image/bg_word_hover.png) no-repeat center / cover;
}
.editor_contents .btn_link a[href$=".xlsx"] ,
.editor_contents .btn_link a[href$=".xls"] {
  border:solid 2px #006934;
  color:#006934;
}
.editor_contents .btn_link a[href$=".xlsx"]:hover ,
.editor_contents .btn_link a[href$=".xls"]:hover {
  color:#FFFFFF;
  background:#006934;
}
.editor_contents .btn_link a[href$=".xlsx"]::after ,
.editor_contents .btn_link a[href$=".xls"]::after {
  width:21px;
  height:20px;
  background:url(../image/bg_excel.png) no-repeat center / cover;
}
.editor_contents .btn_link a[href$=".xlsx"]:hover::after ,
.editor_contents .btn_link a[href$=".xls"]:hover::after {
  width:21px;
  height:20px;
  background:url(../image/bg_excel_hover.png) no-repeat center / cover;
}
.editor_contents ol {
  list-style-type:decimal;
  margin:0 0 1em 1.5em;
} 
.editor_contents .btn_all a {
  display:inline-block;
  width:auto;
  height:34px;
  line-height:28px;
  font-size:1.6rem;
  text-align:center;
  border:solid 2px #006AB7;
  color:#006AB7;
  padding:0 2em;
  text-decoration:none;
  transition:0.5s;
}
.editor_contents .btn_all a:hover {
  opacity:1;
  color:#FFFFFF;
  background:#006AB7;
}
.editor_contents .btn_all a::before {
  display:inline-block;
  vertical-align:baseline;
  content:"〈";
  margin:0 10px 0 0;
}
.editor_contents .bg_box {
  background:#DFF2FC;
  padding:20px;
  margin:40px auto;
}
.editor_contents .bg_box > *:nth-child(1) {margin-top:0!important;}

.editor_contents .bg_box > *:nth-last-child(1) {margin-bottom:0!important;}
.editor_contents .map_box {
  position:relative;
  width:100%;
  height:0;
  padding:60% 0 0;
  margin:50px auto;
  z-index:0;
}
.editor_contents .map_box iframe {
  position:absolute;
  width:100%;
  height:100%;
  top:0;
  left:0;
  right:0;
  z-index:0;
}

/* img */
.aligncenter {
  display:block;
  margin:2em auto;
  text-align:center;
}
.alignright {float:right;margin:0 0 1.5em 1.5em; }
.alignleft {float:left;margin:0 1.5em 1.5em 0; }
img[class*="wp-image-"],
img[class*="attachment-"] {
  height:auto;
  max-width:100%;
}
.editor_contents figure,
.editor_contents ul,
.editor_contents ol,
.editor_contents dl,
/*.editor_contents table,*/
.editor_contents img,
.editor_contents div,
.editor_contents p {
  max-width:100%;
  height:auto;
}
.editor_contents iframe {
  max-width:100%;
}
.gallery {margin:40px 0 40px!important;}
.gallery-item {float:left;}
.gallery-columns-2 .gallery-item {
  width:48%!important;
  margin:0 4% 0 0!important;
}
.gallery-columns-2 .gallery-item:nth-last-of-type(1) {margin:0!important;}
.gallery-columns-3 .gallery-item {
  width:32%!important;
  margin:0 2% 0 0!important;
}
.gallery-columns-3 .gallery-item:nth-last-of-type(1) {margin:0!important;}
.gallery-icon img {border:none!important;}
.gallery-caption {text-align:left;}

/** FAQ **/

dl.faq {
  margin:50px auto;
  border-bottom:solid 1px #006AB7;
}
dl.faq dt {
  position:relative;
  font-size:2.2rem;
  font-weight:500;
  line-height:1.5;
  color:#006AB7;
  padding:0.5em 2em 0.5em 1.2em;
  border-top:solid 1px #006AB7;
  cursor:pointer;
  z-index:0;
}
dl.faq dt::before {
  position:absolute;
  content:"Q.";
  left:0;
  top:0.5em;
  z-index:0;
}
dl.faq dt span {
  position:absolute;
  width:26px;
  height:26px;
  background:#AFD2E3;
  border-radius:50%;
  top:15px;
  right:0;
  z-index:0;
}
dl.faq dt span::before,
dl.faq dt span::after {
  position:absolute;
  display:block;
  content:"";
  background:#005EAD;
  margin:auto;
  top:0;
  bottom:0;
  left:0;
  right:0;
}
dl.faq dt span::before {
  width:16px;
  height:2px;
}
dl.faq dt span::after {
  width:2px;
  height:16px;
}
dl.faq dt.open span::after {display:none;}
dl.faq dd {
  display:none;
  padding:0 0 1em;
  line-height:1.7;
}
dl.faq dd .link_list {margin:1em 0 0;}

/** form **/

.entry_form dt {
  font-size:1.6rem;
  font-weight:500;
  margin:0 0 20px;
  clear:both;
}
.entry_form dt::before {
  content:"■ ";
  color:#006AB7;
}
.entry_form dt span {
  display:inline-block;
  line-height:1.2;
  margin:0 0 0 1em;
  padding:0 0.5em;
  color:#C00D23;
  border:solid 1px #C00D23;
  border-radius:4px;
}
.entry_form dd {
  font-size:1.6rem;
  margin:0 0 50px;
  clear:both;
  overflow:hidden;
}
.entry_form dd *::placeholder {color:#727171;}
.entry_form dd input[type="text"] ,
.entry_form dd input[type="email"] ,
.entry_form dd input[type="tel"] ,
.entry_form dd textarea {
  font-family: 'Noto Sans JP',"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width:100%;
  padding:1em;
  background:#ECECEC;
  margin:0 0 10px;
}
.entry_form dd textarea {
  min-height:150px;
}
.entry_form dd input[type="text"].zip {width:160px;}
input[type="submit"] { 
  display:inline-block;
  font-family: 'Noto Sans JP',"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  width:100%;
  max-width:340px;
  margin:0 20px 20px;
  height:36px;
  line-height:36px;
  color:#FFFFFF;
  border-radius:18px;
  background:#006AB7;
  transition:0.5s;
  cursor:pointer;
}
input[type="submit"]:hover {background:#00AAEB;}
input[type="submit"].btn_back {background:#898989;}
input[type="submit"].btn_back:hover {opacity:0.5;}
.mw_wp_form_confirm .zip span {display:none;}
.mw_wp_form_confirm .mail_confirm {display:none;}
.mw_wp_form_confirm .confirm_hidden {display:none;}
.thanks_title {
  font-size:2.8rem;
  font-weight:500;
  margin:0 auto 40px;
  letter-spacing:0.2em;
}
.thanks_title + p {margin:0 auto 40px;}

/** feature **/

.feature_box {margin:70px auto 40px;}
.feature_box > section {
  width:48%;
  margin:0 4% 60px 0;
  float:left;
}
.feature_box > section:nth-of-type(odd) {clear:both;}
.feature_box > section:nth-of-type(even) {margin:0 0 60px;}
.feature_box > section h2 {margin:0 auto 30px;}
.feature_box > section h2 img {display:block;}
.feature_box > section dl dt {
  position:relative;
  font-size:2.2rem;
  font-weight:500;
  line-height:1.5;
  margin:0 0 20px;
  padding:0 0 0 15px;
  z-index:0;
}
.feature_box > section dl dt::before {
  position:absolute;
  display:block;
  content:"";
  width:4px;
  height:22px;
  background:#00A9EA;
  top:7px;
  left:0;
}

/* -----------------------------------------------------------
 Single/Archive
----------------------------------------------------------- */

.news_list {
  width:100%;
  border-top:solid 1px #9CA9B0;
  overflow:hidden;
}
.news_list li {
  font-size:0;
  padding:10px 0;
  overflow:hidden;
  border-bottom:solid 1px #9CA9B0;
}
span.news_date {
  display:inline-block;
  width:105px;
  font-size:1.4rem;
  color:#006AB7;
  margin:0 10px 5px 0;
  vertical-align:middle;
}
span.news_cat {
  display:inline-block;
  width:auto;
  min-width:120px;
  line-height:1.2;
  margin:0 10px 5px 0;
  padding:0.5em 10px;
  font-size:1.3rem;
  background:#CCCCCC;
  color:#FFFFFF;
  text-align:center;
  vertical-align:middle;
}
.cat_news_new-graduate-rec {background:#006AB7!important;}
.cat_news_mid-career-rec {background:#0099A5!important;}
.cat_news_event {background:#009CE5!important;}
.cat_news_internship {background:#008D64!important;}

.box h1.category_title {
  position:relative;
  width:100%;
  font-size:2.8rem;
  font-weight:700;
  line-height:1.5;
  margin:0 0 40px;
  padding:0 0 15px;
  z-index:0;
  clear:both;
}
.box h1.category_title::before ,
.box h1.category_title::after {
  position:absolute;
  display:block;
  content:"";
  width:200px;
  height:4px;
  bottom:0;
  z-index:0;
}
.box h1.category_title::before {
  background:#006AB7;
  left:0;
}
.box h1.category_title::after {
  left:200px;
  background:#00AAEB;
}

.news_list li p {
  display:block;
  width:100%;
  font-size:1.6rem;
  vertical-align:top;
}
.news_list li p a:hover {
  opacity:0.5;
  transition:0.5s;
}
.select_outer {
  position:relative;
  display:inline-block;
  width:275px;
  height:40px;
  margin:0 15px 30px 0;
  z-index:0;
}
.select_outer::after {
  position:absolute;
  display:block;
  content:"";
  width:40px;
  height:40px;
  background:url(../image/select_outer.jpg) no-repeat center / cover;
  top:0;
  right:0;
  z-index:0;
  pointer-events:none;
}
.select_outer select {
  width:100%;
  height:100%;
  background:#ECECEC;
  font-family: 'Noto Sans JP',"ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color:#9FA0A0;
  padding:10px;
}
.select_outer select option {color:#231815;}
.pagenation {
  position:relative;
  width:100%;
  padding:20px 120px;
  margin:0 auto 50px;
  border-bottom:solid 1px #9CA9B0;
  text-align:center;
  clear:both;
}
.pagenation .wp-pagenavi > a, 
.pagenation .wp-pagenavi > span {
  display:inline-block;
  width:30px;
  height:30px;
  color:#727171;
  margin:5px 10px;
  vertical-align:middle;
  text-decoration:none;
}
.pagenation .wp-pagenavi > a:hover, 
.pagenation .wp-pagenavi > span.current {
  color:#006AB7;
  border-bottom:solid 2px #006AB7;
}
.pagenation .wp-pagenavi > a.previouspostslink,
.pagenation .wp-pagenavi > a.nextpostslink {
  position:absolute;
  width:80px;
  margin:auto;
  top:0;
  bottom:0;
}
.pagenation .wp-pagenavi > a.nextpostslink {right:20px;}
.pagenation .wp-pagenavi > a.previouspostslink {left:20px;}
.pagenation .wp-pagenavi > a.nextpostslink::before {
  position:absolute;
  right:-20px;
  content:"→";
}
.pagenation .wp-pagenavi > a.previouspostslink::after {
  position:absolute;
  left:-20px;
  content:"←";
}
.interview_single .pagenation .wp-pagenavi > a.nextpostslink {
  left:20px;
  right:auto;
}
.interview_single .pagenation .wp-pagenavi > a.previouspostslink {
  right:20px;
  left:auto;
}
.interview_single .pagenation .wp-pagenavi > a.nextpostslink::before {
  position:absolute;
  right:auto;
  left:-20px;
  content:"←";
}
.interview_single .pagenation .wp-pagenavi > a.previouspostslink::after {
  position:absolute;
  left:auto;
  right:-20px;
  content:"→";
}

/** interview **/

.interview .title_axis {margin:0 auto 80px;}
.interview .select_outer {margin:0 15px 50px 0;}
.interview_list {
  position:relative;
  margin:0 auto 80px;
  /*z-index:0; */
}
.interview_list::before {
  position:absolute;
  display:block;
  content:"";
  width:100vw;
  height:380px;
  background: -moz-linear-gradient(left,  #F4F7FF 0%, #F4F7FF 0%, #D9ECF6 55%, #B0DDF6 100%); 
  background: -webkit-linear-gradient(left,  #F4F7FF 0%,#F4F7FF 0%,#D9ECF6 55%,#B0DDF6 100%); 
  background: linear-gradient(to right,  #F4F7FF 0%,#F4F7FF 0%,#D9ECF6 55%,#B0DDF6 100%); 
  margin:auto;
  left:-100vw;
  right:-100vw;
  bottom:0;
  z-index:-1;
}
.interview_list::after {
  content: "";
  clear: both;
  display: block;
}
.interview_list > li {
  width:32%;
  margin:0 2% 0 0;
  float:left;
}
.interview_list > li:nth-child(3n) {margin:0;}
.interview_list > li:nth-child(3n+1) {clear:both;}
.interview_list li a {text-decoration:none;}
.interview_list li figure {
  position:relative;
  height:0;
  padding:127.5% 0 0;
  margin:0 0 30px;
  overflow:hidden;
  z-index:0;
}
.interview_list li figure img {
  position:absolute;
  width:100%;
  left:0;
  top:0;
  z-index:1;
}
.interview_list li figure img:nth-of-type(1) {
  opacity:1;
  transition:0.5s;
  z-index:2;
}
.interview_list li:hover figure img:nth-of-type(1) {opacity:0;}
.interview_list li a > div {
  min-height:120px;
  opacity:1;
  transition:0.5s;
}
.interview_list li a:hover > div {opacity:0.5;}
.interview_list li .depart {
  color:#006AB7;
  font-size:1.6rem;
  line-height:1.5;
  margin:0 0 5px;
}
.interview_list li .depart span {
  display:inline-block;
  margin:0;
}
.interview_list li .depart span::after {content:" ／ ";}
.interview_list li .depart .depart01::after {content:none;}
.interview_list li .depart span:nth-last-of-type(1)::after {content:none;}
.interview_list li .join {font-size:1.4rem;}
.interview_list li .join span:nth-last-of-type(1)::before {content:" ／ ";}
main.interview_single {position:relative;}
main.interview_single .breadcrumbs {
  position:absolute;
  margin:auto;
  top:0.5em;
  left:0;
  right:0;
  z-index:2;
}
main.interview_single .kv_axis {
  position:relative;
  width:100%;
  height:700px;
  background: -moz-linear-gradient(left,  #F4F7FF 0%, #F4F7FF 50%, #B0DDF6 50%, #B0DDF6 100%); 
  background: -webkit-linear-gradient(left,  #F4F7FF 0%,#F4F7FF 50%,#B0DDF6 50%,#B0DDF6 100%); 
  background: linear-gradient(to right,  #F4F7FF 0%,#F4F7FF 50%,#B0DDF6 5%,#B0DDF6 100%); 
  z-index:0;
}
main.interview_single .kv_axis > img {
  position:absolute;
  width:auto;
  max-width:none;
  height:100%;
  margin:auto;
  top:0;
  bottom:0;
  left:-100vw;
  right:-100vw;
  z-index:0;
}
main.interview_single .kv_axis .box {
  position:relative;
  height:100%;
}
main.interview_single .kv_axis .box div {
  position:absolute;
  display:inline-block;
  width:auto;
  text-align:center;
  margin:auto;
  left:-100%;
  right:-50%;
  bottom:70px;
  z-index:2;
}
main.interview_single .kv_axis .box div h1 {
  color:#006AB7;
  font-size:2rem;
}
main.interview_single .kv_axis .box div h1 span::after {content:" ／ ";}
main.interview_single .kv_axis .box div h1 span:nth-of-type(1)::after ,
main.interview_single .kv_axis .box div h1 span:nth-last-of-type(1)::after {content:none;}
main.interview_single .kv_axis .box div .join {
  font-size:1.8rem;
  margin:0 auto 3em;
}
main.interview_single .kv_axis .box div .join span::after {content:" ／ ";}
main.interview_single .kv_axis .box div .join span:nth-last-of-type(1)::after {content:none;}

@media screen and (max-width: 1000px){
  main.interview_single .kv_axis {height:70vw;}
  /*main.interview_single .kv_axis .box div .depart {font-size:2vw;}
  main.interview_single .kv_axis .box div h1 {font-size:3.6vw;}
  main.interview_single .kv_axis .box div .join {font-size:1.8vw;}
  main.interview_single .kv_axis .box div .name_en {font-size:5.6vw;}*/
}
.prof_area {
  width:100%;
  padding:50px 0;
  background:#006AB7;
}
.prof_area p {
  color:#FFFFFF;
  line-height:2.2;
}
main.interview_single section {
  overflow:hidden;
  clear:both;
}
main.interview_single section h2 {
  position:relative;
  display:inline-block;
  width:auto;
  font-size:2.6rem;
  font-weight:500;
  line-height:1.5;
  margin:0 0 20px;
  padding:0 0 10px;
  z-index:0;
  clear:both;
}
main.interview_single section h2::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:4px;
  bottom:0;
  left:0;
  background:-webkit-linear-gradient(left,  #006AB7 0%,#00AED6 50%,#00A9AC 100%);
  background:linear-gradient(to right,  #006AB7 0%,#00AED6 50%,#00A9AC 100%);
  z-index:0;
}
.axis01 .view_box,.axis03 .view_box {
  display:flex;
  align-items: center;
}
main.interview_single section figure img {display:block;}
.axis01 figure {
  width:44%;
}
.axis01 .view_box .box {
  width:50%;
  padding:30px 0;
}
.axis01 .box > div {
  max-width:540px;
  float:right;
}
.axis01 section {
  position:relative;
  padding:80px 0;
  margin:30px auto 0;
}
.axis01 section h3 {
  position:absolute;
  width:100%;
  color:#006AB7;
  font-size:2.4rem;
  text-align:center;
  top:50px;
}
.axis01 section h3 span {
  display:inline-block;
  padding:30px 5px 0;
  background:url(../image/schedule.png) no-repeat center top ,#FFFFFF;
}
.axis01 section > div {
  display:flex;
  align-items:center;
  justify-content: center;
  width:100%;
  border:solid 2px #006AB7;
  padding:60px 10px 40px;
}
.axis01 section > div dl {
  position:relative;
  color:#006AB7;
  font-size:1.6rem;
  font-weight:500;
  margin:0 5%;
}
.axis01 section > div dl:nth-of-type(2) {margin:1em 5% 0;}
.axis01 section > div dl::after {
  position:absolute;
  display:block;
  content:"";
  width:3px;
  height:100%;
  background:#006AB7;
  left:80px;
  top:1em;
  z-index:0;
}
.axis01 section > div dl:nth-of-type(2)::after {top:-1em;}
.axis01 section > div dl dt {
  position:relative;
  width:80px;
  text-align:right;
  padding:0 30px 0 0;
  margin:0 0 20px;
  float:left;
  clear:both;
}
.axis01 section > div dl dt::after {
  position:absolute;
  display:block;
  content:"";
  width:18px;
  height:18px;
  background:url(../image/ontime.png) no-repeat center / cover;
  top:0.4em;
  left:72px;
  z-index:1;
}
.axis01 section > div dl dd {
  width:calc(100% - 80px);
  padding:0 0 0 30px;
  margin:0 0 20px;
  float:left;
}
.axis01 section > div dl dt:nth-last-of-type(1), 
.axis01 section > div dl dd:nth-last-of-type(1) {margin:0;}
.axis02,
.axis04 {
  width:100%;
  margin:0;
  padding:80px 0;
  background: -moz-linear-gradient(left,  #F4F7FF 0%, #F4F7FF 0%, #D9ECF6 55%, #B0DDF6 100%); 
  background: -webkit-linear-gradient(left,  #F4F7FF 0%,#F4F7FF 0%,#D9ECF6 55%,#B0DDF6 100%); 
  background: linear-gradient(to right,  #F4F7FF 0%,#F4F7FF 0%,#D9ECF6 55%,#B0DDF6 100%); 
}
.axis02 .box,
.axis04 .box {
  display:flex;
  align-items: center;
}
.axis02 .box h2 ,
.axis04 .box h2 {
  width:42%;
  margin:0 8% 0 0;
}
.axis02 .box h2 + div ,
.axis04 .box h2 + div {
  width:50%;
}
.axis03 figure {
  width:44%;
}
.axis03 .box {
  width:50%;
  padding:30px 0;
}
.axis03 .box > div {
  max-width:540px;
  float:left;
}
.interview_single .pagenation {
  border-top:solid 1px #9CA9B0;
  margin:80px auto;
}
.interview_single .pagenation .all_post {
  height:40px;
  padding:18px 0 0;
  margin:0;
  background:url(../image/all_post.png) no-repeat center top;
}
.interview_single .axis_other h2 {
  display:block;
  color:#006AB7;
  text-align:center;
  padding:0;
  margin:0 auto 30px;
}
.interview_single .axis_other h2::after {
  width:4px;
  height:30px;
  background:#006AB7;
  margin:auto;
  left:0;
  right:0;
  bottom:-30px;
}
.interview_single .axis_other .interview_list {max-width:980px;}
.interview_single .axis_other .interview_list::before {
  height:30vw;
  max-height:300px;
  bottom:180px;
  background:#006AB7;
}
.interview_single .axis_other .interview_list .slick-slide {margin:0 10px;}
.interview_single .axis_other .interview_list .slick-slide a:focus {outline:none;}
.interview_single .axis_other .interview_list .slick-arrow {
  width:15px;
  height:39px;
  top:30%;
}
.interview_single .axis_other .interview_list .slick-arrow::before {content:none;}
.interview_single .axis_other .interview_list .slick-prev {
  left:-15px;
  background:url(../image/arrow_l.png) no-repeat center / cover;
}
.interview_single .axis_other .interview_list .slick-next {
  right:-15px;
  background:url(../image/arrow_r.png) no-repeat center / cover;
}

/* -----------------------------------------------------------
 static
----------------------------------------------------------- */

/** home **/

.kv_home {
  position:relative;
  width:100%;
  height:730px;
  margin:0 0 70px;
  z-index:0;
}
.kv_home > img.pc_cont {
  position:absolute;
  display:block;
  margin:auto;
  top:0;
  bottom:0;
  left:-200%;
  right:-200%;
  width:1920px;
  max-width:1920px;
  
  height:100%;
  z-index:0;
  opacity:0;
  transition:1s;
}
.kv_home.kv_active > img.pc_cont {opacity:1;}
.kv_home .add {
  position:absolute;
  display:block;
  content:"";
  opacity:0;
}
.kv_home.kv_active .add {opacity:1;}
.kv_home .add01 {
  width:30.6vw;
  height:28vw;
  max-width:588px;
  max-height:526px;
  background:url(../image/add01.png) no-repeat center/cover;
  top:40%;
  left:-5%;
  z-index:1;
  transition:1s 0.5s;
}
.kv_home .add02 {
  width:41.25vw;
  height:14.3vw;
  max-width:792px;
  max-height:274px;
  background:url(../image/add02.png) no-repeat center/cover;
  top:40%;
  left:-20%;
  z-index:0;
  transition:1s 0.5s;
}
.kv_home .add03 {
  width:20.3vw;
  height:15.3vw;
  max-width:390px;
  max-height:274px;
  background:url(../image/add03.png) no-repeat center/cover;
  top:60%;
  right:-5%;
  z-index:1;
  transition:1s 1s;
}
.kv_home .add04 {
  width:43vw;
  height:16vw;
  max-width:824px;
  max-height:306px;
  background:url(../image/add04.png) no-repeat center/cover;
  top:80%;
  right:-10%;
  z-index:0;
  transition:1s 1s;
}
@media screen and (min-width: 1921px){
  .kv_home > img.pc_cont {
    top:-100%;
    bottom:-100%;
    width:100%;
    max-width:100%;
    height:auto;
  }
}
@media screen and (max-width: 1200px){
  .kv_home {
    width:100%;
    height:0;
    padding:60% 0 0;
  }
  .kv_home > img.pc_cont {
    width:auto;
    max-width:none;
    height:100%;
  }
}
.kv_home .scroll {
  position:absolute;
  bottom:30px;
  left:30px;
  z-index:5;
}
.head_banner {
  width:100%;
  max-width:1080px;
  padding:0 40px;
  margin:0 auto 90px;
  text-align:center;
}
.head_banner figure {
  display:inline-block;
  text-align:center;
}
.head_banner figure a {
  display:block;
  text-decoration:none;
  transition:0.5s;
}
.head_banner figure a:hover {opacity:0.5;}
.head_banner figure img {
  display:inline-block;
  margin:0 20px 0 0;
  vertical-align:middle;
}
.head_banner figure figcaption {
  display:inline-block;
  font-size:1.6rem;
  text-decoration:underline;
  text-align:left;
  vertical-align:middle;
}

.home .h2_en {
  position:relative;
  font-weight:500;
  font-size:1.6rem;
  letter-spacing:0.1em;
  margin:0 0 40px;
  z-index:0;
  opacity:0;
  transform:translateY(20px);
  transition:0.5s;
}
.home .h2_en.fadein {
  opacity:1;
  transform:translateY(0);
}
.home .h2_en::before,
.home .h2_en::after {
  position:absolute;
  display:block;
  content:none;
  z-index:-2;
  opacity:0;
  transition:0.5s 0.5s;
}
.home .h2_en.fadein::before,
.home .h2_en.fadein::after {
  opacity:1;
}
.home .h2_en span {
  display:block;
  font-family:'Roboto Condensed', sans-serif;
  font-weight:700;
  font-size:8.6rem;
  line-height:1.15;
  color:#006AB7;
  margin:0 0 10px;
  letter-spacing:0;
}
.home_news {
  position:relative;
  margin:0 0 100px;
  overflow:hidden;
  background:#FFFFFF;
  z-index:1;
}
.home_news .home_newstitle {
  width:180px;
  height:auto;
  margin:0 30px 0 0;
  float:left;
}
.home_news .home_newstitle h2 {
  font-family:'Roboto Condensed', sans-serif;
  font-weight:700;
  font-size:6rem;
  line-height:1.2;
  margin:10px 0 10px;
}
.home_news .news_list {
  width:calc(100% - 210px);
  border:none;
  padding:0 0 0 30px;
  border-left:solid 4px #000000;
}
.home_news .news_list li {border-bottom:solid 1px #000000;}
.home_news .news_list li:nth-last-child(1) {border:none;}
.home_news .news_list li p {line-height:2;}
.home_dream {
  position:relative;
  margin:0;
}
.home_dream::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:260px;
  background:#E1F5FC;
  z-index:-1;
  left:0;
  bottom:0;
}
.home_dream .box div {
  padding:0 54% 0 0;
  min-height:680px;
}
.home_dream .box div p {
  font-size:1.6rem;
  line-height:2.5;
}
.home .home_dream .h2_en span {
  font-family:'Roboto', sans-serif;
  font-weight:900;
  font-size:8rem;
  line-height:1.25;
}
/*
.home .home_dream .h2_en::before {
  content:"";
  width:517px;
  height:306px;
  background:url(../img/home/bg_dream01.png) no-repeat center / cover;
  left:-450px;
  top:200px;
}
.home .home_dream .h2_en::after {
  content:"";
  width:257px;
  height:230px;
  background:url(../img/home/bg_dream02.png) no-repeat center / cover;
  left:250px;
  top:50px;
}*/
.home_dream .home_slider {
  position:absolute;
  width:50%;
  top:0;
  right:0;
  z-index:1;
}
.home_dream .home_slider::before {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:100%;
  top:0;
  right:0;
  background:rgba(0,106,183,0.6);
  z-index:1;
  transition:0.5s;
}
.home_dream.fadein .home_slider::before {width:0;}
.home_dream.fadein .home_slider .slick-arrow {
  width:40px;
  height:80px;
  z-index:10;
}
.home_dream.fadein .home_slider .slick-prev {
  background:url(../image/slider_l.jpg) no-repeat center / cover;
  left:0;
}
.home_dream.fadein .home_slider .slick-next {
  background:url(../image/slider_r.jpg) no-repeat center / cover;
  right:0;
}
.home_dream.fadein .home_slider .slick-arrow::before {content:none;}
.home_dream .home_slider .slick-dots {bottom:-40px;}
.home_dream .home_slider .slick-dots li {
  width:34px;
  height:6px;
  background:#BFC0C0;
}
.home_dream .home_slider .slick-dots .slick-active {background:#55C7FD;}
.home_dream .home_slider .slick-dots li button {
  width:34px;
  height:6px;
}
.home_dream .home_slider .slick-dots li button::before {content:none;}
.home_about {
  position:relative;
  margin:0 auto 90px;
  padding:110px 0 0;
  overflow:hidden;
}
.home_about::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:360px;
  background:#006AB7;
  z-index:-1;
  left:0;
  bottom:0;
}
/*
.home .home_about .h2_en::after {
  content:"";
  width:517px;
  height:306px;
  background:url(../img/home/bg_about.png) no-repeat center / cover;
  left:50px;
  top:-50px;
}
*/
.home_about .box div {
  padding:0 0 0 50%;
  min-height:610px;
}
.home_about .box div p {
  font-size:1.6rem;
  line-height:2.5;
  color:#FFFFFF;
  margin:0 0 20px;
}
.home_about figure {
  position:absolute;
  width:46%;
  top:0;
  left:0;
  z-index:1;
}
.home_about figure::before {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:100%;
  top:0;
  left:0;
  background:rgba(0,106,183,0.6);
  z-index:1;
  transition:0.5s;
}
.home_about.fadein figure::before {width:0;}

.home_axis {
  position:relative;
  margin:0 0 80px;
  z-index:0;
}
.title_axis div {
  position:absolute;
  width:20vw;
  max-width:400px;
  height:20vw;
  max-height:400px;
  color:#FFFFFF;
  text-align:center;
  background:url(../image/bg_axis.jpg) no-repeat center / cover;
  padding:3vw 0;
  margin:auto;
  top:0;
  bottom:0;
  left:0;
  right:0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  box-shadow:5px 5px 0 0 rgba(0,0,0,0.5);
}
.title_axis div .title {
  font-weight:500;
  font-size:1.6rem;
  letter-spacing:0.1em;
  vertical-align:middle;
}
.title_axis div .title span {
  display:block;
  font-family:'Roboto Condensed', sans-serif;
  font-weight:700;
  font-size:6rem;
  line-height:1.2;
  margin:0;
}
@media screen and (max-width: 1400px){
  .title_axis div .title span {font-size:3.2rem;}
}
.title_axis div .btn_common {margin:20px auto 0;}
.title_axis figure img.pc_cont {
  width:50%;
  display:block;
  float:left;
}
.home_training {text-align:center;}
.home .home_training .h2_en::after {
  content:"";
  width:404px;
  height:188px;
  background:url(../image/bg_training.png) no-repeat center / cover;
  margin:auto;
  right:0;
  left:0;
  top:-20px;
}
.home_training h2 + p {
  font-size:1.6rem;
  margin:0 auto 20px;
}
.home_training h2 + p + p {
  opacity:0;
  transform:translateY(20px);
  transition:0.5s;
}
.home_training h2 + p + p.fadein {
  opacity:1;
  transform:translateY(0);
}
.home_training .box {max-width:1230px;}
.home_training .box .btn_common {margin:40px auto;}
.home_banner {
  padding:80px 40px 60px;
  background:#DFF2FC;
  text-align:center;
}
.home_banner ul {
  width:100%;
  max-width:1000px;
  margin:0 auto 40px;
  overflow:hidden;
}
.home_banner ul li {
  position:relative;
  width:47%;
  margin:0 6% 5% 0;
  overflow:hidden;
  z-index:0;
  float:left;
}
.home_banner ul li:nth-child(2) {margin:0 0 5%;}
.home_banner ul li:nth-child(3) {
  width:100%;
  margin:0;
}
.home_banner ul li:nth-child(3)::after {
  position:absolute;
  display:block;
  content:"";
  width:26px;
  height:20px;
  background:url(../image/bg_target.png) no-repeat center / cover;
  top:20px;
  right:20px;
  z-index:10;
}
.home_banner ul li a img {
  transform:scale(1);
  transition:0.5s;
}
.home_banner ul li a img.pc_cont {display:block;}
.home_banner ul li a:hover img {transform:scale(1.1);}
.home_banner ul li p {
  position:absolute;
  display:block;
  width:220px;
  height:70px;
  line-height:70px;
  color:#FFFFFF;
  text-align:center;
  font-size:2rem;
  font-weight:500;
  margin:auto;
  top:0;
  bottom:0;
  left:0;
  right:0;
  z-index:1;
}
.home_banner ul li p::before,
.home_banner ul li p::after {
  position:absolute;
  display:block;
  content:"";
  width:100%;
  height:10px;
  border-left:solid 1px #FFFFFF;
  border-right:solid 1px #FFFFFF;
  left:0;
  right:0;
}
.home_banner ul li p::before {
  top:0;
  border-top:solid 1px #FFFFFF;
}
.home_banner ul li p::after {
  bottom:0;
  border-bottom:solid 1px #FFFFFF;
}
.home_banner .common_entry {margin:0 auto 50px;}

/* -----------------------------------------------------------
 animation
----------------------------------------------------------- */

@keyframes img_change {
  0% {opacity:1;}
  40% {opacity:1;}
  50% {opacity:0;}
  90% {opacity:0;}
  100% {opacity:1;}
}

/** loading **/

.loader {
  position:fixed;
  z-index:100;
  width:100vw;
  height:100%;
  top:0;
  left:0;
  right:0;
  bottom:0;
  background:#FFFFFF;
  opacity:1;
  transition:1s;
}
.loader.hidden {
  visibility:hidden;
  opacity:0;
}
.loader {overflow: hidden;}
.loader div.drop-container {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    height: 200px;
    width: 200px;
}
.loader div.drop {
    position: absolute;
    top: -25%;
    width: 100%;
    height: 100%;
    border-radius: 100% 5% 100% 100%;
    transform: rotate(-45deg);
    margin: 0px;
    background: #1CBCE3;
    animation: drip 4s forwards;
}
.loader p {
    color: white;
    position: absolute;
    height: 94px;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 2;
    margin: auto;
    text-align: center;
    opacity: 0;
    animation: appear 2s 2.5s forwards;
  }
  
  @keyframes appear {
    0% {
      opacity: 0;
    }
    100% {
      opacity: 1;
    }
  }
  
.loader div.drop-container:before,
.loader div.drop-container:after {
    content: '';
    position: absolute;
    z-index: -1;
    top: 55%;
    right: 50%;
    transform: translate(50%) rotateX(75deg);
    border-radius: 100%;
    opacity: 0;
    width: 75%;
    height: 75%;
    border: 5px solid skyblue;
    animation: dripple 2s ease-out 1s;
  }
  
.loader div.drop-container:after {
    animation: dripple 2s ease-out 1.7s;
  }
  
  @keyframes drip {
    45% {
      top: 0;
      border-radius: 100% 5% 100% 100%;
      transform: rotate(-45deg);
    }
    100% {
      top: 0;
      transform: rotate(0deg);
      border-radius: 100%;
    }
  }
  
  @keyframes dripple {
    0% {
      width: 150px;
      height: 150px;
    }
    25% {
      opacity: 1;
    }
    100% {
      width: 500px;
      height: 500px;
      top: -20%;
      opacity: 0;
    }
  }





