@charset "UTF-8";
/* CSS Document */
body {
	background-color: #f5efe6;
    overflow-x: hidden;
}

header {
	background-color: #fff;
	padding: 30px 50px;
	display: flex;
	justify-content: space-between;
	align-items: center
}

.head-name {
	font-weight: 500;
	font-size: 1.8rem
}

header figure {width: 380px;}
@media screen and (max-width: 743px) {
header {
	background-color: #fff;
	padding: 15px
}
header figure {
	width: 190px;
}
.head-name {
	font-weight: 500;
	font-size: 1.0rem;
	line-height: 1.4
}
}

/* ////////////////////////////////// */
/* メインビジュアル */
/* ////////////////////////////////// */
#mv {
	position: relative;
	background: url( "../img_kogo/mv-01.jpg") no-repeat left top/cover;
	width: 85%;
	height: 700px;
    margin-right: 15%;
    margin-bottom: 90px;

}
#mv .blk-h1 {
	position: absolute;
	right: -18%;
	top: 50%;
	transform: translateY(-50%);
    background-color:rgba(255,255,255,0.85);
    padding: 40px 80px 40px 60px;
    border-bottom-left-radius: 60px
}
#mv .logo-mv {
	position: absolute;
	left: 10%;
	top: 45%;
	transform: translateY(-50%);
    width: 400px;
    
}
#mv h1 {
	font-size: 3.4rem;
	font-weight: 500;
    margin-bottom:20px;
    color: #3c821e
}

#mv .h1sub {
	font-size: 3.2rem;
	font-weight: 500
}
@media screen and (max-width: 743px) {
#mv .blk-h1 {
display: none;
	position: absolute;
	color: #fff;
	left: 10%;
	top: 5%;
	transform: translateY(0)
}
#mv {
	position: relative;
	background: url( "../img_kogo/mv-01sp.jpg") no-repeat left top/100%;
	width: 100%;
	height: 410px;
margin-bottom: 30px
}
#mv .logo-mv {
max-width: 200px;
margin-bottom: 10px;
top: 5%;
transform: translateY(0);
}
h1 {font-size: 2.0rem;padding: 0 5%; margin-bottom: 15px; color: #3c821e}
#mv .h1sub {
		display: none;
}
}

#mv-read {display: none}
@media screen and (max-width: 743px) {
#mv-read {padding: 0 0 60px 0; display: block}
}

#mv-read .inner {
	margin: 0 auto;
	max-width: 960px;
	width: 90%;
}

#mv-read figure {
	text-align: center;
	margin-bottom: 50px;
	mix-blend-mode: multiply;
}
.mv-read-txt {font-size: 1.7rem; font-weight: 500; line-height: 2.4}
@media screen and (max-width: 743px) {
#mv-read figure {margin-bottom: 30px}
.mv-read-txt {padding: 0 5%;font-size: 1.2rem; line-height:2.2}
}

.h1sub-sp {display: none}
@media screen and (max-width: 743px) {
.h1sub-sp {
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
	color: #3c821e;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: 0.02em
	}
}


/* ////////////////////////////////// */

.section-mv .blk-h2 {
    position: absolute;
    left: 50%;
    bottom: -120px;
    transform: translateX(-50%);
    max-width: 480px;
    padding: 60px;
    text-align: center;
    background-color: rgba(255,255,255,0.90);
    border-radius: 5px;
}

.section-mv .blk-h2 h2 {
font-size: 3.5rem;
	line-height: 1;
    padding-bottom: 30px;
    margin-bottom: 25px;
	border-bottom: solid 1px #adadad;
	color: #c38708;

	font-weight: 500;
	letter-spacing: 0.1em

}



.section-mv .blk-h2 .h2sub {
    font-size: 2.4rem;
    line-height: 1.4;
}

#recruit-form .section-mv .blk-h2,
#recruit .section-mv .blk-h2{
	position: absolute;
	left: 50%;
	bottom: -110px;
	transform: translateX(-50%);
	max-width: 480px;
	padding: 60px;
	text-align: center;
	background-color: rgba(255,255,255,0.90);
}

#recruit-form .section-mv .blk-h2,
#recruit .section-mv .blk-h2 {
	padding: 50px;
}

#recruit-form .section-mv .blk-h2 h2,
#recruit .section-mv .blk-h2 h2 {
	font-size: 3.5rem;
	padding-bottom: 30px;
	margin-bottom: 25px;
}
#recruit-form .section-mv .blk-h2 .h2sub,
#recruit .section-mv .blk-h2 .h2sub{
	font-size: 2.4rem;
	line-height: 1.4
}

