@charset "UTF-8";

/*
Theme Name: kaiyoutansa
Description: 株式会社　海洋探索様用のテンプレート
Version: 1.0
Author: Road Skip
Text Domain: kaiyoutansa
*/


/* ヘッダー　*/
.logo{
	margin: 12px; 20px;
	width: 180px;
}
.header{
	height: 0px;
}
.header-nav {
  width: 100%;
  height: 87px;
  padding: 17px 4.428% 25px 3%;
}
.header-nav.is-fixed {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999;
}


.gnav {
  padding: 20px 4.428% 22px 20px;
  font-size: 16px;
  font-weight: 500;
  line-height: 3;
  letter-spacing: 0.05em;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99999;
}

.gnav-list {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.gnav-list li:not(:last-of-type) {
  margin-right: 68px;
}
.gnav-list a {
  display: block;
}
.gnav-list a {
  color: #142f81;
}



.company-info {
  padding-right: 10px;
  padding-bottom: 66px;
}
.company-info dl {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.company-info dl:not(:last-of-type) {
  margin-bottom: 24px;
}
.company-info dt {
  width: 6.625em;
  margin-right: 2em;
  background-color: rgba(196, 196, 196, 0.2);
  border-radius: 5px;
  text-align: center;
}
.company-info dd {
  flex: 1 1 0;
}

.inner.is-small {
    max-width: calc(1160px + 8%);
	padding-right: 4%;
    padding-left: 4%;
    margin: 0 auto;
}

.cat-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  font-size: 0.8125rem;
  color: #555555;
}
.cat-list > li {
  min-width: 40px;
  padding: 5px;
  margin-bottom: 0.5em;
  background-color: #F3F3F3;
  border-radius: 5px;
  text-align: center;
  line-height: 1;
}
.cat-list > li:not(:last-of-type) {
  margin-right: 0.923em;
}

.news-list > li {
  padding-bottom: 18px;
  border-bottom: 1px solid #BABABA;
}
.news-list > li:not(:last-of-type) {
  margin-bottom: 16px;
}
.news-list a {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  padding-left: 3.193%;
  position: relative;
}
.news-list a::after {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 14px 14px;
  border-color: transparent transparent #E5E5E5 transparent;
  position: absolute;
  bottom: 0;
  right: 0;
}
.news-list .thumbnail {
  width: 17.288%;
  margin-right: 6.101%;
  line-height: 1;
}
.news-list .text {
  flex: 1 1 0;
  line-height: 1.687;
}
.news-list .date {
  font-size: 0.8125rem;
  color: #808080;
}

/* reCAPTCHA */
.grecaptcha-badge { visibility: hidden; }
.recaptcha{
	font-size: 12px;
}

/* 404 */
.not-found{
	margin-top: 180px;
}


/* フッター　*/
.footer {
	height: 540px;
	background-image: url('img/footer.png');
	background-position: center;
    background-size: cover;
}

.footer .inner {
  position: relative;
}

.copyright {
  position: absolute;
  top: 510px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 11px;
  color: #fff;
  text-align: center;
}
.footer-logo{
position: absolute;
    top: 40px;
    left: 4.8%;
}

.page404-text-box {
  max-width: 585px;
  margin: 0 auto;
  font-size: 0.9375rem;
  color: #333;
  line-height: 2.333;
}
.page404-text-box > p:not(:last-of-type) {
  margin-bottom: 1.5em;
}
.page404-text-box a {
  text-decoration: underline;
}

.home-main {
  padding-top: 0;
  padding-bottom: 120px;
  background-color: #FFFFFF;
  position: relative;
  z-index: 1;
}

.box-white {
  padding: 60px 6.551% 92px;
  margin-bottom: 74px;
  background-color: #FFFFFF;
  border-radius: 10px;
}
.box-white.is-page404 {
  padding-top: 56px;
  padding-bottom: 56px;
}

.text-red {
  color: #DA1725;
}

.btn-wrapper {
  margin-top: 30px;
  text-align: center;
}

.btn-submit {
  display: inline-block;
  min-width: 240px;
  padding: 10px 30px;
  border-radius: 30px;
  color: #FFFFFF;
  text-align: center;
  background-color: #004e98;
}
.btn-submit:hover {
  background-position-x: 100%;
  color: #333;
}

.form-wrapper {
  max-width: 586px;
  margin: 0 auto;
}
.form-wrapper .about-text {
  margin-bottom: 54px;
  font-size: 0.9375rem;
  color: #333;
  line-height: 2.333;
}
@media screen and (max-width: 768px) {
  .form-wrapper .about-text {
    font-size: 0.875rem;
  }
}
.form-wrapper .about-text a:not(a[href^="tel:"]) {
  text-decoration: underline;
}

.form-box dd {
        padding-bottom: 2em;
    }

.required-text {
	font-size:14px;
  color: #fff;
	background-color: #004e98;
	padding: 3px;
	border-radius: 3px;
  margin-left: 0.5em;
}



.news-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.news-wrapper .box-white {
  padding: 26px 7.282% 50px;
}
.news-wrapper .main-content {
  width: 61.551%;
}
.news-wrapper .sidebar {
  width: 32.931%;
}

.news-title {
  margin-bottom: 1em;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 2.25;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}
@media screen and (max-width: 768px) {
  .news-title {
    font-size: 1.125rem;
  }
}

.wp-pagenavi {
  display: flex;
  justify-content: flex-end;
  margin-top: 42px;
}
.wp-pagenavi span, .wp-pagenavi a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border: 1px solid #444444;
  font-size: 0.9375rem;
  font-weight: 500;
  transition: 0.3s ease-in;
}
.wp-pagenavi span:not(:last-child), .wp-pagenavi a:not(:last-child) {
  margin-right: 2.622%;
}
@media screen and (max-width: 768px) {
  .wp-pagenavi span, .wp-pagenavi a {
    font-size: 0.875rem;
  }
}
.wp-pagenavi span:hover, .wp-pagenavi a:hover {
  background-color: #1576BE;
  color: #FFFFFF;
}
.wp-pagenavi span.current {
  background-color: #1576BE;
  color: #FFFFFF;
}
.wp-pagenavi a {
  color: #666666;
}
.wp-pagenavi a.nextpostslink, .wp-pagenavi a.previouspostslink {
  width: auto;
  padding: 5px 1.2em;
}

