@charset "UTF-8";

#page .sec01 {
	padding: 80px 0;
	position: relative;
}
#page .sec02 {
	margin: 0 0 80px;
	padding: 80px 0;
 background-color:#FEFFE9;
	position: relative;
}
#page .sec03 {
	margin: 0 0 150px;
	position: relative;
}
#page .sec02:last-child {
	margin: 0px;
	position: relative;
}
@media screen and (max-width: 898px)  {
#page .sec01 {
	padding: 50px 0;
}
#page .sec02 {
	margin: 0 0 50px;
	padding: 50px 0;
}
#page .sec03 {
	margin: 0 0 100px;
}
}
@media screen and (max-width: 480px)  {

}


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

company_wrp

------------------------------------------------- */
.company_wrp	{
 width: 1140px;
 margin: 0px auto 80px;
	padding:0;
	position:relative;
}
.company_wrp:last-child	{
 margin: 0px auto;
}
.company_wrp::after {
 content: "";
 display: block;
 clear: both;
}
.company_wrp .title	{
	margin: 0px auto 50px;
}
.company_wrp .title02	{
	margin: 60px auto 50px;
}
.company_wrp .title h2,
.company_wrp .title02 h2	{
	font-weight:500;
	font-size:3.2rem;
	position:relative;
	text-align: center;
	margin: 0;
}
.company_wrp .title h2:before,.company_wrp .title02 h2:before {
 content: '';
 position: absolute;
	bottom: -20px;
 display: inline-block;
 width: 40px;
 height: 3px;
 left: 50%;
 -webkit-transform: translateX(-50%);
 transform: translateX(-50%);
 background-color:#008730;
 border-radius: 2px;
}
.company_wrp .content	{
	width: 100%;
	margin:0;
	font-weight:400;
	line-height: 1.8;
}
.cp	{
	font-weight:500;
	font-size:3rem;
	position:relative;
	margin: 0 0 30px;
	text-align: center;
	color:#243985;
}
.com_name	{
	text-align: right;
	margin-top: 50px;
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
.company_wrp	{
 width: 92%;
 margin: 0px auto;
}
}
@media screen and (min-width: 899px) and (max-width: 1024px) {
.company_wrp	{
 width: 92%;
 margin: 0px auto;
}
}
@media screen and (max-width: 898px)  {
.company_wrp	{
 width: 90%;
	margin:0 auto;
}
.company_wrp .title	{
}
.company_wrp .title02	{
	margin: 50px auto 60px;
}
.company_wrp .title h2	{
	font-size:2.8rem;
}
.cp	{
	font-size:2.4rem;
	position:relative;
	margin: 0 0 30px;
}
}
@media screen and (max-width: 768px)  {
.company_wrp .title h2,
.company_wrp .title02 h2	{
	font-size:2.4rem;
}
.company_wrp .title h2:before,.company_wrp .title02 h2:before {
  bottom: -15px;
  width: 30px;
  height: 2px;
}
.company_wrp .content	{
	width: 100%;
	margin:0 0 30px;
}
.cp	{
	margin: 0 0 20px;
}
}
@media screen and (max-width: 640px)  {
/*.company_wrp .title	{
	margin: 0px auto 45px;
}*/
.cp	{
	font-size: 2rem;
}
}
@media screen and (max-width: 480px)  {
.company_wrp .title	{
	margin: 0px auto 40px;
}
.company_wrp .title h2,
.company_wrp .title02 h2	{
	font-size: 2rem;
}
.cp	{
	font-size: 1.8rem;
}
}


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

history

------------------------------------------------- */
.history_inner	{
 width: 800px;
 margin: 0px auto;
	position:relative;
}
.history_inner > table	{
 width: 100%;
 border-spacing: 0;
}
.history_inner > table th	{
 border-bottom: solid 1px	#ccc;
 padding: 20px 10px;
	vertical-align:text-top;
	width:25%;
	font-weight:400;
	letter-spacing:1px;
}
.history_inner > table th.ls	{
	letter-spacing:2px;
}
.history_inner > table th:nth-child(1n)	{
 border-top: solid 1px #ccc;
}
.history_inner > table th:last-of-type,
.history_inner > table td:last-of-type{
 border-bottom: none;
}
.history_inner > table td	{
 border-bottom: solid 1px #ccc;
 padding: 20px 20px 20px 30px;
	vertical-align:text-top;
}
.history_inner > table td:nth-child(1n)	{
 border-top: solid 1px #ccc;
}

