@charset "utf-8";
/* リセット
----------------------------------------------------------------------------------------------*/
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}

/* remember to define focus styles! */
:focus {
  outline: 0;
}

/* ベース
----------------------------------------------------------------------------------------------*/
body {
	font-size: 14px;
	color: #4b4b4b;
	line-height: 1.5em;
	font-family: Arial, Helvetica, sans-serif;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
@media screen and (max-width: 767px) {
	body {
		font-size: 13px;
	}
}
a {
	color:#336699;
	text-decoration: none;
}
a:focus { -moz-outline-style: none; }
a:hover, a:active, a:focus {
	color: #83cee5;
	text-decoration: underline;
}
b {
	font-weight: 700;
}
strong {
	color: #c0151b;
}

/* 見出し
----------------------------------------------------------------------------------------------*/
.head2,
.head3 {
	color: #1c90bd;
	line-height: 1.1em;
	font-weight: 700;
	border: 1px solid #cfcfcf;
	border-bottom: 3px solid #1c90bd;
	border-radius: 4px 4px 0 0;
}
.head2 {
	margin: 10px 0 20px;
	padding: 9px 15px 7px;
	font-size: 1.667em;
	background: #f1fafe;
}
.head3 {
	margin: 30px 0 15px;
	padding: 7px 15px 6px;
	font-size: 1.3em;
	background: #fff;
}
.head4 {
	padding-left: 8px;
	color: #1c90bd;
	font-size: 1.25em;
	font-weight: 700;
	line-height: 1.3em;
	margin: 0 0 15px;
	border-left: solid 4px #1c90bd;
}
.head5 {
	color: #1c90bd;
	font-size: 1.25em;
	font-weight: 700;
	line-height: 1.25em;
	margin: 0 0 5px;
}
.head-dots {
	position: relative;
	font-weight: 700;
}
.head-dots span {
	display: block;
	padding-left: 15px;
}
.head-dots:before {
	content: "";
	display: block;
	position: absolute;
	top: 0.3em;
	width: 10px;
	height: 10px;
	margin-right: 8px;
	background: #1c90bd;
	border-radius: 50%;
}
.head3 img {
	float: left;
	margin-top: -0.15em;
	margin-right: 5px;
}
.head3 img + span {
	display: block;
	overflow: hidden;
}
.head3 a,
.head4 a,
.head5 a {
	color: #1c90bd;
}
.col > .head3 {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.head2{
		margin-bottom: 15px;
		padding: 8px;
	}
	.head3 {
		padding: 6px 8px;
	}
}

/* リスト
----------------------------------------------------------------------------------------------*/
.list-disc > li {
	position: relative;
	padding-left: 1em;
}

.list-disc > li:before {
	content: '・';
	left: -3px;
	font-size: 1em;
	position: absolute;
}

.list-decimal > li {
	padding-left: 1.2em;
	text-indent: -1.2em;
	list-style-type: decimal;
	list-style-position: inside;
}
.list-abc.type-a > li {
  padding-left: 1.2em;
  text-indent: -1.2em;
  list-style-type: upper-latin;
  list-style-position: inside;
}
.list-other > li > span {
	display: table-cell;
}
.list-other > li > span.mark {
	padding-right: 5px;
}
.list-disc > li > ul,
.list-decimal > li > ul,
.list-abc > li > ul,
.list-other > li > ul {
	margin-bottom: 0;
}
/*.list-disc li a,
.list-decimal li a,
.list-abc li a,
.list-other li a {
	display: inline-block;
}*/

/* リンク
----------------------------------------------------------------------------------------------*/
.link-list a {
	display: inline-block;
	position: relative;
	padding-left: 10px;
}
.link-list a:before {
	content: "";
	display: block;
	position: absolute;
	top: 0.45em;
	left: 0;
	width: 0;
	height: 0;
	padding-right: 5px;
	border-style: solid;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #1c8fbd;
}
.link-list li {
	margin-bottom: 5px;
}
.link-list.float {
	overflow: hidden;
}
.link-list.float li {
	float: left;
	margin-right: 20px;
}
.link-list.float li:last-child {
	margin-right: 0;
}
.icon_window,
.icon_pdf {
	margin: -2px 4px 0;
	vertical-align: middle;
}
.opacity:hover {
	opacity: 0.7;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);  /* For IE 5-7 */
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)"; /* For IE 8 */
}

