@charset "utf-8";
/* ------------------------------------------------------------------ */
/* z-index 
/* header : 1000
/* overlay : 999 
/* pagetop : 500 
/* container : 1 → コンテンツ本体
/* ------------------------------------------------------------------ */

html {
  scroll-behavior: smooth;
  scroll-padding-top: 152px;  /* ヘッダー高さ程度 */
}

body {
  min-width: 1024px;
}

@media only screen and (max-width: 640px) {
  body {
    min-width: 320px;
  }
}

/* PCで非表示 */
.pc-dn {
  display: none;
}

@media only screen and (max-width: 640px) {
  .pc-dn {
    display: block;
  }
}

/* SPで非表示 */
.sp-dn {
  display: block;
}

@media only screen and (max-width: 640px) {
  .sp-dn {
    display: none;
  }
}

/* ------------------------------------------------------------------ */
/* header
/* ------------------------------------------------------------------ */
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  -webkit-box-shadow: 0 0 5px rgba(0,0,0,.2);
  box-shadow: 0 0 5px rgba(0,0,0,.2);
  z-index: 1000;
}
header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  width: 1024px;
  margin: 0 auto;
  padding: 23px 0;
}
header .logo-corp {
  width: 168px;
}
header .logo-corp > a {
  display: block;
}
header .logo-ja {
  width: 140px;
}
header .logo img {
  width: 100%;
  height: auto
}
header nav {
  width: 1024px;
  margin: 0 auto;
  padding-bottom: 12px;
}
header nav > ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-left: 1px solid #d9dde0;
}
header nav > ul > li {
  width: 25%;
}
header nav > ul > li + li {
  border-left: 1px solid #d9dde0;
}
header nav > ul > li > a {
  position: relative;
  display: block;
  padding: 12px;
  font-size: 16px;
  text-align: center;
  color: #111;
}
/* aタグのホバー領域を広げる為の擬似要素 */
header nav > ul > li > a::before {
  content: '';
  position: absolute;
  bottom: -12px;
  left: 0;
  width: 100%;
  height: 12px;
}
header nav > ul > li.jobs > a {
  margin-left: 56px;
  color: #ffffff;
  background-color: #005B9B;
  border-radius: 30px;
}
header nav > ul > li.active.jobs > a {
  background-color: #005B9B;
  color: #ffffff;
}
header nav > ul > li.active > a:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -12px;
  left: 0;
  width: 100%;
  height: 4px;
  background-color: #016831;
}
header nav > ul > li.jobs > a::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 15px;
  bottom: auto;
  left: auto;
  transform: translateY(-50%);
  width: 5px;
  height: 12px;
  background: url(/common/img/arrow_nav.png) no-repeat center / 5px auto;
  pointer-events: none;
}
header .btn-sp-menu {
  display: none;
}

/* active rule */
@media only screen and (max-width:640px) {
header {
  position: absolute;
}
header.fixed {
  position: fixed;
}
header .inner {
  justify-content: start;
  gap: 20px;
  box-sizing: border-box;
  width: auto;
  height: 66px;
  padding: 12px 14px;
}
header .logo-corp {
  width: 104px;
}
header .logo-ja {
  width: 85px;
}
header .btn-sp-menu {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  height: 50px;
  width: 50px;
  background: url(/common/img/btn_sp_menu.png) 50% 0 no-repeat;
  background-size: 50px auto;
}
header .btn-sp-menu.opend {
  background-position: 50% 100%;
}
header nav {
  width: 100%;
  /* height:auto; */
  margin: 0 auto;
  padding: 0;
  background: #005b9b;
  display: none;
}
header nav > ul {
  border: none;
  display: block;
}
header nav > ul > li {
  border-left: none;
  display: block;
  height: auto;
  line-height: normal;
  width: auto;
  position: relative
}
header nav > ul > li + li {
  border-left: none;
  border-top: 1px solid #317aad;
}
header nav > ul > li.opend {
  height: auto;
}
header nav > ul > li > a {
  color: #fff;
  display: block;
  font-size: 14px;
  height: 40px;
  line-height: 40px;
  padding: 0 14px;
  text-align: left;
  z-index: 1;
}
header nav > ul > li.jobs > a {
  margin-left: 0;
}
header nav > ul > li.jobs > a::before {
  display: none;
}
header nav > ul > li.active > a:after {
  display: none;
}
header nav > ul > li.jobs > a::after {
  display: none;
}
}
/* mega */
header .box-toggle-nav{
  display: none;
  position: absolute;
  left: 0;
  bottom: -85px;
  z-index: 1000;
  width: 100%;
  background: #005b9b;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.pc header .box-toggle-nav{
  box-sizing: border-box;
  background:url(/common/img/bg_mega.png);
  padding: 35px 0;
}
.pc header nav > ul > li.hover .box-toggle-nav{
  display:block;
  }