.sidebar .box-white {
  padding-right: 8.376%;
  padding-left: 8.376%;
}
.sidebar .item {
  padding: 0 3.773%;
  padding-bottom: 36px;
}
.sidebar .item:not(:last-of-type) {
  border-bottom: 1px solid #BABABA;
  margin-bottom: 42px;
}
.sidebar-list {
  padding: 0 7.718%;
  font-weight: 500;
  color: #555555;
}
.sidebar-list a {
  display: inline-block;
  padding-right: 1em;
  line-height: 2.562;
}
.sidebar-list a::before {
  content: "-";
  display: inline-block;
  margin-right: 0.5em;
}

.post .box-white {
  padding-right: 5.882%;
  padding-left: 5.882%;
}
.post-header {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2px;
  font-size: 0.875rem;
  color: #555555;
}
.post-header time {
  margin-bottom: 0.5em;
}
.post-header .cat-list {
  font-size: 0.875rem;
}
@media screen and (max-width: 768px) {
  .post-header .cat-list {
    font-size: 0.8125rem;
  }
}
.post-header .cat-list > li {
  padding-right: 18px;
  padding-left: 18px;
}
.post-title {
  margin-bottom: 0.718em;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1.468;
}
@media screen and (max-width: 768px) {
  .post-title {
    font-size: 1.375rem;
  }
}
.post-wrapper {
  line-height: 1.75;
  letter-spacing: 0.11em;
}
.post-wrapper > * {
  margin-bottom: 36px;
}
.post-wrapper h2 {
  padding-left: 1.166em;
  margin-bottom: 1.5em;
  border-left: 3px solid #333;
  font-size: 1.5rem;
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .post-wrapper h2 {
    font-size: 1.125rem;
  }
}
.post-wrapper h3 {
  padding: 10px 4.444%;
  margin-bottom: 1.318em;
  background-color: #E2EBEF;
  border-radius: 10px;
  font-size: 1.375rem;
  font-weight: bold;
  color: #333;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  .post-wrapper h3 {
    font-size: 1rem;
  }
}
.post-wrapper .images-wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.post-wrapper .images-wrapper.col2 {
  margin-bottom: 0;
}
.post-wrapper .images-wrapper.col2 > a {
  width: 47.46%;
  margin-bottom: 36px;
}
.post .eyecatch {
  height: 0;
  padding-top: 59.841%;
  position: relative;
  overflow: hidden;
}
.post .eyecatch img {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.lb-outerContainer {
  background-color: transparent;
}

.lightbox .lb-image {
  border: none;
}

.page-nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding: 10px 10px;
  margin-top: 28px;
  border-top: 1px dashed #666666;
  border-bottom: 1px dashed #666666;
  font-size: 0.875rem;
  font-weight: 500;
  color: #666666;
}
@media screen and (max-width: 768px) {
  .page-nav {
    font-size: 0.8125rem;
  }
}
.page-nav > li {
  min-width: 5em;
}
.page-nav > li:first-of-type a::after {
  right: auto;
  left: 0;
  transform: translateY(-50%) rotate(-135deg);
}
.page-nav a {
  display: inline-block;
  min-width: 5em;
  padding: 5px 14px;
  position: relative;
}
.page-nav a.to-archive {
  font-weight: bold;
  color: #333;
}
.page-nav a.to-archive::after {
  content: none;
}
.page-nav a::after {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 1px solid #666666;
  border-right: 1px solid #666666;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%) rotate(45deg);
}

.privacy-wrapper {
  max-width: 574px;
  margin: 0 auto;
  font-size: 0.9375rem;
}
.privacy-wrapper > * {
  margin-bottom: 1.8em;
}
.privacy-wrapper h2 {
  margin-bottom: 1.35em;
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  .privacy-wrapper h2 {
    font-size: 1.125rem;
  }
}

/*========================
  ナビゲーション調整用の設定
==========================*/
@media screen and (max-width: 1100px) {
  .header-nav {
    height: 54px;
    padding: 4px 4.8% 5px 2.933%;
  }
  .site-id-img {
    width: 38px;
    height: 17px;
  }
  .gnav {
    width: 100%;
    height: 100vh;
    padding-top: 80px;
    background: #ffff;
    line-height: 3.866;
    position: fixed;
    top: 0;
    right: -120%;
    z-index: 2;
    transition: all 0.6s;
  }
  .gnav.is-open {
    right: 0;
  }
  .gnav-list {
    display: block;
    padding-top: 38px;
    padding-bottom: 36px;
  }
  .gnav-list li {
    text-align: center;
  }
  .gnav-list li:not(:last-of-type) {
    margin-right: 0;
  }
  .gnav-list li:first-of-type {
    display: block;
  }
 
  
  
  .btn-nav {
    display: inline-block;
    width: 58px;
    height: 50px;
    margin: 20px;
    border: 2px solid #0372b2;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 99999;
  }
	#gnav{
		z-index: 10000;
		height: 700px;
		opacity: 0.93;
		background-image: url(img/bubble.png);
        background-repeat: no-repeat;
        background-position: right bottom;
        background-size: 120px;
	}



	
  .btn-nav::before, .btn-nav::after {
    content: "";
    height: 2.4px;
    background-color: #0372b2;
    position: absolute;
    right: 12px;
    transition: all 0.4s;
  }
  .btn-nav::before {
    width: 30px;
    top: 20px;
  }
  .btn-nav::after {
    width: 30px;
    top: 28px;
  }
  .btn-nav.is-open::before {
    transform: translateY(4px) rotate(-24deg);
    width: 32px;
  }
  .btn-nav.is-open::after {
    transform: translateY(-4px) rotate(24deg);
    width: 32px;
  }
  
  .home-news {
    padding: 0 3%;
  }
	
}
.inner {
    padding-right: 6.133%;
    padding-left: 6.133%;
  }