/* ボタン
----------------------------------------------------------------------------------------------*/
.btn {
	display: inline-block;
	position: relative;
	min-width: 90px;
	padding: 10px 20px;
	color: #fff;
	text-align: center;
	background: #1c90bd;
}
.btn:before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 50%;
	width: 0;
	height: 0;
	margin-top: -5px;
	margin-right: 10px;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #ffffff;
}
a.btn:hover {
	color: #fff;
	text-decoration: none;
	background: #279cc9;
	opacity: 1;
}
.btn span {
	padding-left: 15px;
}
.btn-list {
	margin-bottom: 10px;
	letter-spacing: -0.4em;
}
.btn-list li {
	display: inline-block;
	margin: 0 5px 10px 5px;
	letter-spacing: normal;
}
@media screen and (max-width: 767px) {
	.btn {
		display: block;
		max-width: 400px;
		margin: auto;
	}
	.btn-list li {
		display: block;
		margin: 0 auto 20px auto;
	}
}

/* 注記
----------------------------------------------------------------------------------------------*/
.list-notice {
  margin-bottom: 20px;
  font-size: 0.85em;
}
.list-notice > li {
  position: relative;
  padding-left: 1em;
  line-height: 1.4em;
}
.list-notice.en > li {
  position: relative;
  padding-left: 1em;
}
.list-notice > li .mark {
  position: absolute;
  top: 0;
  left: 0;
}
.list-notice > li strong {
  font-weight: normal;
}
.list-notice > li > .list-notice {
  margin: 0;
}
.list-notice.number > li {
  padding-left: 2.5em;
}
.list-notice.en.number > li {
  padding-left: 1.8em;
}
[data-font-size="large"] .list-notice {
  font-size: 14px;
  font-size: 1.4rem;
}

/* グリッド
----------------------------------------------------------------------------------------------*/
.col2,
.col2,
.col3,
.col3 ,
.col4,
.col4,
.col5,
.col5 {
  overflow: hidden;
}
.col2 > .col,
.col2 > li,
.col3 > .col,
.col3 > li,
.col4 > .col,
.col4 > li,
.col5 > .col,
.col5 > li {
  float: left;
}
.col2 > .col > *:last-child,
.col2 > li > *:last-child,
.col3 > .col > *:last-child,
.col3 > li > *:last-child,
.col4 > .col > *:last-child,
.col4 > li > *:last-child,
.col5 > .col > *:last-child,
.col5 > li > *:last-child {
  margin-bottom: 0;
}
.col2 > .col,
.col3 > .col,
.col4 > .col,
.col5 > .col {
  margin: 0 0 20px 2.9703%;
}
.col2 > li,
.col3 > li,
.col4 > li,
.col5 > li {
  margin-left: 2.9703%;
}
.col2.col-img > .col,
.col2.col-img > li,
.col3.col-img > .col,
.col3.col-img > li,
.col4.col-img > .col,
.col4.col-img > li,
.col5.col-img > .col,
.col5.col-img > li {
  margin-left: 0.9901%;
}

.col2 {
  margin-left: -2.9703%;
}
.col2 > * {
  width: 47.0297%;
}
.col2 > *:nth-child(2n+1) {
  clear: both;
}

.col2.col-img {
  margin-left: -0.9901%;
}
.col2.col-img > * {
  width: 49.0099%;
}

.col3 {
  margin-left: -2.9703%;
}
.col3 > * {
  width: 30.36304%;
}
.col3 > *:nth-child(3n+1) {
  clear: both;
}

.col3.col-img {
  margin-left: -0.9901%;
}
.col3.col-img > * {
  width: 32.34323%;
}