@media screen and (max-width: 743px) {
.section-mv .blk-h2 {
	position: absolute;
	left: 50%;
	bottom: -75px;
	transform: translateX(-50%);
	max-width: 270px;
	padding: 25px 20px;
	text-align: center;
	background-color: rgba(255,255,255,0.90);
}

.section-mv .blk-h2 h2 {
	font-size: 2.2rem;
	line-height: 1;
	padding-bottom: 20px;
	margin-bottom: 25px;
}
.section-mv .blk-h2 .h2sub {
	font-size: 1.4rem;
	line-height: 1.4
}
	
#recruit-form .section-mv .blk-h2,
#recruit .section-mv .blk-h2{
	position: absolute;
	left: 50%;
	bottom: -75px;
	transform: translateX(-50%);
	max-width: 270px;
	padding: 25px 20px;
	text-align: center;
	background-color: rgba(255,255,255,0.90);
}	
	
#recruit-form .section-mv .blk-h2 h2,
#recruit .section-mv .blk-h2 h2 {
	font-size: 2.2rem;
	padding-bottom: 20px;
	margin-bottom: 25px;
}
#recruit-form .section-mv .blk-h2 .h2sub,
#recruit .section-mv .blk-h2 .h2sub{
	font-size: 1.4rem;
	line-height: 1.4
}
}

/* ////////////////////////////////// */

/* ////////////////////////////////// */
/* SA-N-POについて */
/* ////////////////////////////////// */

h3.ttl {
	color: #3c821e;
	line-height: 1.5;
	font-size: 3.6rem;
	margin-bottom: 30px;
	font-weight: 500;
}
h4.ttl {
	line-height: 1.5;
	font-size: 2.4rem;
	margin-bottom: 20px;
	font-weight: 500;
}
@media screen and (max-width: 743px) {
h3.ttl {
	font-size: 2.0rem;
	margin-bottom: 15px;
}
h4.ttl {
	font-size: 1.7rem;
	margin-bottom: 20px;
}
}

/* ////////////////////////////////// */
/* SA-N-POが選ばれる3つの理由 */
/* ////////////////////////////////// */
#point {

}

#point .inner {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}
#point .section-mv {
	position: relative;
	background: url( "../img_kogo/point-mv-01.jpg") no-repeat center/cover;
	width: 100%;
	height: 450px;
	margin-bottom: 170px;
}
@media screen and (max-width: 743px) {

#point .section-mv {
	background: url("../img_kogo/point-mv-01.jpg") no-repeat center/cover;
	height: 200px;
	margin-bottom: 100px;
}
#point .inner {
	max-width: 1200px;
	width: 95%;
	margin: 0 0 0 5%;
}
}


#point .f-w {width: 32%;}
#point article {display: flex; margin-bottom: 20px}
#point .f-w figure {margin-bottom: 30px}
#point .blk-num{color: #3c821e; line-height: 1; text-align: center; margin-right: 20px}
#point .num-sub {font-size: 1.3rem}
#point .num {font-size: 6.5rem; font-weight: 200}
#point h3 {font-size: 2.2rem; margin-bottom: 10px; margin-top: 10px; color: #c38708; font-weight: 500}
#point .blk-txt {position: relative; width: 100%}
#point .point-txt {
	
}
@media screen and (max-width: 743px) {
#point .num-sub {font-size: 1.0rem}
#point .num {font-size: 4.5rem; font-weight: 200}
#point h3 {font-size: 1.7rem; margin-bottom: 5px; margin-top: 10px}
#point .point-txt {
	display: inline-block;
	padding-right: 5%
}
#point .f-w figure {margin-bottom: 20px}
}

#point .blk-txt .deco {
	position: absolute;
	top: -60px;
	right: -60px;
	width: 116px;
	height: 116px;
}
#point .blk-coconomi {
	margin-top: 130px;
	background-color: #f4ebcd;
	padding: 0 0 100px 0
}
#point .blk-coconomi .coconomi-logo {
	position: relative;
	top: -30px;
	width: 400px;
	margin: 0 auto 20px auto;
}
@media screen and (max-width: 743px) {
#point .blk-coconomi .coconomi-logo {
	position: relative;
	top: 0;
	width: 250px;
	margin: 0 auto 30px auto;
}	
}

#point .blk-coconomi .f-w_coconomi {width: 47%;}
#point .blk-coconomi .f-w_coconomi:first-child {
	background: url("../img/coconomi-02.jpg") no-repeat center/cover;
}

#point .blk-coconomi .f-w_coconomi .inner-coconomi {
	max-width: 500px;
	width: 90%
}