/*========================
  TBサイズより広い場合の設定
==========================*/
@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
/*========================
  TBサイズ以下の設定
==========================*/
@media screen and (max-width: 768px) {
  .content-title {
    margin-bottom: 1em;
    margin-left: 6px;
    line-height: 2.812;
  }
  .content-title::before {
    margin-bottom: 4px;
    margin-left: -6px;
  }
  .company-info {
    padding-right: 0;
  }
  .company-info dt {
    width: 7.571em;
    margin-right: 1.428em;
  }
  .news-list {
    width: 114.678%;
    margin-left: -7.339%;
  }
  .news-list a {
    padding-right: 6.133%;
    padding-left: 6.133%;
  }
  .news-list a::after {
    right: 5.333%;
  }
  .news-list .thumbnail {
    width: 31%;
  }
  .footer-a {
    padding-top: 26px;
    padding-bottom: 12px;
  }
  .footer-nav {
    justify-content: center;
    margin-top: 16px;
  }

  .home-main {
    padding-bottom: 0;
  }
  
  .about {
    padding-bottom: 0;
  }
  .about::before {
    width: 49.866%;
    height: calc(100% - 14px);
  }
  .about .content-title {
    margin-bottom: 0.75em;
  }
  .about .content-title::before {
    margin-bottom: 4px;
    margin-left: -6px;
  }
  .about .content-wrapper {
    display: block;
  }
  .about .content-wrapper .text-wrapper {
    margin: 0 0 48px 6px;
  }
  .about .content-wrapper .content-text {
    width: 102%;
    padding-left: 6px;
    line-height: 2.357;
  }
  .about .content-wrapper .images-wrapper {
    width: 104.545%;
    margin-left: -6.969%;
  }
  .about .content-wrapper .images-wrapper .item1 {
    width: 36.521%;
  }
  .about .content-wrapper .images-wrapper .item2 {
    width: 29.855%;
    margin-top: 23.837%;
  }
  .about .content-wrapper .images-wrapper .item3 {
    width: 24.637%;
    margin-top: 43.023%;
  }
  .service {
    padding-top: 32px;
    padding-bottom: 28px;
  }
  .service .content-wrapper {
    display: block;
  }
  .service .content-wrapper .box-left {
    width: 100%;
  }
  .service .content-wrapper .box-left .content-text {
    width: 86.666%;
    line-height: 2.357;
  }
  .service .content-wrapper .box-right {
    display: block;
    width: 100%;
  }
  .service .item {
    width: 100%;
  }
  .service .item:nth-of-type(odd) {
    margin-top: 42px;
  }
  .service .item:nth-of-type(odd) .content-text {
    width: 91.515%;
  }
  .service .item:nth-of-type(even) {
    margin-top: 48px;
  }
  .service .item:nth-of-type(even) .content-text {
    width: 96.06%;
  }
  .service .item .content-text {
    margin-left: 2.727%;
  }
  .service .item-title-wrapper {
    margin-bottom: 26px;
    margin-left: 2.727%;
  }
  .service .item-title-wrapper .item-title-img {
    margin-right: 23px;
  }
  .company-news-wrapper {
    padding-top: 40px;
    padding-bottom: 46px;
    margin-bottom: 0;
  }
  .company-news-wrapper::before {
    width: 46.4%;
  }
  .home-company {
    width: 100%;
  }
  .home-company::before {
    width: 114%;
    height: calc(100% - 6px);
    left: 50%;
    transform: translateX(-50%);
  }
  .home-company .company-info {
    margin-left: 2.727%;
  }
  .home-news {
    width: 100%;
    padding-right: 6.4%;
    padding-left: 6.4%;
    padding-bottom: 40px;
    margin-top: 34px;
    margin-bottom: 0;
  }
  .home-news-title {
    text-align: left;
  }
  .home-news .news-list {
    width: 114.678%;
    margin-left: -7.339%;
  }
  .home-news .news-list .thumbnail {
    width: 31%;
  }
  .home-news > p {
    min-height: auto;
  }
  .box-white {
    padding-top: 30px;
    padding-bottom: 60px;
  }
  .form-wrapper {
    max-width: 480px;
  }
  .form-box {
    display: block;
  }
  .form-box dt, .form-box dd {
    display: block;
    width: 100%;
  }
  .form-box dt {
    padding-bottom: 0.3em;
  }
  .form-box dt.message {
    padding-top: 0;
  }
  .form-box dd {
    padding-bottom: 1em;
  }
  .company-about {
    justify-content: center;
    margin-bottom: 60px;
  }
  .company-about .text-wrapper {
    flex-basis: auto;
    width: 100%;
    margin-bottom: 1.5em;
    margin-left: 0;
  }
  .company-about .images-wrapper {
    width: 80%;
    max-width: 300px;
  }
  .company-info-wrapper {
    justify-content: center;
  }
  .company-info {
    padding-bottom: 40px;
  }
  .map {
    width: 100%;
    padding-top: 75.092%;
  }
  .news-wrapper .box-white {
    margin-bottom: 40px;
  }
  .news-wrapper .main-content, .news-wrapper .sidebar {
    width: 100%;
  }
  .news-list {
    width: 100%;
    margin-left: 0;
  }
  .page-nav {
    width: 104%;
    padding: 10px 0;
    margin-left: -2%;
  }
  .page-nav a {
    padding: 5px 8px;
  }
  .page-nav a.to-archive {
    padding: 5px 0;
  }
}
/*　お問い合わせ　*/
.contact-box {
    padding-top: 0;
    padding-bottom: 46px;
    border-radius: 0;
  }
  .contact-box .content-wrapper {
    max-width: calc(480px + 17.6%);
    padding: 0 8.8%;
    margin: 0 auto;
  }
  .contact-box .content-wrapper .item-left, .contact-box .content-wrapper .item-right {
    width: 100%;
  }
  .contact-box .content-wrapper .item-left {
    padding: 0 0 38px;
    border-right: none;
    border-bottom: 1px solid #CCCCCC;
  }
  .contact-box .content-wrapper .item-right .text {
    margin-bottom: 36px;
  }
  .contact-box .business-hours {
    display: block;
  }
  .contact-box .business-hours::after {
    content: "";
  }
@media screen and (max-width: 768px) {
    .box-white {
        padding-top: 30px;
        padding-bottom: 60px;
    }
}
.box-white {
    padding: 60px 6.551% 92px;
    margin-bottom: 74px;
    background-color: #FFFFFF;
    border-radius: 10px;
}
input[type=text], input[type=email], input[type=tel], textarea {
    width: 100%;
    padding: 6px 10px;
    border: 1.8px solid #c0bebe;
	border-radius: 6px;
    outline: none;
}
.checkbox{
  display: block;
  margin-bottom: 0.5em;
	display: flex;
	flex-direction: column;
}
.wpcf7-spinner{
	display: flex !important;
}
@media(min-width:768px){
	input[type=text], input[type=email], input[type=tel], textarea{
margin-top: 7px;
	}
}



