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

area

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

.area-01 {
	background: #ffffff;
}
.area-02 {
	background: #F4F4F4;
}
.area-03 {
	background: #CBEFFD;
}
.area-04 {
	background: #F2FAFF;
}
.area-p-01 {
	padding: 100px 0;
}
.area-p-01-t {
	padding: 100px 0 0;
}
.area-p-01-b {
	padding: 0 0 100px;
}
.area-p-02 {
	padding: 70px 0;
}
.area-p-03 {
	padding: 50px 0;
}
.area-p-04 {
	padding: 150px 0;
}

@media screen and (max-width:640px) {
.area-p-01 {
	padding: 50px 0;
}
.area-p-02 {
	padding: 50px 0;
}
.area-p-03 {
	padding: 50px 0;
}
.area-p-04 {
	padding: 50px 0;
}
}


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

title

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

.entry-header {
	padding: 120px 0;
	background-position: center center;
	background-image: url(../images/0-title-bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	text-align: center;
	line-height: 1.4;
	color: #ffffff;
	word-break: initial;
}
.entry-header .title-en {
	margin-bottom: 15px;
	font-size: 20px;
	font-family: "Vollkorn", serif;
}
.entry-header .title {
	font-size: 48px;
	font-family: "Noto Serif JP", serif;
	line-height: 1.6;
	letter-spacing: 0.2em;
}
.editor h2,
.editor h3,
.editor h4 {
	font-weight: 600;
}
.editor h2 {
	margin: 50px 0 10px;
	font-size: 16px;
}
.editor h3 {
	margin: 50px 0 10px;;
	font-size: 15px;
}
.editor h4 {
	font-size: 14px;
}
.editor ul {
	margin-bottom: 20px;
	padding-left: 20px;
}
.editor ul li {
	list-style: disc;
}
.editor ol {
	margin-bottom: 20px;
	padding-left: 20px;
}
.editor ol li {
	list-style: decimal;
}
.title-01 {
	padding: 100px 0 40px;
	color: #323232;
	word-break: initial;
}
.title-01 .en {
	display: block;
	font-size: 52px;
	font-family: "Vollkorn", serif;
	line-height: 1.2;
}
.title-01-02 .en  {
	display: inline-block;
	margin-right: 10px;
}
.title-01 .jp {
	display: block;
	position: relative;
	padding-left: 20px;
	font-size: 26px;
	font-family: "Noto Serif JP", serif;
}
.title-01-02 .jp  {
	display: inline-block;
}
.title-01 .jp-g {
	color: #5CB85C;
}
.title-01 .jp-g-02 {
	color: #438743;
}
.title-01 .jp::before {
	content: "";
	position: absolute;
	top: 30%;
	left: 0;
	height: 40%;
	width: 1px;
	background: #323232;
}
.title-01 .jp-g::before {
	background: #5CB85C;
}
.title-01 .jp-g-02::before {
	background: #438743;
}
.title-02 {
	margin: 80px 0 40px;
	font-size: 32px;
	font-family: "Noto Serif JP", serif;
	color: #5CB85C;
	line-height: 1.6;
}
.title-03 {
	margin: 50px 0 20px;
	font-size: 22px;
	font-family: "Noto Serif JP", serif;
	color: #5CB85C;
	line-height: 1.6;
}
.title-04 {
	margin: 50px 0 20px;
	font-size: 26px;
	font-family: "Noto Serif JP", serif;
	color: #5CB85C;
	line-height: 1.6;
}


@media screen and (max-width:640px) {
 .entry-header {
	padding: 40px 3%;
}
.entry-header .title-en {
	margin-bottom: 5px;
	font-size: 4vw;
}
.entry-header .title {
	font-size: 7vw;
}
.title-01 {
	padding: 60px 0 30px;
}
.title-01 .en {
	font-size: 9vw;
}
.title-01 .jp {
	display: block;
	font-size: 5.5vw;
}
.title-02 {
	margin: 60px 0 30px;
	font-size: 6vw;
}

}




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

btn

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

#site .btn-01 a {
	display: inline-block;
	position: relative;
	padding: 25px 10px;
	min-width: 550px;
	border: solid 1px #000000;
	background: #ffffff;
	text-align: center;
	text-decoration: none;
	font-weight: 600;
	color: #000000;
	cursor: pointer;
}
#site .btn-01-g a {
	border: solid 1px #5CB85C;
	color: #5CB85C;
}


@media screen and (max-width: 640px) {
#site .btn-01 a {
	display: block;
	min-width: auto;
	padding: 15px 20px;
}
#site .btn-01 a::after {
	right: -30px;
	width: 10px;
	height: 10px;
}
#site .btn-01 a::before {
	right: -30px;
	width: 60px;
}
}


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

