@charset "UTF-8";

/*
Theme Name: okaoge
Theme URI: https://wordpress.org/themes/okaoge/
Author: Norit Japon
Author URI: https://www.norit.jp/
Description:
Requires at least: 6.5
Tested up to: 6.5
Requires PHP: 8.1
Version: 1.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: okaoge
Tags:

This theme WordPress Theme, (C) 2023 WordPress.org
This theme distributed under the terms of the GNU GPL.
*/

/* reset＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body {
line-height:1.5;
}
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
nav ul {
list-style:none;
}
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
word-break: break-all;
}
ins {
background-color:#ff9;
color:#000;
text-decoration:none;
}
mark {
background-color:#ff9;
color:#000;
/* font-style:italic; */
font-weight:bold;
}
del {
text-decoration: line-through;
}
abbr[title], dfn[title] {
border-bottom:1px dotted;
cursor:help;
}
table {
border-collapse:collapse;
border-spacing:0;
}
hr {
display:block;
height:1px;
border:0;
border-top:1px solid #cccccc;
margin:1em 0;
padding:0;
}
input, select {
vertical-align:middle;
}
input[type="submit"],
input[type="button"] {
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]:focus,
input[type="button"]:focus {
  outline-offset: -2px;
}
/* reset end＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */



/* common ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* .ubuntu-light {
  font-family: "Ubuntu", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.ubuntu-regular {
  font-family: "Ubuntu", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.ubuntu-medium {
  font-family: "Ubuntu", sans-serif;
  font-weight: 500;
  font-style: normal;
}

.ubuntu-bold {
  font-family: "Ubuntu", sans-serif;
  font-weight: 700;
  font-style: normal;
}
.noto-sans-jp {
  font-family: "Noto Sans JP", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
} */


html {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  font-size: 62.5%;
  color: #1A9789;
}
body {
  font-size: 1.5rem;
  letter-spacing: 0.1em;
  line-height: 1.5;
  overflow-x: hidden;
}
a {
  text-decoration: none;
  color: #1A9789;
}
.link{
  transition: .3s;
}
.link:hover{
  opacity: .7;
}
img {
  -webkit-backface-visibility: hidden;
  width: 100%;
  display: block;
}
/* p {
  text-align: justify;
  word-break: break-all;
} */
li { list-style: none; }

#box {
  width: 100%;
  overflow-x: hidden;
  position: relative;
}

div, li, a{
  box-sizing: border-box;
}

.fadeInTrigger,
.fadeUpTrigger{
  opacity: 0;
}
.fadeIn{
  animation-name:fadeInAnime;
  animation-duration:3s;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fadeInAnime{
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.fadeUp{
  animation-name:fadeUpAnime;
  animation-duration:2s;
  animation-fill-mode:forwards;
  opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
    transform: translateY(100px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.title{
  font-size: 4.8rem;
  font-weight: 700;
  color: #DDB67B;
  text-align: center;
}
.title span{
  font-family: "Ubuntu", sans-serif;
  font-size: 2rem;
  font-weight: 400;
  display: block;
}

.btn_detail{
  font-weight: 500;
  color: #fff;
  padding: 14px 20px;
  background: #1A9789;
  border: 1px solid #1A9789;
  border-radius: 30px;
  display: table;
  margin: 0 auto;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  transition: .3s;
}
.btn_detail:hover{
  color: #1A9789;
  background: #fff;
}

/* .click_none{
  pointer-events: none;
} */


.br_spOnly{
  display: none;
}
.br_U-1200,
.br_U-1080,
.br_U-1000{
  display: none;
}

.pdfjs-iframe{
  display: none;
}
/* common end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* sp menu ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.inner {
  display: none;
}
header nav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #2eb2cb;
  z-index: 100;
  overflow-y: scroll;
}
header nav ul {
  display: block;
  list-style: none;
}
#nav_toggle {
  display: block;
  width: 60px;
  height: 60px;
  position: relative;
  z-index: 101;
}
/* #nav_toggle div {
  position: relative;
} */
#nav_toggle span {
  display: block;
  height: 2px;
  background: #DDB67B;
  position: absolute;
  z-index: 1001;
  width: 34px;
  right: 13px;
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
  /* border-radius: 6px; */
}
#nav_toggle span:nth-child(1) {
  top: 15px;
}
#nav_toggle span:nth-child(2) {
  top: 23px;
}
#nav_toggle span:nth-child(3) {
  top: 31px;
}
#nav_toggle p{
  font-family: "Ubuntu", sans-serif;
  font-size: 1rem;
  font-weight: 400;
  display: block;
  position: absolute;
  bottom: 7px;
  left: 0;
  right: 0;
  margin: auto;
  color: #DDB67B;
  text-align: center;
}

.open #nav_toggle span{
  background: #fff;
}
.open #nav_toggle span:nth-child(1) {
  top: 31px;
  -webkit-transform: rotate(135deg);
  -moz-transform: rotate(135deg);
  transform: rotate(135deg);
}
.open #nav_toggle span:nth-child(2) {
  width: 0;
  left: 50%;
}
.open #nav_toggle span:nth-child(3) {
  top: 31px;
  -webkit-transform: rotate(-135deg);
  -moz-transform: rotate(-135deg);
  transform: rotate(-135deg);
}
.open #nav_toggle p{
  display: none;
}