/*----------------------------------------
  ここから
----------------------------------------*/

html {
  font-size: 100%;
}
body {
  color: #292929;
  font-family: "source-han-sans-japanese", sans-serif;
}
img {
  max-width: 100%;
  vertical-align: bottom;
}
li {
  list-style: none;
}
a {
  color: #666666;
  text-decoration: none;
  transition: all 0.3s ease;
}
a:hover {
  opacity: 0.7;
}
h2{
	font-size:24px;
	text-align: center;
}
h3{
	font-weight:400;
	color: #105f8f;
}

.wrapper {
  max-width: 1240px;
  padding: 0 20px;
  margin: 0 auto;
}



/* Header */
#header .logo {
  width: 100%;
  max-width: 130px;
  position: fixed;
  top: 15px;
  left: 20px;
  z-index: 30;
}
#header .logo a {
  display: block;
}
#header .logo img {
  width: 100%;
}

@media screen and (max-width: 767px) {
	#header .logo {
    max-width: 100px;
    top: 23px;
  }
  #header .navi .menu-area .menu {
    flex-direction: column;
    padding: 20px;
  }
  #header .navi .menu-area .menu li {
    width: 100%;
    margin: 0;
  }
  #header .navi .menu-area .menu li::after {
    top: 30px;
  }
  #header .navi .menu-area .menu li:nth-child(-n+2) {
    border-top: none;
  }
  #header .navi .menu-area .menu li a {
    padding: 20px 0;
  }
  #header .navi .menu-area .btn {
    flex-direction: column;
    padding: 20px;
  }
  #header .navi .menu-area .btn li {
    width: 100%;
    margin: 0 0 20px;
  }
}
	

/* Mainvisual */
.mainvisual {
  position: relative;
	
}
.mainvisual .wave {
  position: absolute;
  bottom: -2px;
}
.image-wrapper {
  position: relative;
  width: 100%;
  max-width: 100vw;
  overflow: hidden;
  height: 100vh;
}

.first-vw,
.first-vw2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 1s ease;
  object-fit: cover;
}

.first-vw {
  opacity: 1;
  z-index: 1;
  object-position: left center;
}

.first-vw2 {
  opacity: 0;
  z-index: 2;
  object-position: center;
}

@media(max-width:767px){
  .image-wrapper {
    height: 90vh;
  }
}

.mv-text {
  position: absolute;
  top: 40%;
  left: 50%;
  transform: translateX(-50%);
  color: white;
  font-size: 2.4rem;
  font-weight: bold;
  text-shadow: 1px 1px 5px #0372b2;
  z-index: 1;
  text-align: center;
  width: 90%;
	line-height: 2;
}
.green{
	color: #b2ffaa;
}
.slide1-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
}
/* PC */
.pc-text {
  display: block;
}
.sp-text {
  display: none;
}

/* スマホ */
@media screen and (max-width: 1330px) {
  .pc-text {
    display: none;
  }
  .sp-text {
    display: block;
    font-size: 1.6rem;
  }
}

/*　採用情報ボタン　*/
.rec-btn {
  position: absolute;
  z-index: 9999;
  max-width: 400px;
  height: auto;
  bottom: 30px;
  right: 30px;
}
.rec-link {
  position: absolute;
  z-index: 9999;
  bottom: 30px;
  right: 30px;
  display: block;
  width: 400px;
}

.rec-link img {
  display: block;
  width: 100%;
  height: auto;
  pointer-events: auto;
}


/* スマホ表示：下中央に配置 */
@media screen and (max-width: 768px) {
  .rec-btn {
    left: 50%;
    transform: translateX(-50%);
    right: auto;
    bottom: 20px;
    width: 360px;
  }
	.rec-link {
    left: 50%;
    right: auto;
    transform: translateX(-50%);
    bottom: 20px;
    width: 80%;
    max-width: 300px;
  }
}



/* 海洋探査について */
#top {
  padding: 80px 20px;
  position: relative;
}
.mv-text{
	font-family: "source-han-serif-japanese", serif;
}
.h2_b{
	color: #105f8f;
	font-family: "source-han-sans-japanese", sans-serif;
	font-style: italic;
}
.h2_w{
	color: #fff;
	font-family: "source-han-sans-japanese", sans-serif;
	font-style: italic;
}
.title_b {
  font-size: 48px;
  font-weight: bold;
  margin-bottom: 50px;
  font-family: "source-han-sans-japanese", sans-serif;
  font-style: italic;
}
.title_w {
  font-size: 48px;
  font-weight: bold;
  margin-bottom: 50px;
  font-family: "source-han-sans-japanese", sans-serif;
  font-style: italic;
}
.section-border_b {
  width: 140px;
  height: 2px;
  background-color: #105f8f;
  border: none;
  margin: 10px auto 40px;
}
.section-border_w {
  width: 140px;
  height: 2px;
  background-color: #fff;
  border: none;
  margin: 10px auto 40px;
}

.text {
  line-height: 24px;
	text-align: left;
	color: #fff;
	max-width: 600px;
	max-width: 720px;
    margin: 0 auto 10px;
	padding-bottom: 20px;
}

.about-us_box {
	max-width: 900px;
	background-color: rgba(16, 33, 117, 0.55);
	border-top-right-radius: 80px;
}

#top .message{
	font-size:18px;
	font-style: italic;
max-width: 720px;
    margin: 0 auto;	color: #fff;

}
.about-us {
	background-image: url('img/1-bg.png');
  background-size: cover;
	background-position: right center;
  background-repeat: no-repeat;
	padding-top: 80px;
	padding-bottom: 80px;
}
.kaishajouhou-btn{
	width: 320px;
    padding-top: 40px;
    display: block;
	margin: 0 auto;
}


@media screen and (max-width: 767px) {
 #top {
    padding: 40px 20px;
  }
 
.text {
    font-size: 16px;
	  padding: 0px;
  }
.title_b {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 50px;
  font-family: "source-han-sans-japanese", sans-serif;
  font-style: italic;
}
.title_w {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 50px;
  font-family: "source-han-sans-japanese", sans-serif;
  font-style: italic;
}
	.about-us_box{
		border-bottom-left-radius: 80px;
		margin-left: 5px;
		margin-right: 5px;
	}
}


/* 実績紹介 */
#works {
  padding: 80px 0;
}
#works .slider .slider-item {
  max-width: 400px;
  margin: 0 40px;
  text-align: center;
}

