/*
================================================================

  共通

================================================================
*/
.anchor{
display: block;
padding-top: 150px;
margin-top: -150px;
}
#sv {
  width: 100%;
  height: 300px;
  background: url(../img/common/bg_sv_pc.png) no-repeat center left #EEEEF9;
}
#sv .h1-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  padding-bottom: 15px;}
#sv .h1-box h1 {
  margin-bottom: 15px;
  line-height: 1.6;
  font-size: 16px;
  font-weight: 700;
  color: #2E2A29;}
#sv .h1-box .en {
  /*text-transform: uppercase;*/
  font-size: 36px;
  font-weight: 700;
  font-family: nobel, sans-serif;
  font-style: normal;
  letter-spacing: .1em;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#sv {
  padding: 0 50px;
  height: 300px;
  background-size: 300% auto;}
#sv .h1-box {
  padding-bottom: 15px;}
#sv .h1-box h1 {
  margin-bottom: 20px;
  font-size: 40px;
  color: #2E2A29;}
#sv .h1-box .en {
  color: #1366ae;
  font-size: 24px;}}

/*
  パンクズ
=============================================================== */
#pankz {
  border-bottom: 1px solid #C7C7C7;}
#pankz ul {
  display: flex;
  align-items: center;
  height: 40px;
  font-size: 12px;
  color: #666;}
#pankz ul a {
  color: #1366ae;
  font-weight: 700;}
#pankz ul li + li {
  position: relative;
  margin-left: 40px;}
#pankz ul li + li:before {
  content: '\e5cc';
  position: absolute;
  top: 50%;
  left: -28px;
  margin-top: -8px;
  font-family: 'Material Icons Round';
  font-size: 16px;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#pankz {
  padding: 0 30px;}
#pankz ul {
  overflow-x: auto;
  height: 50px;
  font-size: 16px;}
#pankz ul a {
  font-weight: 500;}
#pankz ul li {
  white-space: nowrap;}
#pankz ul li + li {
  margin-left: 60px;}
#pankz ul li + li:before {
  left: -40px;
  margin-top: -9px;
  font-size: 18px;}}

/*
  下層用H2
=============================================================== */
.h2-under {
  display: flex;
  flex-direction: column-reverse;}
.h2-under p {
  position: relative;
  margin-bottom: 20px;
  padding-left: 20px;
  font-family: nobel, sans-serif;
  font-weight: 700;
  font-style: normal;
  font-size: 12px;
  color: #1366ae;
  line-height: 1.0;}
.h2-under p:before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-radius: 100%;
  background: #1366ae;}
.h2-under h2 {
  font-weight: 700;
  font-size: 26px;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
.h2-under p {
  padding-left: 20px;
  font-size: 18px;}
.h2-under p:before {
  width: 10px;
  height: 10px;
  margin-top: -5px;}
.h2-under h2 {
  font-size: 32px;}}
/*
  会社概要
=============================================================== */
#sv.case {
  height: 200px;}
#sv.case .h1-box h1 {
  margin-bottom: 0;
  font-size: 26px;
  font-weight: 700;
  color: #2E2A29;}
#company {
  padding: 80px 0 0;}
#company .img {
/*  text-align: center;
  background: #FAF5F1;*/}
#company .img img {
  /*max-width: 600px;
  margin: 0 20px;*/
  height: auto;}
#company .slick-arrow {
  position: absolute;
  top: 50%;
  width: 70px;
  height: 70px;
  margin-top: -35px;
  background: rgba(255, 255, 255, .9);
  background-repeat: no-repeat;
  background-position: center;
  border: 2px solid #1366ae;
  border-radius: 100%;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  z-index: 2;
  text-indent: -9999px;
  cursor: pointer;}
#company .slick-prev {
  left: 240px;
  background-image: url(../img/common/case-prev.png);}
#company .slick-next {
  right: 240px;
  background-image: url(../img/common/case-next.png);}
#company .post-txt {
  padding: 10px 0 30px 0;}
#company .post-txt h2 {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #1366ae;
  font-size: 20px;}
#company .post-txt p {
  line-height: 2.0;
  font-size: 16px;}
#company table {
  width: 100%;
  line-height: 1.8;
margin-bottom: 30px;}
#company table tr {
  background: #EEEEF9;}
#company table tr:nth-child(even) {
  background: #f9f9f9;}
#company table th {
  padding: 20px 40px;
  text-align: left;}
