@charset "UTF-8";
/* ============================
	layout.css
	author: alimoto
============================ */
/**
* Imports
*/
/* ============================
	mixin
============================ */
/* ============================
	device width
============================ */
/* ============================
	color
============================ */
/* ============================
	btn
============================ */
/* - 1 Word - */
/*
* Easing function
* Original：http://easings.net/
*/
/* ============================
	utility parts
============================ */
/*	表示切り替え
============================ */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Arvo:400,700);

.none-pc {
  display: none; }

.none-sp {
  display: block; }

.none-tb {
  display: block; }

/*	幅
============================ */
.grp {
  margin: 40px 0 60px; }

.spacer {
  display: block;
  height: 40px; }

/*	幅
============================ */
.w100 {
  width: 100%; }

.w100_max {
  max-width: 920px;
  width: 100%; }

.w40 {
    width: 40%; }
  
.w40_max {
    max-width: 920px;
    width: 40%; }

/*	装飾
============================ */
.box-shadow {
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.15); }

/*	モーション
============================ */
.smooth-slow, .list-style ul a,
.smooth-slow:before,
.list-style ul a:before,
.smooth-slow:after,
.list-style ul a:after {
  transition: all 0.5s ease; }

.smooth-fast, .btn, header, header * a, .banner ul li p, .clm_servicepanel .item a > div, .clm_servicepanel_local .item a, .bg_ttl nav ul li a, .clm_recruitcard .item_between a:hover,
.smooth-fast:before,
.btn:before,
header:before,
header * a:before,
.banner ul li p:before,
.clm_servicepanel .item a > div:before,
.clm_servicepanel_local .item a:before,
.bg_ttl nav ul li a:before,
.clm_recruitcard .item_between a:hover:before,
.smooth-fast:after,
.btn:after,
header:after,
header * a:after,
.banner ul li p:after,
.clm_servicepanel .item a > div:after,
.clm_servicepanel_local .item a:after,
.bg_ttl nav ul li a:after,
.clm_recruitcard .item_between a:hover:after {
  transition: all 0.2s ease; }

/*	list
============================ */
.disc {
  margin: 0;
  padding-left: 1.4em;
  list-style: disc; }
  .disc li {
    padding: 4px 0; }

.lower-alpha {
  margin: 0;
  padding-left: 1.4em;
  list-style: lower-alpha; }
  .lower-alpha li {
    padding: 4px 0; }

.decimal {
  padding-left: 1.4em; }
  .decimal li {
    padding: 4px 0; }

.lower-roman {
  padding-left: 1.4em;
  list-style-type: lower-roman; }
  .lower-roman li {
    padding: 4px 0; }

/*	line (border)
============================ */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  margin-bottom: 24px;
  padding: 0; }

.line {
  margin-bottom: 24px;
  padding-bottom: 24px; }

.line_btm-dot {
  border-bottom: 1px dotted rgba(0, 0, 0, 0.1); }

