
#main {
	background-color: #4c4c4c;
  padding-top: 30px;
}
@media screen and (max-width: 979px) {
  #main {
    padding-top: 3vw;
  }
}
.heading-bgcolor {background: #094c44;}
.acc {
	cursor: pointer;
	position: relative;
}
.acc.heading-bgcolor::before {
	content: "＋";
	color: #fff;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translate(0, -50%);
}
.acc.heading-bgcolor.active::before {content: "－";}
/*#about .acc::after {content: "▼";}
#about .acc.active::after {content: "▲";}*/
.acc.acc-btn {
	background: #cb9e4c;
	border-radius: 5px;
}
.acc-open {display: none;}
.acc-open.active {display: block;}
.ac_ar_004>[class^=ac_ly_] {
	padding: 30px 20px;
}
.container01 ul {padding: 0 0 0 80px;}
.container01 ul li {
	font-size: 20px;
	font-weight: bold;
	background: url("../image/check.png") left 5px no-repeat;
	padding: 0 0 0 40px;
}
table.gakkai {border-collapse: collapse;}
table.gakkai th,
table.gakkai td {
	border: 1px solid #c2c2c2;
	padding: 15px;
	width: 100px;
	text-align: center;
}
table.gakkai th {
	background: #fff7f8;
	padding: 0;
}
table.gakkai tr td:last-child {
	width: auto;
	text-align: left;
}
#div4 ._color-sub5 {
	background: #cb9e4c !important;
	margin: 2px;
}
.flow-number>.text>*>.number {background: #cb9e4c !important;}
#div8 .heading-bgcolor {background: #482414;}
@media screen and (max-width: 640px) {
	.ac_ar_004>[class^=ac_ly_] {
		padding: 3vw 2.5vw;
	}
	.container01 ul {padding: 0 3vw;}
	.container01 ul li {
		font-size: 3.5vw;
		background-size: 4vw auto;
		background-position: left 0.5vw;
		padding: 0 0 0 5.5vw;
		line-height: 1.5;
	}
	.container01 ul li + li {margin-top: 1.5vw;}
	table.gakkai th,
	table.gakkai td {
		font-size: 3vw;
		padding: 2vw !important;
		width: 17vw;
	}
}

#cvfooter {
  display: block;
  width: 400px;
  position: fixed;
  bottom: 10px;
  right: 10px;
  margin: 0 auto;
  text-align: center;
  z-index: 999;
  padding: 5px 0;
}
#cvfooter a {
  display: block;
  padding: 20px;
  font-weight: bold;
  background-color: #129e36;
  color: #fff;
  text-decoration: none;
  border-radius: 50px;
}
@media screen and (max-width: 979px) {
  #cvfooter {
    width: 100%;
    bottom: 0;
    right: 0;
    padding: 5px;
  }
  #cvfooter a {
    padding: 10px;
  }
}

.point-wrap .point-header {
  background: #094c44;
  color: #F8DE94;
  text-align: center;
  font-size: 24px;
  margin-top: 30px;
}
.point-wrap .point-header span {
  font-size: 120%;
}
@media screen and (max-width: 979px) {
  .point-wrap .point-header {
    font-size: 5vw;
    margin-top: 20px;
  }
}

.reason-title {
  text-align: center;
  max-width: 900px;
  margin: auto;
}
.reason-wrap {}
.reason-wrap .reason-content {
  margin: 0 auto;
  padding: 1% 8% 3%;
  background: #29292a;
  border: 5px solid #8f8f8f;
  border-top: none;
}
.reason-wrap .reason-content h3 {
  text-align: center;
  color: #ffffff;
  font-size: 40px;
  line-height: 1.4;
  padding-bottom: 10px;
  margin-bottom: 30px;
  position: relative;
}
.reason-wrap .reason-content h3::before {
  content: '';
  position: absolute;
  background: url("../image/reason_header_line.png") no-repeat center;
  background-size: contain;
  width: 808px;
  height: 3px;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
}
.reason-wrap .reason-content p.text {
  font-size: 20px;
  color: #ffffff;
}
.btn-insta {
  text-align: center;
  margin: 30px auto 20px;
}
@media screen and (max-width: 979px) {
  .reason-wrap .reason-content {
    border-width: 0.6vw;
    padding: 0 4%;
    margin-top: -1px;
  }
  .reason-wrap .reason-content h3 {
    font-size: 5vw;
    margin-bottom: 4vw;
  }
  .reason-wrap .reason-content h3::before {
    width: 100%;
    height: 3px;
  }
  .reason-wrap .reason-content p.text {
    font-size: 3.7vw;
  }
  .btn-insta {
    margin: 4vw auto 3vw;
  }
}
section.point {
	width: 980px;
	background: #fff;
	padding: 40px 70px 90px;
	margin: 30px auto 0;
}
section.point h2 {
	text-align: center;
	margin: 0 0 50px;
}
section.point .container {
	background: rgb(231,209,141);
	background: linear-gradient(56deg, rgba(231,209,141,1) 0%, rgba(175,105,29,1) 50%, rgba(231,209,141,1) 100%);
	padding: 4px;
	box-shadow: 7px 7px 10px rgba(0,0,0,0.25);
	position: relative;
}
section.point .container::before {
	content: "";
	display: block;
	width: 90px;
	height: 90px;
	background: url("../image/point02.png") center center / cover no-repeat;
	position: absolute;
	left: -15px;
	top: -15px;
}
section.point .container + .container {
	margin-top: 60px;
}
section.point .container .inner {
	font-size: 20px;
	line-height: 1.5;
	background: #fff;
	padding: 20px 40px 25px;
}
section.point .container .inner h3 {
	text-align: center;
	color: #936614;
	font-size: 28px;
	line-height: 1.4;
	padding-bottom: 7px;
	margin-bottom: 20px;
	position: relative;
}
section.point .container .inner h3::before {
	content: "";
	display: block;
	width: 685px;
	height: 3px;
	background: rgb(191,153,74);
	background: linear-gradient(56deg, rgba(191,153,74,0) 0%, rgba(191,153,74,1) 50%, rgba(191,153,74,0) 100%);
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translate(-50%, 0);
}
@media screen and (max-width: 979px) {
	section.point {
		width: 95%;
		padding: 4vw 3vw 5vw;
		margin: 4vw auto 0;
	}
	section.point h2 {
		margin: 0 0 5vw;
	}
	section.point .container {
		padding: 0.75vw;
		box-shadow: 1vw 1vw 1.5vw rgba(0,0,0,0.25);
	}
	section.point .container::before {
		width: 11vw;
		height: 11vw;
		left: -2vw;
		top: -2vw;
	}
	section.point .container + .container {
		margin-top: 6vw;
	}
	section.point .container .inner {
		font-size: 3.5vw;
		padding: 2vw 3vw 3vw;
	}
	section.point .container .inner h3 {
		font-size: 4vw;
		padding-bottom: 1vw;
		margin-bottom: 2.5vw;
	}
	section.point .container .inner h3::before {
		width: 100%;
		height: 0.5vw;
		left: 0;
		transform: translate(0, 0);
	}
}