#works .slider .slider-item .title {
  font-size: 18px;
  margin: 30px 0 20px;
	color: #105f8f;
}
#works .slider .slider-item .text {
  line-height: 1.8;
}

@media screen and (max-width: 767px) {
 #works {
    padding: 40px 0;
  }
  #works .slider .slider-item {
    margin: 0 10px;
  }
  #works .slider .slider-item .title {
    font-size: 16px;
    margin: 20px 0 10px;
  }
  #works .slider .slider-item .text {
    font-size: 14px;
  }
}



.operations .others_box,
.history .others_box {
  margin-left: auto;
}

 /* 波 */
canvas {
  display: block;
  width: 100vw;
  max-width: 100%;
  overflow-x: hidden;
}
.others {
  position: relative;
  margin-top: 180px;
  z-index: 0;
}


canvas {
  position: absolute;
  top: -180px;
  left: 0;
  width: 100%;
  height: 180px;
  z-index: -1;
  pointer-events: none;
}

.nami-bg {
  background: linear-gradient(to bottom, rgb(173 222 252) 0%, #009be7 50%, #0292f8 100%);
  position: relative;
  z-index: 0;
  padding-bottom: 120px;
}
.others_box{
	margin-bottom: 40px;
}
.btn{
	width: 380px;
    padding: 10px 5px 0 5px;
    display: block;
    margin: 0 auto;
}
.btn-flex{
	display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.survey, .operations, .product, .history {
  position: relative;
}

/* PC（1400px以上重なる） */
.bio-img-pc, .product-img-pc {
  position: absolute;
  bottom: -40px;
  width: 540px;
  z-index: 2;
  display: none;
	left: 860px;
}
.operations-img-pc, .history-img-pc{
position: absolute;
    bottom: -40px;
    width: 540px;
    z-index: 2;
    display: none;
    right: 860px;
	}

/* sp（中に入れる） */
.bio-img-mobile {
  width: 100%;
  width: 64%;
  margin: 20px auto;
  display: none;
}

@media screen and (min-width: 1400px) {
  .bio-img-pc, .product-img-pc, .operations-img-pc, .history-img-pc {
    display: block;
  }
	.others_box {
    margin-bottom: 100px;
}
}

@media screen and (max-width: 1399px) {
  .bio-img-mobile {
    display: block;
  }
}



.survey .others_box {
	max-width: 900px;
	background-color: rgba(16, 33, 117, 0.55);
	border-top-right-radius: 80px;
	padding: 40px 20px;
	background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: left;
}

@media screen and (max-width: 767px) {
	.survey .others_box {
		border-bottom-left-radius: 80px;
		margin-left: 5px;
		margin-right: 5px;
		background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: left top;
		background-size: 100px;
	}
	.nami-bg{
		padding-bottom: 80px;
	}
}


.operations .others_box{
	max-width: 900px;
	background-color: rgba(16, 33, 117, 0.55);
	border-top-left-radius: 80px;
	padding: 40px 20px;
	background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: right;
}

@media screen and (max-width: 767px) {
	.operations .others_box{
		border-bottom-right-radius: 80px;
		margin-left: 5px;
		margin-right: 5px;
		background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: right;
		background-size: 100px;
	}
}
.product .others_box{
	max-width: 900px;
	background-color: rgba(16, 33, 117, 0.55);
	border-top-right-radius: 80px;
	padding: 40px 20px;
	background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: left;
}

@media screen and (max-width: 767px) {
	.product .others_box{
		border-bottom-left-radius: 80px;
		margin-left: 5px;
		margin-right: 5px;
		background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: left;
		background-size: 100px;
	}
}


.history .others_box{
	max-width: 900px;
	background-color: rgba(16, 33, 117, 0.55);
	border-top-left-radius: 80px;
	padding: 40px 20px;
	background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: right;
	margin-bottom: 0;
}


@media screen and (max-width: 767px) {
	.history .others_box{
		border-bottom-right-radius: 80px;
		margin-left: 5px;
		margin-right: 5px;
		background-image: url('img/bubble.png');
  background-repeat: no-repeat;
  background-position: right;
		background-size: 100px;
	}
}


/*---------------------------------------
 ページ設定
---------------------------------------*/
.page-eyecatch {
  position: relative;
  text-align: center;
  overflow: hidden;
  color: white;
}

.page-eyecatch img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.eyecatch-title {
  position: absolute;
  top: 55%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-shadow: 0 0 10px rgba(0,0,0,0.7);
}

.page-title-en {
  font-size: 3rem;
  font-style: italic;
  font-weight: 700;
  margin: 0;
  line-height: 1.2;
  font-family: "source-han-sans-japanese" sans-serif;
	width: 900px;
}

.page-title-ja {
  font-size: 1.4rem;
	font-style: italic;
  font-weight: 500;
  margin-top: 0.3em;
  font-family:"source-han-sans-japanese", sans-serif;
}
.page-eyecatch img{
		height: 340px;
	}
@media screen and (max-width: 520px) {
  .page-eyecatch.recruit img {
    height: auto !important;
    width: 100%;
    object-fit: cover;
  }
}
@media(max-width:1100px){
	.page-title-en{
		font-size: 1.6rem;
		width: 600px;
	}
}
@media(min-width:1100px){
	.page-eyecatch img{
		height: 500px;
	}
  .page-eyecatch.recruit img {
  height: auto;
}
}


/* Bottom-map */
.bottom-map {
  width: 100vw;
  margin: 0;
  padding: 0;
}

.bottom-map iframe {
  width: 100%;
  height: 300px;
  border: 0;
  display: block;
}



/* Fixed-btn */
#fixed-btn {
  width: 120px;
  display: none;
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 10;
}

/* Footer */
#footer {
  background-color: #f2f9fd;
  padding: 0 20px 40px;
}
#footer .content {
  max-width: 1000px;
  display: flex;
  justify-content: space-between;
  background-color: #fff;
  border-radius: 30px;
  padding: 5%;
  margin: 0 auto 30px;
  position: relative;
  top: -60px;
}
#footer .content .info-area {
  width: 50%;
  font-size: 14px;
}
#footer .content .info-area .address {
  margin-bottom: 5px;
}
#footer .content .info-area .tel {
  margin-bottom: 30px;
}
#footer .content .info-area .menu {
  display: flex;
  flex-wrap: wrap;
}
#footer .content .info-area .menu li {
  width: 45%;
  border-bottom: dashed 1px #121212;
  position: relative;
  margin-right: 5%;
}
#footer .content .info-area .menu li::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: solid 1px #121212;
  border-right: solid 1px #121212;
  transform: rotate(45deg);
  position: absolute;
  top: 20px;
  right: 10px;
}
#footer .content .info-area .menu li:nth-child(-n+2) {
  border-top: dashed 1px #121212;
}
#footer .content .info-area .menu li a {
  display: block;
  padding: 12px 0;
}
#footer .content .btn-area {
  width: 45%;
  max-width: 380px;
  margin-left: 5%;
}
#footer .content .btn-area .btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #ffef00;
  border-radius: 20px;
  font-weight: bold;
  padding: 25px 0;
}
#footer .content .btn-area .btn:first-child {
  margin-bottom: 20px;
}
#footer .content .btn-area .btn .arrow {
  width: 20px;
  margin-right: 10px;
}
#footer .copyright {
  font-size: 10px;
  text-align: center;
}