#point .blk-coconomi .f-w_coconomi h4 {
	color: #db7753;
	font-size: 22px;
	 font-weight: 500
}
#point .blk-coconomi .btn-01 {
	margin-top: 50px;
	width: 300px;
}
.btn-02 {
	width: 400px;
	margin: 0 auto;
	margin-top: 50px;
}
#point .blk-coconomi-txt {font-size: 1.5rem}
@media screen and (max-width: 743px) {
#point .f-w {width: 100%; margin-bottom: 30px}
#point .blk-txt .deco {
	position: absolute;
	top: -50px;
	right: 20px;
	width: 80px;
	height: 80px;
}
#point .blk-coconomi {
	margin-top: 60px;
	background-color: #f4ebcd;
	padding: 40px 0 0 0
}
#point .blk-coconomi .f-w_coconomi {width: 100%;}
#point .blk-coconomi .f-w_coconomi:first-child {width: 95%; margin-left: 5%; margin-bottom: 30px}
#point .blk-coconomi .f-w_coconomi .inner-coconomi {
	max-width: 95%;
	width: 95%;
	margin-left: 5%;
}
#point .blk-coconomi .f-w_coconomi h4 {font-size: 1.8rem; margin-bottom: 5px}
#point .blk-coconomi-txt {font-size: 1.4rem}
}


/* ////////////////////////////////// */
/* SA-N-POが選ばれる3つの理由 */
/* ////////////////////////////////// */

#staff {
	padding-bottom: 120px
}

.page #staff {
	padding-bottom: 240px
}

#staff .section-mv {
	position: relative;
	background: url("../img/staff-01.jpg") no-repeat center/cover;
	width: 100%;
	height: 600px;
	margin-bottom: 250px;
}
@media screen and (max-width: 743px) {
#staff {padding-bottom: 80px}
.page #staff {
	padding-bottom: 110px
}
#staff .section-mv {
	height: 300px;
	background: url("../img/staff-01sp.jpg") no-repeat center/cover;
	margin-bottom: 120px;
}	
}


#staff .blk-left-staff {
	position: relative;
	max-width: 1100px;
	width: 80%;
}

#staff .blk-page-staff {
	position: relative;
	width: 100%;
}
#staff .blk-left-staff .staff-img{max-width: 1100px;}
@media screen and (max-width: 743px) {
.page #staff .blk-left-staff {
	width: 100%;
}
}

#staff .blk-staff-name {
	max-width: 650px;
	width: 90%;
	background-color: rgba(255,255,255,0.9);
	padding: 50px 50px 0 50px;
}

.page #staff .blk-staff-name {
	max-width: 650px;
	width: 90%;
	background-color: rgba(255,255,255,0.9);
	padding: 50px;
}

#staff .blk-left-staff .blk-staff-name {
	position: absolute;
	bottom: -60px;
	right: -200px;
}

.page #staff .blk-left-staff .blk-staff-name {
	position: absolute;
	bottom: 60px;
	right: -35%;
	padding: 50px;
}
.page #staff .blk-left-staff .blk-staff-name span {
	font-size: 2.1rem;
}
@media screen and (max-width: 743px) {
.page #staff .blk-left-staff .blk-staff-name span {
	font-size: 1.1rem;
}	
.page #staff .blk-left-staff .blk-staff-name {
	position: absolute;
	bottom: -60px;
	right: 0;
	padding: 20px 30px;
}
}



.page .blk-interview {
	margin-bottom: 100px;
}

.page .blk-interview-left {
	margin-right: calc((100% - 1200px) / 2);
}

.page .blk-interview-right {
	margin-left: calc((100% - 1200px) / 2);
}

.page .blk-interview .ttl-interview {
	color: #3c821e;
	font-size: 2.6rem;
	font-weight: 500;
	margin-bottom: 20px;
	line-height: 1.5
}
.page .blk-interview .f-w-interview-img {
	width: 50%;
}
.page .blk-interview .f-w-interview-txt {
	width: 47%;
}
@media screen and (max-width: 743px) {
.page .blk-interview {
	margin-bottom: 60px;
}
	
.page .blk-interview-left {
	margin-right: 0;
}

.page .blk-interview-right {
	margin-left: 0;
}

.page .blk-interview .ttl-interview {
	color: #3c821e;
	font-size: 1.8rem;
	font-weight: 500;
	margin-bottom: 20px;
	line-height: 1.5
}
	
.page .blk-interview .f-w-interview-img {
	width: 95%;
	order: 1;
	margin-bottom: 30px
}
	
.page .blk-interview-right .f-w-interview-img {
	width: 95%;
	order: 1;
	margin-bottom: 30px;
	margin-left: 5%;
}	
	
.page .blk-interview .f-w-interview-txt {
	width: 90%;
	margin: 0 auto;
	order: 2;
}	
}
.page .blk-interview .f-w-interview-txt p {
	display: block;
	width: 100%;
}

.page .staff-menu {
	max-width: 1000px;
	width: 80%;
	margin: 90px auto 0 auto;
}

.page .staff-menu .f-w-staff-menu {width: 32%}
.page .staff-menu h4 {
	background-color: #3c821e;
	font-size: 2.4rem;
	padding: 20px;
	line-height: 1.5;
	color: #fff;
	text-align: center;
	margin-bottom: 40px;
}