.col4 {
  margin-left: -2.9703%;
}
.col4 > * {
  width: 22.0297%;
}
.col4 > *:nth-child(4n+1) {
  clear: both;
}

.col4.col-img {
  margin-left: -0.9901%;
}
.col4.col-img > * {
  width: 24.0099%;
}

.col5 {
  margin-left: -2.9703%;
}
.col5 > * {
  width: 17.0297%;
}
.col5 > *:nth-child(5n+1) {
  clear: both;
}

.col5.col-img {
  margin-left: -0.9901%;
}
.col5.col-img > * {
  width: 19.0099%;
}

@media screen and (max-width: 767px) {
	.col2 > .col,
	.col2 > li,
	.col3 > .col,
	.col3 > li,
	.col4 > .col,
	.col4 > li,
	.col5 > .col,
	.col5 > li {
	  float: none;
	  height: auto !important;
	}
	.col2 > .col > *:last-child,
	.col2 > li > *:last-child,
	.col3 > .col > *:last-child,
	.col3 > li > *:last-child,
	.col4 > .col > *:last-child,
	.col4 > li > *:last-child,
	.col5 > .col > *:last-child,
	.col5 > li > *:last-child {
	  margin-bottom: 20px;
	}
	.col2 > .col,
	.col3 > .col,
	.col4 > .col,
	.col5 > .col {
	  margin: 0 0 20px 0;
	}
	.col2 > li,
	.col3 > li,
	.col4 > li,
	.col5 > li {
	  margin-left: 0;
	}
	.col2.col-img > .col,
	.col2.col-img > li,
	.col3.col-img > .col,
	.col3.col-img > li,
	.col4.col-img > .col,
	.col4.col-img > li,
	.col5.col-img > .col,
	.col5.col-img > li {
	  margin-left: 0;
	}

	.col2 {
	  margin-left: 0;
	}
	.col2 > * {
	  width: 100%;
	}

	.col2.col-img {
	  margin-left: 0;
	}
	.col2.col-img > * {
	  width: 100%;
	}

	.col3 {
	  margin-left: 0;
	}
	.col3 > * {
	  width: 100%;
	}

	.col3.col-img {
	  margin-left: 0;
	}
	.col3.col-img > * {
	  width: 100%;
	}

	.col4 {
	  margin-left: 0;
	}
	.col4 > * {
	  width: 100%;
	}
	.col4.col-img {
	  margin-left: 0;
	}
	.col4.col-img > * {
	  width: 100%;
	}

	.col5 {
	  margin-left: 0;
	}
	.col5 > * {
	  width: 100%;
	}

	.col5.col-img {
	  margin-left: 0;
	}
	.col5.col-img > * {
	  width: 100%;
	}
}

/* 画像
----------------------------------------------------------------------------------------------*/
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

img[height],
img[width] {
  max-width: none;
}

.img-full {
  margin-bottom: 20px;
  text-align: center;
}
.img-full.scroll img {
  max-width: none;
}

[class^="img-"] .caption {
  margin: 7px 0 0;
  font-size: 0.9em;
  text-align: center;
}
[class^="img-"] .caption + img {
  margin-top: 7px;
}
.img-caption > .col > .caption {
  margin-top: 0;
  text-align: left;
}

.col2-img,
.col3-img,
.col4-img,
.col5-img {
  margin-bottom: 20px;
  display: table;
  width: 101%;
  margin-left: -1%;
}
.col2-img > .col,
.col3-img > .col,
.col4-img > .col,
.col5-img > .col {
  display: table-cell;
  vertical-align: bottom;
}
.col2-img > .col .img-full,
.col3-img > .col .img-full,
.col4-img > .col .img-full,
.col5-img > .col .img-full {
  margin-bottom: 0;
}

.col2-img > .col {
  width: 49.50495%;
}
.col2-img > .col .img-full {
  padding-left: 2%;
}

.col3-img > .col {
  width: 32.67327%;
}
.col3-img > .col .img-full {
  padding-left: 3.0303%;
}