table

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

.table-01 {
	margin-bottom: 10px;
	width: 100%;
	border: solid 1px #C8C8C8;
}
.table-01 tr th,
.table-01 tr td {
	padding: 10px 15px;
	vertical-align: middle;
	border-bottom: solid 1px #C8C8C8;
}
.table-01 tr th {
	width: 20%;
	text-align: left;
	vertical-align: middle;
	background: #F5F5F5;
}
.table-01-02 tr th {
	width: 25%;
}
.table-02 {
	margin-bottom: 10px;
	width: 100%;
}
.table-02 tr th,
.table-02 tr td {
	padding: 25px 0;
	border-bottom: solid 1px #B1B1B1;
}
.table-02 tr:last-child th,
.table-02 tr:last-child td {
	border-bottom: none;
}
.table-02 tr th {
	width: 30%;
	text-align: left;
	vertical-align: top;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.6;
}
.table-02 tr th span {
	display: block;
	font-size: 14px;
	font-family: "Vollkorn", serif;
	font-weight: 400;
	color: #395FC8;
}
.table-02 tr td {
	line-height: 2.5;
}
	



@media screen and (max-width: 640px) {

.table-01,
.table-01 tbody,
.table-01 tr,
.table-01 tr th,
.table-01 tr td {
	display: block;
	width: auto;
}	
.table-01 tr th {
	padding: 10px 5%;
	border: none;
}	
.table-01 tr td {
	padding: 10px 5%;
}
}


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

ul

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

.ul-01 li {
	position: relative;
	padding-left: 20px;
}
.ul-01 li::before {
	content: "";
	position: absolute;
	top: 12px;
	left: 0;
	width: 13px;
	height: 13px;
	background: #5CB85C;
	transform: rotate(45deg);
}

.ul-02 li {
	position: relative;
	padding-left: 20px;
}
.ul-02 li::before {
	content: "";
	position: absolute;
	top: 18px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 100px;
	background: #000000;
}

@media screen and (max-width: 640px) {

	
}



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

ol

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

.ol-01 {
	margin-bottom: 30px;
}

.ol-01 li {
	margin-left: 20px;
	line-height: 2;
	list-style: decimal;
}


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

text

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

.size12 {
	font-size: 12px;
}
.size15 {
	font-size: 15px;
}
.size16 {
	font-size: 16px;
}
.size18 {
	font-size: 18px;
}
.size20 {
	font-size: 20px;
}
.size22 {
	font-size: 22px;
}
.size24 {
	font-size: 24px;
}


@media screen and (max-width: 640px) {
.size18 {
	font-size: 16px;
}
.size20 {
	font-size: 16px;
}
.size22 {
	font-size: 18px;
}
.size24 {
	font-size: 20px;
}
}


.f-c-01 {
	color: #fff;
}

.color01 {
	font-weight: bold;
	color: #395FC8;
}

.marker01 {
	font-weight: bold;
	background: #FF6;
	padding: 0 3px;
}
.marker02 {
	font-weight: bold;
	background: #DAE49F;
	padding: 0 3px;
}
.marker03 {
	font-weight: bold;
	background: #A6D4E3;
	padding: 0 3px;
}
.marker04 {
	font-weight: bold;
	background: #F5CAD1;
	padding: 0 3px;
}
.bold {
	font-weight: bold;
}
.underline {
	text-decoration: underline;
}



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

text-align

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

.txt-c {text-align: center !important;}
.txt-l {text-align: left !important;}
.txt-r {text-align: right !important;}

.txt-c-pc {text-align: center !important;}

@media screen and (max-width: 640px) {
.txt-c-pc {text-align: left !important;}
.txt-c-sp {text-align: center !important;}
}


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

clearfix

/////////////////////////////////////////////////////////////////// */
.clearfix:after {
	content: ".";
	display: block;
	visibility: hidden;
	height: 0;
	clear: both;
}
/* WinIE7 only */
*:first-child+html .clearfix {
	height: 1%;
}
/* WinIE6 and below */
/* hide \*/
* html .clearfix {
	height: 1%;
}


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

margin

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

.mt-0 {margin-top: 0 !important;}
.mt-5 {margin-top: 5px !important;}
.mt-10 {margin-top: 10px !important;}
.mt-15 {margin-top: 15px !important;}
.mt-20 {margin-top: 20px !important;}
.mt-30 {margin-top: 30px !important;}
.mt-40 {margin-top: 40px !important;}
.mt-50 {margin-top: 50px !important;}
.mt-60 {margin-top: 60px !important;}
.mt-70 {margin-top: 70px !important;}
.mt-80 {margin-top: 80px !important;}
.mt-90 {margin-top: 90px !important;}
.mt-100 {margin-top: 100px !important;}