@media screen and (max-width: 743px) {
.page .staff-menu {
	max-width: 1000px;
	width: 86%;
	margin: 40px auto 0 auto;
}
.page .staff-menu h4 {
	font-size: 1.5rem;
	background-color: #3c821e;
	padding: 15px;
	line-height: 1;
	color: #fff;
	text-align: center;
	margin-bottom: 20px;
}
}


#staff .blk-right-staff {
	position: relative;
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

#staff .blk-right-staff .staff-img{
	max-width: 1100px;
	text-align: right;
}

#staff .blk-right-staff .blk-staff-name {
	position: absolute;
	bottom: -60px;
	left: 200px;
}

#staff .blk-staff-name h3{
	font-size: 2.8rem;
	font-weight: 500;
	color: #3c821e;
	margin-bottom: 20px;
	letter-spacing: 0.02em
}
#staff .blk-staff-name .staff-name-sub {
	font-size: 2.0rem
}
#staff .blk-staff-name .staff-name {
	font-size: 3.0rem
}

#staff .btn-staff {
	color: #fff;
	max-width: 360px;
	width: 90%;
	font-size: 2.6rem;
	margin: 0 auto;
	background-color: #5fcf30;
	border-top-left-radius: 40px;
	border-bottom-left-radius: 40px;
	border-top-right-radius: 40px;
	border-bottom-right-radius: 40px;
	text-align: center;
	padding: 20px 0;
	line-height: 1;
	font-weight: 500;
	position: relative;
	bottom: -32px;
	background-image: url("../img/arrow.png");
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 50px;
}

@media screen and (max-width: 743px) {
#staff .blk-left-staff {
	position: relative;
	max-width: 1100px;
	width: 95%;
}
#staff .blk-left-staff .blk-staff-name {
	position: absolute;
	bottom: -85px;
	right: -5%;
	max-width: 90%;
	width: 90%;
	background-color: rgba(255,255,255,0.9);
	padding: 25px 30px 0 30px;
	letter-spacing: 0.02em;
}
#staff .blk-right-staff .blk-staff-name {
	position: absolute;
	bottom: -100px;
	left: 0;
	max-width: 90%;
	width: 90%;
	background-color: rgba(255,255,255,0.9);
	padding: 30px 30px 0 30px;
}
#staff .blk-right-staff .staff-img{
	max-width: 95%;
	text-align: right;
}	
	
#staff .blk-staff-name h3{
	font-size: 1.4rem;
	margin-bottom: 10px
}
#staff .blk-staff-name .staff-name-sub {
	font-size: 1.0rem
}
#staff .blk-staff-name .staff-name {
	font-size: 1.4rem
}
	
#staff .btn-staff {
	position: relative;
	bottom: -20px;
	color: #fff;
	max-width: 190px;
	width: 90%;
	font-size: 1.3rem;
	padding: 15px 0;
	background-size: 30px;
}

}

/* ////////////////////////////////// */
/* 施設紹介 */
/* ////////////////////////////////// */
#facility {
	padding-bottom: 120px
}

#facility .section-mv {
	position: relative;
    background: url( "../img_kogo/facility-01.jpg") no-repeat center/cover;
    width: 100%;
    height: 450px;
    margin-bottom: 170px;
}


@media screen and (max-width: 743px) {
#facility {padding-bottom: 60px}
#facility .section-mv {
	background: url("../img_kogo/facility-01sp.jpg") no-repeat center/cover;
	height: 300px;
	margin-bottom: 120px;
}	
}

#facility .inner {
	max-width: 960px;
	width: 90%;
	margin: 0 auto;
}
#facility .f-w {width: 47%;}

#facility h3 {
	background-color: #c38708;
	padding: 18px;
	line-height: 1;
	color: #fff;
	text-align: center;
	margin-bottom: 40px;
    position: relative;
    border-radius: 3px
}

#facility h3 .icon-deco {
position: absolute;
top: -8px;
left: 0;
width: 60px;
height: 60px
}

#facility li {
	padding-left: 1.5em;
	text-indent: -1.5em;
	margin-bottom: 7px
}
#facility li::before {
	content: "● ";
	color: #dfb96a;
}

#facility .f-w-faci01 { width: 48%}
#facility .f-w-faci02 {width: 48%}

@media screen and (max-width: 743px) {
#facility .f-w-faci01 { width: 100%}
#facility .f-w-faci02 {width: 100%; margin-top: 30px}	
	
#facility h3 .icon-deco {
position: absolute;
top: -15px;
left: -15px;
width: 60px;
height: 60px
}

#facility .f-w {width: 100%; margin-bottom: 50px}
#facility h3 {
	font-size: 1.5rem;
	padding: 13px;
	line-height: 1;
	color: #fff;
	text-align: center;
	margin-bottom: 20px;
}
}

.schedule-ttl {
background-color: #fff;
padding: 10px 20px;
margin-top: 40px;
font-size: 1.6rem;
font-weight: 400;
border-radius: 3px
}
@media screen and (max-width: 743px) {
.schedule-ttl {
padding: 10px 20px;
margin-top: 30px;
font-size: 1.5rem;
}
}