/*-------------------------------------------
スマートフォン
-------------------------------------------*/
@media screen and (max-width: 767px) {


  /*-------------------------------------------
  Bottom-img
  -------------------------------------------*/
  .bottom-img img {
    height: 300px;
  }

  /*-------------------------------------------
  Fixed-btn
  -------------------------------------------*/
  #fixed-btn {
    width: 80px;
    bottom: 10px;
    right: 10px;
  }

  /*-------------------------------------------
  Footer
  -------------------------------------------*/
  #footer .content {
    flex-direction: column;
    padding: 40px 20px;
    margin: 0 auto;
  }
  #footer .content .info-area {
    width: 100%;
    margin-bottom: 30px;
  }
  #footer .content .btn-area {
    width: 100%;
    margin: 0 auto;
  }
}

/*-------------------------------------------
  採用ページ
  -------------------------------------------*/

.layered-section {
  position: relative;
  min-height: 600px;
  overflow: visible;
padding-bottom: 120px;
	padding-top: 120px;
}

/* 一番下の背景画像 */
.background-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('img/bk-img.png');
  background-size: cover;
  background-position: top;
  z-index: 0;
}

/* 白いオーバーレイ */
.background-overlay {
  position: absolute;
  top: 60px;
	bottom: 60px;
  left: 5%;
  width: 90%;
  background-color: rgba(255, 255, 255, 0.9);
  z-index: 1;
}
.naiyou{
	position: relative;
	z-index: 2;
}



.h2_black {
    color: #292929;
    font-family: "source-han-sans-japanese", sans-serif;
    font-style: italic;
	font-weight: 400;
}
.title_blue{
	color: #105f8f;
	 font-size: 48px;
}
.section-border_blue{
    width: 60px;
    height: 2px;
    background-color: #105f8f;
    border: none;
    margin: 10px auto 40px;
	
}
.saiyujouhou_description{
    width: 60%;
    margin: 0 auto 40px;
	text-align: center;
	line-height: 1.7;
}
   .recruit-table {
  width: 60%;
  margin: 0 auto;
  
}

.recruit-row {
  padding: 12px 16px;
}

.recruit-row.bg {
  background-color: #c6e9fd;
}
.recruit-row.a{
	padding-left:30px;
}

.btn-2{
	width: 290px;
	margin: 40px auto 20px;
    display: block;
}
.rc-message{
	padding: 60px 0;
}
.rc-message{
	width: 100%;
  margin: 0 auto;
}
.img-pc{
	display: block;
	margin: 0 auto;
	max-width: 360px;
	padding-top: 70px;
}
.flexbox-p{
		padding: 20px;
	max-width: 600px;
	}
.big-letter{
	font-size: 34px;
}
.rc-message p{
	color: #105f8f;
}
.rc-message{
	background-image: url('img/bubble.png');
background-repeat: no-repeat;
  background-position: right 180px;
    max-width: 1100px;
}
.rc-intvw{
	position: relative;
    margin-top: 180px;
    z-index: 0;
}
.rc-intvw_p{
	color: #fff;
}
.rc-intvw .img-pc{
	max-width:360px;
    padding-top: 0;
}
.rc-message .flexbox-p a:nth-of-type(2) .btn-2 {
  margin-top: 0;
}




@media screen and (min-width: 768px){
	.img-sp{
display: none;
}
	.flexbox{
		display: flex;
		justify-content: space-evenly;
		max-width: 900px;
        margin: 0 auto;
		padding: 0 20px;
	}
	.flexbox-p{
		padding-top: 0;
	}
	.rc-intvw .flexbox{
		flex-direction: row-reverse;
	}
}

@media screen and (max-width: 767px) {
    .title_blue {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 50px;
        font-family: "source-han-sans-japanese", sans-serif;
        font-style: italic;
    }
	.saiyujouhou_description{
    width: 80%;
    margin: 0 auto 40px;
	text-align: left;
		line-height: 1.7;
}
	.br-pc{
		display: none;
	}
	.recruit-table {
  width: 80%;
}
	.rc-message{
	padding: 60px 20px 0;
}
	.rc-message{
	width: 100%;
}
	.img-pc{
		display: none;
	}
	.img-sp{
	display: block;
	margin: 0 auto;
		max-width: 400px;
        margin-top: 10px;
		border-radius: 10px;
		width: 100%;
}
	.flexbox-p{
		padding: 40px 0px 0;
		margin: 0 auto;
	}
	.rc-message h3{
		text-align: center;
	}
	.rc-message{
  background-position: 0 top;
}
	.rc-intvw p{
	padding-left: 20px;
	padding-right: 20px;
}
	.rc-intvw .img-sp{
		width: 90%;
        max-width: 400px;

	}
}

/*-------------------------------------------
  スタッフインタビューページ
  -------------------------------------------*/
.staff-interview .flexbox {
    position: relative;
    width: 90%;
    max-width: 1000px;
    padding-top: 26%;
    margin: 0 auto;
}

.staff-interview .background-overlay{
	max-width: 1200px;
    left: 50%;
    transform: translateX(-50%);
}

.image-a, .image-b {
  position: absolute;
  transform: translateX(-50%);
}