.col4-img > .col {
  width: 24.25743%;
}
.col4-img > .col .img-full {
  padding-left: 4.08163%;
}

.col5-img > .col {
  width: 19.20792%;
}
.col5-img > .col .img-full {
  padding-left: 5.15464%;
}

[class^="img-"] .caption + img {
  margin-top: 7px;
}

.img-caption > .col > .caption {
  margin-top: 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
	.col2-img > .col,
	.col3-img > .col,
	.col4-img > .col,
	.col5-img > .col {
	  display: block;
	  width: 100%;
	  margin: auto auto 20px;
	}
}

/* 画像とテキスト
----------------------------------------------------------------------------------------------*/
.img-left,
.img-right {
  margin-bottom: 20px;
  overflow: hidden;
}

.img-left > .img {
  float: left;
  margin-right: 15px;
}

.img-right > .img {
  float: right;
  margin-left: 15px;
}

.img-left > .col > *:last-child,
.img-right > .col > *:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
	.img-left,
	.img-right {
		margin-bottom: 20px;
	}
	.img-left > .img,
	.img-right > .img {
		margin: 0;
		float: none;
		text-align: center;
	}
	.img-left > .col,
	.img-right > .col {
		margin-top: 20px;
		padding-top: 0;
	}
	.img-left.img-caption > .col,
	.img-right.img-caption > .col {
		margin-top: 7px;
	}
	.img-left.img-caption > .col > .caption,
	.img-right.img-caption > .col > .caption {
		text-align: center;
	}
}

/* テーブル
----------------------------------------------------------------------------------------------*/
table {
	table-layout: fixed;
}
.tbl-container {
	margin-bottom: 20px;
}
.tbl,
.tbl-02 {
	width: 100%;
}
.tbl-container th,
.tbl-container td {
	padding: 11px 13px;
	border: 1px solid #cfcfcf;
}
.tbl-container th {
	color: #1c90bd;
	font-weight: 700;
	text-align: left;
	vertical-align: top;
	background: #f5f5f5;
}
.tbl th,
.tbl td > *,
.tbl-02 th,
.tbl-02 td > * {
	margin-bottom: 0;
}
.tbl-container thead th {
	color: #fff;
	text-align: center;
	vertical-align: middle;
	background: #1c90bd;
}
@media screen and (max-width: 767px) {
	.scroll {
		overflow-x: scroll;
	}
	.scroll .tbl-container,
	.scroll .tbl-02 {
		width: 767px;
	}
}
@media screen and (max-width: 767px) {
	.tbl-container th,
	.tbl-container td {
		padding: 10px 8px;
	}
	.tbl-container .tbl th,
	.tbl-container .tbl td {
		width: auto !important;
	}
	.tbl-container .tbl th {
		display: block;
		padding: 6px 15px 5px;
		border-top: none;
		border-bottom: none;
		width: auto !important;
	} 
	.tbl-container .tbl tr:first-child th {
		border-top: 1px solid #cfcfcf;
	}
	.tbl-container .tbl td {
		display: block;
		padding: 12px 15px;
	}
	.tbl-container .tbl-02 th {
		padding: 6px 15px 5px;
	}
	.tbl-container .tbl-02 td {
		padding: 12px 8px;
	}
}

/* パネル
----------------------------------------------------------------------------------------------*/
.panel-01,
.panel-02,
.panel-03,
.panel-04,
.panel-05 {
	margin-bottom: 20px;
	padding: 20px 30px;
}
.panel-01 {
	background: #e1f3fb;
}
.panel-02 {
	background: #f7f7f7;
}
.panel-03 {
	border: 3px solid #cccccc;
}
.panel-04 {
	border: 2px solid #1c90bd;
}
.panel-05 {
	border: 2px solid #e30f0f;
}
.panel-01 *:last-child,
.panel-02 *:last-child,
.panel-03 *:last-child,
.panel-04 *:last-child,
.panel-05 *:last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {
	.panel-01,
	.panel-02,
	.panel-03,
	.panel-04,
	.panel-05 {
		padding: 20px;
	}
}