#facility .f-w dl{
	padding: 15px 0;
	border-bottom:  1px solid #adadad;
    display: flex;
}

#facility .f-w dl.noline{
	padding: 15px 0;
	border-bottom: none;
}

#facility .f-w dt {
	width: 80px;
	color: #c38708;
	font-weight: 400
}

#facility .f-w dd {width: calc(100% - 80px);}

@media screen and (max-width: 743px) {
#facility .f-w dt {
	width: 60px;
}
#facility .f-w dd {width: calc(100% - 60px);}
}

/* ////////////////////////////////// */
/* アクセス */
/* ////////////////////////////////// */

#access {padding-bottom: 200px}
#access .section-mv {
	position: relative;
	background: url( "../img_kogo/access-01.jpg") no-repeat top center/cover;
	width: 100%;
	height: 350px;
	margin-bottom: 50px;
}
@media screen and (max-width: 743px) {
#access .section-mv {
	background: url("../img_kogo/access-01sp.jpg") no-repeat center/cover;
	height: 250px;
	margin-bottom: 50px;
}	
}

#access .inner {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}
#access .blk-map-txt {
	text-align: center;
	margin-bottom: 40px;
}
#access .blk-map-txt figure {
	max-width: 320px;
	margin: 0 auto 40px auto;
}
@media screen and (max-width: 743px) {
#access {padding-bottom: 100px}
#access .blk-map-txt figure {
	max-width: 200px;
	margin: 0 auto 20px auto;
}
#access .blk-map-txt {
	margin-bottom: 50px;
}
}

#access .banner {
	text-align: center;
}
#access .blk-ggmap{
	position: relative;
}

#access .blk-ggmap .gg-deco {
	position: absolute;
	width: 160px;
	top: -30px;
	right: 30px;
	z-index: 20
}
@media screen and (max-width: 743px) {
#access .blk-ggmap .gg-deco {
	position: absolute;
	width: 80px;
	top: -20px;
	right: 10px;
	z-index: 20
}
}


#marimo .bt-marimo a {
  display: block;
  color: #00307c;
  max-width: 400px;
  width: 90%;
  font-size: 2.3rem;
  background-color: #fff;
  border-radius: 40px;
  text-align: center;
  padding: 20px 0;
  line-height: 1;
  font-weight: 600;
  position: relative;
  bottom: -32px;
  background-image: url("../img/arrow01.png");
  background-repeat: no-repeat;
  background-position: left 30px center;
  background-size: 42px;
    margin-bottom: 20px
}

#marimo .bt-jigyo a {
  display: block;
  color: #fff;
  max-width: 400px;
  width: 90%;
  font-size: 1.7rem;
  text-align: left;
  padding: 2px 0 0 105px;
  line-height: 1;
  font-weight: 400;
  position: relative;
  bottom: -32px;
    margin-top: 15px;
  background-image: url("../img/arrow03.png");
  background-repeat: no-repeat;
  background-position: left 60px top;
  background-size: 25px;
    height: 28px;
}


@media screen and (max-width: 743px) {
  #marimo .bt-marimo a {
    display: block;
    color: #00307c;
    max-width: 250px;
    width: 90%;
    font-size: 1.4rem;
    background-color: #fff;
    margin: 0 auto;
    text-align: center;
    padding: 15px 0;
    line-height: 1;
    font-weight: 600;
    position: relative;
    bottom: -32px;
    background-image: url("../img/arrow01.png");
    background-repeat: no-repeat;
    background-position: left 25px center;
    background-size: 20px;
  }
#marimo .bt-jigyo a {
  display: block;
  color: #fff;
  max-width: 400px;
  width: 90%;
  font-size: 1.4rem;
  text-align: left;
  padding: 0 0 0 95px;
  line-height: 1;
  font-weight: 400;
  position: relative;
  bottom: -32px;
  background-image: url("../img/arrow03.png");
  background-repeat: no-repeat;
  background-position: left 60px top;
  background-size: 18px;
    height: 18px;
}
}

#marimo .section-mv {
	position: relative;
	background: linear-gradient(90deg, #0080cc, #00307c);
	padding: 0 0 140px 0
}
#marimo .section-mv .bg-japan {
	position: absolute;
	top: 0;
	left: 0;
	background-image: url("../img/foooter-01.png");
	background-repeat: no-repeat;
	background-position: top -30px right 20px;
	width: 100%;
	height: 100%;
	z-index: 1;
}
@media screen and (max-width: 743px) {
#marimo .section-mv {
	padding: 0 0 100px 0
}
#marimo .section-mv .bg-japan {
	position: absolute;
	top: 0;
	left: 0;
	background-image: url("../img/foooter-01.png");
	background-repeat: no-repeat;
	background-position: top -30px right 20px;
	background-size: 500px;
	width: 100%;
	height: 100%;
	z-index: 1;
}
}