.pc header .box-toggle-nav > ul{
  width:1024px;
  margin:0 auto;
  font-size:15px;
  }
.pc header .box-toggle-nav > ul > li{
  display: table-cell;
  white-space:nowrap;
  }
.pc header .box-toggle-nav > ul > li+li{
  padding-left:40px;
  }
.pc header .box-toggle-nav > ul > li li+li{
  padding-left:10px;
  }
.pc header .box-toggle-nav > ul > li > a{
  background:url(/common/img/ic_arrow_mega.png) 0 50% no-repeat;
  padding:2px 0 2px 20px
  }

.pc header .box-toggle-nav > ul > li ul{
  padding-left:20px;
  }
.pc header .box-toggle-nav > ul > li li{
	display: inline-block;
	margin-top: 1em;
	white-space: nowrap;
	min-width: auto;
	margin-left: 42px;
  }
.pc header .box-toggle-nav > ul > li li a{
  font-size:14px;
  }
.pc header .box-toggle-nav > ul > li li:before{
  content: '‐';
  padding-right: 5px;
  color:#fff;
  }

header .box-toggle-nav a {
  color: #fff;
}
.btn-sp-acd {
  display: none;
}

@media only screen and (max-width: 640px) {
header .box-toggle-nav {
  background: rgba(0,0,0,.2);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: none;
  padding: 10px 14px;
  position:relative;
  left:0;
  top:0;
}
header .opend .box-toggle-nav {
  display: block;
}
header .box-toggle-nav a {
  color: #fff;
  padding: 5px 0;
  display: block;
}
header .box-toggle-nav > ul > li > a {
  font-size: 14px;
}
header .box-toggle-nav > ul > li > a:before {
  content: '・';
  margin-right: 4px;
}
header .box-toggle-nav > ul > li > ul {
  padding-left: 2em;
}
header .box-toggle-nav > ul > li > ul > li > a {
  font-size: 14px;
}
header .box-toggle-nav > ul > li > ul > li > a:before {
  content: '-';
  margin-right: 4px;
}
}
/* hoverまとめ */
.pc header nav > ul > li > a {
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
  text-decoration: none !important;
}
.pc header nav > ul > li:not(.active) > a:hover,
.pc header nav > ul > li:not(.jobs) > a:hover {
  color: #016831;
}
.pc header nav > ul > li.jobs > a:hover {
  background-color: #1e7abb;
  color: #ffffff;
}
/* .pc header .logo-ja img {
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
}
.pc header .logo-ja:hover img {
  opacity: .5
} */
/* overlay */
.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  z-index: 999;
  display: none;
  background: rgba(0,0,0,.2);
}
/* ------------------------------------------------------------------ */
/* footer
/* ------------------------------------------------------------------ */
footer {
  background: #003443;
  color: #fff;
  position: relative;
}
footer a.btn-pagetop {
  background: #00662b;
  display: block;
  height: 40px;
  line-height: 40px;
  width: 40px;
  position: absolute;
  right: 0;
  top: -40px;
  z-index: 500;
  text-align: center;
}
footer a.btn-pagetop img {
  width: 20px;
  height: auto;
  text-align: center;
}
footer a {
  color: #fff;
}
footer .inner {
  margin: 0 auto;
  width: 1024px;
}
footer nav {
  /*display: table;20191120*/
  display: flex;
  padding: 40px 0;
  width: 100%;
}
@media only screen and (min-width: 641px) {
	footer nav > div {
	/*display: table-cell;20191120*/
	width: 25%;
	display: block;
	padding-right: 0px;
	}
}
/*footer nav > .group1 {
  padding-right: 30px;
}
footer nav > .group2 {
  padding-right: 30px;
}
footer nav > .group3 {
  padding-right: 30px;
}
footer nav > .group4 {
  width: 445px;
}20191120*/
footer nav > div p {
  font-size: 14px;
  font-weight: bold;
  padding-left: 18px;
  position: relative;
}
footer nav > div p:before {
  content: '';
  border-style: solid;
  border-width: 4.5px 0 4.5px 7px;
  border-color: transparent transparent transparent #a6a6a6;
  height: 0;
  left: 0;
  position: absolute;
  top: 2px;
  width: 0;
}
footer nav > div p+p {
  margin-top: 30px;
}
footer nav > div > ul {
  padding-left: 14px;
}
footer nav > div li {
  font-size: 13px;
  padding-top: 15px;
  white-space: nowrap;
}
footer nav > div > ul > li > a {
  display: block;
}
footer nav > div > ul > li:before {
  content: '・';
  float: left
}
.pc footer nav > div > ul > li > ul {
  padding-left: 10px;
  float: left;
  width: 47%;
}
.pc footer nav > div > ul > li > ul > li:before {
  content: '‐';
  padding-right: 5px;
}
/*.pc footer nav > div li.new {
  width: 340px20191120;
}*/
.pc footer nav > .group4 > ul > li {
  /*float: left;20191120*/
  float: none;
}

