@charset "UTF-8";
@import "common.pc.css";

/* ---------------------------------------------------------
	CSS Document hedar_navi
--------------------------------------------------------- */
#headar_navi {
	position: absolute;
	top: 20px;
	right: 10px;
	/* width: 480px; */
}

#hnavi li {
	display: inline-block;
	*display: inline;
	*zoom: 1;
	vertical-align: top;
	margin-left: 40px;
	font-size: 18px;
	/* line-height: 60px; */
}

#hnavi li.hnavi a {
	text-decoration: none;
	color: #394350;
	position: relative;
}

#hnavi li.hnavi a:before {
	content: "";
	width: 0;
	height: 0;
	margin-top: -5px;
	border: solid 5px transparent;
	border-left: solid 7px #394350;
	position: absolute;
	top: 50%;
	left: -12px;
}

#lang_btn {
	width: 120px;
	border: 1px solid #394350;
	border-radius: 50px;
}
#lang_btn p {
	line-height: 30px;
	font-size: 18px;
	color: #394350;
	text-align: center;
	width: auto;
	margin-bottom: 0px;
}
#lang_btn a {
	display: inline-block;
	margin: auto 8px;
	color: #394350;
	text-decoration: none;
}


/* ---------------------------------------------------------
	CSS Document h2
--------------------------------------------------------- */

h2 {
	margin-bottom: 50px;
	text-align: left;
	font-weight: bold;
	font-size: 22px;
	line-height: 50px;
	color: #0995e9;
}

h2 span:nth-of-type(1) {
	display: inline-block;
	vertical-align: top;
	width: 54px;
	height: 54px;
	margin-right: 30px;
	background: #0995e9;
	text-align: center;
	font-family: Arial, sans-serif;
	font-weight: normal;
	font-size: 56px;
	line-height: 54px;
	color: #fff;
}

h2 span:nth-of-type(2) {
	font-size: 41px;
}

/* ---------------------------------------------------------
	CSS Document about
--------------------------------------------------------- */

#about {
	margin-bottom: 100px;
}

#about .section {
	width: 940px;
	margin: 0 auto 70px;
	text-align: left;
}

#about .w560 {
	width: 630px;
}

#about h3 {
	margin-bottom: 15px;
	padding: 0 0 20px;
	border-bottom: solid 1px #656565;
	text-align: center;
	font-weight: normal;
	font-size: 34px;
	line-height: 1;
}

#about h3 span {
	display: block;
	margin-bottom: 15px;
	font-family: Arial, sans-serif;
	font-size: 16px;
	letter-spacing: 1px;
	color: #55a40f;
}

#about p {
	font-size: 19px;
}

#about p span {
	text-align: left;
	color: #d6083e;
}

#about p small {
	font-size: 16px;
}

/* ---------------------------------------------------------
	CSS Document work
--------------------------------------------------------- */

#work {
	margin-bottom: 100px;
}

#work .anchor {
	margin: -20px 0 40px;
	text-align: center;
	counter-reset: my-counter;
	font-size: 0;
}

#work .anchor li {
	display: inline-block;
	vertical-align: top;
	width: 460px;
	margin: 5px 0;
	text-align: left;
	font-size: 18px;
	line-height: 22px;
	position: relative;
}

#work .anchor li:before {
	float: left;
	content: counter(my-counter);
	counter-increment: my-counter;
	width: 22px;
	height: 22px;
	margin-left: -30px;
	-webkit-border-radius: 22px;
	border-radius: 22px;
	border: solid 1px #ccc;
	text-align: center;
}

#work .anchor li:nth-child(even) {
	width: 300px;
}

#work .anchor a {
	color: #555;
}

#work .anchor a:hover {
	color: #55a40f;
}

#work .section {
	width: 940px;
	margin: 0 auto 100px;
	text-align: left;
}

#work h3 {
	margin-bottom: 15px;
	padding: 0 0 20px;
	border-bottom: solid 1px #656565;
	font-weight: bold;
	font-size: 31px;
	line-height: 1;
}

#work p {
	font-size: 20px;
	color: #d6083e;
}

#work .clearfix {
	margin-top: 40px;
}

#work .w390 {
	width: 376px;
}

#work .w560 {
	width: 540px;
}

#work dl {
	text-align: left;
	font-size: 16px;
}

#work dt {
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 19px;
	line-height: 1;
	color: #55a40f;
}

#work dt:not(:first-of-type) {
	margin-top: 10px;
}

#work_02 .w390 p {
	margin-top: 10px;
	font-size: 15px;
	line-height: 1.6;
}

#work_03 .clearfix {
	margin-bottom: 15px;
}

#work_03 p span {
	display: inline-block;
	vertical-align: top;
	font-size: 16px;
	line-height: 1.6;
	color: #555;
}

#work_04 .w650 {
	width: 700px;
}

#work_04 .w210 {
	width: 220px;
}

#work_04 .w210 ol {
	counter-reset: my-counter;
}