.scroll-no {
  overflow: hidden;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.sp-nav-wrap {
  width: 90%;
  max-width: 600px;
  margin: 100px auto 150px;
}
.sp-nav{
  width: 100%;
  text-align: center;
  /* margin: 0 0 50px; */
}
.link_sp-nav{
  font-size: 2rem;
  color: #fff;
  line-height: 1.2;
  text-align: center;
  display: block;
  padding: 25px 0;
  border-bottom: 1px solid #fff;
  /* transition: .3s; */
  /* padding: 0 5%; */
  /* height: 86px; */
}

/* .sp-nav_sns-wrap{
  display: flex;
  justify-content: center;
  padding: 30px;
}
.sp-nav_sns-wrap li{
  margin: 0 10px;
}
.sp-nav_sns-wrap li:nth-child(1){
  width: 27px;
}
.sp-nav_sns-wrap li:nth-child(2){
  width: 31px;
}
.sp-nav_sns-wrap li:nth-child(3){
  width: 30px;
}
.sp-nav_sns-wrap .link_sp-nav{
  border-bottom: none;
  padding: 0;
} */

/* sp menu end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* header ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
#pageheader{
  width: 100%;
  height: 100px;
}
.header-inner{
  width: 100%;
  height: 100px;
  position: fixed;
  top: 0;
  z-index: 100;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 30px;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0,0,0,0.1);
}
.header {
  margin: auto;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: -webkit-transform .4s ease;
  transition: -webkit-transform .4s ease;
  transition: transform .4s ease;
  transition: transform .4s ease, -webkit-transform .4s ease;
}
.header--unpinned {
  -webkit-transform: translateY(-150%);
  transform: translateY(-150%);
}
.logo_header{
  width: 280px;
}

.header_right{
  display: flex;
  align-items: center;
}

.nav_header{
  display: flex;
}
.nav_header li{
  padding: 0 12px;
  display: flex;
  align-items: center;
}
.nav_header li:not(:last-child){
  border-right: 1px solid #000;
}
.nav_header li a{
  font-size: 1.6rem;
  transition: .3s;
}
.nav_header li a:hover{
  opacity: .7;
}

.lang-wrap{
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-left: 30px;
  padding: 0 0 10px;
}
.lang_title{
  font-family: "Ubuntu", sans-serif;
  font-weight: 300;
  font-size: 1.3rem;
  color: #DDB67B;
  text-align: center;

  margin: 0 0 5px;
}
.lang{
  display: flex;
  justify-content: center;
}
.lang li{
  padding: 0 5px;
}
.lang li a{
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 1px solid #DDB67B;
  border-radius: 50%;
  font-family: "Ubuntu", sans-serif;
  font-weight: 500;
  font-size: 2.2rem;
  color: #DDB67B;
  /* padding: 0 6px; */
  /* border-bottom: 3px solid #DDB67B; */
  /* opacity: .4; */
}
.lang li a.lang_current{
  background: #DDB67B;
  color: #fff;
  pointer-events: none;
  /* opacity: 1;
  pointer-events: none; */
}
/* .lang li{
  padding: 0 3px;
}
.lang li a{
  font-family: "Ubuntu", sans-serif;
  font-weight: 700;
  font-size: 2.4rem;
  color: #DDB67B;
  padding: 0 6px;
  border-bottom: 3px solid #DDB67B;
  opacity: .4;
}
.lang li a.lang_current{
  opacity: 1;
  pointer-events: none;
} */

/* header end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* footer ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
#pagefooter{
  width: 100%;
  padding: 30px 0 15px;
}
.footer-inner{
  width: 90%;
  margin: 0 auto;
}
.logo_footer{
  width: 280px;
  margin: 0 auto 30px;
}
.nav_footer{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 16px;
}
.nav_footer li{
  padding: 0 12px;
  margin: 0 0 16px;
}
.nav_footer li{
  border-right: 1px solid #000;
}
.nav_footer li:nth-child(7){
  border-right: none;
}
.nav_footer li a{
  font-size: 1.6rem;
  transition: .3s;
}
.nav_footer li a:hover{
  opacity: .7;
}
.footerCopy{
  font-size: 1.2rem;
  color: #000;
  text-align: center;
}

.cookieBox-wrap{
  width: 100%;
  padding: 15px 0;
  background: rgba(0,0,0,.8);
  position: fixed;
  bottom: 0;
}
.cookieBox-inner{
  width: 90%;
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.cookieBox_text{
  width: calc(100% - 110px);
  font-size: 1.4rem;
  color: #fff;
}
.cookieBox_text a{
  text-decoration: underline;
  color: #fff;
  word-break: break-word;
}
.cookieBox_btn{
  font-size: 1.4rem;
  width: 90px;
  height: 32px;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  transition: .3s;
}
.cookieBox_btn:hover{
  opacity: .7;
}
/* footer end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* top ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.mv-wrap{
  width: 100%;
  margin: 0 0 60px;
}
.topNews-wrap{
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;
  padding: 60px 0;
  display: flex;
  justify-content: space-between;
}
.topNews-inner{
  width: 48%;
  /* margin: 0 auto; */
}
.topNews-inner .title{
  font-size: 3.6rem;
}
.newsList{
  width: 100%;
  max-width: 960px;
  /* margin: 45px auto 64px; */
  margin: 45px auto 32px;
}
.newsList li{
  display: flex;
  justify-content: space-between;
  padding: 20px;
  border-bottom: 1px solid #CCCCCC;
}
.newsList li:first-child{
  border-top: 1px solid #CCCCCC;
}
.newsDate{
  width: 106px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #DDB67B;
  font-size: 1.8rem;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0;
}
.newsTitle{
  width: calc(100% - 126px);
  font-size: 1.6rem;
  text-decoration: underline;
}
.topNews-inner .newsTitle{
  height: 72px;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}

