@charset "UTF-8";
/*▽▽▽▽▽▽---------- contents ----------▽▽▽▽▽▽*/
/*--------------------- .header ---------------------*/
.header {
  background-color: #fff;
  display: flex;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 50;
}

.hbox {
  display: flex;
  align-items: center;
  padding: 15px 20px;
  width: 100%;
}
.header_logo {
  margin-right: auto;
}
.header_logo a {
  display: block;
  transition: opacity 0.3s;
  width: 200px;
}
.header_logo a:hover {
  opacity: 0.5;
}
.header_logo img {
  width: 100%;
}


/*--------------------- .gnav ---------------------*/
.gnav {
  display: flex;
  align-items: center;
  position: relative;
}
.gnav_list {
  display: block;
  margin: 0 25px;
}
.gnav_list a, .gnav_list.dropdwn .txt {
  display: inline-block;
  font-family: 'M PLUS Rounded 1c', sans-serif;
  position: relative;
  text-align: center;
  transition: opacity 0.3s ease;
}
.gnav_list a:hover {
  opacity: 0.3;
}
.gnav_list a .en, .gnav_list.dropdwn .txt .en {
  display: block;
  font-size: 12px;
  line-height: 1.2;
}
.gnav_list.icon a::before, .gnav_list.dropdwn .txt::before {
  content: "";
  display: block;
  height: 22px;
  margin: 0 auto 5px;
  width: 22px;
}
.gnav_list.icon.concept a::before {
  background: url(/cmn/cmn_img/icon_concept.png) no-repeat;
  background-size: contain;
}
.gnav_list.icon.about a::before {
  background: url(/cmn/cmn_img/icon_about.png) no-repeat;
  background-size: contain;
}
.gnav_list.icon.facility a::before {
  background: url(/cmn/cmn_img/icon_facility.png) no-repeat;
  background-size: contain;
}
.gnav_list.icon.recruit a::before {
  background: url(/cmn/cmn_img/icon_recruit.png) no-repeat;
  background-size: contain;
}
.gnav_list.icon.news a::before {
  background: url(/cmn/cmn_img/icon_news.png) no-repeat;
  background-size: contain;
}


/*--------------------- .link_btn ---------------------*/
.link_btn {
  margin-right: 30px;
}
.link_btn a {
  background-color: #f4810b;
  border-radius: 100px;
  color: #fff;
  display: block;
  font-size: 18px;
  padding: 10px 20px;
  text-align: center;
  transition: opacity 0.3s ease;
  width: 220px;
}
.link_btn a:hover {
  opacity: 0.5;
}


/*--------------------- .dropdwn_menu ---------------------*/
/*
.dropdwn_menu {
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  top: 85px;
  left: 0;
  transition: opacity 0.2s ease-in;
  width: 100%;
}
.dropdwn:hover .dropdwn_menu {
  max-height: 9999px;
  opacity: 1;
  transition: opacity 0.3s ease-in;
  z-index: 99;
}
.dropdwn_menu .dropdwn_menu_inr {
  background-color: #f2f2f2;
  padding: 15px 100px;
  width: 100%;
}
.dropdwn_menu .dropdwn_menu_inr .menu {
  display: flex;
}
.dropdwn_menu .dropdwn_menu_inr .menu li {
  margin-right: 30px;
}
.dropdwn_menu .dropdwn_menu_inr .menu li a {
  padding: 8px 0 5px 15px;
}
.dropdwn_menu .dropdwn_menu_inr .menu li a:hover {
  text-decoration: underline;
}
*/



.trigger, .menu_trigger, .ham_menu {
  display: none;
}


/*--------------------- .wrap ---------------------*/
.wrap {
  display: block;
  padding-top: 100px;
  position: relative;
}


/*--------------------- .section ---------------------*/
.section {
  padding: 100px 0 120px;
}


/*--------------------- .inr ---------------------*/
.inr {
  margin: 0 auto;
  width: 1080px;
}
.inr_s {
  margin: 0 auto;
  width: 960px;
}
.inr_w {
  margin: 0 auto;
  width: 1280px;
}


/*--------------------- .breadcrumbs ---------------------*/
.breadcrumbs {
  display: flex;
  position: absolute;
  top: 400px;
  left: 40px;
}
.breadcrumbs li {
  margin: 0 10px 0 0;
  font-size: 12px;
}
.breadcrumbs li::before {
  padding: 0 5px 0 0;
  content: "＞";
  font-size: 10px;
}
.breadcrumbs li:first-child::before {
  display: none;
}


/*--------------------- .footer ---------------------*/
.footer {
  background-color: #fff;
}
.footer_inr {
  margin: 0 auto;
  padding: 80px 0 50px;
  width: 1080px;
}


/*--------------------- .footer_box ---------------------*/
.footer_box {
  border-bottom: 1px solid #f2f2f2;
  display: flex;
  justify-content: space-between;
  margin-bottom: 30px;
  padding-bottom: 30px;
}
.footer_logo {
  display: block;
  width: 200px;
}


/*--------------------- .info_box ---------------------*/
.info_box {
  display: flex;
  width: 50%;
}
.info_box .info_txt {
  font-size: 14px;
  margin-left: 40px;
}

/*--------------------- .contact_link_list ---------------------*/
.contact_link_list {
  display: flex;
  justify-content: flex-end;
  width: 50%;
}
.contact_link_list li {
  height: 50px;
  margin-left: 30px;
  width: 50px;
}
.contact_link_list .icon {
  border-radius: 100px;
  overflow: hidden;
}
.contact_link_list a {
  transition: opacity 0.3s ease;
}
.contact_link_list a:hover {
  opacity: 0.3;
}
.contact_link_list .icon a {
  border: 2px solid #222;
  border-radius: 100px;
  display: block;
  height: 50px;
  position: relative;
  width: 50px;
}
.contact_link_list .icon a::before {
  font-family: FontAwesome;
  color: #222;
  display: block;
  font-size: 20px;
  margin-top: -16px;
  position: absolute;
  top: 50%;
  left: 14px;
  text-align: center;
}
.contact_link_list .icon.mail a::before {
  content: "\f003";
}
.contact_link_list .icon.tel a::before {
  content: "\f095";
  margin-top: -15px;
  left: 16px;
}


/*--------------------- .footer_gnav ---------------------*/
.footer_gnav {
  display: flex;
  margin: 0 -20px;
}
.footer_gnav .clm3 {
  padding: 0 20px;
  width: 33.333%;
}
.footer_gnav_link + .footer_gnav_link {
  margin-top: 20px;
}
.footer_gnav_link a {
  display: inline-block;
  font-weight: bold;
  font-size: 20px;
  margin-bottom: 5px;
  transition: opacity 0.3s;
}
.footer_gnav_link a:hover {
  opacity: 0.3;
}
.footer_gnav_link .child_link {
  display: block;
}
.footer_gnav_link .child_link a {
  color: #4d4d4d;
  font-size: 16px;
  font-weight: normal;
  margin-bottom: 0;
}

.copy_txt {
  background-color: #f4810b;
  color: #fff;
  font-size: 14px;
  padding: 20px;
  text-align: center;
}


/*--------------------- #page_top ---------------------*/
#page_top {
  position: absolute;
  right: 20px;
  bottom: 67px;
  transition: transform 0.3s ease;
}
#page_top:hover {
  transform: scale(1.1);
}
#page_top a {
  background: url(/cmn/cmn_img/page_top_illust.png) no-repeat;
  background-size: contain;
  display: block;
  height: 150px;
  position: relative;
  width: 150px;
}