@charset "utf-8";
/* ======================== ﾌﾜｼ｡ ==========================

	[01]:要素リセット
	[02]:共通スタイル
	[03]:リンクスタイル
	[04]:ヘッダー要素

======================================================== */

/* -------------------------[01]:要素リセット*/

html,body,p,ul,ol,li,h1,h2,h3,h4,h5,h6,form,dl,dt,dd { margin:0px; padding:0px; }


@media screen and (min-width:768px){
header {
	border-bottom: #ccc 3px solid;
}
div:after{/*for modern browser*/
	content:".";
	display: block;
	height:0px;
	clear:both;
	line-height:0;
	visibility:hidden;
}


img { border:none; }

ul,li { list-style:none; }
ol li { list-style-type:decimal; list-style-position: inside; }

h1,h2,h3,h4,h5 { font-size: small; font-weight: normal; color: #333; text-align: left; }

.fontS { font-size:80%; line-height:150%; }
.fontM { font-size:90%; line-height:150%; }
.fontL { font-size:120%; line-height:150%; }
.fontX { font-size:140%; line-height:150%; }
.fRed {color:#c00;}
.fRedB {color:#c00; font-weight:bold;}

section .h4-white {
	font-weight: 700;
	padding:10px 15px;
	background: #fff;
	border:#333 1px solid;
	color:#333;
	font-size:120%;
	margin-top:30px;
	margin-bottom:30px;
	text-align:center;
}

/* -------------------------[02]:共通スタイル */

div#container	{ width: 1000px; margin: 4px auto 0px; padding: 0px; position: relative; border-left: 5px solid #FFF; border-right: 5px solid #FFF; background: #FFF; }
.left   { float:left; }
.right  { float:right; }
.clear    { clear:both; }
.center {text-align:center;}
.c930{ color:#930; font-weight: bold;}
.fcc00{ color:#cc0000; font-weight: bold;}


/* -------------------------[03]:リンクスタイル */

a:link    { color:#666; text-decoration:none; }
a:visited { color:#666; text-decoration:none; }
a:hover   { color:#666; text-decoration:underline; opacity: 0.7; }
a:active  { color:#666; text-decoration:underline; }

/* -------------------------[04]:ヘッダー要素 */

div#header	{ width: 1000px; height: 91px; position: relative; padding: 5px 0px 0px; }
div#header h1	{ width: 1000px; height: 15px; font-size: 12px; padding: 0px 0px 12px; text-align: left; color: #664a00; }
div#header h2	{ width: 322px; height: 51px; float: left; }

div#header .headLink	{ position: absolute; top: 5px; right: 0px; }
div#header .headLink a	{ display: block; float: left; background: url(../img/icon_arrow.png) no-repeat 0% 50%; padding: 0px 0px 0px 15px; font-size: 10px; margin-left: 10px; }

div#header .contactBox	{ width: 656px; height: 51px; float: right; }
div#header .contactBox .creditData	{ width: 168px; float: left; }
div#header .contactBox .creditMark	{ width: 118px; float: left; padding: 0px 0px 0px 3px; }
div#header .contactBox .contactData	{ width: 361px; height: 51px; float: right; }

div.mainVisual	{ width: 1000px; }
div.mainVisual div	{ float: left; }
div.mainVisual div.vsl01	{ padding: 0px 5px 5px 0px; }
div.mainVisual div.vsl02	{ padding: 0px 5px 5px 0px; }
div.mainVisual div.vsl03	{ padding: 0px 0px 5px 0px; }
div.mainVisual div.vsl04	{ padding: 0px 5px 5px 0px; }
div.mainVisual div.vsl05	{ padding: 0px 5px 5px 0px; }
div.mainVisual div.vsl06	{ padding: 0px 5px 5px 0px; }
div.mainVisual div.vsl07	{ padding: 0px 0px 5px 0px; }

ul.nvgBox	{ width: 1000px; margin: 0px; padding: 0px; }
ul.nvgBox li	{ float: left; height: 50px; font-size: 0px; line-height: 0px; }
ul.nvgBox li.nvg01{ width: 199px; padding: 0px 1px 0px 0px; }
ul.nvgBox li.nvg02{ width: 199px; padding: 0px 1px 0px 0px; }
ul.nvgBox li.nvg03{ width: 199px; padding: 0px 1px 0px 0px; }
ul.nvgBox li.nvg04{ width: 199px; padding: 0px 1px 0px 0px; }
ul.nvgBox li.nvg05{ width: 200px; padding: 0px 0px 0px 0px; }

div#footer	{ width: 1000px; height: 270px; margin: 0px auto; position: relative; }
div#footer .leftBox	{ width: 440px; float: left; padding: 25px 0px 0px; color: #666; }
div#footer .leftBox .underLogo		{ width: 277px; height: 43px; }
div#footer .leftBox .addressBox	{ width: 430px; padding: 10px 5px; text-align: left; }
div#footer .leftBox .addressBox strong	{ display: block; padding: 10px 0px 0px; }
div#footer .linkList		{ padding: 25px 0px 0px; }
div#footer .linkList ul	{ width: 185px; float: left; }
div#footer .linkList li	{ background: url(../img/icon_arrow2.png) no-repeat 0% 40%; text-align: left; padding: 0px 0px 5px 13px; }
div#footer .linkList li a	{ color: #666; }
div#footer .copyrightBox	{ width: 1000px; font-size: 12px; color: #666; position: absolute; bottom: 10px; text-align: center; }


/* -------------------------[04]:コンテンツ共通要素 */
div#contentsBox	{ width: 1000px; padding: 30px 0px 50px; }


/* -------------------------[04]:サイドカラム要素 */
div#sideBox	{ width: 250px; float: left; }
div#sideBox h3	{ width: 250px; height: 35px; }
div#sideBox .linkListBox	{ background: #f2f1ed; padding: 3px; margin-top: 2px; }
div#sideBox .linkListBox .sideCaps	{ padding: 5px 6px 8px; text-align: left; }
div#sideBox .linkListBox ul	{ background: #FFF; padding: 10px 10px 5px; width: 224px; }
div#sideBox .linkListBox li	{ background: url(../img/icon_arrow2.png) no-repeat 0% 35%; padding: 0px 0px 5px 13px; text-align: left; width: 210px; }
div#sideBox .linkListBox li span	{ font-weight:bold; }
div#sideBox .linkListBox2	{ background: #f2f1ed; padding: 3px; }
div#sideBox .linkListBox2 .sideCaps	{ padding: 5px 6px 8px; text-align: left; }
div#sideBox .linkListBox2 ul	{ background: #FFF; padding: 10px 10px 5px; width: 224px; }
div#sideBox .linkListBox2 li	{ background: url(../img/icon_arrow2.png) no-repeat 0% 35%; padding: 0px 0px 5px 13px; text-align: left; width: 210px; }
div#sideBox .linkListBox2 li span	{ font-weight:bold; }

div#sideBox .sideLink	{ width: 250px; height: 40px; padding: 2px 0px; }
div#sideBox .sideLink2	{ width: 250px; height: 40px; padding: 0px 0px 2px; }

div#sideBox .linkBnr	{ padding: 10px 0px 0px; }


/* -------------------------[04]:共通スタイル */
div.mainCalum	{ width: 730px; float: right;  }
div.mainCalum .hokotateBox	{ background: url(../img/hokotate_back.png) no-repeat; width: 710px; height: 204px; margin-top: 20px; padding: 10px; }
div.mainCalum .hokotateBox .movieBox	{ width: 335px; height: 188px; float: left; padding: 5px 0px 0px 5px; }
div.mainCalum .hokotateBox .imgBox		{ width: 370px; height: 207px; float: right; }
div.mainCalum .underLink		{ border: 3px solid #d4d1c3; padding: 10px; margin-top: 25px; }
div.mainCalum .underLink a		{ background: url(../img/icon_arrow2.png) no-repeat 0% 50%; width: 215px; display: block; float: left; text-align: left; font-size: 14px; padding: 0px 0px 0px 15px; }
div.mainCalum .contactBox		{ width: 730px; height: 100px; margin-top: 25px; }

div.mainCalum .panList	{ display: block; padding: 3px; font-size: 12px; text-align: left; }
div.mainCalum h3	{ width: 730px; height:95px; padding: 0px 0px 20px; }
div.mainCalum h3.sptitle	{ width: 730px; height:256px; padding: 0px 0px 20px; }
div.mainCalum h3.sptitle2	{ width: 730px; height:435px; padding: 0px 0px 20px; }
div.mainCalum h5	{ width: 100%; height:30px; padding: 0px 10px; margin-bottom:10px; font-size:15px; line-height:26px; font-weight:bold; color:#333; border-left:6px solid #16a358; }


div#sideBox .linkBnr iframe	{
    -ms-zoom: 0.83;
    -moz-transform: scale(0.83);
    -moz-transform-origin: 0 0;
    -o-transform: scale(0.83);
    -o-transform-origin: 0 0;
    -webkit-transform: scale(0.83);
    -webkit-transform-origin: 0 0;
}

ol li { font-weight:bold; }
ol li span { display:block; font-weight:normal; }

h3 {
	text-align:center;
}
.nanopeaks_mv { width:730px; }
section { width:1000px; margin:0 auto; }
.panList {
	width:1000px;
	margin:0 auto 10px auto;
	display:block;
}
}

div.error	{ background:#ffcccc; color:#c00; padding:10px 15px; }










table tbody tr td.text-right {
	text-align: right;
}
table tbody tr td.text-center {
	text-align: center;
}
table.table tbody tr td span.strong {
	font-weight: bold;
	color: #55838d;
}

table.table {
	width: 100%;
    margin: 0 auto;
    border-collapse: separate;
    border-spacing: 0px 5px;
}

table.table th,
table.table td {
    padding: 10px;
}

table.table th {
    background: #333;
    vertical-align: middle;
    text-align: left;
    overflow: visible;
    position: relative;
    color: #fff;
    font-weight: normal;
	text-align: center;
}

table.table.table-light th {
    background: #999;
}
table.table thead th {
	font-size: 110%;
}
table.table th.th_title {
	background: #fff;
	color: #333;
	text-align: left;
	font-weight: bold;
	font-size: 110%;
}
table.table th.th_arrow {
    background: #999;
    vertical-align: middle;
    text-align: left;
    overflow: visible;
    position: relative;
    color: #fff;
    font-weight: normal;
	text-align: left;
}

@media screen and (min-width: 768px) {
	table.table tbody th.th_arrow:after {
		left: 100%;
		top: 50%;
		border: solid transparent;
		content: " ";
		height: 0;
		width: 0;
		position: absolute;
		pointer-events: none;
		border-color: rgba(136, 183, 213, 0);
		border-left-color: #999;
		border-width: 10px;
		margin-top: -10px;
	}
}
table.table tbody td input,
table.table tbody td select {
	font-size: 110%;
	padding: 4px;
}
@media screen and (max-width: 767px) and (min-width: 0px){
	table.table-responsive th,table.table-responsive td {
		width: 100%;
		display: table;
		padding: 0.3em 1em !important;
	}
}
/* firefox */
@-moz-document url-prefix() {
    table.table tbody th.th_arrow::after {
        float: right;
        padding: 0;
        left: 30px;
        top: 10px;
        content: " ";
        height: 0;
        width: 0;
        position: relative;
        pointer-events: none;
        border: 10px solid transparent;
        border-left: #999 10px solid;
        margin-top: -10px;
    }
}

table.table td {
    background: #f8f8f8;
    padding-left: 20px;
}
table.table td.row-foot {
	background: #fff;
}
article div.strong {
	font-weight: bold;
	margin: 10px 0;
}
article div.strong strong {
	font-size: 110%;
}
article div.caution {
	color: #666;
}

.nuki_large {
	display: inline-block;
	font-size: 110%;
	font-weight: normal;
	border-radius: 4px;
	min-width:200px;
}
.nuki_large.bg_green {
	background: #336600;
	color: #fff;
}
.nuki_large a {
	display: inline-block;
	width: 100%;
	height: 100%;
	color: #fff;
	text-decoration: none;
	padding: 1em;
}
section.bg_light {
	background: #f4f4f4;
	padding: 30px;
	margin-top: 30px;
}

dl.counter{
  counter-reset:list;
  list-style-type:none;
  font: 118%/1.6 'arial narrow', sans-serif;
  padding:0;
}
dl.counter dt{
  position:relative;
  padding: 0 0 0 45px;
  margin: 14px 0 14px 0px;
  font-weight: bold;
  font-size:118%;
  line-height: 1.6;
  border: dashed 1px transparent;
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
dl.counter dt:first-child{
	margin-top: 5px;
}
dl.counter dt:before{
  counter-increment: list;
  content: counter(list);
  position: absolute;
  left: 0;
  width: 35px;
  height: 35px;
  text-align: center;
  color: #fff;
  line-height:35px;
  background: #5597B6;
  border-radius: 50%;
  top: 50%;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
dl.counter dd{
	padding-left: 20px;
}
section.with-image{
	overflow: auto;
}
section.with-image.image-right .photoBox{
	float: right;
	padding: 0 0 15px 15px;
}
section.with-image.image-left .photoBox{
	float: left;
	padding: 0 15px 15px 0;
}
.sub-visual {
	width:1000px;
	text-align:center;
	margin:0 auto 20px auto;
}
.sub-visual span.caption {
	display:block;
	text-align:right;
	width:100%;
	font-size:80%;
	margin-top:3px;
}
ul.tags {
	margin: 20px 0;
}
ul.tags li {
	display: inline-block;
	background: #999;
	padding: 4px 8px;
	font-size: 93%;
	border-radius: 3px;
	color: #fff;
	margin: 0 5px 5px 0;
}
ul.tags.tags-small {
	margin: 0;
}
ul.tags.tags-small li {
	padding: 2px 4px;
	font-size: 85%;
	border-radius: 2px;
	margin: 0 4px 4px 0;
}
ul.tags.tags-large {
	margin: 0 auto 20px 0;
	text-align: center;
	display: inline-block;
}
ul.tags.tags-large li {
	padding: 8px 16px;
	font-size: 125%;
	border-radius: 4px;
	margin: 0 4px 4px 0;
}

.resultNmb {
    overflow: hidden;
	margin:10px 0;
}
.resultNmb .caps	{ width: 350px; float: left; text-align: left; display: block; font-size: 110%; padding-top: 3px; }
.resultNmb .caps strong	{ background: none; }

.resultNmb ul {
	display: inline-block;
    list-style: none;
    float: right;
}

.resultNmb ul li {
    margin: 0 1px;
	display: inline-block;
}

.resultNmb ul li span,
.resultNmb ul li a {
    display: block;
	font-weight: bold;
    padding: 0.4em 0.8em;
    border-radius: 2px;
}

.resultNmb ul li a {
    background: #EEE;
    color: #333;
    text-decoration: none;
}

.resultNmb ul li a:hover {
    background: #333;
    color: #FFF;
}

a.goto.block-link {
	margin: 5px 0;
	display: inline-block;
}
.goto {
	font-size:93%;
	line-height:1;
	display:inline-block;
	border: #5b5c5c 1px solid;
	padding:4px 4px 4px 8px;
	background: #fff;
}
.goto span {
	position: relative;
	top:1px;
}
.goto i {
	color:#fff;
	font-size:75%;
	background:#5b5c5c;
	padding:4px;
	margin-left:1em;
}
.goto:hover {
	text-decoration:none;
	background:#5b5c5c;
	color:#fff;
	-webkit-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
.goto:hover i {
	color:#fff;
	background:#5b5c5c;
}





@media screen and (min-width:0px) and (max-width:767px){
	.content-main {
		margin-top:50px;
	}
	.sp-inner-hidden {
		display: none;
	}

	.sub-visual {
		width:100%;
		text-align:center;
		margin:1em auto 1em auto;
	}
	.sub-visual img {
		max-width:100%;
		margin: 0 auto;
	}
	.panList {
		width: 100%;
		padding: 1em 1em 2em 1em;
		margin: 0 !important;
		display: block;
		font-size: 88%;
	}
	img,dl,dt,dd {
		max-width: 100% !important;
	}
	section {
		width: 100% !important;
		padding: 1em !important;
	}
	h3 {
		font-size:110%;
		color:#333;
		font-weight:bold;
		letter-spacing:0.2em;
		padding-top:1em;
		padding-bottom:0;
		text-align:center;
		margin-bottom: 1em !important;
	}
	.photoBox img {
		text-align: center;
	}
	section h4.h4-white {
		font-weight: 700;
		padding:10px 15px;
		background: #fff;
		border:#333 1px solid;
		color:#333;
		font-size:120%;
		margin-top:30px;
		margin-bottom:30px;
		text-align:center;
	}

}


a.btn-text {
	display: inline-block;
	width: auto;
	background: #55838d;
	color: #fff;
	padding: 4px 10px;
}
a.btn-text:hover {
	text-decoration: none;
}

.fullsize-image { margin: 1em auto; }


ul.ulMark, ul.ulMark li {
	list-style-type: disc;
	list-style-position: outside;
	margin: 0 0 0 10px;
}
ul.ulCheck li:before {
	font-family: FontAwesome;
	content: "\f00c";
	color: #ccc;
	padding-right: 0.5em;
}
article figure { width: 100%; text-align:center; margin:15px 0 15px 0; padding:0; }
article figure.figure-inline { width: auto; display: inline-block; margin:0; }
article figure.force-bottom-margin { margin-bottom:15px; }
article figure.half { width: 49%; display: inline-block; }
article figure.right { margin-left: 15px; }
article figure.left { margin-right: 15px; }
article figure.flex { width: 33%; display: inline-block; }
article figure figcaption { font-size: 93%; color: #666; }
article span { font-weight: bold; }
article figure.auto-full img { max-width: 100%; }
@media screen and (min-width:0px) and (max-width:767px){
	article figure.right { margin-left: 0; }
	article figure.half { width: 100%; display: block; }
	article figure.figure-inline { width: 100%; display: block; }
	article figure.half img { max-width: 100%; }
	article figure.figure-inline img { max-width: 100%; }
	article figure.flex { width: 100%; display: block; }
	article figure.flex img { max-width: 100%; }
}
@media screen and (min-width:768px){
	article figure.half img { max-width: 360px; }
	article figure.figure-inline img { max-width: 240px; }
	article figure.figure-large img { max-width: 400px; }
	article figure.flex img { max-width: 300px; }
}
dl.merit { margin: 10px 0; background: #f0f0f0; padding:1em; }
dl.merit dt { font-weight:bold; font-size:110%; margin-top: 10px; }
dl.merit dt:first-child { margin-top: 0; }
dl.merit dd:before {
	font-family: FontAwesome;
	content: "\f00c";
	color: #ccc;
	padding-right: 0.5em;
}

table.table-bordered {
	border: 2px #999 solid;
	border-collapse: collapse;
	width: 100%;
}
table.table-bordered th,table.table-bordered td {
	border: 1px #999 solid;
	padding: 0.5em;
}
table.table-bordered th {
	font-weight: bold;
	background: #ccc;
}