.image-a {
  top: 4%;
  left: 28%;
  width: 50%;
  z-index: 10;
}
.image-b {
  top: 2%;
  left: 70%;
  width: 55%;
  z-index: 2;
}
.flexbox-description {
  display: flex;
  justify-content: space-between;
  max-width: 1200px;
  margin: 0 auto;
  width: 90.1%;
	padding-top: 100px;
}
.flexbox-description h3{
	font-size: 17px;
	font-style: italic;
}

.flexbox-description * {
  box-sizing: border-box;
}

.box-1, .box-2 {
  width: 50%;
  padding: 0;
  margin: 0;
}

.box-2 img {
  max-width: 100%;
  height: auto;
  display: block;
}
.box-1{
padding-left: 3%;
	padding-right: 10px;
}
.box-1 h3{
	background-image: url('img/pink-line.png');
	background-position: -10px 35px;
	background-size: 300px;
}
.line-text {
  display: flex;
  align-items: center;
	padding-top: 40px;
	padding-bottom: 20px;
	margin-right: 10px;
}
.line-text p{
	margin-right: 10px;
}
h4 {
	color: #333;
	width: 500px;
    margin-right: 10px;
}
.line {
  width: 30px;
    height: 1.5px;
    background-color: #015da3;
    margin-right: 20px;
}
.flexbox-description_rev{
	display: flex;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0 auto;
    width: 90.1%;
    padding-top: 100px;
    flex-direction: row-reverse;
}


@media screen and (max-width: 767px) {
  .staff-interview .flexbox {
    display: flex;
    flex-direction: column;
    align-items: center;
	  padding-top: 34%;
  }

  .image-a,
  .image-b {
    position: static;
    transform: none;
    z-index: auto;
  }
	.image-b{
		width: 90%;
		z-index: 2;
	}

  .image-a {
    margin-top: -20px;
	  width: 80%;
	  z-index: 10;
  }
		.staff-interview .flexbox{
		padding-top: 0px;
flex-direction: column-reverse;
		}
	.flexbox-description{
		flex-direction: column-reverse;
    align-items: center;
	}
	.box-1 {
		width: 90%;
	    margin: 0 auto;
		padding-left: 0;
		padding-right: 0px;
		padding-top: 40px;
}
	.box-2{
		width: 96%;
		padding: 0;
		margin: 0 -1px 0 auto;
}
	.box-1 h3{
		background-size: 280px;
	}
	    .flexbox-description_rev {
        align-items: center;
			flex-direction: column-reverse;
    }
	.flexbox-description_rev .box-2{
		margin: 0 auto 0 -1px;
	}
}


/*-------------------------------------------
 会社情報ページ
  -------------------------------------------*/
.nami{
	position: relative;
    margin-top: 180px;
    z-index: 0;
}
.box{
	max-width: 1200px;
    background-color: rgba(16, 33, 117, 0.55);
	margin: 0 auto;
	width: 90%;
}
.box h2{
	color: #fff;
	text-align: left;
	font-weight: 400;
}
.box-inner{
	max-width: 900px;
	margin: 0 auto;
    padding: 60px 20px 0;
}
.white-underline {
  position: relative;
  padding-bottom: 10px;
  margin: 0 auto;
  width: 100%;
  max-width: 900px;
}

.white-underline::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  height: 1px;
  width: 100%;
  background-color: white;
}

#table01 {
  width: 100%;
  border-collapse: collapse;
  max-width: 100%;
  margin-top: 20px;
  margin-bottom: 80px;
}

#table01 th,
#table01 td {
  border: 1px solid #fff;
  padding: 24px;
  text-align: left;
  vertical-align: top;
  color: #fff;
  font-weight: 400;
  background-color: transparent;
}

#table01 th {
  width: 30%;
  background-color: #38aab7;
}


@media only screen and (max-width: 480px) {
  #table01,
  #table01 tbody,
  #table01 tr,
  #table01 th,
  #table01 td {
    display: block;
    width: 100%;
  }

  #table01 th {
    padding: 14px !important;
    border-bottom: 1px solid #fff;
  }

  #table01 td {
    border-top: none;
	  border-bottom: none;
    padding-top: 24px;
  }

  #table01 {
    border-collapse: collapse;
    width: 100%;
  }
	#table01 tr:last-child td {
  border-bottom: 1px solid #fff;
}
}

.flex-box{
	display: flex;
	padding-top: 40px;
	padding-bottom: 20px;
    justify-content: space-between;
}
.company h3{
	color: #03f0ff;
}
.company p{
	color: #fff;
	padding-bottom: 40px;
	padding-top: 6px;
}
.flex-box div{
	width: 48%;
}

  a.header_phone {
    color: #fff !important;
    display: inline-block;
  }




@media screen and (max-width: 767px){
	.flex-box{
		display: block;
	}
	.flex-box div{
	width: 100%;
}	
}

body.company #table01 tr td:first-child {
  background-color: transparent !important;
}



/*-------------------------------------------
 お問い合わせページ
  -------------------------------------------*/
.contact-form{
	background-color: #fff;
    padding: 60px 20px;
}
/*-------------------------------------------
 生物・海藻資源量調査ページ、潜水業務ページ
  -------------------------------------------*/
p.biological_description{
	color: #015da3;
	text-align: center;
}
.biological h2, .operation h2{
	color: #fff;
	font-weight: 400;
	text-align: left;
	position: relative;
    background-size: contain;
    z-index: 1;
    padding-top: 60px;
    background-position: left bottom;
	margin-bottom: 20px;
	font-style: italic;
}
.biological .box-inner p, .operation .box-inner p{
	color: #fff;
	padding-bottom: 20px;
}
/* 背景画像個別指定 */
.flex-box:nth-child(1) h2 {
  background-image: url("img/01.png");
}

.flex-box:nth-child(2) h2 {
  background-image: url("img/02.png");
}

.flex-box:nth-child(3) h2 {
  background-image: url("img/03.png");
}

@media screen and (min-width: 768px) {
  .flex-box:nth-child(2) {
    flex-direction: row-reverse;
  }
}




@media screen and (max-width: 767px){
	.br-pc {
    display: none;
}
	p.biological_description{
		text-align: left;
		width: 90%;
        margin: 0 auto;
	}
	.flex-box {
    flex-direction: column;
  }
}
/*-------------------------------------------
 石詰め礁ページ、潜水器材ページ、防汚剤ページ、調査機材ページ
  -------------------------------------------*/