.topPageLink-wrap{
  width: 90%;
  max-width: 1080px;
  margin: 0 auto 60px;
  display: flex;
  justify-content: space-between;
  padding: 60px 0;
}
.topPageLink{
  width: calc( (100% - 40px) / 2 );
  /* padding: 35px 80px 50px; */
  padding: 35px 80px 134px;
  background-size: cover;
  border-radius: 10px;
  position: relative;
}
.topPageLink_company{
  background-image: url(assets/images/top/bg_company.jpg);
}
.topPageLink_business{
  background-image: url(assets/images/top/bg_business.jpg);
}

.topPageLink_title{
  font-size: 3.6rem;
  color: #1A9789;
  text-align: center;
  margin: 0 0 25px;
}
.topPageLink_text{
  color: #000;
  line-height: 2;
  /* margin: 0 0 32px; */
}
.btn_topPageLink{
  width: 140px;
  text-align: center;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 50px;
  margin: auto;
}

.topContact-wrap{
  width: 100%;
  padding: 80px 0 100px;
  background: linear-gradient(to right, #e1d295, #e0c588, #ddb77c);
}
.topContact-inner{
  width: 90%;
  margin: 0 auto;
}
.topContact-wrap .title{
  color: #fff;
}
.topContact_text{
  color: #fff;
  text-align: center;
  margin: 36px 0 64px;
}

.topBottom-image{
  width: 100%;
  height: 400px;
  background-image: url(assets/images/top/bottom_image.jpg);
  background-size: cover;
  background-position: right bottom;
}

/* top end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */



/* page ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.breadcrumb{
  width: 90%;
  max-width: 1240px;
  margin: 50px auto 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
}
.breadcrumb li{
  display: block;
  color: #000;
}
.breadcrumb li:not(:last-child)::after{
  content: "\FF1E";
  display: inline-block;
  padding: 0 6px;
}
.breadcrumb li a{
  transition: .3s;
}
.breadcrumb li a:hover{
  opacity: .7;
}

.page-wrap{
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}
.footerLine{
  width: 90%;
  height: 1px;
  background: #cccccc;
  margin: 0 auto;
}

.coming-soon{
  font-size: 4.5rem;
  font-weight: 700;
  text-align: center;
  padding: 100px 0 300px;
}
/* page end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* news list ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.archiveNewsList{
  margin: 68px auto 90px;
}
.archive_pagination{
  margin: 0 0 80px;
}
.archive_pagination .nav-links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0 100px;
  position: relative;
}
.page-numbers {
  color: #fff;
  font-weight: 500;
  width: 50px;
  height: 50px;
  background: #1A9789;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin: 0 10px 20px;
  box-sizing: border-box;
  transition: .3s;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  border: 1px solid #1A9789;
}
.page-numbers.current{
  background: #fff;
  color: #1A9789;
  opacity: 1 !important;
}
.prev.page-numbers,
.next.page-numbers{
  width: 100px;
  height: 50px;
  border-radius: 30px;
  position: absolute;
  margin: 0;
}
.prev.page-numbers{
  left: 0;
  margin-right: 30px;
}
.next.page-numbers{
  right: 0;
  margin-left: 30px;
}

.page-numbers:hover{
  opacity: .7;
}

/* news list end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* news detail ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.newsDetailDate{
  margin: 48px auto 13px;
}
.newsDetailTitle{
  font-size: 3.6rem;
  font-weight: 700;
  color: #000;
  text-align: center;
  margin: 0 0 30px;
}
.newsDetail_mv{
  margin: 0 0 30px;
}
.newsDetail_content p{
  line-height: 2;
  color: #000;
  margin: 0 0 1em;
}
/* .newsDetail_content p:not(:last-of-type){
  margin: 0 0 1em;
} */
.newsDetail_content a{
  text-decoration: underline;
}
.newsDetail_pagination-wrap{
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin: 100px 0 90px;
}
.newsDetail_pagination_all,
.newsDetail_pagination a{
  font-weight: 500;
  color: #fff;
  padding: 13px 32px;
  background: #1A9789;
  border: 1px solid #1A9789;
  border-radius: 30px;
  display: table;
  margin: 0 auto;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  transition: .3s;
}
.newsDetail_pagination.prev,
.newsDetail_pagination.next{
  width: 100px;
}
.newsDetail_pagination.prev_en,
.newsDetail_pagination.next_en{
  width: 110px;
}

.newsDetail_pagination_all:hover,
.newsDetail_pagination a:hover{
  opacity: .7;
}

/* news detail end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* company ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.pageCompany-wrap{
  padding: 0 0 70px;
}
/* .companyIntro{
  line-height: 2;
  color: #000;
  width: 90%;
  max-width: 960px;
  margin: 70px auto;
} */

.companyInfoTable{
  width: 90%;
  max-width: 960px;
  /* margin: 0 auto 70px; */
  margin: 70px auto;
}
.companyInfoTable th,
.companyInfoTable td{
  border: 1px solid #E6E6E6;
  box-sizing: border-box;
  vertical-align: middle;
}
.companyInfoTable th{
  width: 100px;
  font-weight: 500;
  text-align: center;
  color: #1A9789;
  background: #d2eae7;
  padding: 12px 0;
}
.companyInfoTable_en th{
  width: 150px;
  padding: 12px;
}
.companyInfoTable td{
  width: calc(100% - 100px);
  color: #405C71;
  padding: 12px 20px;
}
.companyInfoTable_en td{
  width: calc(100% - 150px);
}
.companyInfoTable tr:not(:last-child) th{
  border-bottom: 1px solid #fff;
}




.composition-wrap{
  padding: 50px 0;
  margin: 0 0 20px;
}
.composition_copy{
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 50px;
}

.composition-inner{
  width: 960px;
  margin: 0 auto;

  display: flex;
  align-items: center;
  justify-content: center;

  position: relative;

  padding: 50px 0;
}
.composition_en-inner{
  padding: 150px 0;
}

.composition_image{
  width: 440px;
}

.companyBox{
  width: 210px;
  height: 200px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: absolute;
  box-sizing: content-box;
}
.composition_en-inner .companyBox{
  height: 330px;
}

.companyBox01{
  left: 0;
  top: 0;
  border-right: 6px solid #1A9789;
  padding-right: 16px;
}
.companyBox02{
  left: 0;
  bottom: 0;
  border-right: 6px solid #1A9789;
  padding-right: 16px;
}
.companyBox03{
  right: 0;
  top: 0;
  border-left: 6px solid #1A9789;
  padding-left: 16px;
}
.companyBox04{
  right: 0;
  bottom: 0;
  border-left: 6px solid #1A9789;
  padding-left: 16px;
}

.logo_companyBox{
  margin: 0 0 18px;
}
.logo_companyBox01{
  /* width: 108px; */
  width: 84px;
}
.logo_companyBox02{
  width: 130px;
}
.logo_companyBox03{
  width: 201px;
}
.logo_companyBox04{
  width: 180px;
}

.companyBox_text p{
  font-size: 1.8rem;
  color: #4d4d4d;
  letter-spacing: 0.05em;
}
.companyBox_text p span{
  color: #1A9789;
}
p.companyBox_note{
  font-size: 1.3rem;
  margin: 1em 0 0;
}

.message-wrap{
  padding: 50px 0;
}
.message_title{
  font-size: 3.6rem;
  font-weight: 700;
  text-align: center;
  color: #DDB67B;
  margin: 0 0 50px;
}
.message-inner{
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
  display: flex;
  flex-direction: row-reverse;
  justify-content: space-between;
}
.message_ph{
  width: 317px;
}

.message_content{
  width: calc(100% - 360px);
}
.message_content p{
  color: #000;
  line-height: 2;
  text-indent: 1em;
}
.message_content p{
  color: #000;
  line-height: 2;
  text-indent: 1em;
  text-align: justify;
}
.message_content p span{
  display: block;
}

.message-en_content p{
  text-indent: 0;
  text-align: left;
}
.message-en_content p span{
  padding-left: 2em;
}
.message-en_content p:not(:last-of-type){
  margin: 0 0 1em;
}

.messsage_signature-wrap{
  margin: 45px 0 0;
}
.messsage_signature-wrap p{
  font-size: 1.6rem;
  text-indent: 0;
}
.messsage_signature{
  width: 240px;
  margin: 13px 0 0;
}

/* company end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* project ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.pageProject-wrap{
  padding: 0 0 70px;
}
.projectIntro{
  line-height: 2;
  color: #000;
  width: 90%;
  max-width: 960px;
  margin: 70px auto;
}

.projectPolicy-wrap{
  width: 960px;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;

  /* padding: 100px 0; */
}
.projectPolicy_left{
  display: flex;
}
.projectPolicy_title,
.projectPlan_title{
  width: 80px;
  font-size: 2.4rem;
  color: #fff;
  writing-mode: vertical-rl;
  text-align: center;
  background: #569E93;
  display: flex;
  align-items: center;
  justify-content: center;
}
.projectPolicy_en_title,
.projectPlan_en_title{
  width: 960px;
  margin: 0 auto 30px;
  writing-mode: horizontal-tb
}