#work_04 .w210 li {
	height: 58px;
	padding-left: 30px;
	-webkit-border-radius: 3px;
	border-radius: 3px;
	background: #76b14d;
	font-size: 13px;
	line-height: 54px;
	color: #fff;
	position: relative;
}

#work_04 .w210 li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	-webkit-border-radius: 18px;
	border-radius: 18px;
	background: #fff;
	text-align: center;
	font-weight: bold;
	line-height: 18px;
	color: #76b14d;
	position: absolute;
	top: 50%;
	left: 8px;
}

#work_04 .w210 li:nth-of-type(1):before {
	color: #4a78c7;
}

#work_04 .w210 li:nth-of-type(2):before {
	color: #49bf92;
}

#work_04 .w210 li:nth-of-type(1):after,
#work_04 .w210 li:nth-of-type(2):after {
	content: '';
	width: 100%;
	height: 24px;
	background: url(../images/work_01.png) no-repeat top;
	position: absolute;
	bottom: -30px;
	left: 0;
}

#work_04 .w210 li:nth-of-type(2):after {
	background-image: url(../images/work_02.png);
}

#work_04 .w210 li:nth-of-type(1) {
	margin-bottom: 36px;
	background: #4a78c7;
}

#work_04 .w210 li:nth-of-type(2) {
	margin-bottom: 36px;
	background: #49bf92;
}

#work_04 .w210 li span {
	display: inline-block;
	vertical-align: middle;
	line-height: 1.3;
}

/* ---------------------------------------------------------
	CSS Document spec
--------------------------------------------------------- */

#spec .dl {
	width: 940px;
	margin: 0 auto 100px;
}

#spec h3 {
	margin-bottom: 15px;
	padding: 0 0 20px;
	border-bottom: solid 1px #656565;
	text-align: left;
	font-weight: bold;
	font-size: 31px;
	line-height: 1;
}

#spec dl {
	padding: 15px 0;
	border-bottom: dotted 1px #b8b8b8;
	text-align: left;
	font-size: 0;
}

#spec dl:last-of-type {
	border-bottom: 0;
}

#spec dt {
	display: inline-block;
	vertical-align: top;
	width: 120px;
	font-size: 19px;
}

#spec dd {
	display: inline-block;
	vertical-align: top;
	width: 820px;
	font-size: 19px;
}

#spec dd li {
	margin-left: 1em;
	text-indent: -1em;
}

/* ---------------------------------------------------------
	CSS Document setup
--------------------------------------------------------- */

#setup .dl {
	width: 940px;
	margin: 0 auto 100px;
}

#setup h3 {
	padding: 0 0 20px;
	border-bottom: solid 1px #656565;
	text-align: left;
	font-weight: bold;
	font-size: 31px;
	line-height: 1;
}

#setup h3 span {
	font-size: 20px;
}

#setup dl {
	margin-top: 40px;
	text-align: left;
	font-size: 19px;
}

#setup dt {
	margin-bottom: 10px;
	font-weight: bold;
	line-height: 1;
	color: #55a40f;
}

#setup dd {
	padding-left: 1.1em;
}

/* ---------------------------------------------------------
	CSS Document mokuji
--------------------------------------------------------- */

#mokuji table {
	width: 940px;
	margin: 0 auto 100px;
}

#mokuji caption {
	padding: 0 0 20px;
	border-bottom: solid 1px #656565;
	text-align: left;
	font-weight: bold;
	font-size: 31px;
	line-height: 1;
}

#mokuji th:first-of-type {
	padding: 20px 50px;
	text-align: left;
	font-weight: bold;
	font-size: 19px;
}

#mokuji th:last-of-type {
	width: 170px;
	text-align: center;
	font-weight: bold;
	font-size: 19px;
}

#mokuji td {
	padding: 10px;
	font-size: 19px;
	line-height: 1;
}

#mokuji td:first-of-type {
	padding: 10px 50px;
	text-align: left;
}

#mokuji td:last-of-type {
	text-align: center;
}

/* ---------------------------------------------------------
	CSS Document banner
--------------------------------------------------------- */

#banner li {
	margin-bottom: 50px;
}

#banner li:last-of-type {
	margin-bottom: 100px;
}

#banner li a {
	display: block;
	height: 90px;
	padding-right: 30px;
	background: #0995e9 url(../images/banner_03.png) no-repeat 94%;
	background-size: 60px auto;
	text-decoration: none;
	font-size: 34px;
	line-height: 90px;
	color: #fff;
}

#banner li a:hover {
	opacity: 0.8;
}

#banner li span {
	display: inline-block;
	vertical-align: top;
	font-size: 42px;
}

#banner li:first-of-type a {
	font-size: 24px;
	background-image: url(../images/banner_01.png);
}

#banner li:first-of-type span {
	margin-right: 10px;
	padding-right: 100px;
	background: url(../images/h_hakoniwa.png) no-repeat right;
	background-size: 90px auto;
}

#banner li:last-of-type a {
	font-size: 24px;
	background-image: url(../images/banner_02.png);
}