@media only screen and (max-width: 640px) {
footer {
  min-width: 320px;
  overflow: hidden
}
footer a.btn-pagetop {
  background: #00662b;
  display: block;
  height: 36px;
  line-height: 36px;
  width: 100%;
  position: inherit;
  right: 0;
  top: 0;
}
footer .inner {
  margin: 0 auto;
  width: auto;
  padding: 0;
}
footer nav {
  display: block;
  padding: 0;
}
footer nav > div {
  display: block;
  border-bottom: 1px solid #315b67
}
footer nav > .group1,  footer nav > .group2,  footer nav > .group3 {
  padding-right: 0;
}
footer nav > .group4 {
  width: auto;
}
footer nav > div p {
  font-size: 14px;
  font-weight: normal;
  padding-left: 0;
}
footer nav > div p a {
  height: 40px;
  line-height: 40px;
  padding: 0 4.6875%;
  display: block;
}
footer nav > div p:before {
  display: none;
}
footer nav > div *+p {
  border-top: 1px solid #315b67
}
footer nav > div p+p {
  margin-top: 0;
}
footer nav > div > ul {
  padding: 10px 14px;
  background: rgba(0,0,0,.2);
  display: none;
}
footer nav > div li {
  font-size: 14px;
  padding-top: 0;
  white-space: normal;
}
footer nav > div > ul > li a {
  display: block;
  height: 30px;
  line-height: 30px;
}
footer nav > div > ul > li > a:before {
  content: '・';
}
footer nav > div > ul > li:before {
  display: none
}
footer nav > div > ul > li > ul {
  padding-left: 1em;
}
footer nav > div > ul > li > ul > li a:before {
  content: '‐';
  padding-right: 5px;
}
footer nav > div > ul > li > ul > li:before {
  display: none
}
.btn-sp-acd {
  display: block;
  height: 40px;
  width: 40px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 10
}
.btn-sp-acd:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 6px 0 6px;
  border-color: #94bcd7 transparent transparent transparent;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -4px 0 0 -6px;
}
.opend .btn-sp-acd {
  background: rgba(0,0,0,.2);
}
.opend .btn-sp-acd:before {
  border-width: 0 6px 8px 6px;
  border-color: transparent transparent #94bcd7 transparent;
}
}
/* link-group */
footer .box-links {
  border-top: 1px solid #4d717c;
  font-size: 13px;
  height: 28px;
  line-height: 28px;
  padding: 38px 0;
}
footer .box-links ul {
  display: table;
  float: left;
}
footer .box-links li {
  display: table-cell;
  padding-right: 15px;
}
footer .box-links li+li {
  border-left: 1px solid #4d717c;
  padding-left: 15px;
}
footer small {
  font-size: 10px;
  float: left;
  margin-left: 3em;
}
footer #box-search {
  float: right;
}
footer #box-search input.text {
  border: 1px solid #d9dde0;
  border-right: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 13px;
  float: left;
  height: 28px;
  line-height: 28px;
  padding: 0 1em;
  width: 258px;
}
footer #box-search button {
  background: #666 url(/common/img/btn_search.png) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  border: none;
  float: left;
  display: inline-block;
  height: 28px;
  width: 28px;
}