.projectPolicy_title::before,
.projectPlan_title::before{
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url(assets/images/project/icon_policy-title.png);
  background-size: cover;
  background-repeat: no-repeat;
  margin: 0 0 5px;
}
.projectPlan_title::before{
  background-image: url(assets/images/project/icon_plan-title.png);
}

.projectPolicy_windmill{
  width: 172px;
}
.projectPolicy_en_windmill{
  display: flex;
  align-items: center;
}

.projectPolicy_right{
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.projectPolicy_content{
  width: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  position: relative;
}
.projectPolicy_en_content:not(:last-child){
  margin-bottom: 20px;
}
.icon_projectPolicy_top{
  width: 287px;
  position: absolute;
  z-index: -1;
  top: 10px;
  left: -305px;
}
.icon_projectPolicy_center{
  width: 179px;
  position: absolute;
  z-index: -1;
  top: 0;
  left: -197px;
}
.icon_projectPolicy_bottom{
  width: 287px;
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: -305px;
}

.projectPolicy_en_content .icon_projectPolicy_top{
  top: 60px;
  left: -311px;
}
.projectPolicy_en_content .icon_projectPolicy_center{
  top: 20px;
  left: -203px;
}
.projectPolicy_en_content .icon_projectPolicy_bottom{
  bottom: 15px;
  left: -311px;
}

.projectPolicy_head{
  display: flex;
  align-items: center;
}
.projectPolicy_num{
  font-size: 2.4rem;
  color: #4D4D4D;
}
.projectPolicy_item{
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: 0;
  color: #1A9789;
  width: 100px;
  padding: 0 16px;
}
.projectPolicy_en_content .projectPolicy_item{
  width: 136px;
}
.projectPolicy_text{
  width: 350px;
  padding-left: 22px;
  border-left: 6px solid #1A9789;
  box-sizing: content-box;
}
.projectPolicy_en_content .projectPolicy_text{
  width: 430px;
}

.projectPolicy_content:nth-child(even) .projectPolicy_text{
  border-color: #DDB67B;
}
.projectPolicy_text p{
  font-size: 1.8rem;
  letter-spacing: 0;
  line-height: 1.38;
  color: #4D4D4D;
}
.projectPolicy_text p span{
  color: #1A9789;
}
p.projectPolicy_note{
  font-size: 1.3rem;
  margin-top: 1em;
}


.projectPlan-wrap{
  width: 960px;
  margin: 0 auto 70px;
  display: flex;
  justify-content: space-between;

  /* padding: 100px 0; */
}
.projectPlan_contents{
  width: calc(100% - 80px - 1.458%);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.projectPlan_contents{
  width: 100%;
}

.projectPlan_contents dt,
.projectPlan_contents dd{
  font-size: 2rem;
  border-radius: 6px;
}
.projectPlan_contents dt{
  color: #4d4d4d;
  width: 150px;
  /* height: 50px; */
  padding: 10px 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #E6E6E6;
}
.projectPlan_contents dd{
  color: #1A9789;
  width: calc(100% - 150px - 1.458%);
  /* height: 50px; */
  padding: 10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #d2eae7;
}
.projectPlan_contents dt:not(:last-of-type),
.projectPlan_contents dd:not(:last-of-type){
  margin: 0 0 20px;
}
.projectPlan_contents dd:last-of-type{
  padding: 0;
}
.projectPlan_contents dd img{
  border-radius: 8px;
}

.projectSchedule-wrap{
  width: 100%;
  padding: 50px 0;
}
.projectSchedule_title{
  font-size: 3.6rem;
  color: #DDB67B;
  text-align: center;
  margin: 0 0 50px;
}
.projectSchedule_scrollText{
  display: none;
  width: 90%;
  margin: 0 auto 1em;
  font-size: 1.4rem;
}
.projectSchedule{
  width: 90%;
  max-width: 960px;
  margin: 0 auto;
}
.projectSchedule_note{
  width: 90%;
  max-width: 960px;
  margin: 20px auto 0;
  font-size: 1.3rem;
  color: #4d4d4d;
  line-height: 2;
}

/* project end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* contact ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.contactForm-wrap{
  width: 100%;
  /* padding: 60px 0 50px; */
  padding: 60px 0 100px;
}
.contactForm_title{
  color: #000;
  display: inline-block;
  margin: 25px 0 5px;
}
.contactForm_must{
  color: #1A9789;
}
.contactForm-wrap p{
  display: block;
}
.contactForm-wrap input,
.contactForm-wrap select,
.contactForm-wrap textarea{
  width: 100%;
  font-size: 1.6rem;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #D9D9D9;
  /* margin: 0 0 25px; */
}
.contactForm-wrap select{
  background: transparent;
  border: 1px solid #d9d9d9;
  padding: 10px;
  font-size: 1.6rem;
  width: 100%;
  box-sizing: border-box;
  color: #000;
}

.btn_check input{
  color: #fff;
  font-weight: 500;
  width: 160px;
  height: 50px;
  background: #1A9789;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  box-sizing: border-box;
  transition: .3s;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  border: 1px solid #1A9789;
  margin: 50px auto 0;
}
.btn_check input:hover{
  background: #fff;
  color: #1A9789;
}
.wpcf7-spinner{
  display: none;
}
/* contact end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* contact confirm ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.contactConfirm-wrap{
  padding: 0 0 100px;
}
.contactConfirm_text{
  font-size: 2rem;
  margin: 60px 0 30px;
  text-align: center;
}
.contactConfirmContent{
  width: 100%;
  min-height: 46px;
  font-size: 1.6rem;
  box-sizing: border-box;
  padding: 10px;
  border: 1px solid #D9D9D9;
  display: block;
  color: #000;
  white-space: pre-wrap;
  background: #efefef;
}
.btn_contact-wrap{
  width: 350px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

.btn_send input,
.btn_prev input{
  color: #fff;
  font-weight: 500;
  width: 160px;
  height: 50px;
  background: #1A9789;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  box-sizing: border-box;
  transition: .3s;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  border: 1px solid #1A9789;
  margin: 50px auto 0;
}
.btn_send input:hover,
.btn_prev input:hover{
  background: #fff;
  color: #1A9789;
}
/* contact confirm end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* contact thanks ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.contactThanks_text{
  font-size: 2rem;
  /* line-height: 2; */
  text-align: center;
}
.contactThanks_text:not(:last-child){
  margin: 0 0 1em;
}
.btn_contactThanks{
  color: #fff;
  font-weight: 500;
  width: 160px;
  height: 50px;
  background: #1A9789;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  box-sizing: border-box;
  transition: .3s;
  box-shadow: 0 5px 5px rgba(0, 0, 0, 0.2);
  border: 1px solid #1A9789;
  margin: 100px auto 0;
}
.btn_contactThanks:hover{
  background: #fff;
  color: #1A9789;
}