.line_btm {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

/*	background color
============================ */
.bg_white {
  background: #f6f6f6; }

.bg_blackborder {
  border: 1px solid rgba(0, 0, 0, 0.1); }

/*	bread
============================ */
.bread {
  color: #868686;
  font-size: 16px;
  font-size: 1.6rem;
  background: white;
  padding: 7px 30px 7px 30px;
  height: 30px; }
  .bread .ico_home {
    height: 14px;
    padding: 1px 0; }
  .bread span {
    position: relative;
    top: -2px;
    padding: 0 10px; }
  .bread a {
    color: #333; }

/*	title
============================ */
.ttl {
  font-weight: bold;
  line-height: 1.4;
  letter-spacing: 4px;
  margin: 0 0 2em 0; }

.ttl_huge {
  font-size: 36px;
  font-size: 3.6rem;
  color: #282828;
  line-height: 1.4;
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 46px;
  padding: 16px 0 16px 40px;
  border-left: 2px solid #5c6fa9;
  position: relative; }
  .ttl_huge:after {
    content: "";
    line-height: 0;
    display: block;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: -2px;
    height: 24%;
    border-left: 2px solid #20264e; }
  .ttl_huge span {
    font-size: 24px;
    font-size: 2.4rem;
    padding-left: 10px; }

.ttl_large {
  font-size: 24px;
  font-size: 2.4rem;
  color: #20264e;
  font-weight: normal;
  padding: 0 0 10px 0;
  border-bottom: 2px solid #20264e; }

.ttl_big {
  font-size: 24px;
  font-size: 2.4rem; }

.ttl_small {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6; }

.ttl_mini {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.6;
  margin-top: 10px; }

.ttl_tiny {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6; }

/*	text
============================ */
.txt_huge {
  font-size: 30px;
  font-size: 3rem; }

.txt_large {
  font-size: 24px;
  font-size: 2.4rem; }

.txt_lead {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 2em;
  margin-bottom: 2em; }

.note {
  color: rgba(0, 0, 0, 0.5);
  font-size: 14px;
  font-size: 1.4rem; }

.list_reset, .gNav ul, .subNav ul, .select_flag div ul, footer .siteMap, .news dl, .banner ul, .list-style ul,
.list_reset dt,
.gNav ul dt,
.subNav ul dt,
.select_flag div ul dt,
footer .siteMap dt,
.news dl dt,
.banner ul dt,
.list-style ul dt,
.list_reset dd,
.gNav ul dd,
.subNav ul dd,
.select_flag div ul dd,
footer .siteMap dd,
.news dl dd,
.banner ul dd,
.list-style ul dd,
.list_reset li,
.gNav ul li,
.subNav ul li,
.select_flag div ul li,
footer .siteMap li,
.news dl li,
.banner ul li,
.list-style ul li {
  margin: 0;
  padding: 0;
  list-style: none; }

.txt_left {
  text-align: left; }

.txt_right {
  text-align: right; }

.txt_center {
  text-align: center; }

.txt_indent {
  margin-left: 1.5em; }

.caution {
  color: #C00; }

.req {
  color: #C00; }

/*	clearfix
============================ */
section:after,
header:after,
.cl:after,
.gNav ul:after,
.box_staff:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

section,
header,
.cl,
.gNav ul,
.box_staff {
  zoom: 1; }

/*	tablet
======================================== */
@media (max-width: 959px) {
  .none-tb {
    display: none; }
  .gutter-tb {
    padding-right: 5%;
    padding-left: 5%; } }

/*	smartPhone
======================================== */
@media (max-width: 599px) {
  .none-pc {
    display: block; }
  .none-sp {
    display: none; }
  .gutter-sp {
    padding-right: 5%;
    padding-left: 5%; }
  /*	bread
	============================ */
  .bread {
    display: none; }
  /*	title
	============================ */
  .ttl_huge {
    font-size: 32px;
    font-size: 3.2rem;
    margin-bottom: 20px;
    padding: 10px 0 10px 20px; }
    .ttl_huge span {
      display: block;
      font-size: 18px;
      font-size: 1.8rem; } }

body {
  margin: 0 auto;
  font-family: 'Lato', 'Yu Gothic', 'YuGothic', 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif; }

.arvo, .clm_servicepanel .item a > div div h2, .clm_servicepanel .item span > div h2 {
  font-family: 'Arvo', serif; }

/* ============================
	frame
============================ */
html {
  font-size: 62.5%;
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

body {
  color: #282828;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 1px;
  background: #e9e9e9; }

body,
table {
  font-size: 16px;
  font-size: 1.6rem;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  border-collapse: collapse;
  border: 0px; }

main {
  line-height: 1.8; }

section {
  padding: 0 0 80px 0;
  max-height: 100%; }

.home .container {
  padding-top: 0px; }

.container {
  padding-top: 90px;
  padding-top: 150px;
  line-height: 1.6; }

/*	desktop_short
======================================== */
/*	tablet
======================================== */
@media (max-width: 959px) {
  .w100_tb {
    width: 100%; } }

/*	smartPhone
======================================== */
@media (max-width: 599px) {
  .w100_sp {
    width: 100%; }
  .slickslider_prom div {
    height: 300px; }
  section {
    padding: 0 0 40px 0; }
  .container {
    padding-top: 80px; } }

/* ============================
	link-base
============================ */
a {
  text-decoration: none;
  color: #6495ed; }

a:hover {
  text-decoration: none;
  color: #5c6fa9; }

/* ============================
	text arrow
============================ */
.txt_link {
  text-decoration: underline; }
  .txt_link:hover {
    text-decoration: none; }

.ico_blank {
  padding-right: 18px;
  background: url(/-/media/AEC/jp/img/blank.png) no-repeat center right;
  background-size: 12px; }

/* ============================
	btn
============================ */
.btnarea {
  text-align: center;
  margin-top: 60px; }

.btn {
  font-size: 18px;
  font-size: 1.8rem;
  display: inline-block;
  position: relative;
  border: 0;
  cursor: pointer;
  width: 60%;
  padding: 16px;
  color: #fff;
  background-color: #9a6186;
  border-radius: 100px;
  text-decoration: none;
  box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.4); }
  .btn:hover {
    color: #fff;
    background-color: #5c6fa9;
    box-shadow: 0 0 0 0px rgba(0, 0, 0, 0.4); }
  .btn a {
    color: #fff;
    text-decoration: none; }

.btn-small {
  padding: 14px 30px;
  font-size: 14px;
  font-size: 1.4rem; }

.btn-medium {
  padding: 20px 80px 20px 40px;
  font-size: 16px;
  font-size: 1.6rem;
  background-image: url(/-/media/AEC/jp/img/r-bk.png); }

.btn-big {
  padding: 30px 80px 30px 60px;
  font-size: 18px;
  font-size: 1.8rem;
  background-image: url(/-/media/AEC/jp/img/r-bk.png); }

.btn-large {
  padding: 30px 80px 30px 60px;
  font-size: 24px;
  font-size: 2.4rem;
  background-image: url(/-/media/AEC/jp/img/r-bk.png); }

.btn-huge {
  width: 100%;
  padding: 30px 80px 30px 60px;
  font-size: 36px;
  font-size: 3.6rem;
  background-image: url(/-/media/AEC/jp/img/r-bk.png); }

.btn-back {
 background-color: #999; }
  .btn-back:hover {
    background-color: #666; }

.btn-totop {
  width: 160px;
  height: 110px;
  background: url(/-/media/AEC/jp/img/totop.png) no-repeat;
  background-size: 160px;
  position: fixed;
  bottom: 0;
  right: 0; }

.btn-next,
.btn-prev {
  background-repeat: no-repeat;
  background-size: 10px; }

.btn-next {
  margin-left: 20px;
  padding-right: 7%;
  background-image: url(/-/media/AEC/jp/img/r-bk.png);
  background-position: 84% center; }
  .btn-next:hover {
    background-position: 87% center; }

.btn-prev {
  margin-right: 20px;
  padding-left: 7%;
  background-image: url(/-/media/AEC/jp/img/l-bk.png);
  background-position: 16% center; }
  .btn-prev:hover {
    background-position: 13% center; }

.btn_menu,
.btn_menu-close {
  display: none;
  cursor: pointer; }

/*	tablet
======================================== */
@media (max-width: 959px) {
  .btn_menu,
  .btn_menu-close {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
    padding: 18px;
    width: 60px;
    height: 60px; }
  .btn_menu-close {
    display: none; } }

/*	smartPhone
======================================== */
@media (max-width: 599px) {
  .btn-totop {
    width: 110px;
    height: 76px;
   background-size: 110px 76px; }
  .btn {
    width: 80%; } }

.w_non-liquid {
  width: 1000px;
  margin: 0 auto; }

/*	layout
============================ */
.wrap_inline-block, .select_flag div ul {
  letter-spacing: -.40em; }
  .wrap_inline-block > *, .select_flag div ul > * {
    display: inline-block;
    letter-spacing: 1px;
    vertical-align: top; }

.flex_same_height {
  display: flex;
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  flex-wrap: wrap; }
  .flex_same_height > * {
    vertical-align: top;
    display: -moz-inline-box;
    /*for Firefox 2*/
    display: inline-block;
    /*for modern*/
    box-sizing: border-box; }

/* ============================
	column
============================ */
.clm {
  display: flex;
  flex-wrap: wrap; }
  .clm .item > div {
    padding: 5px 5px; }

.clm_2 .item {
  width: 50%; }

.clm_2 .item_between {
  width: 48%;
  margin-right: 4%; }
  .clm_2 .item_between:nth-child(even) {
    margin-right: 0; }

.clm_3 .item {
  width: 33.33%; }

.clm_3 .item_between {
  width: 30.66%;
  margin-right: 4%; }
  .clm_3 .item_between:nth-child(3n) {
    margin-right: 0; }

.clm_4 .item {
  width: 25%; }

.clm_4 .item_between {
  width: 22%;
  margin-right: 4%; }
  .clm_4 .item_between:nth-child(4n) {
    margin-right: 0; }

.clm_5 .item {
  width: 20%; }

.clm_5 .item_between {
  width: 16.8%;
  margin-right: 4%; }
  .clm_5 .item_between:nth-child(5n) {
    margin-right: 0; }

.clm_6 .item {
  width: 16.66%; }

.clm_6 .item_between {
  width: 13.33%;
  margin-right: 4%; }
  .clm_6 .item_between:nth-child(6n) {
    margin-right: 0; }

/* ============================
	table
============================ */
.tbl_theme-a {
  margin-bottom: 60px; }

.tbl_theme-a table {
  width: 100%;
  margin-bottom: 30px;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }

.tbl_theme-a th,
.tbl_theme-a td {
  text-align: left;
  font-weight: normal;
  padding: 14px 4%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.tbl_theme-a th {
  width: 26%; }

.tbl_theme-b {
  padding: 0 5%; }

.tbl_theme-b table {
  width: 100%; }

.tbl_theme-b th,
.tbl_theme-b td {
  text-align: left;
  vertical-align: center;
  font-weight: normal;
  padding: 24px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.tbl_theme-b tr:last-child th,
.tbl_theme-b tr:last-child td {
  border-bottom: none; }

.tbl_theme-b th {
  vertical-align: top;
  width: 32%;
  font-size: 24px;
  font-size: 2.4rem; }

.tbl_theme-c table {
  width: 100%; }

.tbl_theme-c th,
.tbl_theme-c td {
  text-align: left;
  vertical-align: center;
  font-weight: normal;
  padding: 12px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.tbl_theme-c tr:last-child th,
.tbl_theme-c tr:last-child td {
  border-cottom: none; }

.tbl_theme-c th {
  vertical-align: top;
  width: 20%; }

/*	tablet
======================================== */
@media (max-width: 959px) {
  .w_non-liquid {
    width: auto;
    margin: 0 auto; }
  /* -- table -- */
  .tbl_theme-a th,
  .tbl_theme-a td {
    width: 100%;
    display: block; }
  .tbl_theme-a th {
    border-bottom: none;
    font-weight: bold;
    padding-bottom: 0; }
  .tbl_theme-a td {
    padding-top: 4px; }
  .tbl_theme-b th,
  .tbl_theme-b td {
    width: 100%;
    display: block;
    padding: 0;
    border-bottom: none; }
  .tbl_theme-b th {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold; }
  .tbl_theme-b td {
    padding-bottom: 30px; } }

/*	smartPhone
======================================== */
@media (max-width: 599px) {
  /* ============================
	column
============================ */
  .clm_1-sp .item {
    width: 100%; }
  .clm_1-sp .item_between {
    width: 100%;
    margin-right: 0 !important; }
  .clm_2-sp .item {
    width: 50%; }
  .clm_2-sp .item_between {
    width: 48%;
    margin-right: 4% !important; }
    .clm_2-sp .item_between:nth-child(even) {
      margin-right: 0 !important; } }

/* ============================
	header
============================ */
header {
  width: 100%;
  height: 86px;
  padding: 0;
  position: fixed;
  z-index: 2000;
  background: #1e1e26; }
  header .inner {
    padding: 0 50px; }
  header h1 {
    float: left;
    margin: 0; }
    header h1 img {
      display: block;
      margin: 13px 0;
      width: 164px;
      height: 34px; }

.home header {
  height: 60px; }

/*	desktop_short
======================================== */
/*	tablet
======================================== */
@media (max-width: 959px) {
  header {
    height: 60px;
    padding: 0; }
    header .inner {
      padding: 0; }
    header h1 {
      float: none;
      margin: 0 0 0 20px; } }

/*	smartPhone
======================================== */
/* ============================
	nav
============================ */
.nav_wrapper {
  float: right; }

.gNav {
  float: left; }
  .gNav ul {
    padding-top: 15px; }
   .gNav ul li:first-child a img {
      height: 12px; }
    .gNav ul li:last-child a {
      border: 1px solid rgba(255, 255, 255, 0.2); }
    .gNav ul li {
      text-align: center;
      float: left; }
      .gNav ul li a {
        font-size: 15px;
        font-size: 1.5rem;
        font-weight: 600;
        letter-spacing: 0;
        color: white;
        padding: 6px 14px;
        display: inline-block; }
        .gNav ul li a.current {
          background: rgba(92, 111, 169, 0.2); }
        .gNav ul li a:hover {
          opacity: 0.5; }

.subNav {
  float: left; }
  .subNav ul li {
    text-align: center;
    float: left; }
  .subNav ul li.ico_facebook {
    margin: 0 20px;
    padding-top: 21px;
    padding-bottom: 21px; }
    .subNav ul li.ico_facebook img {
      height: 18px;
      display: block; }
  .subNav ul li.ico_flag {
    padding-top: 20px;
    padding-bottom: 20px;
    position: relative; }
    .subNav ul li.ico_flag img {
      cursor: pointer;
      height: 20px;
      display: block; }
    .subNav ul li.ico_flag:after {
      content: "";
      position: absolute;
      top: 45%;
      right: -12px;
      display: block;
      width: 10px;
      height: 10px;
      background: url(/-/media/AEC/jp/img/pulldown.png) no-repeat right center;
      background-size: 7px; }

.select_flag {
  display: none;
  text-align: center;
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  position: absolute;
  z-index: 2000;
  width: 100%; }
  .select_flag div {
    padding: 10px 0 30px;
    background: rgba(30, 30, 38, 0.9);
    background: rgba(0, 0, 0, 0.9);
    box-shadow: 0px 6px 10px 0px rgba(0, 0, 0, 0.4); }
    .select_flag div p {
      font-size: 14px;
      font-size: 1.4rem;
      color: white; }
    .select_flag div ul li {
      margin: 0 10px; }
      .select_flag div ul li img {
        cursor: pointer;
        width: 50px;
        display: block; }

/*	tablet
======================================== */
@media (max-width: 959px) {
  /* ============================
		nav
	============================ */
  .nav_wrapper {
    display: none;
    float: none;
    background: #1e1e26; }
  .gNav {
    float: none; }
    .gNav ul {
      padding-top: 0; }
      .gNav ul li:first-child a img {
        height: 18px; }
      .gNav ul li {
        text-align: center;
        float: none; }
        .gNav ul li a {
          font-size: 18px;
          font-size: 1.8rem;
          font-weight: normal;
          width: 100%;
          padding: 14px 0px;
          display: block; }
      .gNav ul li:last-child a {
        border: none; }
  .subNav {
    float: none;
    background: #1e1e26; }
    .subNav ul li {
      float: none; }
    .subNav ul li.ico_facebook {
      margin: 0;
      padding: 14px 0px; }
      .subNav ul li.ico_facebook img {
        height: 18;
        display: inline; }
      .subNav ul li.ico_facebook a {
        display: block; }
    .subNav ul li.ico_flag {
      padding: 14px 0px; }
      .subNav ul li.ico_flag img {
        display: inline;
        height: 18; }
      .subNav ul li.ico_flag:after {
        top: 42%;
        right: 40%; } }

/*	smartPhone
======================================== */
/* ============================
	footer
============================ */
.home footer small {
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  margin: 0;
  position: absolute;
  right: -100px;
  text-align: left;
  bottom: 190px;
  opacity: 0.7;
  padding: 0;
  display: inline; }

footer {
  background-color: #1e1e26; }
  footer .siteMap {
    padding: 50px 0; }
    footer .siteMap a {
      color: white; }
    footer .siteMap .ico_facebook {
      width: 8px; }
    footer .siteMap > ul {
      width: 25%;
      margin: 0;
      padding: 0 0 0 25px;
      float: left; }
      footer .siteMap > ul li {
        margin-bottom: 18px; }
        footer .siteMap > ul li:last-child {
          margin-bottom: 2px; }
        footer .siteMap > ul li ul {
          padding: 14px 0 20px 0; }
          footer .siteMap > ul li ul li {
            font-size: 14px;
            font-size: 1.4rem;
            letter-spacing: 0;
            margin: 10px 0; }
            footer .siteMap > ul li ul li:before {
              content: "ー";
              color: rgba(255, 255, 255, 0.5);
              position: absolute;
              padding-right: 6px; }
            footer .siteMap > ul li ul li a {
              white-space: normal;
              padding-left: 1.4em;
              display: inline-block; }
  footer small {
    color: rgba(255, 255, 255, 0.5);
    padding: 40px;
    display: block; }

/*	tablet
======================================== */
/*	smartPhone
======================================== */
@media (max-width: 599px) {
  footer .siteMap {
    padding: 20px; }
    footer .siteMap > ul {
      width: 100%;
      padding: 0;
      float: none; }
      footer .siteMap > ul li {
        margin: 20px 0 20px 0; }
        footer .siteMap > ul li ul {
          padding: 0 0 0 0; }
          footer .siteMap > ul li ul li {
            font-size: 14px;
            font-size: 1.4rem; }
  footer small {
    padding: 20px; } }

/* ============================
	form input
============================ */
[type=text],
[type=password],
[type=email],
[type=tel],
[type=url],
[type=month],
[type=week],
[type=date],
[type=time],
[type=datetime],
[type=search],
[type=color],
textarea {
  font-size: 18px;
  font-size: 1.8rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border: 1px solid #ccc;
  line-height: 1.4;
  margin: 5px 0;
  padding: 8px 10px;
  border-radius: 5px; }
  [type=text]:placeholder-shown,
  [type=password]:placeholder-shown,
  [type=email]:placeholder-shown,
  [type=tel]:placeholder-shown,
  [type=url]:placeholder-shown,
  [type=month]:placeholder-shown,
  [type=week]:placeholder-shown,
  [type=date]:placeholder-shown,
  [type=time]:placeholder-shown,
  [type=datetime]:placeholder-shown,
  [type=search]:placeholder-shown,
  [type=color]:placeholder-shown,
  textarea:placeholder-shown {
    color: #eaeaea; }
  [type=text]::-webkit-input-placeholder,
  [type=password]::-webkit-input-placeholder,
  [type=email]::-webkit-input-placeholder,
  [type=tel]::-webkit-input-placeholder,
  [type=url]::-webkit-input-placeholder,
  [type=month]::-webkit-input-placeholder,
  [type=week]::-webkit-input-placeholder,
  [type=date]::-webkit-input-placeholder,
  [type=time]::-webkit-input-placeholder,
  [type=datetime]::-webkit-input-placeholder,
  [type=search]::-webkit-input-placeholder,
  [type=color]::-webkit-input-placeholder,
  textarea::-webkit-input-placeholder {
    color: #eaeaea; }
  [type=text]:-moz-placeholder,
  [type=password]:-moz-placeholder,
  [type=email]:-moz-placeholder,
  [type=tel]:-moz-placeholder,
  [type=url]:-moz-placeholder,
  [type=month]:-moz-placeholder,
  [type=week]:-moz-placeholder,
  [type=date]:-moz-placeholder,
  [type=time]:-moz-placeholder,
  [type=datetime]:-moz-placeholder,
  [type=search]:-moz-placeholder,
  [type=color]:-moz-placeholder,
  textarea:-moz-placeholder {
    color: #eaeaea;
    opacity: 1; }
  [type=text]::-moz-placeholder,
  [type=password]::-moz-placeholder,
  [type=email]::-moz-placeholder,
  [type=tel]::-moz-placeholder,
  [type=url]::-moz-placeholder,
  [type=month]::-moz-placeholder,
  [type=week]::-moz-placeholder,
  [type=date]::-moz-placeholder,
  [type=time]::-moz-placeholder,
  [type=datetime]::-moz-placeholder,
  [type=search]::-moz-placeholder,
  [type=color]::-moz-placeholder,
  textarea::-moz-placeholder {
    color: #eaeaea;
    opacity: 1; }
  [type=text]:-ms-input-placeholder,
  [type=password]:-ms-input-placeholder,
  [type=email]:-ms-input-placeholder,
  [type=tel]:-ms-input-placeholder,
  [type=url]:-ms-input-placeholder,
  [type=month]:-ms-input-placeholder,
  [type=week]:-ms-input-placeholder,
  [type=date]:-ms-input-placeholder,
  [type=time]:-ms-input-placeholder,
  [type=datetime]:-ms-input-placeholder,
  [type=search]:-ms-input-placeholder,
  [type=color]:-ms-input-placeholder,
  textarea:-ms-input-placeholder {
    color: #eaeaea; }
  [type=text]:focus,
  [type=password]:focus,
  [type=email]:focus,
  [type=tel]:focus,
  [type=url]:focus,
  [type=month]:focus,
  [type=week]:focus,
  [type=date]:focus,
  [type=time]:focus,
  [type=datetime]:focus,
  [type=search]:focus,
  [type=color]:focus,
  textarea:focus {
    outline: none;
    border-color: #20264e; }
  [type=text].form-req,
  [type=password].form-req,
  [type=email].form-req,
  [type=tel].form-req,
  [type=url].form-req,
  [type=month].form-req,
  [type=week].form-req,
  [type=date].form-req,
  [type=time].form-req,
  [type=datetime].form-req,
  [type=search].form-req,
  [type=color].form-req,
  textarea.form-req {
    border-color: #d31f2c; }

select {
  padding: 2px; }

[type=radio],
[type=checkbox] {
  width: 18px;
  height: 18px;
  margin-right: 6px;
  vertical-align: middle; }

label {
  margin-right: 10px; }

input.btn {
  line-height: 1.8; }

/* ========================================
    tbl_form
======================================== */
.tbl_form {
  padding: 0 5%; }

.tbl_form table {
  width: 100%; }

.tbl_form th,
.tbl_form td {
  text-align: left;
  vertical-align: center;
  font-weight: normal;
  padding: 18px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1); }

.tbl_form tr:last-child th,
.tbl_form tr:last-child td {
  border-bottom: none; }

.tbl_form th {
  vertical-align: middle;
  width: 34%;
  padding-right: 6%; }

/*	tablet
======================================== */
/*	smartPhone
======================================== */
@media (max-width: 599px) {
  .tbl_form,
  .tbl_form tbody,
  .tbl_form thead,
  .tbl_form tr,
  .tbl_form td,
  .tbl_form th {
    display: block; }
  .tbl_form th {
    width: auto; }
  /* ========================================
    tbl_form
	======================================== */
  .tbl_form table {
    margin-bottom: 10px; }
    .tbl_form table th {
      padding: 10px 0 0 0;
      font-weight: bold;
      border: none; }
    .tbl_form table td {
      padding: 0 0 10px 0;
      border: none; } }

/* ============================
	prom
============================ */
html,
body.home,
body.home .container,
body.home .prom,
body.home .slickslider_prom,
body.home .slickslider_prom div {
  height: 100%; }

.prom {
  position: relative; }
  .prom img {
    display: block; }

.slickslider_prom {
  background: #2a2a2a; }
  .slickslider_prom div {
    background-position: left bottom 32px, right 60px, left center;
    background-repeat: no-repeat;
    background-size: 32%, 32%, cover;
    background-size: 380px, 380px, cover;
    background-blend-mode: multiply; }
  .slickslider_prom div.img_01 {
    background-image: url(/-/media/AEC/jp/img/prom_bottomleft.png), url(/-/media/AEC/jp/img/prom_topright.png), url(/-/media/AEC/jp/img/01); }
  .slickslider_prom div.img_02 {
    background-image: url(/-/media/AEC/jp/img/prom_bottomleft.png), url(/-/media/AEC/jp/img/prom_topright.png), url(/-/media/AEC/jp/img/02); }
  .slickslider_prom div.img_03 {
    background-image: url(/-/media/AEC/jp/img/prom_bottomleft.png), url(/-/media/AEC/jp/img/prom_topright.png), url(/-/media/AEC/jp/img/03); }
  .slickslider_prom div.img_04 {
    background-image: url(/-/media/AEC/jp/img/prom_bottomleft.png), url(/-/media/AEC/jp/img/prom_topright.png), url(/-/media/AEC/jp/img/04); }

.catchphrase_topright {
  position: absolute;
  right: 4.5%;
  right: 50px;
  top: 120px;
  z-index: 1000;
  width: 14%;
  width: 150px; }

.catchphrase_bottomleft {
  position: absolute;
  left: 4.5%;
  left: 50px;
  bottom: 90px;
  z-index: 1000;
  width: 10%;
  width: 100px; }

/* ============================
	contents
============================ */
span.date {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal; }

.news {
  line-height: 1.2;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 32px;
  background: #1e1e26;
  padding: 6px 10%;
  color: white; }
  .news strong {
    float: left;
    width: 80px;
    display: block; }
  .news dl {
    float: left;
    display: block; }
    .news dl dt {
      float: left;
      width: 100px;
      display: block; }
    .news dl dd {
      float: left; }
      .news dl dd a {
        color: #fff; }

.panel_nav {
  width: 75%;
  z-index: 2000;
  position: absolute;
  left: 0;
  top: 60px;
  display: none; }

.banner {
  width: 20%;
  max-width: 220px;
  z-index: 1000;
  position: absolute;
  right: 50px;
  bottom: 70px; }
  .banner ul li {
    background-color: black;
    margin-top: 20px; }
    .banner ul li p {
      margin: 0;
      display: flex;
      justify-content: center;
      align-items: center;
      background-size: cover;
      background-repeat: no-repeat;
      background-position: center;
      cursor: pointer; }
      .banner ul li p:hover {
        opacity: 1; }
    .banner ul li span {
      display: block;
      font-weight: bold;
      width: 100%;
      height: 0;
      text-align: center;
      color: white;
      padding-bottom: 60%;
      font-size: 18px;
      font-size: 1.8rem;
      position: relative;
      top: 50px; }
      .banner ul li span em {
        font-weight: normal;
        font-style: normal;
        font-size: 12px;
        font-size: 1.2rem;
        display: block;
        display: none; }

.banner li.banner_service p {
  opacity: 0.8;
  background-image: url(/-/media/AEC/jp/img/banner_service.jpg); }

.banner li.banner_product p {
  opacity: 0.8;
  background-image: url(/-/media/AEC/jp/img/banner_product.jpg); }

.ttl_service {
  font-size: 30px;
  font-size: 3rem;
  line-height: 2;
  text-align: center;
  margin: 0;
  padding: 20px 0 80px 0; }

.home .clm_servicepanel {
  margin-top: -60px;
  height: 100vh; }

.clm_servicepanel {
  height: 600px; }
  .clm_servicepanel .item a {
    display: block;
    width: 100%;
    height: 100%; }
  .clm_servicepanel .item a:hover > div {
    display: block;
    background-color: #1e244a;
    width: 80%;
    height: 80%;
    margin: 0 10%; }
  .clm_servicepanel .item a > div {
    position: relative;
    top: 50%;
    transform: translateY(-50%);
    background-color: rgba(30, 36, 74, 0.9);
    width: 100%;
    height: 100%;
    text-align: center; }
    .clm_servicepanel .item a > div div {
      position: relative;
      top: 50%;
      transform: translateY(-50%); }
      .clm_servicepanel .item a > div div img {
        height: 38px; }
      .clm_servicepanel .item a > div div h2 {
        font-size: 20px;
        font-size: 2rem;
        font-size: 16px;
        font-size: 1.6rem;
        font-weight: 400;
        color: white;
        margin: 10px 0;
        line-height: 1.4; }
      .clm_servicepanel .item a > div div p {
        color: #8da1ce;
        font-size: 14px;
        font-size: 1.4rem;
        margin: 0; }
  .clm_servicepanel .item span {
    height: 100%; }
    .clm_servicepanel .item span > div {
      padding: 10% 0;
      margin: 0 10%;
      position: relative;
      top: 10%;
      background-color: rgba(30, 36, 74, 0.9);
      width: 80%;
      height: 80%;
      text-align: center; }
      .clm_servicepanel .item span > div img {
        height: 46px; }
      .clm_servicepanel .item span > div h2 {
        font-size: 20px;
        font-size: 2rem;
        font-weight: 400;
        color: white;
        margin: 20px 0;
        line-height: 1.4; }
      .clm_servicepanel .item span > div p {
        color: #8da1ce;
        font-size: 16px;
        font-size: 1.6rem;
        margin: 0; }

.clm_servicepanel.en .item span > div {
  padding: 16% 0; }

.clm_servicepanel .item {
  background-repeat: no-repeat;
  background-position: center; }

.clm_servicepanel .item:nth-child(1),
.clm_servicepanel .item.service_01 {
  background-image: url(/-/media/AEC/jp/img/service_1.jpg); }

.clm_servicepanel .item:nth-child(2),
.clm_servicepanel .item.service_02 {
  background-image: url(/-/media/AEC/jp/img/service_2.jpg); }

.clm_servicepanel .item:nth-child(3),
.clm_servicepanel .item.service_03 {
  background-image: url(/-/media/AEC/jp/img/service_3.jpg); }

.clm_servicepanel .item:nth-child(4),
.clm_servicepanel .item.service_04 {
  background-image: url(/-/media/AEC/jp/img/service_4.jpg); }

.clm_servicepanel .item:nth-child(5),
.clm_servicepanel .item.service_05 {
  background-image: url(/-/media/AEC/jp/img/service_5.jpg); }

.clm_servicepanel .item:nth-child(6),
.clm_servicepanel .item.service_06 {
  background-image: url(/-/media/AEC/jp/img/service_6.jpg); }

.clm_servicepanel .item:nth-child(7),
.clm_servicepanel .item.service_07 {
  background-image: url(/-/media/AEC/jp/img/service_7.jpg); }

.clm_servicepanel .item:nth-child(8),
.clm_servicepanel .item.service_08 {
  background-image: url(/-/media/AEC/jp/img/service_8.jpg); }

.clm_servicepanel .item:nth-child(9),
.clm_servicepanel .item.service_09 {
  background-image: url(/-/media/AEC/jp/img/service_9.jpg); }

.clm_servicepanel_local {
  margin-top: 60px;
  padding-top: 60px;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .clm_servicepanel_local .item {
    background: none; }
    .clm_servicepanel_local .item a {
      background-color: #20264e;
      display: block;
      height: 100%; }
      .clm_servicepanel_local .item a div {
        width: 100%;
        height: 100%;
        text-align: center;
        padding: 10% 0; }
        .clm_servicepanel_local .item a div img {
          height: 30px; }
        .clm_servicepanel_local .item a div h2 {
          font-size: 14px;
          font-size: 1.4rem;
          color: white;
          margin: 10px;
          line-height: 1.4; }
      .clm_servicepanel_local .item a.current, .clm_servicepanel_local .item a:hover {
        background-color: #5c6fa9; }

aside {
  position: fixed;
  width: 300px; }

.bg_ttl .clm_servicepanel {
  height: auto; }

.bg_ttl .item {
  height: 300px; }

.bg_ttl nav ul {
  list-style: none;
  margin: 0;
  padding: 0; }
  .bg_ttl nav ul li a {
    color: #fff;
    display: block;
    text-align: center;
    padding: 30px 0;
    background: #20264e; }
    .bg_ttl nav ul li a:hover, .bg_ttl nav ul li a.current {
      background: #5c6fa9; }

main {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding-right: 50px;
  padding-left: 350px; }
  main .content {
    width: 100%;
    min-height: 500px;
    padding-bottom: 60px; }

main.w_non-liquid {
  max-width: 1000px;
  padding-right: 0;
  padding-left: 0; }

.box_pad {
  padding: 30px 30px; }

.list_item {
  margin: 0;
  padding-left: 20px; }
  .list_item li {
    line-height: 1.6;
    margin-bottom: 5px; }

.box_staff h3 {
  margin-top: 10px;
  margin-bottom: 40px; }

.box_staff h4 {
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: normal;
  margin-top: 0;
  margin-bottom: 20px; }

.box_staff .photo_left {
  text-align: right;
  font-size: 12px;
  font-size: 1.2rem;
  float: left;
  margin-right: 6%;
  margin-bottom: 20px;
  width: 30%; }
  .box_staff .photo_left img {
    width: 100%; }

/*	COMPANY PAGE
============================ */
.greeting img {
  width: 30%;
  float: right;
  margin: 0 0 5% 5%; }

.greeting .name {
  margin-top: 40px; }
  .greeting .name strong {
    font-size: 28px;
    font-size: 2.8rem; }

/*	RECRUIT PAGE
============================ */
.clm_recruitcard .item_between {
  background: white;
  margin-bottom: 30px; }
  .clm_recruitcard .item_between a {
    color: #282828; }
    .clm_recruitcard .item_between a:hover {
      opacity: 0.5; }
  .clm_recruitcard .item_between dl {
    margin: 0;
    padding: 10px 8% 14px; }
    .clm_recruitcard .item_between dl dt {
      font-weight: bold;
      line-height: 1.4; }
    .clm_recruitcard .item_between dl dd {
      margin: 0; }

.w_860 {
  max-width: 860px;
  margin: 0 auto; }

/*	NEWS PAGE
============================ */
.list-style ul {
  padding: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1); }
  .list-style ul a {
    color: #282828;
    display: block;
    padding: 20px 10% 20px 0%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    background: url(/-/media/AEC/jp/img/r-gr.png) no-repeat 97% center;
    background-size: 10px;
    text-decoration: none; }
    .list-style ul a span.date {
      display: table-cell;
      width: 10%;
      padding: 0 20px 0 20px; }
    .list-style ul a p.ttl_news {
      display: table-cell;
      width: 100%; }
    .list-style ul a:hover {
      background-position: 98% center; }

.ttl_newsmedia {
  text-align: center;
  font-size: 30px;
  font-size: 3rem; }
  .ttl_newsmedia .date {
    display: block;
    margin-bottom: 10px; }

.box_detailPost {
  margin-top: 40px;
  padding: 50px 70px;
  line-height: 2;
  background: white; }
  .box_detailPost img, .box_detailPost iframe {
    margin: 20px; }

.detailPost_mainPhoto {
  width: 100%;
  margin-top: 10px; }

.page_ctrl {
  text-align: center;
  margin-top: 60px; }
  .page_ctrl .current {
    font-weight: bold;
    color: #282828; }
  .page_ctrl span,
  .page_ctrl a {
    color: #6495ed;
    display: inline-block;
    margin: 0;
    padding: 10px 12px;
    background-size: 8px;
    background-repeat: no-repeat; }
  .page_ctrl .prev, .page_ctrl .next {
    padding: 10px 24px;
    background-repeat: no-repeat;
    background-size: 10px; }
    .page_ctrl .prev:hover, .page_ctrl .next:hover {
      text-decoration: none; }
  .page_ctrl .next {
    margin-left: 20px;
    padding-right: 50px;
    background-image: url(/-/media/AEC/jp/img/r-bk.png);
    background-position: 85% center; }
  .page_ctrl .prev {
    margin-right: 20px;
    padding-left: 50px;
    background-image: url(/-/media/AEC/jp/img/l-bk.png);
    background-position: 15% center; }

/*	CONTACT PAGE
============================ */
.box_privacy {
  margin-top: 30px;
  overflow-x: hidden;
  overflow-y: auto;
  height: 200px;
  padding: 20px;
  border: 1px solid rgba(0, 0, 0, 0.1); }
  .box_privacy p, .box_privacy ul, .box_privacy ol {
    font-size: 12px;
    font-size: 1.2rem;
    margin-bottom: 30px; }
  .box_privacy h5 {
    margin-top: 0;
    margin-bottom: 4px; }
  .box_privacy ol {
    padding-left: 1.4em; }

.checkarea {
  margin-bottom: 60px; }
  .checkarea input[type=checkbox] {
    border: 1px solid #C00; }

.box_form .tbl_form {
  width: 75%;
  float: left; }

.telnum {
  width: 25%;
  float: right;
  text-align: center;
  border: 2px solid rgba(0, 0, 0, 0.1);
  padding: 14px; }
  .telnum strong {
    font-size: 20px;
    font-size: 2rem; }
    .telnum strong span {
      padding-right: 12px; }

/*	desktop short
======================================== */
/*	tablet
======================================== */
@media (max-width: 959px) {
  aside {
    position: relative;
    width: 100%;
    margin-bottom: 40px;
    margin-top: -60px; }
  .bg_ttl .item {
    height: auto; }
  .bg_ttl nav ul li a {
    padding: 14px 0; }
  main {
    padding-right: 0;
    padding-left: 0; }
  main.w_non-liquid {
    max-width: 1000px;
    padding-right: 0;
    padding-left: 0; }
  /* ============================
		contents
	============================ */
  .panel_nav {
    width: 100%;
    left: 0;
    top: 0; }
  .home .clm_servicepanel {
    margin-top: 0;
    height: 380px; }
    .home .clm_servicepanel .item a:hover > div {
      padding: 0; }
    .home .clm_servicepanel .item a > div h2 {
      font-size: 10px;
      font-size: 1rem;
      margin: 8px 0;
      padding: 0; }
    .home .clm_servicepanel .item a > div p {
      font-size: 11px;
      font-size: 1.1rem; }
  .banner {
    width: 40%; }
  .clm_servicepanel {
    height: 380px; }
    .clm_servicepanel .item a:hover > div {
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0; }
    .clm_servicepanel .item a > div {
      letter-spacing: 0;
      padding: 0;
      position: relative;
      top: 0%;
      transform: translateY(0%); }
      .clm_servicepanel .item a > div div img {
        height: 26px !important; }
      .clm_servicepanel .item a > div div h2 {
        font-size: 10px;
        font-size: 1rem;
        margin: 8px 0;
        padding: 0; }
      .clm_servicepanel .item a > div div p {
        font-size: 11px;
        font-size: 1.1rem;
        line-height: 1.2; }
    .clm_servicepanel .item span > div {
      height: auto; }
      .clm_servicepanel .item span > div img {
        height: 30px; }
      .clm_servicepanel .item span > div h2 {
        font-size: 20px;
        font-size: 2rem;
        margin: 10px 0; }
  .clm_servicepanel_local .item a div img {
    height: 26px !important; }
  .clm_servicepanel_local .item a div h2 {
    font-size: 12px;
    font-size: 1.2rem;
    letter-spacing: 0px;
    font-weight: normal; }
  .clm_servicepanel_local .item a.current, .clm_servicepanel_local .item a:hover {
    background-color: #5c6fa9; }
  /*	CONTACT PAGE
	============================ */
  .box_form .tbl_form {
    width: 100%;
    float: none; }
  .telnum {
    width: 100%;
    float: none;
    padding: 14px; } }

/*	smartPhone
======================================== */
@media (max-width: 599px) {
  aside {
    margin-top: -20px; }
  /* ============================
		prom
	============================ */
  .slickslider_prom div {
    background-size: 80%, 80%, cover; }
  .catchphrase_topright {
    right: 40px;
    top: 100px;
    width: 160px; }
  .catchphrase_bottomleft {
    left: auto;
    right: 40px !important;
    top: 200px;
    width: 100px; }
  /* ============================
		contents
	============================ */
  span.date {
    font-size: 10px;
    font-size: 1rem; }
  .news {
    padding: 8px 4% 6px 4%; }
    .news strong {
      display: none; }
    .news dl {
      width: 100%;
      font-size: 12px;
      font-size: 1.2rem; }
      .news dl dt {
        width: 25%; }
      .news dl dd {
        overflow: hidden;
        width: 75%;
        letter-spacing: 0;
        white-space: nowrap; }
  .banner {
    width: 80%;
    max-width: 80%;
    right: 10%;
    bottom: 60px; }
    .banner ul li {
      width: 46%;
      margin: 0 2%;
      float: left; }
      .banner ul li span {
        font-size: 14px;
        font-size: 1.4rem;
        height: 80px;
        padding: 0;
        top: 30px; }
        .banner ul li span em {
          display: none; }
  .ttl_service {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5;
    padding: 20px 0 40px 0; }
  .box_pad {
    padding: 20px; }
  .list_item li {
    letter-spacing: 0; }
  /*	COMPANY PAGE
	============================ */
  .greeting img {
    width: 44%; }
  .greeting .name {
    margin-top: 30px; }
    .greeting .name strong {
      font-size: 24px;
      font-size: 2.4rem;
      line-height: 1.4; } }




/*======================================
    CONTACT FORM
======================================*/

/* PC バージョン */
/*
form[id^="wffm"] {
    box-sizing: inherit;
    display: block;
    margin-top: 0em;
    line-height: 1.8;
    font-size: 1.6rem;
    text-size-adjust: 100%;
    border-collapse: collapse;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 1px;
    box-sizing: inherit;
}
form[id^="wffm"] .bg_white.box_pad.w_860 {
    line-height: 1.8;
    font-size: 1.6rem;
    text-size-adjust: 100%;
    border-collapse: collapse;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 1px;
}
form[id^="wffm"] .has-error.has-feedback{
    display: none;
}
form[id^="wffm"] .has-error .help-block.field-validation-error {
    color: #ee0101;
    font-size: 80%;
}

form[id^="wffm"] .bg_white.box_pad.cl .tbl_form {
    width: 75%;
    float: left;
    padding: 0 5%;
    box-sizing: inherit;
    display: block;
    line-height: 1.8;
    font-size: 1.6rem;
    text-size-adjust: 100%;
    border-collapse: collapse;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 1px;
    box-sizing: inherit;
    vertical-align: middle;
}

form[id^="wffm"] .bg_white.box_pad.w_860 .tbl_form {
    padding: 0 5%;
    box-sizing: inherit;
    display: block;
    line-height: 1.8;
    text-size-adjust: 100%;
    border-collapse: collapse;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 1px;
}


form[id^="wffm"] .tbl_form .form-group {
    display: flex;
    padding: 18px 0;
    width: 100%;
    font-size: 1.6rem;
    text-size-adjust: 100%;
    border-collapse: collapse;
    border: 0px;
    box-sizing: inherit;
    border-spacing: 2px;
    line-height: 1.8;
    color: #282828;
    -webkit-font-smoothing: antialiased;
    letter-spacing: 1px;
    box-sizing: inherit;
    vertical-align: inherit;
    border-color: inherit;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
     flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
}

form[id^="wffm"] .form-submit-border {
    width: 100%;
    text-align: center
}


form[id^="wffm"] .control-label {
    display: table-cell;
    vertical-align: middle;
    width: 34%;
    padding-right: 6%;

    text-align: left;
    font-weight: normal;

    border-collapse: collapse;
    border-spacing: 2px;
    color: #282828;
    font-size: 1.6rem;
    line-height: 1.8;
    letter-spacing: 1px;
    text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    margin-right: 0;
}
form[id^="wffm"] input {
    display: table-cell;
    text-align: left;
    font-weight: normal;
    font-size: 1.8rem;
    line-height: 1.4;
    margin: 5px 0;
    padding: 8px 10px;
    border-radius: 5px;
}
form[id^="wffm"] textarea {
    width: 66%;

    font-size: 1.8rem;
    border: 1px solid #ccc;
    line-height: 1.4;
    margin: 5px 0;
    padding: 8px 10px;
    border-radius: 5px;

    font-family: monospace;
    -webkit-appearance: textarea;
    background-color: white;
    -webkit-rtl-ordering: logical;
    flex-direction: column;
    resize: auto;
    cursor: text;
    white-space: pre-wrap;
    overflow-wrap: break-word;
    text-rendering: auto;
    color: initial;
    letter-spacing: normal;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    display: table-cell;
    text-align: start;
    -webkit-writing-mode: horizontal-tb !important;
    text-size-adjust: 100%;
    border-collapse: collapse;
    -webkit-font-smoothing: antialiased;
}

form[id^="wffm"] .bg_white.box_pad.w_860 label[for="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_10__Value"] {
    visibility: hidden;
}
form[id^="wffm"] .bg_white.box_pad.w_860 label[for="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_9__Value"] {
    visibility: hidden;
}

form[id^="wffm"] .col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 {
    float: left;
    padding-right: 0.5em;
}

form[id^="wffm"] .has-error .help-block.field-validation-error {
    color: #ee0101;
}

form[id^="wffm"] .bg_white.box_pad.w_860 .validation-summary-errors {
    visibility: hidden;
    height: 0;
}

form[id^="wffm"] span.help-block {
    display: flex;
    line-height: 1.5;
    color: #666;
    font-size: 80%;
    width: 100%;
}

form[id^="wffm"] .required-field .control-label:after {
    content: " *";
    color: #C00;
    box-sizing: inherit;
    text-align: left;
    font-weight: normal;
    font-size: 1.6rem;
    text-size-adjust: 100%;
    border-collapse: collapse;
    border-spacing: 2px;
    line-height: 1.8;
    letter-spacing: 1px;
}

form[id^="wffm"] .bg_white.box_pad.w_860 select {
    padding: 2px;
    text-transform: none;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
    box-sizing: inherit;
    overflow: visible !important;
    border-radius: 0px;
    border-color: rgb(169, 169, 169);
    -webkit-appearance: menulist;
    align-items: center;
    white-space: pre;
    -webkit-rtl-ordering: logical;
    color: black;
    background-color: white;
    cursor: default;
    border-width: 1px;
    border-style: solid;
    border-image: initial;
    text-rendering: auto;
    letter-spacing: normal;
    word-spacing: normal;
    text-indent: 0px;
    text-shadow: none;
    display: inline-block;
    text-align: start;
}


form[id^="wffm"] .form-submit-border .btn {
    line-height: 1.8;
    font-size: 1.8rem;
    display: inline-block;
    position: relative;
    border: 0;
    cursor: pointer;
    width: 60%;
    padding: 16px;
    border-radius: 100px;
    text-decoration: none;
    transition: all 0.2s ease;
    -webkit-appearance: button;
    overflow: visible;
    margin: 0;
    box-sizing: inherit;
    align-items: flex-start;
    text-align: center;
    user-select: none;
    white-space: pre;
    -webkit-rtl-ordering: logical;
    text-rendering: auto;
    letter-spacing: normal;
    word-spacing: normal;
    text-transform: none;
    text-indent: 0px;
    text-shadow: none;
    -webkit-writing-mode: horizontal-tb !important;
    text-size-adjust: 100%;
    border-collapse: collapse;
    -webkit-font-smoothing: antialiased;
}

form[id^="wffm"] .tbl_form div:last-child {
    border-bottom: none;
}
*/
/* jp entry form*/
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(9),
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(11) {
    border-bottom: none;
    padding-top: 18px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}
/* en entry form*/
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(8),
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(10) {
    border-bottom: none;
    padding-top: 18px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
}

/* jp entry form*/
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(10),
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(12) {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 18px;
    padding-left: 0px;
}
/* en entry form*/
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(9),
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(11) {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 18px;
    padding-left: 0px;
}
/* jp entry form */
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(9) .control-label,
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(10) .control-label,
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(11) .control-label,
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(12) .control-label {
    padding: 0 0;
}

/* en entry form */
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(8) .control-label,
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(9) .control-label,
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(10) .control-label,
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(11) .control-label {
    padding: 0 0;
}
/* jp entry form */
form[id="wffm5528655ab4d147fa8111de475de1c39f"] .tbl_form div:nth-child(12) .control-label {
    line-height: 0.8;
}
/* en entry form */
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] .tbl_form div:nth-child(11) .control-label {
    line-height: 0.8;
}

form[id^="wffm"] input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_3__Value"],
form[id^="wffm"] input[id="wffm33693037d9514f8ab67c0947ac15a877_Sections_0__Fields_3__Value"],
form[id^="wffm"] input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_5__Value"],
form[id^="wffm"] input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_4__Value"],
form[id^="wffm"] input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_8__Value"],
form[id^="wffm"] input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_7__Value"]
{
    width: 66%;
}

/* file input */
form[id="wffm5528655ab4d147fa8111de475de1c39f"] input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_9__Value"],
form[id="wffm5528655ab4d147fa8111de475de1c39f"] input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_10__Value"],
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_8__Value"],
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_9__Value"]
{
    font-size: 100%;
    border-radius: 0px;
    display:none;
    margin: 0px;
    padding: 0px;
}




/* jp-en entry form*/
form[id="wffm5528655ab4d147fa8111de475de1c39f"] input[type=checkbox],
form[id="wffm288d6f828c574a95ae381f7a14b0695d"] input[type=checkbox] {
    margin-right: 6px;
}


@media (max-width: 959px) {
    form[id^="wffm"] .bg_white.box_pad.cl .tbl_form {
        width: 100%;
        float: none;
    }
}


@media (max-width: 599px) {
    form[id^="wffm"] .form-submit-border .btn {
        width: 80%;
    }

    form[id^="wffm"] .bg_white.box_pad.cl .tbl_form {
        width: 100%;
        float: none;
        margin-bottom: 10px;
        display: block;
    }
    form[id^="wffm"] .tbl_form .form-group {
        display: inline-block;
        border: none;

        padding: 10px 0 0 0;
    }
    form[id^="wffm"] .control-label {
        width: auto;
        display: block;
        padding: 10px 0 0 0;
        font-weight: bold;
    }

    form[id^="wffm"] .tbl_form .form-group .form-control {
        padding: 8px 10px;
    }

    input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_3__Value"],
    input[id="wffm33693037d9514f8ab67c0947ac15a877_Sections_0__Fields_3__Value"],
    input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_5__Value"],
    input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_4__Value"],
    input[id="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_8__Value"],
    input[id="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_7__Value"]
    {
        width: 100%;
    }

    form[id^="wffm"] textarea {
        width: 100%;
    }

    form[id^="wffm"] span.help-block {
        padding: unset;
    }
    form[id^="wffm"] .bg_white.box_pad.w_860 label[for="wffm288d6f828c574a95ae381f7a14b0695d_Sections_0__Fields_9__Value"] {
      /*  display:none;*/
    }
    form[id^="wffm"] .bg_white.box_pad.w_860 label[for="wffm5528655ab4d147fa8111de475de1c39f_Sections_0__Fields_10__Value"] {
      /*  display:none;*/
    }
}


/*============================================================
  news Page
============================================================*/
.news #main .inner{
  padding: 95px 10px;
}
.news_main{
  /*width:70%;
  float:left;*/
}
.news_sub{
  width:25%;
  float: right;
}
.news #main .top_head{
  color:#006ab7;
  font-size: 100%;
}
#main .news_sub ul{
  margin-bottom: 6em;
  font-size:75%;
}
#main .news_sub a{
  display: block;
  padding: 1.25em 0;
  border-bottom: 1px dotted #999;
  text-decoration:none;
  font-weight: bold;
}
#main .news_sub a:hover{
  color:#006ab7;
  border-bottom: 1px dotted #006ab7;
}
#main .news_sub span{
  color:#999;
  font-size: 88%;
  line-height:2;
  font-weight:normal;
}

#main .news_main .news_item{
  padding:40px 0;
  border-top: 1px solid #006ab7;
}
#main .news_main .news_item h2{
  color:#006ab7;
  padding-bottom:15px;
  border-bottom: 1px dotted #999;
  font-size:125%;
}
#main .news_main .news_item .date{
  color:#666;
  line-height:1;
}
#main .news_main .news_item i{
  color:#006ab7;
  background:#cbe3f4;
  padding: 3px 6px;
  margin-left:1em;
}
#main .news_main  .news_exp{ margin-bottom: 2em;}
#main .news_main .page_nav{
  padding:40px 0;
  border-top: 1px solid #006ab7;
  text-align:center;
  line-height:1;
}
#main .page_nav li{
  display: inline-block; *display: inline; zoom: 1;
  margin: 0 0.15em;
  line-height:1;
}
#main .page_nav a{
  display:block;
  text-decoration:none;
  color:#006ab7;
  padding: 5px 8px;
}
#main .page_nav .next,
#main .page_nav .prev{
  display:block;
  text-decoration:none;
}

#main .page_nav .number{
  background: #cce1f1;
  border:1px solid #cce1f1;
}
#main .page_nav .number:hover{
  border:1px solid #006ab7;
}
#main .page_nav .now{
  background: #006ab7;
  border:1px solid #006ab7;
  color:#fff;
}



#main .news_main .page_single_nav{
  padding:40px 0;
  border-top: 1px solid #006ab7;
  text-align:center;
  line-height:1;
}
#main .page_single_nav li{
  line-height:1;
  float:left;
  width:50%;
}
#main .page_single_nav a{
  display: inline-block; *display: inline; zoom: 1;
  text-decoration:none;
  color:#006ab7;
  padding: 5px 1.5em;
}
#main .page_single_nav .next{
  float:right;
  text-align:right;
}
#main .page_single_nav .prev{
}
#main .page_single_nav .center{
  text-align: center;
}

#main .page_single_nav a{
  background: #cce1f1;
  border:1px solid #cce1f1;
}
#main .page_single_nav a:hover{
  border:1px solid #006ab7;
}

#main .news_main .page_single_nav_list{
  padding: 0;
  text-align:center;
  line-height:1;
}

#main .page_single_nav_list a{
  display: inline-block; *display: inline; zoom: 1;
  text-decoration:none;
  color:#006ab7;
  padding: 5px 1.5em;
}

#main .page_single_nav_list a{
  background: #ffffff;
  border:1px solid #cce1f1;
  font-size: 88%;
}
#main .page_single_nav_list a:hover{
  border:1px solid #006ab7;
}


/*======================================
    GROUP COMPANY
======================================*/
/* default start */
.sec_top {
    margin: 70px 0 0 0;
    padding: 10px 0;
}

.group_sec {
    display: block;
    width: 100%;
    padding: 40px 0;
}

.group_sec .inner {
    width: 100%;
    padding: 0 10px;
    text-align: left;
    margin: 0 auto;
    position: relative;
}

.group_sec .inner div {
    margin: 0;
    padding: 0;
    font-style: normal;
    text-align: left;
    font-size: 100%;
    line-height: 1.2;
    color: #3c3c3c;
    width: auto;
    zoom: 1;
}
.group_sec .inner div:after {
	display: block;
	clear: both;
	content: "";
}
.group_sec .inner div .grp_jp {
    font-size: 112.5%;
    color: #084ea1;
    margin-top: 2em;
    padding-bottom: 5px;
    border-bottom: 2px solid #084ea1;
}
.group_sec .inner div .grp_wd {
    font-size: 112.5%;
    color: #084ea1;
    margin-top: 2em;
    padding-bottom: 5px;
    border-bottom: 2px solid #084ea1;
}

.group_sec ul {
    padding: 10px 0;
    line-height: 1.5;
    font-size: 88%;
    zoom: 1;
    width: auto;
    margin: 0;
    font-style: normal;
    text-align: left;
    color: #3c3c3c;
    display: block;
    list-style-type: disc;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
    padding-inline-start: 40px;
}


.group_sec li {
    text-align: center;
    float: left;
    padding: 0 5px;
    margin-bottom: 0;
    width: 25%;
    list-style: none;
    zoom: 1;
    margin: 0;
    font-style: normal;
    font-size: 100%;
    line-height: 1.2;
    color: #3c3c3c;
    display: list-item;
}

.group_sec li a {
    text-decoration: none;
    color: #000;
    background: transparent;
    transition: 0.5s;
    box-sizing: border-box;
    cursor: pointer;
}

.group_sec div.img {
    height: 160px;
    position: relative;
    width: 100%;
    min-height: 140px;
    margin: 0;
    overflow: hidden;
    border-bottom: 1px dotted #ccc;
}

.group_sec ul img {
    position: absolute;
    top: 40%;
    left: 50%;
    -webkit-transform: translate(-50%, -40%);
    -ms-transform: translate(-50%, -40%);
    transform: translate(-50%, -40%);
    max-width: 70%;
    max-height: 40%;
    width: auto;
    height: auto;
    padding-bottom: 0;
    border-bottom: none;
    backface-visibility: hidden;
    transition: 0.5s;
    vertical-align: top;
    margin-top: 0;
    margin-bottom: 0;
    font-size: 12px;
    border: 0;
    outline: none;
}

.group_sec .name {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 20;
    color: #333;
    font-weight: bold;
    -webkit-transition-duration: 1s;
    transition-duration: 1s;
    font-size: 0.7rem;
    line-height: 1.2em;
    word-break: break-word;
    text-align: center;
    width: 100%;
    background-position: center bottom center top, center top;
    background-repeat: repeat , repeat, no-repeat;
    background-size: 100% 100%, auto, cover;
}


@media (max-width: 959px) {
    .group_sec .inner div .grp_jp,
    .group_sec .inner div .grp_wd {
    margin-top: 2em;
    padding-left: 2%;
    /*
    height: 50px;
    line-height: 50px;
    */
  }
}
@media (max-width: 959px) {
  .grp_jp::after {
      content: "";
      position: relative;
      border-right: 5px solid #084ea1;
      border-bottom: 5px solid #084ea1;
      width: 15px;
      top: 0px;
      height: 15px;
      transform: rotate(45deg);
      float: right;
	}
	.grp_wd::after {
      content: "";
  		position: relative;
      border-right: 5px solid #084ea1;
      border-bottom: 5px solid #084ea1;
      width: 15px;
      top: 0px;
      height: 15px;
      transform: rotate(45deg);
      float: right;
	}
  .grp_jp.ac::after {
      content: "";
      position: relative;
      border-right: 5px solid #084ea1;
      border-bottom: 5px solid #084ea1;
      width: 15px;
      top: 5px;
      height: 15px;
      transform: rotate(225deg);
      float: right;
  }
  .grp_wd.ac::after {
      content: "";
      position: relative;
      border-right: 5px solid #084ea1;
      border-bottom: 5px solid #084ea1;
      width: 15px;
      top: 5px;
      height: 15px;
      transform: rotate(225deg);
      float: right;
  }


}


.group_sec .js-ac {
	width: auto;
    zoom: 1;
}
.group_sec .js-ac01 {
	width: auto;
    zoom: 1;
}

.js-ac .grouplogo {
  display: none;
}
.js-ac01 .grouplogo {
  display: none;
}

form[id^="wffm"] {
    display: none;
}

#entry_jp.tbl_form td,
#entry_en.tbl_form td,
#contact.tbl_form td
{
    border-bottom: 0;
    padding-bottom: 0;
}

#entry_jp.tbl_form td[id^="Sections"],
#entry_en.tbl_form td[id^="Sections"],
#contact.tbl_form td[id^="Sections"]
{

    border-bottom:1px solid rgba(0, 0, 0, 0.1);
    padding-top: 0;
    padding-bottom: 18px;

}
/*
#entry_jp.tbl_form td[id="Sections_0__Fields_7_error"] {
    padding-bottom: 0;
    border-bottom: 0;
}

#entry_jp.tbl_form td[id="Sections_0__Fields_10_error"] {
    display: none;
}
*/
#entry_jp.tbl_form #Sections_0__Fields_10_error {
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 18px;
}
#entry_en.tbl_form td[id="Sections_0__Fields_6_error"] {
    padding-bottom: 0;
    border-bottom: 0;
}