/* 区切り線
----------------------------------------------------------------------------------------------*/
.separator01 {
	padding-top: 20px;
	border-top: 1px solid #dddddd;
}
.separator02 {
	padding-top: 20px;
	border-top: 1px dotted #1aaee5;
}

/* クリア
-----------------------------------------------------------------------------------------------*/
.clear{
clear:both;
}
.fix:after{
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}
* html .fix{
	display:inline-block;
}
*:first-child+html .fix{
	display:inline-block;
}

/* その他
----------------------------------------------------------------------------------------------*/
p, ul, ol {	margin-bottom: 20px; }
.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-25 { margin-top: 25px !important; }
.mt-30 { margin-top: 30px !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-25 { margin-bottom: 25px !important; }
.mb-30 { margin-bottom: 30px !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-25 { margin-right: 25px !important; }
.mr-30 { margin-right: 30px !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-25 { margin-left: 25px !important; }
.ml-30 { margin-left: 30px !important; }
.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-25 { padding-top: 25px !important; }
.pt-30 { padding-top: 30px !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-25 { padding-bottom: 25px !important; }
.pb-30 { padding-bottom: 30px !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-25 { padding-right: 25px !important; }
.pr-30 { padding-right: 30px !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-25 { padding-left: 25px !important; }
.pl-30 { padding-left: 30px !important; }
.right { text-align: right !important; }
.left { text-align: left !important; }
.center { text-align: center !important; }
.top { vertical-align: top !important; }
.middle { vertical-align: middle !important; }
.bottom { vertical-align: bottom !important; }
.color-blue { color: #1c90bd; }
.color-white { color: #fff; }
.color-red { color: #c0151b; }
.font-12 {font-size: 0.800em !important; }
.font-14 { font-size: 1em !important; }
.font-15 { font-size: 1.071em !important; }
.font-16 { font-size: 1.143em !important; line-height: 1.4em;}
.font-18 { font-size: 1.200em !important; line-height: 1.4em;}
.font-20 { font-size: 1.429em !important; line-height: 1.4em;}
.font-24 { font-size: 1.600em !important; line-height: 1.4em;}
.font-nomal { font-weight: normal !important; }
.w-5 { width: 5% !important; }
.w-10 { width: 10% !important; }
.w-15 { width: 15% !important; }
.w-20 { width: 20% !important; }
.w-25 { width: 25% !important; }
.w-30 { width: 30% !important; }
.w-35 { width: 35% !important; }
.w-40 { width: 40% !important; }
.w-45 { width: 45% !important; }
.w-50 { width: 50% !important; }
.w-55 { width: 55% !important; }
.w-60 { width: 60% !important; }
.w-65 { width: 65% !important; }
.w-70 { width: 70% !important; }
.w-75 { width: 75% !important; }
.w-80 { width: 80% !important; }
.w-85 { width: 85% !important; }
.w-90 { width: 90% !important; }
.w-95 { width: 95% !important; }
.w-100 { width: 100% !important; }
.inline { display: inline; }
.iblock { display: inline-block; }
.sp_block { display: none; }
.hidden { overflow: hidden;}
.long_url { word-break: break-all; }
.w944 {
	max-width: 944px;
	margin: auto;
}
@media screen and (max-width: 960px) {
	.sp_block {
		display: block;
	}
	.pc_block {
		display: none;
	}
	.w944 {
		width: 95%;
	}
}

@media screen and (max-width: 767px) {
	.heightLine .sp-auto,
	.heightLine-1.sp-auto,
	.heightLine-2.sp-auto,
	.heightLine-3.sp-auto,
	.heightLine-4.sp-auto,
	.heightLine-5.sp-auto,
	.heightLine-6.sp-auto,
	.heightLine-7.sp-auto,
	.heightLine-8.sp-auto,
	.heightLine-9.sp-auto,
	.heightLine-10.sp-auto {
		height: auto !important;
	}
}