/* contact thanks end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* privacy ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.pagePrivacy-wrap{
  padding: 50px 0 100px;
}
.privacy_intro,
.privacy_text{
  color: #000;
  line-height: 2;
}
.privacy_title{
  font-size: 1.8rem;
  margin: 50px 0 5px;
}
.privacy_list_title{
  margin: 1em 0 0;
}
.privacy_list{
  margin: 1em 0 0;
}
.privacy_list2{
  margin: 0;
}
.privacy_list li{
  color: #000;
  position: relative;
  padding-left: 1em;
}
.privacy_list li:not(:last-child){
  margin: 0 0 10px;
}
.privacy_list li::before{
  content: "\30FB";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
/* privacy end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* hse ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.pageHSE-wrap{
  padding: 50px 0 100px;
}
.pageHSE-wrap p{
  color: #000;
  line-height: 2;
}
.hse_intro{
  margin: 0 0 50px;
}
.hse_list{
  margin: 1em 0 2em;
}
.hse_list li{
  color: #000;
  position: relative;
  padding-left: 1em;
}
.hse_list li:not(:last-child){
  margin: 0 0 10px;
}
.hse_list li::before{
  content: "\30FB";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}
.hse_bottom-wrap{
  margin: 50px 0 0;

  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.hse_signature{
  width: 240px;
  margin: 10px 0 0;
}
/* hse end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* policies ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.pagePolicies-wrap{
  padding: 100px 0;
}

.pagePolicies_list li{
  text-align: center;
}
.pagePolicies_list li:not(:last-child){
  margin: 0 0 100px;
}
.pagePolicies_list li a{
  font-size: 3.6rem;
  text-decoration: underline;
}

/* policies end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */


