@charset "utf-8";

* {
  box-sizing: border-box;
}

body {
  font-size: 16px;
  line-height: 1.5;
  font-family: 'Noto Sans JP', 'Open Sans', sans-serif;
  font-weight: 400;
  color: #333;
  background-color: #fff;
}

h1,
h2,
h3 {
  margin-top: 0;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-align: center;
}

p {
  margin-top: 0;
  margin-bottom: 1.5em;
  text-align: justify;
}

address {
  font-style: normal;
}

a {
  color: #666;
  text-decoration: none;
}

a:hover,
a:focus {
    color: #6A1BAF;
    text-decoration: none;
}

ul {
  margin: 1em 0;
  padding: 0;
  list-style: none;
}

img {
  width: 100%;
  height: auto;
}

section {
  padding: 60px 0;
}


.h2-title {
  position: relative;
  text-transform: uppercase;
  z-index: 100;
}

.h2-title::before {
  content: "";
  display: block;
  width: 40px;
  height: 40px;
  background: #a5d1ff;
  position: absolute;
  left: 50%;
  margin-left: -20px;
  transform: rotate(45deg);
  z-index: -100;
}


.section-txt {
  text-align: center;
  font-size: 4.5vmin;
  font-weight: 600;
  line-height: 1.7;
  margin: 0 20px 30px;
}


.txt-center {
  text-align: center;
}




.inner {
  padding: 0;
  margin: 0 auto;
}

@media screen and (min-width:768px) {
section {
  padding: 80px 0;
}
  .inner {
    max-width: 1160px;
  }
}

.sp-only {
  display: block;
}

.pc-only {
  display: none;
}

@media screen and (min-width:768px) {
  .sp-only {
    display: none;
  }

  .pc-only {
    display: block;
  }

.section-txt {
  text-align: center;
 font-size: 24px;
	font-weight: 600;
	line-height: 1.7;
	margin-bottom: 60px;
}
}


.header {
  position: fixed;
  top: 0px;
  width: 100%;
  padding: 10px;
  background: rgba(255, 255, 255, 0.9);
  z-index: 200;
}

.header-logo-menu {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

/*ロゴ*/
.logo-area {
  width: 200px;
  margin: 0;
  text-align: left;
}

/*ロゴ*/
.title-pict{
 width: 180px;
  margin: 0 auto 20px;
}

@media screen and (min-width:768px) {
  .logo-area {
    width: 240px;
  }
.title-pict{
 width: 220px;
  margin: 0 auto 20px;
}
}

/*ハンバーガーメニュー*/
.gnav-toggle {
  position: relative;
  margin-top: 12px;
}

.gnav-hidden {
  display: none;
}

#gnav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

#gnav-open span,
#gnav-open span::before,
#gnav-open span::after {
  content: '';
  position: absolute;
  height: 3px;
  width: 25px;
  border-radius: 3px;
  background: #555;
  display: block;
  cursor: pointer;
}

#gnav-open span::before {
  bottom: -8px;
}

#gnav-open span::after {
  bottom: -16px;
}

#gnav-close {
  display: none;
  position: fixed;
  z-index: 90;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0;
  transition: 0.3s ease-in-out;
}

#gnav-input:checked ~ #gnav-close {
  display: block;
  opacity: 0.5;
}

#gnav-input:checked ~ #gnav-content {
  transform: translateX(0%);
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
}

#gnav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 300;
  width: 70%;
  max-width: 300px;
  height: 100%;
background:rgba(16,176,80,0.8);
/*background:rgba(81,161,16,0.8);*/
  transition: 0.3s ease-in-out;
  transform: translateX(-105%);
}

.gnav-menu {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 10px;
  text-transform: uppercase;
}


.gnav-item {
  border-bottom: 1px dotted #eee;
  margin: 10px;
  padding-bottom: 20px;
}

.gnav-item a {
  color: #fff;
  font-size: 12px;
  display: block;
  width: 200px;
  text-align: center;
}

.gnav-item a::first-line {
  font-size: 16px;
  font-weight: bold;
}

@media screen and (min-width:768px) {
  .gnav-menu {
    flex-direction: row;
    padding-top: 30px;
	padding-right: 20px;
    margin: 0;
  }

  .gnav-item {
    border-bottom: none;
    margin: 0;
    padding-bottom: 0;
  }

  .gnav-item a {
    color: #1F1F1F;
    width: 130px;
  }

  .gnav-item a:hover {
    color: #BD6A14;
  }


}
.custom-shape-divider-top-1623729835 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.custom-shape-divider-top-1623729835 svg {
    position: relative;
    display: block;
    width: calc(115% + 1.3px);
    height: 35px;
}

.custom-shape-divider-top-1623729835 .shape-fill {
    fill: #E4F3F7;
}



.category-area{
    width: 100%;
    background-color: #21905F;
	margin-top: 100px;
    padding: 0px;
}
.category-title{
	color: #fff;
	height: 80px;
	font-size: 1.3vmin;
	margin: 0;
	padding: 10px 0 0;
}
@media screen and (min-width:768px) {

.category-area{
    height: 70px;
}
}

/**business**/
.business-title {
    color: #373737;
    /*color: #037161;*/
    font-size: 4vmin;
	line-height: 280%;
    text-align: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin: 0 auto;
	letter-spacing: 0.1em;
}
.about-title-pict{
	width: 250px;
	margin: 0 auto;
	text-align: center;
}
.title-pict-A{
 width: 160px;
  margin: 0 auto;
}
.business-area{
	margin: 40px 0 0;
	padding: 0;
	}