.mr-0 {margin-right: 0 !important;}
.mr-5 {margin-right: 5px !important;}
.mr-10 {margin-right: 10px !important;}
.mr-15 {margin-right: 15px !important;}
.mr-20 {margin-right: 20px !important;}
.mr-30 {margin-right: 30px !important;}
.mr-40 {margin-right: 40px !important;}
.mr-50 {margin-right: 50px !important;}
.mr-60 {margin-right: 60px !important;}
.mr-70 {margin-right: 70px !important;}
.mr-80 {margin-right: 80px !important;}
.mr-90 {margin-right: 90px !important;}
.mr-100 {margin-right: 100px !important;}

.mb-0 {margin-bottom: 0 !important;}
.mb-5 {margin-bottom: 5px !important;}
.mb-10 {margin-bottom: 10px !important;}
.mb-15 {margin-bottom: 15px !important;}
.mb-20 {margin-bottom: 20px !important;}
.mb-30 {margin-bottom: 30px !important;}
.mb-40 {margin-bottom: 40px !important;}
.mb-50 {margin-bottom: 50px !important;}
.mb-60 {margin-bottom: 60px !important;}
.mb-70 {margin-bottom: 70px !important;}
.mb-80 {margin-bottom: 80px !important;}
.mb-90 {margin-bottom: 90px !important;}
.mb-100 {margin-bottom: 100px !important;}

.ml-0 {margin-left: 0 !important;}
.ml-5 {margin-left: 5px !important;}
.ml-10 {margin-left: 10px !important;}
.ml-15 {margin-left: 15px !important;}
.ml-20 {margin-left: 20px !important;}
.ml-30 {margin-left: 30px !important;}
.ml-40 {margin-left: 40px !important;}
.ml-50 {margin-left: 50px !important;}
.ml-60 {margin-left: 60px !important;}
.ml-70 {margin-left: 70px !important;}
.ml-80 {margin-left: 80px !important;}
.ml-90 {margin-left: 90px !important;}
.ml-100 {margin-left: 100px !important;}
.m-0 {margin: 0 !important;}


@media screen and (max-width:640px) {
.mb-80 {margin-bottom: 40px !important;}
}



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

padding

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

.pt-0 {padding-top: 0 !important;}
.pt-5 {padding-top: 5px !important;}
.pt-10 {padding-top: 10px !important;}
.pt-15 {padding-top: 15px !important;}
.pt-20 {padding-top: 20px !important;}
.pt-30 {padding-top: 30px !important;}
.pt-40 {padding-top: 40px !important;}
.pt-50 {padding-top: 50px !important;}
.pt-60 {padding-top: 60px !important;}
.pt-70 {padding-top: 70px !important;}
.pt-80 {padding-top: 80px !important;}
.pt-90 {padding-top: 90px !important;}
.pt-100 {padding-top: 100px !important;}

.pr-0 {padding-right: 0 !important;}
.pr-5 {padding-right: 5px !important;}
.pr-10 {padding-right: 10px !important;}
.pr-15 {padding-right: 15px !important;}
.pr-20 {padding-right: 20px !important;}
.pr-30 {padding-right: 30px !important;}
.pr-40 {padding-right: 40px !important;}
.pr-50 {padding-right: 50px !important;}
.pr-60 {padding-right: 60px !important;}
.pr-70 {padding-right: 70px !important;}
.pr-80 {padding-right: 80px !important;}
.pr-90 {padding-right: 90px !important;}
.pr-100 {padding-right: 100px !important;}

.pb-0 {padding-bottom: 0 !important;}
.pb-5 {padding-bottom: 5px !important;}
.pb-10 {padding-bottom: 10px !important;}
.pb-15 {padding-bottom: 15px !important;}
.pb-20 {padding-bottom: 20px !important;}
.pb-30 {padding-bottom: 30px !important;}
.pb-40 {padding-bottom: 40px !important;}
.pb-50 {padding-bottom: 50px !important;}
.pb-60 {padding-bottom: 60px !important;}
.pb-70 {padding-bottom: 70px !important;}
.pb-80 {padding-bottom: 80px !important;}
.pb-90 {padding-bottom: 90px !important;}
.pb-100 {padding-bottom: 100px !important;}