#company table td {
  padding: 20px 40px;
  border-left: 1px solid #628eb559;}
.cate-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 50px 0;/**/
  padding-top: 30px;
  border-top: 1px solid #C7C7C7;}

.cate-nav a {
  display: inline-block;
  font-weight: 700;
  color: #2E2A29;}
.cate-nav a i {
  display: inline-block;
  padding: 15px 30px;
  border-radius: 60px;
  background: #1366ae;
  color: #fff;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#sv.case .h1-box h1 {
  font-size: 32px;}
#company {
  padding: 60px 30px 0;}
#company .img {
  overflow: hidden;
  width: 640px;
  margin: 0 -30px;}
#company .img img {
  max-width: 100%!important;
  margin: 0 10px;
  width: 560px;
  height: auto;}
#company .slick-arrow {
  width: 80px;
  height: 80px;
  margin-top: -40px;}
#company .slick-prev {
  left: -20px;}
#company .slick-next {
  right: -20px;}
#company .post-txt h2 {
  margin-bottom: 15px;
  padding-bottom: 15px;
  font-size: 30px;}
#company .post-txt p {
  font-size: 24px;}
#company table,
#company table tbody,
#company table tr,
#company table th,
#company table td {
  display: block;}
#company table tr {
  background: #fff;}
#company table tr:nth-child(even) {
  background: #fff;}
#company table {
  font-size: 22px;
  line-height: 1.8;}
#company table th {
  padding: 20px 40px;
  background: #EEEEF9;}
#company table td {
  padding: 20px 40px;
  border-left: 0;}
.cate-nav {
  padding-top: 30px;}
.cate-nav a {
  font-size: 24px;}
.cate-nav a span {
  display: none;}
.cate-nav a i {
  padding: 20px 40px;}}

/*
  事業案内
=============================================================== */
#sv.case {
  height: 200px;}
#sv.case .h1-box h1 {
  margin-bottom: 0;
  font-size: 26px;
  font-weight: 700;
  color: #2E2A29;}
#infomation {
  padding: 80px 0 0;}
#infomation .img {
/*  text-align: center;
  background: #FAF5F1;*/}
#infomation .img img {
  /*max-width: 600px;
  margin: 0 20px;*/
  height: auto;}
#infomation .slick-arrow {
  position: absolute;
  top: 50%;
  width: 70px;
  height: 70px;
  margin-top: -35px;
  background: rgba(255, 255, 255, .9);
  background-repeat: no-repeat;
  background-position: center;
  border: 2px solid #1366ae;
  border-radius: 100%;
  box-shadow: 0 0 5px rgba(0, 0, 0, .1);
  z-index: 2;
  text-indent: -9999px;
  cursor: pointer;}
#infomation .slick-prev {
  left: 240px;
  background-image: url(../img/common/case-prev.png);}
#infomation .slick-next {
  right: 240px;
  background-image: url(../img/common/case-next.png);}
#infomation .post-txt {
  padding: 10px 0 30px 0;}
#infomation .post-txt h2 {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #1366ae;
  font-size: 20px;}
#infomation .post-txt p {
  line-height: 2.0;
  font-size: 16px;}
#infomation table {
  width: 100%;
  line-height: 1.8;
margin-bottom: 30px;}
#infomation table tr {
  background: #EEEEF9;}
#infomation table tr:nth-child(even) {
  background: #f9f9f9;}
#infomation table th {
  padding: 20px 40px;
  text-align: left;}
#infomation table td {
  padding: 20px 40px;
  border-left: 1px solid #628eb559;}
.cate-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 50px 0;/**/
  padding-top: 30px;
  border-top: 1px solid #C7C7C7;}

.cate-nav a {
  display: inline-block;
  font-weight: 700;
  color: #2E2A29;}
.cate-nav a i {
  display: inline-block;
  padding: 15px 30px;
  border-radius: 60px;
  background: #1366ae;
  color: #fff;}


#sdgs {
  padding: 80px 0 0;
}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#sv.case .h1-box h1 {
  font-size: 32px;}
#infomation {
  padding: 60px 30px 0;}
#infomation .img {
  overflow: hidden;
  width: 640px;
  margin: 0 -30px;}
#infomation .img img {
  max-width: 100%!important;
  margin: 0 10px;
  width: 560px;
  height: auto;}
#infomation .slick-arrow {
  width: 80px;
  height: 80px;
  margin-top: -40px;}
#infomation .slick-prev {
  left: -20px;}