.business-mv-area{
  width: 100vw;
  height: 100vh;
  background-image: url("../img/business_sp_mv01.jpg");
  background-size: cover;
background-position: 50% 30%;
  /*background-position: center center;*/
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  margin-top: 0px;
margin-bottom: 10px;
position: relative;
}
.business-title-area {
	background: linear-gradient(to bottom, #fff 30%, #f2f8ff 40%, #abcbed);
	background: -moz-linear-gradient(top, #fff 30%, #f2f8ff 40%, #abcbed);
	background: -webkit-linear-gradient(top, #fff 30%, #f2f8ff 40%, #abcbed);
	/*background-color: #F1FCF9;*/
	margin: 88% auto 12%;
	padding: 10px 0 20px;
	width: 90%;
	height: 270px;
	border-radius: 45px;
}
.business-main-title{
		font-size: 24px;
		text-align: center;
		font-weight: 700;
		margin: 0;
	padding: 0 5% 5%;
	}
.business-main-txt{
		font-size: 3.5vmin;
		font-weight: 500;
		line-height: 9.5vmin;
		margin: 0 0 30px;
	padding: 0 5%;
	}

.business-box-A,.business-box-B{
	display: flex;
	width: 100%;
	justify-content: center;
	margin: 0 0 20px;
	padding: 5%;
}
.business-box-A{
	flex-direction:column-reverse;
}
.business-box-B{
	flex-direction: column;
}

.business-photo{
	width: 100%;
	height: 100%;
	border-radius: 0px 0px 40px 40px;
}
.business-textbox-A{
    width: 100%;
	height: 100%;
    border-radius: 40px 40px 0px 0px;
    padding: 30px 30px 15px;
}
.business-photo-B{
	width: 100%;
	height: 100%;
	border-radius: 0px 0px 40px 40px;
}
.business-textbox-B{
    width: 100%;
	height: 100%;
    border-radius: 40px 40px 0px 0px;
    padding: 30px 30px 15px;
}
.business-textbox-A h3,.business-textbox-B h3{
	font-size: 20px;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
	line-height: 1.5em;
	width: 100%;
}
.business-textbox-A p,.business-textbox-B p{
	font-size: 16px;
	line-height: 2.3em;
	font-family: 'Noto Sans JP', 'Open Sans', sans-serif;
	width: 100%;
}

.business-case-A{
    background-color: #F9ECC7;
}
.business-case-A h3{
    color: #9F7A11;
}
.business-case-B{
    background-color: #F3DFE5;
}
.business-case-B h3{
    color: #DB4777;
}
.business-case-C{
    background-color: #D3EBF4;
}
.business-case-C h3{
    color: #3A9AEB;
}
.business-case-D{
    background-color: #E7F8DF;
}
.business-case-D h3{
    color: #55A938;
}

@media screen and (min-width:768px) {
.business-box-A,.business-box-B{
	flex-direction: row;
	margin: 0 0 100px;
	padding: 0;
}

.business-photo{
	width: 580px;
	height: 480px;
	border-radius: 80px 0px 0px 80px;
}
.business-textbox-A{
    width: 580px;
	height: 480px;
    border-radius: 0px 80px 80px 0px;
    padding: 40px;
}
.business-photo-B{
	width: 580px;
	height: 480px;
	border-radius: 0px 80px 80px 0px;
}
.business-textbox-B{
    width: 580px;
	height: 480px;
    border-radius: 80px 0px 0px 80px;
    padding: 40px;
}
.business-textbox-A h3,.business-textbox-B h3{
	font-size: 28px;
	line-height: 1.5em;
	width: 500px;
}
.business-textbox-A p,.business-textbox-B p{
	font-size: 18px;
	line-height: 2.3em;
	font-family: 'Noto Sans JP', 'Open Sans', sans-serif;
	width: 500px;
}
.business-area{
	margin: 0;
	padding: 0;
	}
.business-mv-area {
	background-image: url("../img/business_top_mv.jpg");
    width: 100%;
    height: 700px;
	margin-top: 0px;
	position: relative;
	
}
.business-title-area {
    margin: 100px 0 0 0px;
    padding: 30px;
    width: 30%;
    height: 520px;
    min-width: 500px;
	position:absolute;
	right: 100px;
    /*box-shadow: 0px 0px 5px #B5B5B5;
    -webkit-box-shadow: 0px 0px 5px #B5B5B5;*/
}
.business-main-title{
		font-size: 36px;
		text-align: center;
		font-weight: 700;
		margin: 80px 0 30px;
	padding: 0;
	}
.business-main-txt{
		font-size: 24px;
		font-weight: 500;
		line-height: 2.7em;
		margin: 0 0 100px;
	}
.business-title {
	margin:0 auto;
	font-size: 30px;
	line-height: 250%;
	height: 350px;
	padding: 10px 0 0;
  }
}
/*----------------------------*/
/**seisanchi**/
.sanchi-title {
    color: #373737;
    /*color: #037161;*/
    font-size: 4vmin;
	line-height: 280%;
    text-align: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin: 0 auto;
	letter-spacing: 0.1em;
}
.about-title-pict{
	width: 250px;
	margin: 0 auto;
	text-align: center;
}
.title-pict-A{
 width: 160px;
  margin: 0 auto;
}
.sanchi-area{
	margin: 40px 0 0;
	padding: 0 3%;
	}
.sanchi-mv-area{
  width: 100vw;
  height: 100vh;
  background-image: url("../img/seisanchi_sp_mv01.jpg");
  background-size: cover;
background-position: 50% 30%;
  /*background-position: center center;*/
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  margin-top: 0px;
margin-bottom: 10px;
position: relative;
}
.sanchi-title-area {
	background: linear-gradient(to bottom, #fff 30%, #faf4e3 40%, #edd89d);
	background: -moz-linear-gradient(top, #fff 30%, #faf4e3 40%, #edd89d);
	background: -webkit-linear-gradient(top, #fff 30%, #faf4e3 40%, #edd89d);
	/*background-color: #F1FCF9;*/
	margin: 88% auto 12%;
	padding: 10px 0 20px;
	width: 90%;
	height: 270px;
	border-radius: 45px;
}
.sanchi-main-title{
		font-size: 24px;
		text-align: center;
		font-weight: 700;
		margin: 0;
	padding: 0 5% 5%;
	}
.sanchi-main-txt{
		font-size: 3.5vmin;
		font-weight: 500;
		line-height: 9.5vmin;
		margin: 0 0 30px;
	padding: 0 5%;
	}

.sanchi-box-A,.seisanchi-box-B{
	display: flex;
	width: 100%;
	justify-content: center;
	margin: 0 0 20px;
	padding:0;
}
.sanchi-box-A{
	flex-direction:column-reverse;
}
.sanchi-box-B{
	flex-direction: column;
}
.sanchi-photo{
	width: 100%;
	height: 100%;
}
.sanchi-textbox-A{
    width: 100%;
	height: 100%;
    padding: 30px 30px 15px;
}
.sanchi-photo-B{
	width: 100%;
	height: 100%;
}
.sanchi-textbox-B{
    width: 100%;
	height: 100%;
    padding: 30px 30px 15px;
}
.sanchi-textbox-A h3,.sanchi-textbox-B h3{
	font-size: 20px;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
	line-height: 1.5em;
	width: 100%;
}
.sanchi-textbox-A p,.sanchi-textbox-B p{
	font-size: 16px;
	line-height: 2.3em;
	font-family: 'Noto Sans JP', 'Open Sans', sans-serif;
	width: 100%;
}

.sanchi-case-A{
    background-color: #F9ECC7;
}
.sanchi-case-A h3{
    color: #9F7A11;
}
.sanchi-case-B{
    background-color: #F3DFE5;
}
.sanchi-case-B h3{
    color: #DB4777;
}
.sanchi-case-C{
    background-color: #D3EBF4;
}
.sanchi-case-C h3{
    color: #3A9AEB;
}
.sanchi-case-D{
    background-color: #E7F8DF;
}
.sanchi-case-D h3{
    color: #55A938;
}

.sanchi-p-txt-A{
	font-size: 18px;
	line-height: 2em;
	margin: 0 0 40px;
	padding: 0;
	font-feature-settings: "palt" 1, "trad" 1;
	}
.sanchi-p-txt-B{
		font-size: 18px;
		line-height: 2.2em;
	margin: 0;
	font-feature-settings: "palt" 1, "trad" 1;
	}
.sanchi-box-txt{
	width: 100%;
	height: auto;
	display: flex;
	flex-direction: column-reverse;
	}
.sanchi-box-B{
	margin: 0;
	padding: 0;
	width: 100%;
	justify-content: center;
	display: flex;
	flex-direction: column-reverse; 
	}
.unzen{
		margin: 0 0 100px 0;
		padding: 0;
	height: auto;
	}
.shimabara-map-area{
		width: 100%;
		margin: 0 0 120px;
	padding: 0;
	}
.sanchi-h2-txt-A{
	color: #5298E9;
	}
.sanchi-h2-txt-B{
    color: #E9BC52;
	}
.sanchi-h2-txt-C{
    color: #46C0E7;
	}
.sanchi-h2-txt-D{
    color: #25E2E1;
	}
.sanchi-h2-txt-E{
    color: #BF73E2;
	}
.sanchi-h2-txt-A,.sanchi-h2-txt-B,.sanchi-h2-txt-C,.sanchi-h2-txt-D,.sanchi-h2-txt-E{
	font-size: 30px;
    margin: 0 0 20px;
    padding: 0;
	font-feature-settings: "palt" 1, "trad" 1;
	letter-spacing: 0.1em;
	}
.sanchi-h3-txt-A{
	font-size: 20px;
	text-align: center;
	line-height: 1.8em;
	margin: 0 0 20px;
	font-feature-settings: "palt" 1, "trad" 1;
	letter-spacing: 0;
	}
.shimabara-map-txt {
		font-size: 18px;
		font-weight: 500;
		line-height: 2em;
		margin: 0 0 40px;
	padding: 0;
		text-align: justify;
	font-feature-settings: "palt" 1, "trad" 1;
	letter-spacing: 0.1em;
	}
@media screen and (min-width:768px) {
.sanchi-area{
	margin: 40px 0 0;
	padding: 0;
	}
.unzen{
		margin: 0 0 220px 0;
		padding: 0;
	height: 588px;
	}
.sanchi-box-A{
	margin: 0;
	padding: 0;
	width: 100%;
	justify-content: center;
	}
.sanchi-box-B{
	margin: 0;
	padding: 0;
	width: 100%;
	justify-content: center;
	display: flex;
	flex-direction: row-reverse; 
	}
.sanchi-box-txt{
	max-width: 580px;
	height: 588px;
	display: flex;
	flex-direction: row;
	}

.sanchi-h3-txt-A{
	font-size: 28px;
	text-align: left;
	line-height: 2em;
	margin: 0 0 0 30px;
	}
.sanchi-p-txt-A{
		font-size: 18px;
		line-height: 2.2em;
	margin: 0 0 0 50px;
	}
.sanchi-p-txt-B{
		font-size: 18px;
		line-height: 2.2em;
	margin: 0 0px 0 0px;
	}
.sanchi-h2-txt-A,.sanchi-h2-txt-B,.sanchi-h2-txt-C,.sanchi-h2-txt-D,.sanchi-h2-txt-E{
	font-size: 48px;
    margin: 0 180px 0 20px;
    padding: 0 50px 0 0;
	}
.sanchi-h2-txt-A,.sanchi-h2-txt-B,.sanchi-h2-txt-C,.sanchi-h2-txt-D,.sanchi-h2-txt-E,.sanchi-h3-txt-A,.sanchi-p-txt-A,.sanchi-p-txt-B{
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	}
.sanchi-box-photo{
	max-width: 580px;
	display: flex;
	flex-direction: column;
	}
.sanchi-photo-A{
	width: 580px;
	margin: 0;
	padding: 0;
	}
.sanchi-photo-B{
	display: flex;
	justify-content: space-between;
	margin: 8px 0 0;
	width: 580px;
	height: auto;
	}
.sanchi-photo-B img{
	width: 286px;
	}
.shimabara-map{
	display: flex;
	width: 100%;
	margin: 80px 0 120px;
	justify-content: center; 
}
.shimabara-map-tet-area{
	max-width: 540px;	
	}
.shimabara-map-txt {
		font-size: 20px;
		font-weight: 500;
		line-height: 2.8em;
		margin: 30px 0 0;
	padding: 0;
		text-align: left;
	}
	.shimabara-map-area{
		max-width: 600px;
		margin: 0;
		padding: 0;
	}
.sanchi-box-A,.seisanchi-box-B{
	flex-direction: row;
	margin: 0 0 100px;
	padding: 0;
}

.sanchi-textbox-A{
    width: 580px;
	height: 480px;
    padding: 40px;
}

.sanchi-textbox-B{
    width: 580px;
	height: 480px;
    padding: 40px;
}
.sanchi-textbox-A h3,.seisanchi-textbox-B h3{
	font-size: 28px;
	line-height: 1.5em;
	width: 500px;
}
.sanchi-textbox-A p,.seisanchi-textbox-B p{
	font-size: 18px;
	line-height: 2.3em;
	font-family: 'Noto Sans JP', 'Open Sans', sans-serif;
	width: 500px;
}
.sanchi-area {
	margin: 0;
	padding: 0;
	}
.sanchi-mv-area {
	background-image: url("../img/seisanchi_top_mv.jpg");
    width: 100%;
    height: 700px;
	margin-top: 0px;
	position: relative;
	
}
.sanchi-title-area {
    margin: 100px 0 0 0px;
    padding: 30px;
    width: 30%;
    height: 520px;
    min-width: 500px;
	position:absolute;
	left: 100px;
}
.sanchi-main-title {
		font-size: 36px;
		text-align: center;
		font-weight: 700;
		margin: 80px 0 0;
	padding: 0;
	}
.sanchi-title {
	margin:0 auto;
	font-size: 30px;
	line-height: 250%;
	height: 350px;
	padding: 10px 0 0;
  }
}
/*----------------------------*/

.mv-area {
  width: 100vw;
  height: 100vh;
  background-image: url("../img/top_sp_mv01.jpg");
  background-size: cover;
  background-position: center center;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  margin-top: 0px;
}

.mv-title {
    color: #fff;
    text-shadow: 0px 0px 3px #343434;
	text-shadow: 0px 0px 3px #343434;

    margin-bottom: 80px;
    padding: 100px 30px 0;
    font-size: 5.5vmin;
}
.banner-area{
	margin: 0 0 50px;
	padding: 0;
}
.banner-area-bottom{
	margin: -50px 0 0 0 ;
	padding: 0;
}
.ec-banner {
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
@media screen and (min-width:768px) {
  .mv-area {
	background-image: url("../img/top_mv01.jpg");
    width: 100%;
    height: 700px;
  }

  .mv-title {
	margin-bottom: -200px;
	font-size: 3.2vmin;
  }
.ec-banner {
	width: 98%;
}
.banner-area{
	margin: 0 0 140px 0px;
	padding: 0;
}
.banner-area-bottom{
	width: 1160px;
	margin: 0 auto;
	padding: 0;
}
}



.post-mark{
	width: 100px;
	position: absolute;
	top:74%;
	left:70%;
	mix-blend-mode:multiply;
	transform:rotate(5deg);
}
.about-mv-area {
  width: 100vw;
  height: 100vh;
  background-image: url("../img/sp_about_main.jpg");
  background-size: cover;
background-position: 50% 30%;
  /*background-position: center center;*/
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  margin-top: 0px;
margin-bottom: 80px;
position: relative;
}

.about-title-area {
	background: linear-gradient(to bottom, #fff 30%, #F1FCF9 40%, #D0F1E8);
	background: -moz-linear-gradient(top, #fff 30%, #F1FCF9 40%, #D0F1E8);
	background: -webkit-linear-gradient(top, #fff 30%, #F1FCF9 40%, #D0F1E8);
	/*background-color: #F1FCF9;*/
	margin: 88% auto 12%;
	padding: 10px 0 20px;
	width: 90%;
	height: 270px;
	border-radius: 45px;
}
.about-title {
    color: #373737;
    /*color: #037161;*/
    font-size: 4vmin;
	line-height: 280%;
    text-align: left;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	margin: 0 auto;
	letter-spacing: 0.1em;
}
.about-title-pict{
	width: 250px;
	margin: 0 auto;
	text-align: center;
}
.title-pict-A{
 width: 160px;
  margin: 0 auto;
}

@media screen and (min-width:768px) {
	.title-pict-A{
 	width: 220px;
}
	.post-mark{
	top:400px;
	left:27%;
	}
.about-mv-area {
	background-image: url("../img/about_main.jpg");
    width: 100%;
    height: 700px;
	margin-top: 0px;
  }
  .about-title-area {
    margin: 100px 0 0 90px;
    padding: 30px;
    width: 30%;
    height: 580px;
    min-width: 500px;
    /*box-shadow: 0px 0px 5px #B5B5B5;
    -webkit-box-shadow: 0px 0px 5px #B5B5B5;*/
}
.about-title {
	margin:0 auto;
	font-size: 30px;
	line-height: 250%;
	height: 350px;
	padding: 10px 0 0;
  }
.post-mark{
	width: 200px;
}

}


.staff-area {
    background-color: #E4F3F7;
	background-image: url("../img/backpattern_blue.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}

.staff-content {
  display: flex;
  flex-wrap: wrap;
}

.staff-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 0 20px;
}

.staff-item img {
  width: 100%;
  margin: 0 auto;
border-radius: 15px;
}
.staff-content li {
  width: 50%;
}
.staff-phote img {
  width: 50%;
  margin: 0 auto;
}
.staff-item h4 {
    color: #47ABFF;
    font-size: 5vmin;
    margin: 10px 0px;
	}
.staff-item p {
	margin: 10px 20px 20px 20px;
}
.small-txt-a {
　font-size: 0.3em;
}	
@media screen and (min-width:768px) {
.staff-area {
	background-size:40%;
}
  .staff-content {
    flex-wrap: nowrap;
    max-width: 1160px;
    margin: 0 auto;
  }

 .staff-item {
    flex: 1;
	margin: 0;
  }
.staff-item img {
  width: 370px;
  margin: 0 auto;
}
.staff-photo img {
  width: 190px;
  margin: 50px auto 0px;
}
.staff-photo-under{
	margin: 0;
	padding: 0;
	}	
.staff-photo-under img {
  width: 190px;
  margin: 5px 0 40px ;
}
.staff-item h4 {
   font-size: 26px;
}
.staff-item p {
	margin: 0;
	padding: 0 15px;
}
.small-txt-a {
　font-size: 16px;
	font-weight: 700;
}	
}

/*-------------------------*/


.ec-btn {
    display: inline-block;
    width: 100%;
    height: 50px;
    line-height: 45px;
    background-color: #E76D94;
   border-radius: 100px;
	 /*border-top-left-radius: 100px;
	border-bottom-left-radius: 100px;
	border-top-right-radius: 100px;
	border-bottom-right-radius: 100px;*/
    color: #fff;
    text-align: center;
    box-shadow: 2px 2px 6px #949494;
    -webkit-box-shadow: 2px 2px 6px #949494;
    margin-bottom: 20px;
	overflow: hidden;
}
.ec-btn:hover {
  color: #FFEA10;
  box-shadow    : none;
  opacity       : 0.8;
}
.ec-btn:visited {
  color: #fff;
}




.ec-area {
	background: linear-gradient(180deg, #F6FEC3, #FFF);
}

.ec-txt h2 , .ec-pr-txt h2 {
    color: #EE5182;
    font-size: 4.5vmin;
	padding: 0 15px;
}

.ec-txt {
    color: #1F1F1F;
	line-height: 1.8em;
}
.ec-txt p{
	padding: 0 20px;
}
.ec-logo {
	width: 80%;
}

.ec-content {
    display: flex;
	flex-direction: column-reverse;
	justify-content: center;
  }
.ec-area img {
	margin: 0 auto;
	width: 70%;
  }
.ec-txt-p{
	margin: 0 0 15px;
}
.ec-pr-content {
    display: flex;
	flex-direction: column;
	justify-content: center;
  }


.ec-pr {
	padding: 0;
 }
.ec-pr-txt {
	padding: 30px 20px 0;
	width: 100%;
    color: #1F1F1F;
	line-height: 1.8em;
}
.ec-pr-img{
	width: 90%;
	margin: 0 auto;
}
@media screen and (min-width:768px) {

  .ec-content {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }

	.ec-txt h2 , .ec-pr-txt h2 {
    font-size: 2.5vmin;
	letter-spacing: 0.1em;
	text-align: left;
	padding: 0;

}

  .ec-txt {
    flex: 1.1;
	min-width: 420px;
	margin: 0 40px 0 80px;
  }
.ec-txt p{
	padding: 0 ;
}
  .ec-area img {
    flex: 0.7;
	width: 300px;
	margin: 20px 0 30px 50px;
  }
	
	
.ec-pr {
	padding: 0 0 0 30px;
 }
.ec-pr-txt {
	padding: 70px 25px 0 35px;
	width: 50%;
    color: #1F1F1F;
	line-height: 1.8em;
}
.ec-pr-img{
	width: 50%;
	margin: 30px 0 0;
}
.ec-pr-content {
    display: flex;
	flex-direction: row-reverse;
	justify-content: center;
  }
}


/*-------------------------*/


.info-area {
    background-color: #FFF;
}

.info-txt h2 {
    color: #E85E22;
	font-size: 4.7vmin;
}

.info-txt {
    color: #1F1F1F;
	line-height: 1.8em;
}
.info-txt p{
	padding: 0 20px 30px;
}
.info-logo {
	width: 80%;
}
.info-content {
    display: flex;
    flex-direction: column;
	justify-content: center;
  }
.info-area img {
	margin: 0 auto;
	width: 60%;
  }

@media screen and (min-width:768px) {
  .info-content {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
  }

	.info-txt h2 {
    font-size: 2.5vmin;
	letter-spacing: 0.1em;
	text-align: left;
}

  .info-txt {
    flex: 1.1;
	min-width: 420px;
	margin: 0 40px 0 80px;
  }
.info-txt p{
	padding: 0 ;
}
  .info-area img {
    flex: 0.7;
	width: 250px;
	margin: 0 0 30px 80px;
  }

}


.letter-area {
    background-color: #FFF;
	font-family: 'Shippori Mincho', serif;
	margin: 0 auto 50px;
	padding: 0 30px;
}
.letter-title-area{
	margin: 0 auto;
}

.letter-pict{
	display: flex;
  flex-direction: column;
  align-items: center;
 margin: 0 auto;
	padding: 0 0 20px;
	width: 320px;
}
/*.letter-pict img{
	height: 100%;
	width: 100%;
}*/
.letter-area h2 {
    color: #1A8F63;
    font-size: 4vmin;
	letter-spacing: 0;
    padding-bottom: 30px;
}

.letter-txt {
    color: #1F1F1F;
	background-color: #fff; 
  background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), 
                    linear-gradient(180deg, #ABABAB 1px, transparent 1px); /
  background-size: 8px 100%, 
                   100% 2.2em; 
  line-height: 2.5em; 
  padding-bottom: 1px; 
	
}

.letter-txt-A,.letter-txt-B{
    color: #1F1F1F;
	background-color: #fff; 
	  background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), 
                    linear-gradient(180deg, #ABABAB 1px, transparent 1px); 
  background-size: 8px 100%, 
                   100% 2.5em; 
  line-height: 2.5em; 
  padding-bottom: 1px; 
margin: 0;
}

.letter-txt p{
	padding: 0 20px 30px;
}
/*.letter-logo {
	width: 80%;
}
.letter-content img {
	width: 100%;
	height: 100%;*/
}
.letter-content, .letter-content-B{
    display: flex;
    flex-direction: column;
	/*justify-content: flex-start;*/
	justify-content:center;
	vertical-align:middle;
	align-items: center;
	margin-bottom: 30px;
  }
/*.letter-area img {
	margin: 0 auto;
	width: 60%;
  }*/
/*.letter-content img,.letter-content-B img{
	border-radius: 10px;
	width: 100%;
	margin: 0 auto 50px;
	justify-content: center;
}*/
.letter-back-area{
	padding: 0;
	height: 80px;
}
.letter-back{
	width: 80%;
	margin: 0 auto;
	padding: 0;
}
.back-top{
    color: #717171;
    background-color: #E1E1E1;
    border-radius: 20px;
    width: 100%;
    height: 40px;
    font-size: 18px;
    margin: 0 auto;
    padding: 6px 0 0;
}
.letter-phote{
	border-radius: 10px;
	width: 100%;
	margin: 0 auto 50px;
	border-radius: 10px;
	justify-content: center;
}
/*.about-back-img {
	background-image: url("../img/backpattern_blue.jpg");
	background-repeat: repeat-x;
	background-size:20%;
	height: 200px;
	width: 100%;
	margin: 0;
	padding: 0;
}*/
@media screen and (min-width:768px) {
	.letter-back-area{
	padding: 0;
	height: 120px;
}
	.letter-back{
	width: 70%;
	margin: 0 auto;
	padding: 0;
}
	.letter-area{
		margin: 0 auto 120px;
		padding: 0;
	}
	.letter-area h2 {
    font-size: 30px;
}
   .letter-content, .letter-content-B{
    display: flex;
	margin-bottom: 50px;
  }

.letter-content-B {
    flex-direction: row;
  }
	.letter-content {
    flex-direction: row-reverse;
  }
/*.letter-content-B {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
	margin-bottom: 50px;
  }*/

	/*.letter-txt h2 {
    font-size: 2.5vmin;
	letter-spacing: 0.1em;
	text-align: left;
}*/
  .letter-txt {
	font-size: 1.2em;
	line-height: 2.2em;
    flex: 1.1;
	min-width: 420px;
	margin: 0 0 0 60px;
  }
.letter-txt-A, .letter-txt-B{
	flex: 1 1 70%;
	font-size: 1.2em;
	line-height: 2.2em;
	min-width: 420px;
	background-size: 8px 100%, 
                   100% 2.19em;
  }
.letter-txt-A {
	margin: 0 0 0 60px;
  }
.letter-txt-B {
	margin: 0 60px 0 0;
  }

.letter-txt p{
	padding: 0 ;
}
 .letter-area img {
    flex: 1;
	/*width: 320px;*/
	margin: 0;
	 padding: 0;
	 justify-content: center;
  }
.back-top{
    border-radius: 20px;
    width: 60%;
    height: 40px;
    font-size: 18px;
    margin: 0 auto;
    padding: 5px 0 0;
}
.letter-phote{
	flex:1 1 30%;
	justify-content: center;
	}
}


.about-area {
    background-color: #FFF;
	background-image: url("../img/backpattern_bright_green.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}

.about-content {
  display: flex;
  flex-wrap: wrap;
flex-direction:column-reverse;
}

.about-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 0 20px 0;
}
	
.about-item p {
	margin: 10px 0;
	padding: 0;
}

.about-item img {
  width: 100%;
  margin: 0 auto 60px;
  border-radius: 15px;
}
.about-item h4 {
    color: #13B587;
    font-size: 5vmin;
    margin: 0 0 20px;
}
.link-A{
	color: #0C6BFF;
}
.sns-txt{
	font-size: 3.4vmin;
	}
.sns-txt a:link{
    color: #0C6BFF;
	}
.sns-txt a:hover{
    color: #283549;
	}
.sns-txt a:visited{
    color: #6A1BAF;
	}


@media screen and (min-width:768px) {
	.about-area {
	background-size:40%;
}
  .about-content {
    flex-wrap: nowrap;
	 flex-direction: row;
    max-width: 1160px;
    margin: 0 auto;
  }

  .about-item {
    flex: 1;
	margin: 0;
  }
.about-item img {
  width: 560px;
  margin: 0 auto 0;
}
.tel_number {
    font-size: 42px;
    margin: 10px 0　0;
}
.tel_number_a {
    font-size: 38px;
    margin: 10px 0　0;
}
.mail_number {
    font-size: 24px;
    margin: 10px 0　0;
}
.sns {
    font-size: 24px;
    margin: 10px 0　0;
	color: #666666;
}
.sns-txt{
	margin: 5px 0 15px 0;
	font-size: 1em;
	}
.about-item h4 {
    font-size: 26px;
    margin: 0 0 10px;
	text-align: left;
}
.about-item p {
	margin: 10px 30px 10px 0;
}
}


.staff-area {
    background-color: #E4F3F7;
	background-image: url("../img/backpattern_blue.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}

.staff-content {
  display: flex;
  flex-wrap: wrap;
}

.staff-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 0 20px;
}

.staff-item img {
  width: 100%;
  margin: 0 auto;
border-radius: 15px;
}
.staff-content li {
  width: 50%;
}
.staff-phote img {
  width: 50%;
  margin: 0 auto;
}
.staff-item h4 {
    color: #47ABFF;
    font-size: 5vmin;
    margin: 10px 0px;
	}
.staff-item p {
	margin: 10px 20px 20px 20px;
}
.small-txt-a {
　font-size: 0.3em;
}	
@media screen and (min-width:768px) {
.staff-area {
	background-size:40%;
}
  .staff-content {
    flex-wrap: nowrap;
    max-width: 1160px;
    margin: 0 auto;
  }

 .staff-item {
    flex: 1;
	margin: 0;
  }
.staff-item img {
  width: 370px;
  margin: 0 auto;
}
.staff-photo img {
  width: 190px;
  margin: 50px auto 0px;
}
.staff-photo-under{
	margin: 0;
	padding: 0;
	}	
.staff-photo-under img {
  width: 190px;
  margin: 5px 0 40px ;
}
.staff-item h4 {
   font-size: 26px;
}
.staff-item p {
	margin: 0;
	padding: 0 15px;
}
.small-txt-a {
　font-size: 16px;
	font-weight: 700;
}	
}


.seisanchi-area {
    background-color: #FFF;
	background-image: url("../img/backpattern_yellow.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}
.sanchi-area {
    background-color: #FFF;
	/*background-image: url("../img/backpattern_yellow.jpg");*/
	background-repeat: repeat-x;
	background-size:80%;
}

.seisanchi-content {
  display: flex;
  flex-wrap: wrap;
}

.seisanchi-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 0;
}
	
.seisanchi-item p {
	margin: 10px 25px 40px;
	padding: 0;
}

.seisanchi-item img {
  width: 90%;
  margin: 0 auto;
}
.seisanchi-item h4 {
    color: #E68F1C;
    font-size: 22px;
    margin: 10px 0;
}
.staff-photobox{
	margin: -15px auto 0;	
	}

@media screen and (min-width:768px) {
	
.seisanchi-area {
	background-size:40%;
}
  .seisanchi-content {
    flex-wrap: nowrap;
    max-width: 1160px;
    margin: 0 auto;
  }

  .seisanchi-item {
    flex: 1;
  }
.seisanchi-item img {
  width: 560px;
  margin: 0 auto;
}
.seisanchi-item h4 {
    font-size: 26px;
    margin: 10px 0;
}
.seisanchi-item p {
	margin: 10px 30px;
}
.staff-photobox{
	margin: -52px auto 0;	
	}
}


.service-area {
    background-color: #FFF;
}

.service-content {
  display: flex;
  flex-wrap: wrap;
}

.service-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 5px;
}
	
.service-item p {
	margin: 10px 30px;
	padding: 0 20px;
}

.service-item img {
  width: 100%;
  margin: 0 auto;
}
.service-item h4 {
    color: #E68F1C;
    font-size: 22px;
    margin: 10px 0;
}


@media screen and (min-width:768px) {
  .service-content {
    flex-wrap: nowrap;
    max-width: 1160px;
    margin: 0 auto;
  }

  .service-item {
    flex: 1;
  }
.service-item img {
  width: 560px;
  margin: 0 auto;
}
.service-item h4 {
    font-size: 26px;
    margin: 10px 0;
}
.service-item p {
	margin: 10px 30px;
}
}



.inquiry-address {
    display: flex;
    flex-direction: row;
	margin: 0 0 10px 0;
	padding: 0;
	justify-content: center;
  }
.inquiry-address-a {
    flex-basis: 12%;
	margin: 0;
  }
.inquiry-address-b {
    flex-basis: auto;
	margin: auto 15px auto 0;
	padding: 0;
  }
.inquiry-address-b h5{
	font-size: 3.8vmin;
	text-align: left;
	padding-left: 15px;
	margin: 2% 0 0;
}
.inquiry-address-b p{
	font-size: 2.8vmin;
	text-align: left;
	padding-left: 15px;
	margin: 0 0 5% 0;
}
.inquiry-area {
    background-color: #FFF;
	background-image: url("../img/backpattern_pink.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}


/*-----business-----*/
.business-inquiry-area {
    background-color: #FFF;
	background-image: url("../img/backpattern_pink_w.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}
/*-----business-----*/


.inquiry-content {
  display: flex;
  flex-wrap: wrap;
flex-direction:column-reverse;
}

.inquiry-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 5px;
}
	
.inquiry-item > p {
	margin: 10px 20px 20px;
	padding: 0;
}

.inquiry-item > img {
  width: 100%;
  margin: 0 auto 20px;
padding: 0 15px;
}
.inquiry-item > h4 {
    color: #E68F1C;
    font-size: 18px;
    margin: 10px 0;
}
.tel{
    background-color: #F0AFC6;
    border-radius: 20px;
    width: 95%;
    height: 40px;
    font-size: 18px;
    margin:0 auto;
    padding: 1.3% 0 0;
}

.tel_number{
	font-size: 8vmin;
	letter-spacing: 0.01em;
	margin: 0 0 -15px;
}
.tel_number_a{
	font-size: 7.5vmin;
	letter-spacing: 0.01em;
	margin: 10px 0 30px;
}
.mail_number{
	font-size: 4vmin;
	letter-spacing: 0.01em;
	margin: 10px 0 15px;
}
.sns{
	font-size: 4vmin;
	letter-spacing: 0.01em;
	margin: 10px 0 0;
	color: #666666;
}
.sns-txt{
	margin: 5px 0 15px 0;
	}
.tel_a{
    /*background-color: #C2C7CB;*/
    background-color: #F0AFC6;
    border-radius: 20px;
    width: 95%;
    height: 40px;
    font-size: 18px;
    margin: 0 auto 0;
    padding: 1.3% 0 0%;
}
.tel-time{
	text-align: center;
	margin: 0 0 40px;
}

.line{
    background-color: #D4F3C5;
    border-radius: 20px;
    width: 95%;
    height: 40px;
    font-size: 18px;
    margin: 0 auto;
    padding: 1.3% 0 0;
}

@media screen and (min-width:768px) {

.inquiry-address {
    display: flex;
    flex-direction: row;
	margin: 0;
	padding: 0;
  }
.inquiry-address-b {
	margin: 0 20px 0 0;
  }	
.inquiry-address-b h5{
	font-size: 20px;
	text-align: left;
	padding-left: 20px;
	margin: 10px 0 0;
}
.inquiry-address-b p{
	font-size: 16px;
	text-align: left;
	padding-left: 20px;
	margin: 0;
}

	.inquiry-area,.business-inquiry-area {
	background-size:40%;
}
  .inquiry-content {
    flex-wrap: nowrap;
	 flex-direction: row;
    max-width: 1160px;
    margin: 0 auto;
  }

  .inquiry-item {
    flex: 1;
  }
.inquiry-photo {
  width: 560px;
  margin: 0 auto;
}
.tel_number {
    font-size: 42px;
    margin: 10px 0　0;
}
.tel_number_a {
    font-size: 38px;
    margin: 10px 0　0;
}
.mail_number {
    font-size: 24px;
    margin: 10px 0 -5px;
}
.sns {
    font-size: 24px;
    margin: 10px 0 -5px;
	color: #666666;
}
.inquiry-item > h4 {
    font-size: 38px;
    margin: 0 0 10px;
}
.inquiry-item > p {
	margin: 20px 30px;
}
.tel{
    width: 95%;
	min-width: 410px;
    height: 40px;
    font-size: 16px;
}
.tel_a{
    width: 95%;
	min-width: 410px;
    height: 40px;
    font-size: 16px;
}
}





.vege-area {
    background-color: #F1F9E6;
	background-image: url("../img/backpattern_green.jpg");
	background-repeat: repeat-x;
	background-size:80%;
}

.vege-content {
  display: flex;
  flex-wrap: wrap;
}

.vege-item {
  flex: 80%;
  text-align: center;
  padding: 0 0;
  margin: 5px;
}

.vege-item img {
  width: 90%;
  margin: 0 auto;
border-radius: 15px;
}
.vege-other {
    padding: 0px 20px　0;
    margin: 0 20px;
    background-color: #FFF;
    border-radius: 10px;
    font-weight: 600;
}
.vege-other p{
	margin: 0;
	padding: 20px;
}
.vege-item h4 {
    color: #87C559;
    font-size: 24px;
    margin: 10px 20px;
}
.vege-item p {
	margin: 0 20px;
	padding: 0 0 40px;
}

@media screen and (min-width:768px) {
.vege-area {
	background-size:40%;
}
  .vege-content {
    flex-wrap: nowrap;
    max-width: 1160px;
    margin: 0 auto;
  }

 .vege-item {
    flex: 1;
  }
.vege-item img {
  width: 370px;
  margin: 0 auto;
}
.vege-item h4 {
    font-size: 30px;
    margin: 10px 0;
}
.vege-item p {
	margin: 0px;
	padding: 0 15px 40px;
}
 .vege-other {
    max-width: 1160px; 
	border-radius: 10px;
	padding: 10px 30px;
	margin: 0 auto;
	text-align: center;
  }
.vege-other p{
		text-align: center;
	}
}

.plan-area {
  background-color: #f0f0f0;
}

.plan-content {
  display: flex;
  flex-direction: column;
}

.plan-item {
  background-color: #fff;
  margin-bottom: 30px;
  box-shadow: 1px 1px 3px #aaa;
}

.plan-info {
  padding: 0 15px 15px;
}

.plan-title {
  text-align: center;
  padding-bottom: 10px;
  border-bottom: 2px solid #527acc;
}

.plan-price {
  text-align: center;
  padding: 10px;
  border: 2px solid #527acc;
}

.plan-list li::before {
  content: "";
  background: url(../img/list-marker.svg) no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin: 0 10px 3px;
}

@media screen and (min-width:768px) {
  .plan-content {
    flex-direction: row;
  }

  .plan-item {
    flex: 1;
    margin-top: 0;
    margin-left: 15px;
    margin-right: 15px;
  }
}


.pagetop {
  text-align: right;
  padding: 15px;
  background-color: #f0f0f0;
}

.pagetop a::after {
  content: "";
  background: url(../img/list-marker.svg) no-repeat;
  width: 16px;
  height: 16px;
  display: inline-block;
  vertical-align: middle;
  margin: 0 0 3px 10px;
  transform: rotate(-90deg);
}


.foot-area {
  color: #fff;
  text-align: center;
  padding-top: 40px;
  background-color: #FFFFFF;
}

.foot-logo {
  margin: 0 auto 20px;
}
.back-yama{
	height: 80px;
	background-image: url("../img/backpattern_bright_green.jpg");
	background-repeat: repeat-x;
	background-size:50%;
}
.text-phone,
.text-phone a {
  color: #fff;
  font-size: 24px;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 40px;
}

.foot-area_copy {
    color: #8EAC58;
    font-size: 12px;
    display: inline-block;
    width: 100%;
    padding: 10px;
    background-color: #225010;
    text-align: center;
}

@media screen and (min-width:768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
.back-yama{
	height: 120px;
	background-size:30%;
}
}