.pl-0 {padding-left: 0 !important;}
.pl-5 {padding-left: 5px !important;}
.pl-10 {padding-left: 10px !important;}
.pl-15 {padding-left: 15px !important;}
.pl-20 {padding-left: 20px !important;}
.pl-30 {padding-left: 30px !important;}
.pl-40 {padding-left: 40px !important;}
.pl-50 {padding-left: 50px !important;}
.pl-60 {padding-left: 60px !important;}
.pl-70 {padding-left: 70px !important;}
.pl-80 {padding-left: 80px !important;}
.pl-90 {padding-left: 90px !important;}
.pl-100 {padding-left: 100px !important;}

.p-0 {padding: 0 !important;}


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

display

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

.disp-none{
  display:none;
}
.disp-inline{
  display:inline;
}

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

width

/////////////////////////////////////////////////////////////////// */
.w20p {
	width: 20%;
}
.w25p {
	width: 25%;
}
.w30p {
	width: 30%;
}
.w40p {
	width: 40%;
}
.w50p {
	width: 50%;
}

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

fotn size

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

.f-s-12 {
	font-size: 12px;
}
.f-s-18 {
	font-size: 18px;
}
.f-s-20 {
	font-size: 20px;
}
.f-s-22 {
	font-size: 22px;
}

@media screen and (max-width:640px) {
.f-s-18 {
	font-size: 16px;
}
.f-s-20 {
	font-size: 18px;
}
.f-s-22 {
	font-size: 20px;
}
}

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

float

/////////////////////////////////////////////////////////////////// */
.float-1-9 .left {
  float: left;
  width: 8%;
	margin-right: 2%;
}
.float-1-9 .right {
  float: left;
  width: 88%;
	margin-left: 2%;
}
.float-2-8 .left {
  float: left;
  width: 18%;
	margin-right: 2%;
}
.float-2-8 .right {
  float: right;
  width: 78%;
	margin-left: 2%;
}
.float-3-7 .left {
  float: left;
  width: 28%;
	margin-right: 2%;
}
.float-3-7 .right {
  float: right;
  width: 68%;
	margin-left: 2%;
}
.float-4-6 .left {
  float: left;
  width: 38%;
	margin-right: 2%;
}
.float-4-6 .right {
  float: right;
  width: 58%;
	margin-left: 2%;
}
.float-5-5 .left {
  float: left;
  width: 48%;
	margin-right: 2%;
}
.float-5-5 .right {
  float: right;
  width: 48%;
	margin-left: 2%;
}
.float-6-4 .left {
  float: left;
  width: 58%;
	margin-right: 2%;
}
.float-6-4 .right {
  float: right;
  width: 38%;
	margin-left: 2%;
}
.float-7-3 .left {
  float: left;
  width: 68%;
	margin-right: 2%;
}
.float-7-3 .right {
  float: right;
  width: 28%;
	margin-left: 2%;
}
.float-8-2 .left {
  float: left;
  width: 78%;
	margin-right: 2%;
}
.float-8-2 .right {
  float: right;
  width: 18%;
	margin-left: 2%;
}
.float-9-1 .left {
  float: left;
  width: 88%;
	margin-right: 2%;
}
.float-9-1 .right {
  float: left;
  width: 8%;
	margin-left: 2%;
}
.float-1-9:after,
.float-2-8:after,
.float-3-7:after,
.float-4-6:after,
.float-5-5:after,
.float-6-4:after,
.float-7-3:after,
.float-8-2:after,
.float-9-1:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}
* html .float-1-9,
* html .float-2-8,
* html .float-3-7,
* html .float-4-6,
* html .float-5-5,
* html .float-6-4,
* html .float-7-3,
* html .float-8-2,
* html .float-9-1,
*:first-child+html .float-1-9,
*:first-child+html .float-2-8,
*:first-child+html .float-3-7,
*:first-child+html .float-4-6,
*:first-child+html .float-5-5,
*:first-child+html .float-6-4,
*:first-child+html .float-7-3,
*:first-child+html .float-8-2,
*:first-child+html .float-9-1 {
  zoom: 1;
}
 @media screen and (max-width: 640px) {
.float-1-9 .left,
.float-2-8 .left,
.float-2-8 .right,
.float-3-7 .left,
.float-3-7 .right,
.float-4-6 .left,
.float-4-6 .right,
.float-5-5 .left,
.float-5-5 .right,
.float-6-4 .left,
.float-6-4 .right,
.float-7-3 .left,
.float-7-3 .right,
.float-8-2 .left,
.float-8-2 .right,
.float-9-1 .right {
	float: none;
	margin: 0 auto 10px;
	width: 100%;
}
}