#infomation .slick-next {
  right: -20px;}
#infomation .post-txt h2 {
  margin-bottom: 15px;
  padding-bottom: 15px;
  font-size: 30px;}
#infomation .post-txt p {
  font-size: 24px;}
#infomation table,
#infomation table tbody,
#infomation table tr,
#infomation table th,
#infomation table td {
  display: block;}
#infomation table tr {
  background: #fff;}
#infomation table tr:nth-child(even) {
  background: #fff;}
#infomation table {
  font-size: 22px;
  line-height: 1.8;}
#infomation table th {
  padding: 20px 40px;
  background: #EEEEF9;}
#infomation table td {
  padding: 20px 40px;
  border-left: 0;}
.cate-nav {
  padding-top: 30px;}
.cate-nav a {
  font-size: 24px;}
.cate-nav a span {
  display: none;}
.cate-nav a i {
  padding: 20px 40px;}}

/*
================================================================

SDGs

================================================================
*/

/*
================================================================

 新着情報一覧

================================================================
*/
#news-more {
  margin-top: 80px;}
.post-list li + li {
  margin-top: 30px;}
.post-list ul li a {
  display: flex;
  padding: 30px;
  background: #EEEEF9;
  color: #2E2A29;}
.post-list ul li a img {
  object-fit: cover;
  /*width: 200px;*/
  height: 200px;}
.post-list ul li a > div {
  flex: 1;
  margin-left: 40px;}
.post-list ul li a > div .date {
  margin-bottom: 20px;
  font-size: 16px;
  font-family: nobel, sans-serif;
  font-weight: 400;
  font-style: normal;}
.post-list ul li a > div h2 {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.8;}
.post-list ul li a > div .txt {
  margin-top: 20px;
  font-size: 16px;
  line-height: 2.0;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#news-more {
  margin-top: 80px;
  padding: 0 30px;}
.post-list {
  width: 610px;
  margin-right: -30px;}
.post-list ul {
  margin-bottom: 50px;}
.post-list li + li {
  margin-top: 60px;}
.post-list ul li a {
  position: relative;
  padding: 30px;}
.post-list ul li a img {
  position: absolute;
  top: -30px;
  left: -30px;}
.post-list ul li a > div {
  margin-left: 170px;}
.post-list ul li a > div .date {
  margin-bottom: 20px;
  font-size: 18px;}
.post-list ul li a > div h2 {
  font-size: 26px;
  line-height: 1.6;}
.post-list ul li a > div .txt {
  margin-top: 20px;
  font-size: 20px;
  line-height: 2.0;}}

/*
  記事詳細 / 詳細
=============================================================== */
#sv.common-post {
  height: 200px;}
#sv.common-post .h1-box h1 {
  font-size: 26px;
  font-weight: 700;
  color: #2E2A29;}
#sv.common-post .h1-box .en {
  font-size: 16px;}
#page-post-detaile {
  margin-top: 80px;}
#page-post-detaile .post-txt {
  line-height: 2.2;
  font-size: 16px;}
#page-post-detaile h2 {
  margin-bottom: 20px;
  padding: 10px 20px;
  background: #E7B4A0;
  line-height: 1.6;
  font-size: 18px;
  color: #fff;}
#page-post-detaile h3 {
  margin-bottom: 20px;
  padding: 0 20px;
  line-height: 1.6;
  border-left: 3px solid #E7B4A0;}
#page-post-detaile p + * {
  margin-top: 50px;}
#page-post-detaile .post-txt iframe {
  overflow: hidden;
  position: relative;
  width: 800px;
  height: 450px;
  margin: 0 auto;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0, 0, 0, .1);}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
#sv.common-post {
  height: 300px;}
#sv.common-post .h1-box h1 {
  font-size: 32px;}
#sv.common-post .h1-box .en {
  font-size: 20px;}
#page-post-detaile {
  margin-top: 40px;
  padding: 0 30px;}
#page-post-detaile .post-txt {
  font-size: 24px;}
#page-post-detaile h2 {
  padding: 15px 25px;
  font-size: 28px;}
#page-post-detaile h3 {
  padding: 0 25px;}
#page-post-detaile .post-txt iframe {
  width: 580px;
  height: 326px;}}


#sv_03 {
  width: 100%;
  background-repeat: no-repeat;
  background-position: top center;}
/* --------------------------------------------------------- sp */
@media (max-width: 767px) {
  #sv_03 {
    background-image: none!important;}
}