@media only screen and (max-width: 640px) {
footer .box-links {
  border-top: none;
  font-size: 14px;
  height: auto;
  line-height: normal;
  padding: 0;
}
footer .box-links ul {
  display: block;
  float: none;
  width: 100%;
}
footer .box-links li {
  display: block;
  padding-right: 0;
  width: 50%;/*追加*/
  box-sizing: border-box;/*追加*/
  float: left;/*追加*/
}
footer .box-links li a {
  display: block;
  height: 40px;
  line-height: 40px;
  padding: 0 4.6875%;
}
footer .box-links li+li {
  /*border-top: 1px solid #315b67;*/
  padding-left: 0;
  width: 49%;
  float: left;
  text-align: center
}
footer .box-links li+li a {
  padding: 0;
  letter-spacing: -.1em;
}
footer small {
  font-size: 10px;
  float: left;
  margin-left: 3em;
  display: none;
}
footer #box-search {
  float: none;
  clear: both;
  border-top: 1px solid #315b67;
  padding: 18px;
  text-align: center
}
footer #box-search input.text {
  border: none;
  border-right: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 14px;
  float: left;
  height: 36px;
  line-height: 36px;
  padding: 0 1em;
  width: 254px;
}
footer form {
  width: 290px;
  margin: 0 auto;
}
footer #box-search button {
  background: #666 url(/common/img/btn_search.png) 0 0 no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
  float: left;
  height: 36px;
  width: 36px;
}
footer #box-search:after {
  content: 'Copyright Chuo Computer Systems Co., Ltd.  All Rights Reserved.';
  text-align: center;
  font-size: 10px;
  color: #fff;
  clear: both;
  padding-top: 18px;
  display: block;
}
}
/* ------------------------------------------------------------------ */
/* container
/* ------------------------------------------------------------------ */
.container {
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding-top: 152px;
}

@media only screen and (max-width: 640px) {
.container {
  padding-top: 66px;
  width: 100%;
}
}
/* ------------------------------------------------------------------ */
/* 下層ページ basic設定
/* ------------------------------------------------------------------ */
.crumb {
  background: #005b9b;
}
.crumb ul {
  width: 1024px;
  margin: 0 auto;
  height: 30px;
  line-height: 30px;
  font-size: 11px;
  color: #fff;
  overflow:hidden;
}
.crumb a {
  color: #fff;
}
.crumb li {
  float: left;
  padding-right: 15px;
}
.crumb li+li:before {
  content: '>';
  padding-right: 15px;
}

@media only screen and (max-width: 640px) {
.crumb ul {
  width: auto;
  margin: 0 auto;
  height: 30px;
  line-height: 30px;
  font-size: 10px;
  color: #fff;
  padding: 0 4.6875%;
}
.crumb li {
  padding-right: 9px;
}
.crumb li+li:before {
  padding-right: 9px;
}
}
/* float関係 */
.box-right {
  float: right;
}
.box-left {
  float: left;
}

@media only screen and (max-width: 640px) {
.box-right,  .box-left {
  float: none
}
}
.lower .main {
  padding: 60px 0 80px;
}

@media only screen and (max-width: 640px) {
.lower .main {
  padding: 
  40px 0;
}
}
/* figureの処理 */
figure {
  text-align: center;
}
figure img {
  width: 100%;
  height: auto;
  display: block;
}
figure img2 {
  width: 50%;
  height: auto;
  display: block;
}
/* mv */
.lower .mv {
  height: 232px;
  background: #ccc;
  position: relative;
  z-index: 1;
}
.lower .mv h1 {
  font-size: 3.2em;
  position: relative;
  text-align: center;
  color: #005B9B;
  padding-top: 85px;
  letter-spacing: .1em;
  text-shadow: 0 0 15px rgba(255,255,255,1), 0 0 15px rgba(255,255,255,1), 0 0 15px rgba(255,255,255,1), 0 0 15px rgba(255,255,255,1), 0 0 15px rgba(255,255,255,1);
}

@media only screen and (max-width: 640px) {
.lower .mv {
  height: 121px;
}
.lower .mv h1 {
  font-size: 2.1em;
  padding-top: 44px;
  letter-spacing:0;
}
.lower .mv h1:after {
  height: 1px;
  width: 30px;
  position: absolute;
  left: 50%;
  bottom: -8px;
  margin: 0 0 0 -15px;
}
}
/* 段落基本 */
.lower .column {
  width: 1024px;
  margin: 0 auto;
}
.lower *+.column {
  margin-top: 55px;
}