#marimo .ttl-marimo {
	position: relative;
	max-width: 620px;
	padding: 30px 40px 30px 80px;
	background-color: #FFFFFF;
	top: -80px;
	z-index: 3;
}
@media screen and (max-width: 743px) {
#marimo .ttl-marimo {
	position: relative;
	max-width: 80%;
	padding: 15px 30px 15px 30px;
	background-color: #FFFFFF;
	top: -30px;
	z-index: 3;
}
}
#marimo .section-mv article {
	position: relative;
	color: #fff;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	z-index: 2
}

#marimo .section-mv article h3 {
	font-size: 2.6rem;
	margin-bottom: 30px;
	position: relative;
}
#marimo .section-mv article h3::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -6%;
	width: 4%;
	height: 1px;
	background-color: #ffffff;
}
#marimo .section-mv article .h3read {
	font-size: 2.8rem
}
@media screen and (max-width: 743px) {
#marimo .section-mv article {
	padding-top: 10px;
	position: relative;
	color: #fff;
	max-width: 1200px;
	width: 80%;
	margin: 0 auto;
	z-index: 2
}
#marimo .section-mv article h3 {
	font-size: 1.3rem;
	margin-bottom: 15px;
}
#marimo .section-mv article h3::before {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: -13%;
	width: 8%;
	height: 1px;
	background-color: #ffffff;
}
	
#marimo .section-mv article .h3read {
	font-size: 1.5rem;
	line-height: 1.8
}	
}
#marimo .group-marimo01, #marimo .group-marimo02 {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}
#marimo .group-marimo01 {
	position: relative;
	top: -40px;
	z-index: 2;
	margin-bottom: 60px;
}
@media screen and (max-width: 743px) {
#marimo .group-marimo01 {
	top: -30px;
	margin-bottom: 20px;
}
}

#marimo .group-marimo01 article {
	background-color: rgba(0,48,124,0.70);
	padding: 10px 15px;
	line-height: 1.5;
	color: #fff;
	position: absolute;
	width: 100%;
	bottom: 0;
}
#marimo .group-marimo01 article h5 {
	font-size: 1.6rem;
}
#marimo .group-marimo01 article .h5sub {
	font-size: 1.3rem;
}
@media screen and (max-width: 743px) {
#marimo .group-marimo01 article h5 {
	font-size: 1.3rem;
}
#marimo .group-marimo01 article .h5sub {
	font-size: 1.1rem;
}	
}

#marimo .group-marimo01 h4 {
	background-color: #00307c;
	padding: 30px 40px;
	color: #fff;
	font-size: 2.4rem;
	margin-bottom: 50px
}

#marimo .group-marimo01 .f-w-g01 {width: 31%; position: relative}
@media screen and (max-width: 743px) {
#marimo .group-marimo01 h4 {
	padding: 10px 25px;
	font-size: 1.5rem;
	margin-bottom: 20px
}
#marimo .group-marimo01 .f-w-g01 {width: 100%; margin-bottom: 10px}	
}

#marimo .group-marimo02 {padding: 0 0 100px 0}
#marimo .group-marimo02 .f-w-g02 {width: 23%; margin-bottom: 40px}
@media screen and (max-width: 743px) {
#marimo .group-marimo02 {padding: 0 0 50px 0}
#marimo .group-marimo02 .f-w-g02 {width: 47%; margin-bottom: 20px}	
}

#marimo .group-marimo02 h4 {
	font-size: 2.4rem;
	color: #00307c;
	margin-bottom: 50px
}
#marimo .group-marimo02 h5 {
	font-size: 1.8rem;
	margin-top: 10px
}
#marimo .group-marimo02 .h5sub {
	font-size: 1.4rem;
}
@media screen and (max-width: 743px) {
#marimo .group-marimo02 h4 {
	font-size: 1.5rem;
	margin-bottom: 30px
}
#marimo .group-marimo02 h5 {
	font-size: 1.2rem;
	line-height: 1.4
}
#marimo .group-marimo02 .h5sub {
	font-size: 1.0rem;
}
}

footer {
	background-color: #fff;
	padding: 50px 0;
}
footer .inner {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	font-size: 1.0rem
}
@media screen and (max-width: 743px) {
footer {
	background-color: #fff;
	padding: 25px 0;
}	
	footer .f-w-f {
		width: 100%;
		text-align: center;
		margin-bottom: 3px
	}
}

#privacy {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	padding: 100px 0 200px 0;
}
@media screen and (max-width: 743px) {
#privacy {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	padding: 40px 0 70px 0;
}	
}

#privacy h2.ttl-privacy {
	font-size: 3.4rem;
	font-weight: 500;
	margin-bottom: 30px;
}
#privacy .blk-h2 {margin-bottom: 50px}
#privacy article {
	background-color: #fff;
	padding:80px 70px;
	margin-bottom: 30px;
}
@media screen and (max-width: 743px) {
#privacy h2.ttl-privacy {
	font-size: 1.9rem;
	font-weight: 500;
	margin-bottom: 10px;
}
#privacy .blk-h2 {margin-bottom: 50px}