.stone .box, .equipment .box, .anti .box, .original .box{
background-color: #fff;
	width: 90%;
}
.stone .box h2, .equipment .box h2, .anti .box h2{
	color: #3b62ad;
}
.stone .white-underline::after, .equipment .white-underline::after, .anti .white-underline::after {
	background-color: #3b62ad;
}
.stone p, .equipment p, .anti p{
	color: #3b62ad;
}
.stone ul li{
	color: #3b62ad;
}
.stone img{
	margin: 0 auto;
	display: block;
}
.stone .flex-box {
	padding-bottom:80px;
}
.contact {
	background-color: #3b62ad;
	padding: 40px;
	border-bottom-left-radius: 80px;
	border-top-right-radius: 80px;
	margin-bottom: 60px;
	margin-top: 80px;
}
.contact p{
	color: #fff !important;
	text-align: center;
}
.equipment p, .anti p {
  padding-top: 10px;
  padding-bottom: 60px;
}
.anti p span{
	font-weight: 600;
}
.equipment .contact p, .anti .contact p{
	padding-bottom: 0px;
}
.equipment .contact .btn-2, .anti .contact .btn-2, .original .contact .btn-2{
	margin-top: 0;
}
.anti contact img{
	padding-bottom: 10px;
    margin: 0 auto;
    display: block;
}
.anti-photo{
	padding-bottom: 60px;
    margin: 0 auto;
    display: block;
}
.box {
  position: relative;
  z-index: 0;
}
.original h3,
.original .item-title {
  color: #3a62ad;
  text-align: center;
  padding-bottom: 20px;
  font-weight: 600;
}
.original h3{
	padding-top: 60px;
}
.original img{
	margin: 0 auto;
    display: block;
	padding-bottom: 20px;
	height: 70%;
}
.original .flex-box {
    display: flex;
    padding-top: 40px;
    padding-bottom: 0px;
    justify-content: space-between;
    flex-direction: row;
    flex-wrap: wrap;
}
.original li{
	width: 360px;
    margin: 0 auto 80px;
}
.original p{
    text-align: center;
    color: #3a62ad;
}
.item-title.ori-01 {
  background-image: url(img/ori-01.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
.item-title.ori-03 {
  background-image: url(img/ori-03.png);
	background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
.item-title.ori-04 {
  background-image: url(img/ori-04.png);
	background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
.item-title.ori-05 {
  background-image: url(img/ori-05.png);
	background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
.item-title.ori-06 {
  background-image: url(img/ori-06.png);
	background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
.item-title.ori-07 {
  background-image: url(img/ori-07.png);
	background-repeat: no-repeat;
  background-position: left top;
  background-size: 100px auto;
  padding-top: 60px;
  padding-left: 30px;
}
@media(max-width:500px){
	.original li{
	max-width: 98%;
}
	.item-title.ori-01, .item-title.ori-03, .item-title.ori-04, .item-title.ori-05, .item-title.ori-06, .item-title.ori-07{
		padding-top: 110px;
	}
}
/* あわ */
.box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('img/bubble.png');
  background-position: right top;
  background-repeat: no-repeat;
  z-index: -1;
}
.original .box::before {
	background-image: none;
}
@media(max-width:1260px){
	.box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url('img/bubble.png');
  background-position: right top;
  background-repeat: no-repeat;
  opacity: 0.4;
  z-index: -1;
}
}



.equipment .contact, .anti .contact, .stone .contact{
	margin-top:0;
}
#table02 a, #table03 a{
	color: #20649f; 
}
#table02 {
  width: 100%;
  border-collapse: collapse;
  max-width: 100%;
  margin-bottom: 80px;
}

#table02 tr:first-child th,
#table02 tr:first-child td {
  color: #fff;
	background-color: #38aab7;
}

#table02 th,
#table02 td {
  border: 1px solid #008594;
  padding: 24px;
  text-align: left;
  vertical-align: top;
  color: #20649f;
  font-weight: 400;
}

#table02 th {
  width: 40%;
  
}

@media only screen and (min-width: 731px){
	#table03{
		display: none;
	}
}

@media only screen and (max-width: 730px) {
	#table02{
		display: none;
	}
	#table03 {
  width: 100%;
  border-collapse: collapse;
  max-width: 100%;
  margin-bottom: 80px;
}

#table03 tr:first-child {
  background-color: #38aab7;
}

#table03 tr:first-child td {
  color: #fff;
}

#table03 td {
  border: 1px solid #008594;
  padding: 24px;
  text-align: left;
  vertical-align: top;
  color: #20649f;
  font-weight: 400;
	word-break: break-word;
}
	.contact p{
		text-align: left;
	}
	.original .flex-box{
		display: block;
	}
	.original h3{
	padding-top: 0px;
}
}
/*-------------------------------------------
 メッセージページ
  -------------------------------------------*/
.ceomessage h3{
	color: #fff;
	margin-top: 60px;
	font-weight: 600;
}
.ceomessage p{
	color: #fff;
}
.ceomassage-name{
	margin: 60px 0 40px auto;
	width: 200px;
}
.ceomessage .box {
  border-top-right-radius: 80px;
}

    
@media screen and (min-width: 768px){
.ceomessage .flexbox{
	flex-direction: row-reverse;
	background-image: url(img/bubble.png);
        background-position: 36% 84%;
        background-repeat: no-repeat;
}
	.ceomessage .flexbox-p{
	max-width: 50%;
} 
	
	.ceomessage .box{
		    margin: 0 0 auto;
	}
	.ceomessage .img-pc-1{
	padding-top: 8px;
    padding-right: 20px;
		}
	.ceomessage .img-pc-3{
		width: 50%;
    margin: 140px 20px auto;
    display: block;
	}
}
@media (max-width: 767px) {
  .ceomessage .box-inner {
    padding-bottom: 10px;
  }
	.ceomessage .box::before{
		background-position: left top;
		opacity: 1;
	}
	.ceomessage .img-pc-1{
		display: none;
	}
	.ceomessage .img-pc-3{
		display: none;
	}
}
/*-------------------------------------------
 会社沿革ページ
  -------------------------------------------*/
.history-page img{
	margin: 0 auto;
	width: 85%;
}

.history-pc,
.history-sp {
  display: block;
}

@media (min-width: 1101px) {
  .history-pc {
    display: block;
  }
  .history-sp {
    display: none;
  }
}

@media (max-width: 1100px) {
  .history-pc {
    display: none;
  }
  .history-sp {
    display: block;
	  max-width: 400px;
  }
}