@media only screen and (max-width: 640px) {
.lower .column {
  width: auto;
  margin: 0 auto;
  padding: 0 4.6875%
}
.lower *+.column {
  margin-top: 60px;
}
}
/* h2基本 */
.lower .column h2 {
  border-left: 5px solid #005b9b;
  font-size: 2.2em;
  position: relative;
  color: #333;
  padding: 0 0 0 10px;
  letter-spacing: .05em;
  margin-bottom: 40px;
}
.lower .column h2:after {
  content: '';
  display: block;
  height: 1px;
  width: 1024px;
  background: #c9c9c9;
  position: absolute;
  bottom: -13px;
  left: -5px;
}

@media only screen and (max-width: 640px) {
.lower .column h2 {
  border-left: 3px solid #005b9b;
  font-size: 1.7em;
  line-height: 1.2;
  padding: 0 0 0 5px;
  letter-spacing: 0;
  margin-bottom: 34px;
  word-wrap: break-word;
}
.lower .column h2:after {
  width: 102%;
  left: -3px;
}
}
/* h3基本 */
.lower .column .copy, .lower .column h3 {
  font-size: 1.7em;
  line-height: 1.4;
  color: #005b9b;
  margin-bottom: 1em;
  font-weight: bold;
  letter-spacing: .1em;
  margin-left: 16px;
}

@media only screen and (max-width: 640px) {
.lower .column .copy,  .lower .column h3 {
  font-size: 1.6em;
  margin-bottom: .6em;
  word-wrap: break-word;
  margin-left: 0;
}
}
/* p基本 */
.lower .column p {
  font-size: 1.4em;
  line-height: 1.85;
  margin-left: 16px;
}