/* 404 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */
.page_notFound-wrap{
  padding: 30px 0 100px;
}
.notFound_title{
  font-size: 3.2rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 30px;
}
.notFound_text{
  font-size: 2rem;
  line-height: 2;
  text-align: center;
}
.notFound_text a{
  text-decoration: underline;
  transition: .3s;
}
.notFound_text a:hover{
  opacity: .7;
}

/* 404 end ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

@media screen and (max-width: 1240px) {
  .nav_header,
  .lang-wrap{
    display: none;
  }
  .inner{
    display: block;
  }

  .lang_sp-wrap{
    display: block;
    margin-left: 0;
    margin-top: 50px;
  }
  .lang_title{
    color: #fff;
  }
  .lang li a {
    color: #fff;
    border-color: #fff;
  }
  .lang li a.lang_current{
    background: #fff;
    color: #2eb2cb;
  }

}

@media screen and (max-width: 1200px) {
  .br_U-1200{
    display: inline;
  }
}

@media screen and (max-width: 1080px) {
  .br_U-1080{
    display: inline;
  }

  /* .nav_header,
  .lang-wrap{
    display: none;
  }
  .inner{
    display: block;
  }

  .lang_sp-wrap{
    display: block;
    margin-left: 0;
    margin-top: 50px;
  }
  .lang_title{
    color: #fff;
  }
  .lang li a {
    color: #fff;
    border-color: #fff;
  }
  .lang li a.lang_current{
    background: #fff;
    color: #2eb2cb;
  } */
}

@media screen and (max-width: 1000px) {
  .br_O-1000{
    display: none;
  }
  .br_U-1000{
    display: inline;
  }

  /* .nav_header,
  .lang-wrap{
      display: none;
    }
    .inner{
      display: block;
    }

  .lang_sp-wrap{
    display: block;
    margin-left: 0;
    margin-top: 50px;
  }
  .lang_title{
    color: #fff;
  }
  .lang li a {
    color: #fff;
    border-color: #fff;
  }
  .lang li a.lang_current{
    background: #fff;
    color: #2eb2cb;
  } */

  /* top */
  .topPageLink{
    padding: 35px 30px 134px;
  }

  .topNews-wrap{
    display: block;
  }
  .topNews-inner{
    width: 100%;
  }
  .topNews-inner:not(:last-of-type){
    margin-bottom: 100px;
  }
  .topNews-inner .title{
    font-size: 3.2rem;
  }
  .topNews-inner .newsTitle {
    height: auto;
    /* overflow: hidden;
    display: -webkit-box;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3; */
  }


  /* company */
  .composition-inner{
    width: 700px;
  }
  .companyBox{
    width: 158px;
    height: 160px;
  }
  .composition_en-inner .companyBox{
    height: 260px;
  }

  .composition_image{
    width: 330px;
  }

  .logo_companyBox01{
    /* width: 81px; */
    width: 63px;
  }
  .logo_companyBox02{
    width: 98px;
  }
  .logo_companyBox03{
    width: 150px;
  }
  .logo_companyBox04{
    width: 135px;
  }
  .companyBox_text p{
    font-size: 1.4rem;
  }
  p.companyBox_note{
    font-size: 1.1rem;
  }


  /* project */
  .projectPolicy-wrap,
  .projectPlan-wrap{
    width: 700px;
  }

  .projectPolicy_title,
  .projectPlan_title{
    font-size: 1.8rem;
    width: 60px;
  }
  .projectPolicy_en_title,
  .projectPlan_en_title{
    width: 700px;
  }

  .projectPolicy_title::before,
  .projectPlan_title::before{
    width: 45px;
    height: 45px;
  }

  .projectPolicy_content{
    display: block;
  }
  .projectPolicy_en_content:not(:last-child) {
    margin-bottom: 15px;
  }

  .projectPolicy_windmill{
    width: 129px;
    display: flex;
    align-items: center;
  }

  .projectPolicy_right{
    height: 440px;
  }
  .projectPolicy_en_right{
    height: auto;
  }
  .projectPolicy_head{
    margin: 0 0 5px;
  }
  .projectPolicy_num{
    font-size: 1.8rem;
  }
  .projectPolicy_item{
    width: auto;
    font-size: 1.8rem;
    padding: 0 0 0 12px;
  }
  .projectPolicy_en_content .projectPolicy_item{
    width: auto;
  }

  .projectPolicy_text{
    padding-left: 18px;
  }
  /* .projectPolicy_en_content .projectPolicy_text{
    width: 380px;
  } */
  .projectPolicy_text p{
    font-size: 1.4rem;
  }
  p.projectPolicy_note{
    font-size: 1.2rem;
  }

  .icon_projectPolicy_top{
    width: 215px;
    left: -245px;
  }
  .icon_projectPolicy_center{
    width: 134px;
    left: -164px;
  }
  .icon_projectPolicy_bottom{
    width: 215px;
    left: -245px;
  }
  .projectPolicy_en_content .icon_projectPolicy_top{
    top: 32px;
    left: -235px;
  }
  .projectPolicy_en_content .icon_projectPolicy_center{
    top: 0;
    left: -154px;
  }
  .projectPolicy_en_content .icon_projectPolicy_bottom{
    bottom: 46px;
    left: -235px;
  }

  .projectPlan_contents {
    width: calc(100% - 60px - 1.458%);
  }
  .projectPlan_en_contents{
    width: 100%;
  }
  .projectPlan_contents dt,
  .projectPlan_contents dd{
    font-size: 1.4rem;
    padding: 7px 0;
  }
  .projectPlan_contents dt:not(:last-of-type),
  .projectPlan_contents dd:not(:last-of-type) {
    margin: 0 0 15px;
  }

}