#privacy article {
	padding:30px 20px;
	margin: 0 -5%;
	margin-bottom: 20px;
}	
}

#privacy article .blk-indent {padding-left: 30px;}
@media screen and (max-width: 743px) {
#privacy article .blk-indent {padding-left: 25px;}	
}

#privacy article h3.ttl-privacy {
	font-size: 2.2rem;
	font-weight: 500;
	margin-bottom: 20px;
	color: #c38708;
}
@media screen and (max-width: 743px) {
#privacy article h3.ttl-privacy {
	font-size: 1.7rem;
	line-height: 1.6
}	
}

#privacy article dl {margin-bottom: 50px}

#privacy article dl dt {
	padding: 15px 25px;
	margin-bottom: 15px;
	font-size: 1.6rem;
	font-weight: 500;
	background-color: #c38708;
	color: #fff;
}
#privacy article dl dd{
	padding-left: 25px
}
@media screen and (max-width: 743px) {
#privacy article dl {margin-bottom: 30px}
#privacy article dl dt {
	padding: 10px 15px;
	margin-bottom: 10px;
	font-size: 1.4rem;
	line-height: 1.5;
}
#privacy article dl dd{
	padding-left: 5px
}
}

#privacy article dl dd ul li {
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 5px
}
#privacy article dl dd ul.num-list li {
	padding-left: 1.9em;
	text-indent: -1.9em;
}

#privacy .num-list-sin {
	padding-left: 1.9em;
	text-indent: -1.9em;
}

#privacy .frame-privacy {
	border: 1px solid #eee;
	padding: 20px;
}
@media screen and (max-width: 743px) {
#privacy .frame-privacy {padding: 15px;}	
}

#privacy article dl dd .note {
	font-size: 1.4rem;
	margin-bottom: 40px
}
@media screen and (max-width: 743px) {
#privacy article dl dd .note {
	font-size: 1.2rem;
	margin-bottom: 20px
}	
}

#privacy article dl dd .note a {
	text-decoration: underline;
}
.btn-privacy {
	display: inline-block;
	line-height: 1;
	padding: 10px 30px;
	font-size: 1.5rem;
	border-radius: 20px;
	margin-bottom: 20px;
	background: url("../img/arrow02.png") #f2f2f2 no-repeat left 15px center/5px 7px;
}
@media screen and (max-width: 743px) {
.btn-privacy {
	font-size: 1.3rem;
}
}

@media screen and (max-width: 400px) {
.wide-img {
	display: block !important;
	 max-width: 330px;
	width: 100%;
	margin: 0 auto;
	padding: 0 !important
}
}

.bnr_marimo {
	margin-top: 80px;
	max-width: 350px;
	margin-left: 25px;
	box-shadow: 0 2px 3px #00307c;
}
@media screen and (max-width: 743px) {
.bnr_marimo {
	max-width: 245px;
	width: 100%;
	margin: 0 auto;
	margin-top: 70px;
}	
}

/*---庚午---*/

.point-kanri {
max-width: 580px;
width: 100%;
margin: 60px auto 0 auto;
background-color: #fff;
padding: 40px 30px 20px 30px;
position: relative;
}

.point-kanri h3.kanri-ttl {
position: absolute;
top: -30px;
left: 20px;
}

@media screen and (max-width: 743px) {
.point-kanri {
max-width: 580px;
width: 95%;
margin: 60px 0 30px 0;
background-color: #fff;
padding: 40px 30px 20px 30px;
}

.point-kanri h3.kanri-ttl {
position: absolute;
top: -25px;
left: 0;
width: 100%;
text-align: center
}
}

.f-kanri-01 {width: 30%}
.f-kanri-02 {width: 65%}
@media screen and (max-width: 743px) {
.f-kanri-01 {width: 60%; margin: 0 auto 20px auto}
.f-kanri-02 {width: 100%}
}
.f-kanri-03 {
width: 100%;
margin-top: 20px;
}
.kanri-name-line {
border-top: 2px solid #3c821e;
display: inline-block;
margin-top: 10px;
padding-top: 10px;
font-weight: 500
}
.kanri-name {font-size: 2rem}
.kanri-name-sub {font-size: 1.2rem}

#point .read {
text-align: center;
margin-bottom: 60px;
font-size: 2rem;
}
@media screen and (max-width: 743px) {
#point .read {
text-align: center;
margin-bottom: 50px;
font-size: 1.5rem;
}
}