@media screen and (min-width: 1025px) and (max-width: 1200px) {
.history_inner	{
 width: 85%;
}
}
@media screen and (min-width: 899px) and (max-width: 1024px) {
.history_inner	{
 width: 85%;
}
}
@media screen and (max-width: 898px)  {
.history_inner	{
 width: 100%;
}
}
@media screen and (max-width: 640px)  {
.history_inner > table th	{
	width:100%;
	display:block;
 border-bottom:	none !important;
 padding: 15px 10px 0;
	font-size: 1.4rem;
}
.history_inner > table th:nth-child(1n)	{
 /*border-top:	none;*/
}
.history_inner > table td	{
	width:100%;
	display:block;
 /*border-bottom: solid 1px	#ccc !important;*/
 padding: 5px 10px 15px;
	font-size: 1.4rem;
}
.history_inner > table td:nth-child(1n)	{
 border-top:	none;
}
}
@media screen and (max-width: 480px)  {
.history_inner > table th	{
	font-size: 1.4rem;
}
.history_inner > table td	{
	font-size: 1.4rem;
}
}


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

qualify

------------------------------------------------- */
.qualify_inner	{
 width: 800px;
 margin: 0px auto;
	position:relative;
	display: flex;
	flex-flow: row nowrap;
	justify-content: space-between;
	align-items:flex-start;
}
.qualify_inner section	{
 width: 46%;
}
.qualify_inner h3 {
	margin:10px 0 20px;
	padding:0px 0px 10px 5px;
	font-weight: 500;
	color: #008730;
	border-bottom: 2px solid #008730;
}
.qualify_inner ul{
	margin:10px 0;
	padding:0 0 0 10px;
	font-weight: 400;
}
.qualify_inner ul li	{
 list-style:  none;  /* デフォルトのアイコンを消す */
 margin:  0;         /* デフォルト指定上書き */
 padding: 5px 0;         /* デフォルト指定上書き */
	padding-left: 1em;
 text-indent: -1.2em;
}
.qualify_inner ul li:before {
 content:  "";     /* 空の要素作成 */
 width:  8px;               /* 幅指定 */
 height:  8px;              /* 高さ指定 */
 display:  inline-block;     /* インラインブロックにする */
 background-color: #666;  /* 背景色指定 */
 -webkit-border-radius: 50%;
 border-radius:  50%;        /* 要素を丸くする */
 position:  relative;        /* 位置調整 */
 top: -3px;                  /* 位置調整 */
 margin-right: 10px;          /* 余白指定 */
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
.qualify_inner	{
 width: 85%;
}
}
@media screen and (min-width: 899px) and (max-width: 1024px) {
.qualify_inner	{
 width: 85%;
}
}
@media screen and (max-width: 898px)  {
.qualify_inner	{
 width: 100%;
}
}
@media screen and (max-width: 768px)  {
.qualify_inner h3 {
	margin:0 0 20px;
	border-bottom: 1px solid #008730;
}
}
@media screen and (max-width: 640px)  {
.qualify_inner h3 {
	font-size:1.8rem;
	margin:0 0 20px;
}
.qualify_inner ul{
	font-size: 1.4rem;
	padding:0 0 0 20px;
}
.qualify_inner ul li	{
 padding: 2px 0;
}
.qualify_inner ul li:before {
 width:  6px; 
 height:  6px; 
}
}
@media screen and (max-width: 480px)  {
.qualify_inner	{
	flex-flow: column wrap;
}
.qualify_inner section	{
 width: 100%;
	margin-bottom: 30px;
}
.qualify_inner section:last-child	{
	margin-bottom: 0px;
}
.qualify_inner h3 {
	font-size:1.6rem;
	margin:0 0 10px;
}
.qualify_inner ul{
	padding:0 0 0 30px;
}
}


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

Outline