@media screen and (max-width: 768px) {
  /* common */
  .br_pcOnly{
    display: none;
  }
  .br_spOnly{
    display: inline;
  }
  .title{
    /* font-size: 3.6rem; */
    font-size: 3.2rem;
  }
  .title span{
    font-size: 1.5rem;
  }

  /* header */
  #pageheader{
    height: 60px;
  }
  .header-inner{
    height: 60px;
    padding: 0 10px;
  }
  /* .nav_header{
    display: none;
  }
  .inner{
    display: block;
  } */
  .logo_header{
    width: 200px;
  }

  /* footer */
  .nav_footer li{
    border-right: none;
  }
  .nav_footer li a{
    font-size: 1.5rem;
  }
  .footerCopy{
    font-size: .9rem;
  }
  .cookieBox-inner{
    flex-direction: column;
  }
  .cookieBox_text{
    width: 100%;
    margin: 0 0 20px;
  }

  /* top */
  .mv-wrap{
    margin: 0 0 30px;
  }
  .topNews-wrap{
    padding: 50px 0;
  }
  .newsList{
    margin: 45px auto 50px;
  }
  .newsList li{
    display: block;
    padding: 20px 10px;
  }
  .topNews-inner .newsDate,
  .archiveNewsList .newsDate{
    margin: 0 0 10px;
  }
  .topPageLink-wrap{
    padding: 50px 0;
    margin: 0 auto 50px;
    display: block;
  }
  .topPageLink{
    width: 100%;
    max-width: 520px;
    margin: 0 auto;
  }
  .topPageLink:not(:last-of-type){
    margin-bottom: 30px;
  }
  .topPageLink_title{
    font-size: 2.4rem;
  }

  .topBottom-image{
    height: 250px;
  }

  /* page */
  .breadcrumb{
    margin: 30px auto;
  }
  .archive_pagination .nav-links{
    padding: 0 0 50px;
  }
  .prev.page-numbers,
  .next.page-numbers{
    bottom: 0;
  }
  .coming-soon{
    font-size: 3.2rem;
    padding: 50px 0 150px;
  }

  /* news list */
  .archiveNewsList{
    margin: 50px auto;
  }
  .archive_pagination{
    margin: 0 0 50px;
  }

  /* news detail */
  .newsDetailTitle{
    /* font-size: 2.7rem; */
    font-size: 2.4rem;
  }
  .newsDetailDate{
    margin: 40px auto 13px;
  }
  .newsDetail_pagination-wrap{
    margin: 50px 0 80px;
    padding: 0 0 80px;
    position: relative;
  }
  .newsDetail_pagination.prev{
    position: absolute;
    bottom: 0;
    left: 30px;
  }
  .newsDetail_pagination.next{
    position: absolute;
    bottom: 0;
    right: 30px;
  }

  /* company */
  .pageCompany-wrap{
    padding: 0 0 50px;
  }
  /* .companyIntro{
    margin: 50px auto;
  } */
  .companyInfoTable{
    /* margin: 0 auto 50px; */
    margin: 50px auto;
  }

  .composition-wrap{
    margin: 0;
  }
  .composition_copy{
    font-size: 2.4rem;
    margin: 0 0 30px;
  }
  .composition-inner{
    display: block;
    width: 90%;
    max-width: 440px;
    padding: 0;
  }
  .composition_image{
    width: 100%;
    margin: 0 auto 50px;
  }
  .companyBox{
    position: static;
    width: calc(100% - 82px);
    height: auto;
    box-sizing: border-box;
    padding: 10px 0 10px 16px;
    margin-left: 82px;
    position: relative;
  }
  .composition_en-inner .companyBox{
    height: auto;
  }
  .companyBox01,
  .companyBox02{
    border-right: none;
    border-left: 6px solid #1A9789;
    padding-right: 0;
  }
  .companyBox:not(:last-child){
    margin-bottom: 50px;
  }
  .companyBox::before{
    content: "";
    display: block;
    width: 60px;
    height: 60px;
    background-size: cover;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -82px;
    margin: auto;
  }
  .companyBox01::before{
    background-image: url(assets/images/company/icon_composition01.png);
  }
  .companyBox02::before{
    background-image: url(assets/images/company/icon_composition02.png);
  }
  .companyBox03::before{
    background-image: url(assets/images/company/icon_composition03.png);
  }
  .companyBox04::before{
    background-image: url(assets/images/company/icon_composition04.png);
  }

  .message_title{
    font-size: 2.4rem;
    margin: 0 0 30px;
  }
  .message-inner{
    display: block;
  }
  .message_ph{
    width: 100%;
    max-width: 440px;
    margin: 0 auto 30px;
  }
  .message_content{
    width: 100%;
  }
  .messsage_signature-wrap{
    margin: 30px 0 0;
  }
  .messsage_signature{
    width: 180px;
  }



  /* project */
  .pageProject-wrap{
    padding: 0 0 50px;
  }
  .projectIntro{
    margin: 50px auto;
  }
  .projectPolicy-wrap,
  .projectPlan-wrap{
    width: 90%;
    display: block;
  }
  .projectPolicy-wrap{
    margin: 0 auto 50px;
  }

  .projectPolicy_content{
    padding-left: 58px;
  }
  .projectPolicy_content:not(:last-of-type){
    margin: 0 0 30px;
  }

  .projectPolicy_title,
  .projectPlan_title{
    width: 100%;
    height: 60px;
    writing-mode:horizontal-tb;
    margin: 0 0 30px;
  }
  .projectPolicy_en_title,
  .projectPlan_en_title{
    width: 90%;
    height: 70px;
    margin: 0 auto 30px;
  }
  .projectPolicy_title::before,
  .projectPlan_title::before{
    margin: 0 5px 0 0;
  }
  .projectPolicy_en_title::before,
  .projectPlan_en_title::before{
    margin: 0 15px 0 0;
  }

  .projectPolicy_windmill{
    display: none;
  }

  .icon_projectPolicy_top,
  .icon_projectPolicy_center,
  .icon_projectPolicy_bottom,
  .projectPolicy_en_content .icon_projectPolicy_top,
  .projectPolicy_en_content .icon_projectPolicy_center,
  .projectPolicy_en_content .icon_projectPolicy_bottom{
    width: 40px;
    height: 40px;
    top: 0;
    bottom: auto;
    left: 0;
  }

  .projectPolicy_right{
    height: auto;
  }
  .projectPolicy_text,
  .projectPolicy_en_content .projectPolicy_text {
    width: 100%;
    box-sizing: border-box;
  }

  .projectPlan-wrap{
    margin: 0 auto 50px;
  }
  .projectPlan_contents{
    width: 100%;
  }
  .projectPlan_contents dt{
    width: 100px;
  }
  .projectPlan_contents dd {
    width: calc(100% - 100px - 1.458%);
  }

  .projectSchedule_title{
    font-size: 2.4rem;
    margin: 0 0 30px;
  }

  /* contact */
  .contactForm-wrap{
    padding: 30px 0 50px;
  }

  /* contact confirm */
  .contactConfirm_text{
    font-size: 1.8rem;
    text-align: justify;
    margin: 50px 0 20px;
  }
  .contactConfirm-wrap{
    padding: 0 0 50px;
  }
  .btn_contact-wrap{
    width: 300px;
  }
  .btn_send input,
  .btn_prev input{
    width: 130px;
  }

  /* contact thanks */
  .contactThanks_text{
    font-size: 1.8rem;
    /* text-align: justify; */
    text-align: left;
  }

  /* hse */
  .hse_bottom-wrap{
    align-items: flex-start;
  }

  /* policies */
  .pagePolicies-wrap {
    padding: 80px 0;
  }
  .pagePolicies_list li:not(:last-child) {
    margin: 0 0 80px;
  }
  .pagePolicies_list li a{
    font-size: 2.4rem;
  }

  /* 404 */
  .notFound_title{
    font-size: 2.4rem;
    text-align: justify;
  }
  .notFound_text{
    font-size: 1.8rem;
    text-align: justify;
  }


}

@media screen and (max-width: 530px) {
  .projectSchedule_scrollText{
    display: block;
  }
  .projectSchedule{
    overflow-x: scroll;
  }
  .projectSchedule img{
    width: 480px;
  }
  .projectSchedule_note{
    font-size: 1.2rem;
  }
}


/* 2024-12-03 追加 ＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ */

/* お知らせ一覧にタグ追加 */

.newsList > li{
  display: block;
}
.newsList li .box{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

.newsList li .tags{
  display: flex;
}
.newsList li .tags li{
  border: none;
  padding: 0;

}
.newsList li .tags li a{
  color: #aaa;
  margin: 0 5px 10px 0;
  border: solid 1px #aaa;
  padding: 0 10px;
  border-radius: 50px;
  font-size: 12px;
}


@media screen and (max-width: 768px){
  .newsList li .tags{
    margin-bottom: 10px;
  }
  .newsList li .box{
    flex-direction: column;
  }
  /* .newsList li .box span, */
  .newsList li .box a{
    width: 100%;
  }
}