.blk-summary {
margin-top: 100px;
padding: 50px 30px;
background-image: url("../img_kogo/bg-01.jpg");
}
@media screen and (max-width: 743px) {
.blk-summary {
margin-top: 50px;
padding: 50px 0;
}
}
.blk-summary .blk-ttl {
display: flex;
justify-content: space-between;
margin-bottom: 30px;
flex-wrap: wrap
}
.f-ttl {
width: 450px;
position: relative;
}
.summary-img {
margin-top: 40px
}

.f-w_summary h4 {
font-size: 2.0rem;
font-weight: 500;
margin-bottom: 10px;
color: #6f3120;
background-image: url("../img_kogo/icon-01.png");
background-size: 40px;
padding-left: 35px;
background-repeat: no-repeat;
}

.f-w_summary {width: calc(100% - 500px)}
@media screen and (max-width: 743px) {
.f-w_summary h4 {
font-size: 1.6rem;
background-size: 30px;
}

.f-ttl {width: 100%;}
.f-w_summary {width: 100%;}
.summary-img {
margin-top: 30px;
margin-bottom: 30px

}
}

.h3-summary-sub {
font-size: 1.8rem;
color: #6f3120;
font-weight: 500;
border-bottom: solid 2px #6f3120;
padding-bottom: 5px;
display: inline-block
}
#point h3.summary {
font-size: 3.0rem !important;
color: #3c821e
}
@media screen and (max-width: 743px) {
.h3-summary-sub {font-size: 1.4rem}
#point h3.summary {font-size: 2.0rem !important;
margin-bottom: 20px
}
}
.blk-summary .summary-read {

}

.blk-summary .inner-summary {
max-width: 1080px;
width: 90%;
margin: 0 auto
}

.facility-map {
max-width: 800px;
width: 100%;
margin: 0 auto
}
@media screen and (max-width: 743px) {
.facility-map {
max-width: 300px;
width: 300px;
margin: 0 auto
}
}
.blk-codmon {
max-width: 760px;
width: 90%;
margin: 0 auto 80px auto;
}

.blk-codmon figure img {
width: 250px
}
.f-banner {
	width: 48%
}

@media screen and (max-width: 743px) {
.blk-codmon {
margin: 0 auto 60px auto;
}
.blk-codmon figure img {
width: 170px
}
.f-banner {
	width: 100%;
	margin-bottom: 20px
}	
}

.tel-access {
margin-top: 10px;
font-size: 2.8rem;
font-weight: 500;
line-height: 1.5
}

.tel-access span {
font-size: 1.4rem;
}

.rec-banner {
max-width: 700px;
margin: 0 auto
}


.icon-insta {
    width: 40px
}
@media screen and (max-width: 743px) {

.icon-insta {
    width: 25px
}
}

#news {
    max-width: 520px;
    width: 90%;
    margin: 0 auto 90px auto;
}




#news .blk-h2 {
    text-align: center;
    margin-bottom: 30px
}

#news .blk-h2 h2 {
    font-size: 2.8rem;
    	color: #c38708;
    text-align: center;
    display: block;
}
#news ul {
   border-top: solid 1px #bda78e; 
}

#news li {
    border-bottom: solid 1px #bda78e;
    padding: 10px 0
}
@media screen and (max-width: 743px) {
 #news li {
     font-size: 1.3rem
}   
}

#news dl {
    display: flex;  
}
#news dl .news-arrow {
    background-image: url("../img_kogo/news-arrow01.png");
    background-repeat: no-repeat;
    background-position: right;
    background-size: 16px;
}
#news dl.active .news-arrow {
    background-image: url("../img_kogo/news-arrow02.png");
}

#news dl dt {
    width: 20%;
}
#news dl dd {
    width: 80%;
}

#news .news-content {
    display: none;
}

.gallary_banner {
    max-width: 400px;
    width: 90%;
    margin: 100px auto;
}

@media screen and (max-width: 743px) {
.blk_summary-gallary .gallary {
	gap: 10px;
	grid-template-columns: auto auto auto;
}
.gallary_banner {
    margin: 50px auto;
}
}

.blk-document {
    display: flex;
    justify-content: space-between;
    width: 640px;
    margin: 30px auto 60px auto;
    border-top: solid 1px #000;
    padding-top: 30px;
    flex-wrap: wrap;
}


.document-ttl {
    width: 100%;
    background-color: #c48607;
    border-radius: 3px;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    padding: 10px 0;
    margin-bottom: 10px;
}
@media screen and (max-width: 743px) {
.blk-document {
    display: flex;
    justify-content: space-between;
    width: 95%;
    }
.document-ttl {
    margin-bottom: 10px;
}
.document-list li a {
font-size: 1.3rem;
line-height: 1.4
}

}

.document-list {
    width: 100%;
    text-align: left;
}

.document-list li {
    background-image: url("../img_kogo/pdf-icon.png");
    background-size: 25px;
    background-repeat: no-repeat;
    padding-left: 35px;
    margin-bottom: 10px;
    margin-top: 10px;
}
.document-list li span {
    font-size: 1.2rem;
}