------------------------------------------------- */
.outline_inner	{
 width: 800px;
	margin: 0 auto;
}
.outline_inner > table	{
 width: 100%;
 border-spacing: 0;
}
.outline_inner > table th	{
 border-bottom: solid 1px	#ccc;
 padding: 20px 10px;
	vertical-align:text-top;
	width:25%;
	font-weight:500;
}
.outline_inner > table th:nth-child(1n)	{
 border-top: solid 1px #ccc;
}
.outline_inner > table th:last-of-type,
.outline_inner > table td:last-of-type{
 border-bottom: none;
}
.outline_inner > table td	{
 border-bottom: solid 1px #ccc;
 padding: 20px 20px 20px 30px;
	vertical-align:text-top;
}
.outline_inner > table td a	{
	color:#00AA6E;
	text-decoration: none;
}
.outline_inner > table td a:hover	{
	text-decoration: underline;
}
.outline_inner > table td:nth-child(1n)	{
 border-top: solid 1px #ccc;
}
.outline_inner > table td ul{
	margin:10px 0;
	padding:0 0 0 10px;
	font-weight: 400;
}
.outline_inner > table td ul li	{
 list-style:  none;  /* デフォルトのアイコンを消す */
 margin:  0;         /* デフォルト指定上書き */
 padding: 2px 0;         /* デフォルト指定上書き */
	padding-left: 1em;
 text-indent: -1.2em;
}
.outline_inner > table td ul li:before {
 content:  "";     /* 空の要素作成 */
 width:  8px;               /* 幅指定 */
 height:  8px;              /* 高さ指定 */
 display:  inline-block;     /* インラインブロックにする */
 background-color: #666;  /* 背景色指定 */
 -webkit-border-radius: 50%;
 border-radius:  50%;        /* 要素を丸くする */
 position:  relative;        /* 位置調整 */
 top: -3px;                  /* 位置調整 */
 margin-right: 10px;          /* 余白指定 */
}
.outline_inner > table td > dl	{
	margin: 10px 0;
	padding:0 0 0 7px;
	font-weight: 400;
}
.outline_inner > table td > dl dt	{
	font-weight: normal;
	margin-bottom: 5px;				/* 2025/3/21追加 */
}
.outline_inner > table td > dl dt:before {
 content:  "";     /* 空の要素作成 */
 width:  8px;               /* 幅指定 */
 height:  8px;              /* 高さ指定 */
 display:  inline-block;     /* インラインブロックにする */
 background-color: #666;  /* 背景色指定 */
 -webkit-border-radius: 50%;
 border-radius:  50%;        /* 要素を丸くする */
 position:  relative;        /* 位置調整 */
 top: -3px;                  /* 位置調整 */
 margin-right: 10px;          /* 余白指定 */
}
.outline_inner > table td > dl dd	{
	padding-left: 17px;
	padding-bottom: 15px;
	line-height: 1.8;				/* 2025/3/21追加 */
}
@media screen and (min-width: 1025px) and (max-width: 1200px) {
.outline_inner	{
 width: 85%;
}
}
@media screen and (min-width: 899px) and (max-width: 1024px) {
.outline_inner	{
 width: 85%;
}
}
@media screen and (max-width: 898px)  {
.outline_inner	{
 width: 100%;
}
}
@media screen and (max-width: 768px)  {
.outline_inner h3	{
	font-size:2.2rem;
	margin:0 0 15px;
}
}
@media screen and (max-width: 640px)  {
.outline_inner h3	{
	font-size:2rem;
	margin:0 0 15px;
}
.outline_inner > table th	{
	width:100%;
	display:block;
 border-bottom:	none !important;
 padding: 15px 10px 0;
	font-size: 1.4rem;
}
.outline_inner > table th:nth-child(1n)	{
 /*border-top:	none;*/
}
.outline_inner > table td	{
	width:100%;
	display:block;
 /*border-bottom: solid 1px	#ccc !important;*/
 padding: 5px 10px 15px;
	font-size: 1.4rem;
}
.outline_inner > table td:nth-child(1n)	{
 border-top:	none;
}
.outline_inner > table td ul	{
	margin:5px 0;
	padding:0 0 0 25px;
}
.outline_inner > table td ul li	{
 padding: 1px 0;
}
.outline_inner > table td ul li:before {
 width:  6px;               /* 幅指定 */
 height:  6px;              /* 高さ指定 */
}
.outline_inner > table td > dl	{
	margin:5px 0;
	padding:0 0 0 8px;
}
.outline_inner > table td > dl dt:before {
 width:  6px;
 height:  6px;
}
.outline_inner > table td > dl dd	{
	padding-left: 15px;
}
}
@media screen and (max-width: 480px)  {
.outline_inner > table th	{
	font-size: 1.4rem;
}
.outline_inner > table td	{
	font-size: 1.4rem;
}
}


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

Access

------------------------------------------------- */
/* アクセスマップ
================================================== */
.ggmap01 {
	margin-bottom:0px;
}
.ggmap01 {
	position: relative;
	padding-top: 40%; /* 比率を16:9に固定 */	
	height: 0;
	overflow: hidden;
}
.ggmap01 iframe,
.ggmap01 object,
.ggmap01 embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height:100%;
}
@media screen and (max-width: 768px)  {

.ggmap01 {
	padding-top: 75%;
}
}
@media screen and (max-width: 480px)  {
.ggmap01 {
	padding-top: 100%;
}
}