#entry_en.tbl_form td[id="Sections_0__Fields_9_error"] {
    display: none;
}

input.file.upload {
    margin: 0;
    padding: 1px;
    line-height: 1.15;
    font-size: 17px;
}

.group_sec li {
	position: relative;
   	left: -20px;
}

@media (max-width: 959px) {
	.group_sec li {
		padding: 0 3px;
    	width: 33%;
	}
}

@media (max-width: 599px) {
	.group_sec li {
		padding: 0 3px;
    	width: 50%;
	}
}

.grp_jp div.grp_sub, .grp_wd div.grp_sub {
	font-size: 112.5%;
    color: #084ea1;
    width: 91%;
    display: inline-block;
}

@media (max-width: 420px) {
  input[id^="Sections"], textarea[id^="Sections"]{ 
    max-width: 75%;
  }
}

@media (max-width: 320px) {
  input[id^="Sections"], textarea[id^="Sections"] {
    max-width: 65%;
  }
}

.Ttl{
  font-size: 36px;
  font-weight: normal;
}
.sdgsLogo{
  width: 100%;
}
.sdgsAEC{
  margin-bottom: 25px;
}
.sdgsAEC p{
  font-size: 21px;
  text-align: center;
}
.sdgsLogoFlex img{
  width: 90px;
}
.sdgsLogoFlex{
  text-align: center;
}
.sdgsIcon img{
  height: 70px;
}
.sdgsFlex{
    display: flex;
    padding-bottom: 50px;
}
.sdgsImg{
    width: 35%;
}
.sdgsDisc{
    width: 60%;
    padding-left: 60px;
}
.sdgsTtl{
    font-size: 21px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}
.sdgsTtl span{
  color: #3c3c3c;
}
.sdgsDisc ul{
    padding-inline-start: 20px;
    font-size: 16px;
}
@media (max-width: 920px) {
  .sdgsFlex{
      display: block;
  }
  
  .sdgsImg{
      width: 100%;
  }
  
  .sdgsDisc{
      width: 100%;
      padding: 0 10px;
  }
  
}