@media only screen and (max-width: 640px) {
.lower .column p {
  line-height: 1.6;
  word-wrap: break-word;
  margin-left: 0;
}
}
.lower .column p+p {
  margin-top: 1em;
}
/* サブnav */
.lower .nav-lower {
  width: 1024px;
  margin: 0 auto 0;
  position: relative;
  z-index: 10;
  height: 50px;
  background: rgba(255,255,255,.95);
  box-shadow: 0 0 5px rgba(0,0,0,.2)
}
.lower .nav-lower ul {
  display: table;
  height: 50px;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.lower .nav-lower ul > li {
  text-align: center;
  vertical-align: middle
}
.lower .nav-lower ul > li a {
  display: block;
  font-size: 14px;
  color: #171717;
  height: 50px;
  line-height: 50px;
  padding: 0 25px;
}
.pc .lower .nav-lower ul > li.active a {
  color: #005b9b;
  font-weight: bold;
  text-decoration: none;
}
.pc .lower .nav-lower ul li {
  display: table-cell !important;
  height: 50px;
  position: relative;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}
.lower .nav-lower ul li:after {
  content: '';
  height: 90%;
  width: 1px;
  background: #e7e7e7;
  position: absolute;
  right: 0;
  top: 5%;
}
.lower .nav-lower li:last-child:after {
  display: none;
}
.pc .lower .nav-lower li.btn-toggle {
  display: none !important;
}
/* hover */
.pc .lower .nav-lower ul > li a {
  -webkit-transition: all .2s ease;
  transition: all .2s ease;
}
.pc .lower .nav-lower ul > li:not(.active) a:hover {
  background: #f5f5f5;
  text-decoration: none;
}

@media only screen and (max-width: 640px) {
.lower .nav-lower {
  width: 100%;
  margin: 0 auto;
  background: #fff;
  box-shadow: none;
  height: auto;
}
.lower .nav-lower ul {
  display: block;
  width: 100%;
  height: auto;
  border-top: #edf5fa;
}
.lower .nav-lower ul li {
  display: none;
  font-size: 1.4em;
  padding: 0;
  border-bottom: 1px solid rgba(0,0,0,.1);
  background: #edf5fa;
  height: 44px;
  line-height: 44px;
}
.lower .nav-lower li.btn-toggle {
  display: block;
  background: none;
}
.lower .nav-lower ul > li a {
  display: block;
  padding: 0 44px;
  line-height: inherit;
  background: url(/parts/img/arrow_020.png) 99% 50% no-repeat;
  font-weight: normal;
  height: 44px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.lower .nav-lower li.btn-toggle a {
  color: #005b9b;
  font-weight: bold;
  position: relative;
  background: none;
}
.lower .nav-lower li.btn-toggle a:after {
  content: '';
  display: block;
  width: 44px;
  height: 44px;
  /* background:rgba(0,0,0,.1); */
  position: absolute;
  right: 0;
  top: 0;
  z-index: 5
}
.lower .nav-lower li.btn-toggle a:before {
  content: '';
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 6px 0 6px;
  border-color: #005b9b transparent transparent transparent;
  position: absolute;
  right: 15px;
  top: 50%;
  margin: -4px 0 0 0;
  z-index: 10
}
.lower .nav-lower li.btn-toggle.opend a:before {
  border-width: 0 6px 8px 6px;
  border-color: transparent transparent #005b9b transparent;
}
.lower .nav-lower li.btn-toggle.opend a:after {
  background: #edf5fa;
  background-position: 50% 100%
}
.lower .nav-lower li.active a {
  font-weight: normal;
  background: #cee8f9;
}
.lower .nav-lower li:last-child {
  border: none
}
}
.nav-sp-cont-bottom {
  display: none
}

@media only screen and (max-width: 640px) {
.nav-sp-cont-bottom {
  display: block;
  border-top: 1px solid #dbdbdb;
}
.nav-sp-cont-bottom li {
  width: 49.5%;
  float: left;
  font-size: 12px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  text-align: center;
  border-bottom: 1px solid #dbdbdb;
}
.nav-sp-cont-bottom li:nth-child(2n+1) {
  border-right: 1px solid #dbdbdb;
}
.nav-sp-cont-bottom a {
  display: block;
  height: 45px;
  line-height: 45px;
  color: #171717;
}
.nav-sp-cont-bottom .active a {
  font-weight: bold;
  color: #005b9b;
}
}


/* mv */
.mv.news-visual {
  background: url(/news/parts/img/bg_mv.jpg) 50% 50% no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}
.news {
  padding-top: 45px;
  margin-bottom: 45px;
}
.news .inner {
  position: relative;
}
.news h2 {
  font-size: 28px;
  font-weight: bold;
  text-align: center;
}
.news h2:after {
  content: "";
  display: block;
  width: 57px;
  height: 2px;
  margin: 18px auto;
  background: #006830;
}
ul.news_list {
  margin-top: 20px;
}
.column ul.news_list {
  margin-top: 0;
}
ul.news_list li {
  padding: 15px 0 12px;
  border-bottom: 1px solid #e5e5e5;
  font-size: 15px;
  line-height: 1.2;
  color: #171717;
}
.news_list > li[id^="news-"] {
  scroll-margin-top: 152px;
}
ul.news_list li time {
  display: table-cell;
  width: 120px;
  font-size: 13px;
  font-weight: bold;
  color: #006837;
  vertical-align: top;
}
ul.news_list li span {
  display: table-cell;
  vertical-align: top;
}
a.news_link {
  display: block;
  width: 82px;
  height: 35px;
  padding-left: 30px;
  border: 1px solid #e5e5e5;
  background: url(/parts/img/arrow_020.png) right center no-repeat;
  font-size: 15px;
  color: #171717;
  font-weight: bold;
  line-height: 35px;
  cursor: pointer;
  position: absolute;
  top: 2px;
  right: 0;
}
.pc a.news_link:hover {
  border-color: #006830;
  text-decoration: none;
  color: #006830;
}

/* 新着情報　2019年7月追加
--------------------------------------------*/
	.newsimg{
		width: 50%;
	}
	.w500 {
		min-width: 500px;
	}
	.w320 {
		max-width: 320px;
	}
	.txt_lift {
		text-align: left;
	}
	
@media only screen and (max-width: 640px) {
	.newsimg{
		width: 100%;
	}
}
/* --------------------------------------------*/

@media only screen and (max-width: 640px) {
ul.news_list li time {
  display: block;
  width: auto;
  padding-bottom: 5px;
}
ul.news_list li span {
  display: block;
}
}
.lower a.btn-style {
  display: inline-block;
  background: url(/parts/img/arrow_020.png) 100% 50% no-repeat;
  padding: 10px 40px 9px;
  line-height: 1.5;
  border: 1px solid #707070;
  text-decoration: none;
  font-size: 14px;
  color: #111;
  -webkit-transition: 0.2s ease-in-out;
  -moz-transition: 0.2s ease-in-out;
  -o-transition: 0.2s ease-in-out;
  transition: 0.2s ease-in-out
}
.lower a.btn-style+a.btn-style {
  margin-left: 10px;
}
.lower a.btn-style:hover {
  border-color: #006830;
  color: #006830;
}
.col-red {
  color: #cb2525
}
.m-left0 {
  margin-left: 0 !important;
}


.mv.sitemap-visual {
  background: url(/common/img/bg_mv_sitemap.jpg) 50% 20% no-repeat;
  -webkit-background-size: cover;
  background-size: cover;
}

.lower .box-sitemap{
  display:table
  }
.lower .box-sitemap div{
  display:table-cell;
  width:30%;
  box-sizing:border-box;
  }
.lower .box-sitemap div+div{
  margin-left:5%;
  }
.lower .box-sitemap p {
  font-size: 18px;
  border-left: 5px solid #005b9b;
  position: relative;
  color: #333;
  padding: 0 0 0 10px;
  letter-spacing: .05em;
  line-height: 1;
  font-weight:bold;
  
}
.lower .box-sitemap p:after {
    content: '';
    display: block;
    height: 1px;
    width: 90%;
    background: #c9c9c9;
    position: absolute;
    bottom: -8px;
    left: -5px;
}
.lower .box-sitemap *+p{
  margin-top:50px !important;
  }
.lower .box-sitemap p a {
  color: #333;
  padding-right:30px;
  }
.lower .box-sitemap p a:hover{
  text-decoration:none;
  color:#006830
  }
.lower  .box-sitemap ul{
  margin-bottom:20px;
  }
.lower  .box-sitemap p+ul{
  margin-top:30px
  }
.pc .lower .box-sitemap ul{
  padding-left:30px;
  }
.lower .box-sitemap ul > li{
  font-size:14px;
  line-height:1;
  position:relative;
  padding-left:20px;
  }
.lower .box-sitemap ul > li > ul{
  margin-top:20px;
  padding-left:0 !important;
  }
.lower .box-sitemap ul > li a{
  color:#111;
  text-decoration:underline;
  }
.lower .box-sitemap ul > li a:hover{
  text-decoration:none;
  }
.lower .box-sitemap ul > li+li{
  margin-top:15px;
  }
.lower .box-sitemap ul > li:before{
  display: block;
  padding: 0;
  text-align: center;
  position: absolute;
  left: 0;
  top: 0;
  z-index: 0;
  content:"●";
}
.lower .box-sitemap ul > li > ul li:before{
  content:"・";
  }

@media only screen and (max-width: 640px) {
  
.lower .box-sitemap{
  display: block
  }
.lower .box-sitemap div{
  display: block;
  width: auto;
  box-sizing:border-box;
  }
.lower .box-sitemap p:after {
    width: 100%;
  }
.lower .box-sitemap *+p{
  margin-top:40px !important;
  }
.lower .box-sitemap div+div{
  margin: 40px 0 0;
  }
}

a.disable,
.disable a{
  opacity:.4;
  text-decoration:none !important;
  cursor:default;
  }
.disable:before{
  opacity:.4;
  }


.lower .column h3.sttl-indent{
  padding-left:40px;
  position:relative;
  }
.lower .column h3.sttl-indent span{
  position:absolute;
  left:-10px;
  }
.lower .column h3.sttl-indent+p{
  padding-left:40px;
  }
  
.member_txt_left{
	text-align: left;
}


/* イントロダクション　2020年2月result.cssより移動
--------------------------------------------*/

.intro{
  width:1024px;
  margin:0 auto;
  }
.intro h2{
  text-align:center;
  font-size:1.7em;
  line-height:1.7;
  text-align:center;
  }
.intro h2+p{
  margin-top:45px;
  }
.intro p{
  font-size: 1.4em;
  line-height: 1.85;
  }
@media only screen and (max-width: 640px){
    .intro{
      width: auto;
      margin:0 4.6875%;
      }
    .intro h2{
      text-align:left;
      }
    .intro h2+p{
      margin-top:2em;
      }
    .intro p{
      line-height:1.6;
      }
}


/* ページ見出し(小)　2020年2月about.cssより移動
--------------------------------------------*/

h1 span {
	display: block;
	margin-top: 12px;
	font-size: 0.5em;
	color: #005b9b;
}