@charset "utf-8";
/* ===================================================================
  pure-g
=================================================================== */
.pure-g > * > *:first-child{
	margin-top: 0;
}
.pure-g--box {
	margin: -0.5em;
}
.pure-g--box > * {
	padding: 0.5em;
}
.pure-g--box > *:first-child {
	margin-top: 0;
}
.pure-g--box > *:last-child {
	margin-bottom: 0;
}
.pure-g--box > *{
	box-sizing: border-box;
}

.pure-g--box--margin-lg{
	margin: -1em;
}
.pure-g--box--margin-lg > * {
	padding: 1em;
}

.pure-g--box--margin-md{
	margin: -0.25em;
}
.pure-g--box--margin-md > * {
	padding: 0.25em;
}

.pure-g--box--margin-sm{
	margin: -2px;
}
.pure-g--box--margin-sm > * {
	padding: 2px;
}

.pure-g--box-border {
	margin: 1em 0 1em 1px;
}
.pure-g--box-border > * {
	margin: -1px 0 0 -1px;
	padding: 5%;
	border: #e2e7ec 1px solid;
}
.pure-g--box-border > *:first-child {
	margin-top: -1px;
}
.pure-g--box-card {
	margin: 1em -.6em;
}
.pure-g--box-card > * {
	padding: .6em;
}
.pure-g--box-card--margin-lg{
	margin: -1em;
}
.pure-g--box-card--margin-lg > * {
	padding: 1em;
}

.pure-g--box-card__margin {
	height: -webkit-calc(100% - 2em - 2px);
	height: calc(100% - 2em - 2px);
	padding: 1em;
	border: #e2e7ec 1px solid;
	border-radius: 6px;
	background: #fff;
}
.pure-g--box-card__margin--lg{
	height: -webkit-calc(100% - 4em - 2px);
	height: calc(100% - 4em - 2px);
	padding: 2em;
}
.pure-g--box-card__margin--justify-center {
	display: flex;
	justify-content: center;
	text-align: center;
}
.pure-g--box-card__margin--align-center {
	display: flex;
	align-items: center;
}
.pure-g--box-card__margin > *:first-child {
	margin-top: 0;
}
.pure-g--box-card__margin > *:last-child {
	margin-bottom: 0;
}
.pure-g--justify-center {
	justify-content: center;
}
.pure-g--justify-end {
	justify-content: flex-end;
}
.pure-g--align-center {
	align-items: center;
}
@media screen and (min-width: 768px) {
	.pure-g--box {
		margin: -1em;
	}
	.pure-g--box > * {
		padding: 1em;
	}
	.pure-g--box--margin-lg{
		margin: -1.5em;
	}
	.pure-g--box--margin-lg > * {
		padding: 1.5em;
	}
	.pure-g--box--margin-md{
		margin: -.5em;
	}
	.pure-g--box--margin-md > * {
		padding: .5em;
	}
	.pure-g--box--margin-sm{
		margin: -1px;
	}
	.pure-g--box--margin-sm > * {
		padding: 1px;
	}
	.pure-g--box-border {
		margin: 2em 0 2em 1px;
	}
	.pure-g--box-border > * {
		padding: 2em;
	}
	.pure-g--box-card {
		margin: 2em -.6em;
	}
	.pure-g--box-card--margin-lg{
		margin: -1.5em;
	}
	.pure-g--box-card--margin-lg > * {
		padding: 1.5em;
	}
	.pure-g--box-card__margin {
		height: -webkit-calc(100% - 4em - 2px);
		height: calc(100% - 3.2em - 2px);
		padding: 1.6em;
	}
	.pure-g--box-card__margin--lg {
		height: -webkit-calc(100% - 4em - 2px);
		height: calc(100% - 6em - 2px);
		padding: 3em;
	}
}
/* ===================================================================
  display
=================================================================== */
.display-pc {
	display: none;
}
.display-sp {
	display: block;
}

@media screen and (min-width: 768px) {
	.display-sp {
		display: none;
	}
	.display-pc {
		display: block;
	}
}

/* ===================================================================
  headding (contents)
=================================================================== */
.contents__header{
	line-height: 1.4;
	margin: 2em 0 1em 0;
	position: relative;
}
.contents__header > *{
	letter-spacing: 2px;
}
.contents__header::after {
	content: "";
	display: block;
	clear: both;
}
.contents__header--center{
	text-align: center;
}
.contents__header__sub {
	font-size: 1.25rem;
	font-weight: normal;
	display: block;
}

@media screen and (min-width: 768px) {
	.contents__header{
		letter-spacing: 2px;
	}
}
/* contents__header--lead
-------------------------------------------------------------------- */
.contents__header--lead{
	font-size: 1em;
	margin-top: 0;
}
@media screen and (min-width: 768px) {
	.contents__header--lead{
		font-size: 1.25em;
		text-align: center;
	}
}
/* header level
-------------------------------------------------------------------- */
.contents__header--Lv1,
.contents__header--Lv2{ /* 28px */
	font-size: 1.75rem;
}
.contents__header--Lv3,
.contents__header--Lv4{ /* 22px */
	font-size: 1.375rem;
}
.contents__header--Lv5,
.contents__header--Lv6{ /* 16px */
	font-size: 1rem;
}

@media screen and (min-width: 768px) {
	.contents__header--Lv1{ /* 38px */
		font-size: 2.375rem;
	}
	.contents__header--Lv2{ /* 34px */
		font-size: 2.125rem;
	}
	.contents__header--Lv3{ /* 30px */
		font-size: 1.875rem;
	}
	.contents__header--Lv4{ /* 26px */
		font-size: 1.625rem;
	}
	.contents__header--Lv5{ /* 22px */
		font-size: 1.375rem;
	}
	.contents__header--Lv6{ /* 16px */
		font-size: 1rem;
	}
}

/* header panel
-------------------------------------------------------------------- */
.contents__header--panel,
.contents__header--panelColor,
.contents__header--panelAccent,
.contents__header--panelBorder,
.contents__header--panelMarker{
	padding: .6em 1em;
	border: 1px solid #cecece;
	border-radius: .2em;
	background: #fff;
}
.contents__header--panelColor{
	background: #444;
	color: #fff;
}
.contents__header--panelAccent{
	border-left: .2em solid #444;
}
.contents__header--panelBorder{
	border-bottom: 3px solid #444;
}
.contents__header--panelMarker{
	padding-left: 1.8em;
}
.contents__header--panelMarker::before {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	left: 1em;
	height: 0;
	width: 0;
	border-style: solid;
	border-width: .3em 0 .3em .4em;
	border-color: transparent transparent transparent #444;
	margin: auto auto auto 0
}

/* header border
-------------------------------------------------------------------- */
.contents__header--border,
.contents__header--borderAccent,
.contents__header--borderMarker,
.contents__header--borderDoted{
	padding-bottom: .8em;
	border-bottom: 1px solid #cecece;
}
.contents__header--borderAccent{
	border-bottom-color: #cecece !important;
}
.contents__header--borderAccent::after {
	position: absolute;
	content: "";
	border-bottom: 1px solid #444;
	bottom: -1px;
	left: 0;
	width: 20%;
	max-width: 5em;
}
.contents__header--borderMarker{
	padding-left: .8em;
}
.contents__header--borderMarker::before {
	position: absolute;
	content: "";
	top: .4em;
	right: 0;
	bottom: 0;
	left: 0;
	height: 0;
	width: 0;
	border-style: solid;
	border-width: .3em 0 .3em .4em;
	border-color: transparent transparent transparent #444;
	margin: 0 auto auto 0
}
.contents__header--borderDoted{
	border: none !important;
	background-image: -o-linear-gradient(left, #444 1px, transparent 1px);
	background-image: linear-gradient(to right, #444 1px, transparent 1px);
	background-size: 2px 1px;
	background-repeat: repeat-x;
	background-position: bottom left;
}
.contents__header--Lv1.contents__header--borderDoted,
.contents__header--Lv2.contents__header--borderDoted{
	background-image: -o-linear-gradient(left, #444 2px, transparent 2px);
	background-image: linear-gradient(to right, #444 2px, transparent 2px);
	background-size: 3px 2px;
}
/*
  header other
-------------------------------------------------------------------- */
.contents__header--marker,
.contents__header--accent{
	padding-left: .8em;
}
.contents__header--marker::before {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 0;
	width: 0;
	border-style: solid;
	border-width: .3em 0 .3em .4em;
	border-color: transparent transparent transparent #444;
	margin: auto auto auto 0
}
.contents__header--accent::before {
	position: absolute;
	content: "";
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	width: .3em;
	background: #444;
	margin: auto auto auto 0
}

/* ===================================================================
  contents
=================================================================== */
.l-contents {
	padding: 10% 0;
	border-top: 1px solid #fff;
}
.l-contents--sub {
	background: #f0f5f7;
	border-bottom: 1px solid #fff;
}
.l-contents--accent {
	background: #eaf8ff;
	border-bottom: 1px solid #fff;
}
.contents {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 5%;
}
.contents--lg { /* 980px */
	max-width: 61.25em;
}
.contents--md { /* 900px */
	max-width: 56.25em;
}
.contents--sm { /* 820px */
	max-width: 51.25em;
}
.contents--xs { /* 740px */
	max-width: 46.25em;
}
.contents > *:first-child {
	margin-top: 0;
}
.contents > *:last-child {
	margin-bottom: 0;
}
@media screen and (min-width: 768px) {
	.l-contents {
		padding: 6em 0;
	}
}
/* contents__block
------------------------------------------------------------------- */
.contents__block {
	width: 100%;
	margin: 0 0 8% 0;
	padding: 0;
	box-sizing: border-box;
}
.contents__block > *:first-child {
	margin-top: 0;
}
.contents__block > *:last-child {
	margin-bottom: 0;
}
.contents__block--box {
	width: 100%;
	margin: 0 0 5% 0;
	padding: 5%;
	background-color: #fff;
	border: solid 1px #eee;
}
.contents__block--box > *:first-child {
	margin-top: 0;
}
.contents__block--box > *:last-child {
	margin-bottom: 0;
}
.contents__block p {
	margin-bottom: 1em;
}
@media screen and (min-width: 768px) {
	.contents__block {
		max-width: 1200px;
		margin: 3em auto;
	}
	.contents__block--box {
		padding: 4em 5em;
	}
	.contents__block--box--sm{
		padding: 1em;
	}
}
/* contents__box
------------------------------------------------------------------- */
.contents__box {
	margin: 0 0 8% 0;
	padding: 5%;
	background-color: #fafafa;
	border: 1px solid #dce3e8;
	border-radius: 10px;
}
.contents__box--warning {
	background-color: #feecec;
	border: none;
}
.contents__box > *:first-child {
	margin-top: 0;
}
.contents__box > *:last-child {
	margin-bottom: 0;
}
@media screen and (min-width: 768px) {
	.contents__box {
		margin: 2em 0;
		padding: 2em;
	}
	.contents__box--padding-sm{
		padding: 1em;
	}
}

/* ===================================================================
  icon
=================================================================== */
/* ico-arrow
------------------------------------------------------------------- */
.ico-arrow {
	position: relative;
	margin: 0 .5em 0 .7em;
}
.ico-arrow::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: -.5em;
	width: .4em;
	height: .4em;
	margin: auto;
	content: '';
	transform: rotate(45deg);
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #0099e2;
}
.ico-arrow--light::after{
	border-color: #fff;
}
.ico-arrow--up::after {
	top: .2em;
	left: -.3em;
	transform: rotate(-45deg);
}
.ico-arrow--down::after {
	top: -.3em;
	left: -.3em;
	transform: rotate(135deg);
}
.ico-arrow--left::after {
	left: -.2em;
	transform: rotate(-135deg);
}
*[class*="-button"].ico-arrow{
	margin: auto;
	padding-right: 3em;
}
*[class*="-button"].ico-arrow::after{
	left: auto;
	right: 1.2em;
	border-color: #fff;
	transition: right .2s ease-out;
}
*[class*="-button"].ico-arrow:hover::after{
	right: .9em;
}
[class*="button-width"] .ico-arrow,
[class*="button-height"] .ico-arrow{
	margin-left: 1em;
}
[class*="button-width"] .ico-arrow::after,
[class*="button-height"] .ico-arrow::after{
	border-color: #fff;
}

/* xs sm*/
*[class*="-button"].button-xs.ico-arrow,
*[class*="-button"].button-sm.ico-arrow{
	padding-right: 2em
}
*[class*="-button"].button-xs.ico-arrow::after,
*[class*="-button"].button-sm.ico-arrow::after{
	right: 1em;
}
*[class*="-button"].button-xs.ico-arrow:hover::after,
*[class*="-button"].button-sm.ico-arrow:hover::after{
	right: .8em;
}
/* lg xl*/
*[class*="-button"].button-lg.ico-arrow,
*[class*="-button"].button-xl.ico-arrow{
	padding-right: 3.8em
}
*[class*="-button"].button-lg.ico-arrow::after,
*[class*="-button"].button-xl.ico-arrow::after{
	right: 1.4em;
}
*[class*="-button"].button-lg.ico-arrow:hover::after,
*[class*="-button"].button-xl.ico-arrow:hover::after{
	right: 1.1em;
}
/* ico-sitelink
------------------------------------------------------------------- */
.ico-sitelink {
	position: relative;
	margin: 0 .6em;
}
.ico-sitelink::after {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: .5em;
	height: .5em;
	margin: auto;
	content: '';
	border-width: 1px 1px 0 0;
	border-style: solid;
	border-color: #14a0dc;
	transform:  translateY(-2px) ;
}
.ico-sitelink::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: .5em;
	height: .5em;
	margin: auto;
	content: '';
	border-width: 1px;
	border-style: solid;
	border-color: #14a0dc;
	transform:  translateX(-2px);
}
*[class*="-button"].ico-sitelink{
	margin: auto;
	padding-right: 3em;
}
*[class*="-button"] .ico-sitelink::before{
	border-color: #fff;
}
*[class*="-button"].ico-sitelink::before{
	left: auto;
	right: 1.4em;
	border-color: #fff;
}
*[class*="-button"] .ico-sitelink::after{
	border-color: #fff;
}
*[class*="-button"].ico-sitelink::after{
	left: auto;
	right: 1.4em;
	border-color: #fff;
}
*[class*="button-width"] .ico-sitelink,
*[class*="button-height"] .ico-sitelink{
	margin-left: 1em;
}
*[class*="button-width"] .ico-sitelink::after,
*[class*="button-width"] .ico-sitelink::before,
*[class*="button-height"] .ico-sitelink::after,
*[class*="button-height"] .ico-sitelink::before{
	border-color: #fff;
}
/* xs sm*/
*[class*="-button"].button-xs.ico-sitelink,
*[class*="-button"].button-sm.ico-sitelink{
	padding-right: 2em
}
*[class*="-button"].button-xs.ico-sitelink::before,
*[class*="-button"].button-sm.ico-sitelink::before{
	right: 1em;
}
*[class*="-button"].button-xs.ico-sitelink::after,
*[class*="-button"].button-sm.ico-sitelink::after{
	right: 1em;
}

/* lg xl*/
*[class*="-button"].button-lg.ico-sitelink,
*[class*="-button"].button-xl.ico-sitelink{
	padding-right: 3.8em
}
*[class*="-button"].button-lg.ico-sitelink::before,
*[class*="-button"].button-xl.ico-sitelink::before{
	right: 1.6em;
}
*[class*="-button"].button-lg.ico-sitelink::after,
*[class*="-button"].button-xl.ico-sitelink::after{
	right: 1.6em;
}

/* ico-list
------------------------------------------------------------------- */
.ico-list {
	position: relative;
	margin: 0 .7em;
}
.ico-list::before,
.ico-list::after{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: -.4em;
	width: .9em;
	margin: auto;
	content: '';
	border-style: solid;
	border-color: #14a0dc;
}

.ico-list::before {
	height: 0;
	border-width: 2px 0 0 0;
}
.ico-list::after {
	height: .85em;
	border-width: 2px 0 2px 0;
}
*[class*="-button"].ico-list{
	margin: auto;
	padding-left: 3em;
}
*[class*="-button"] .ico-list::before,
*[class*="-button"] .ico-list::after{
	border-color: #fff;
}
*[class*="-button"].ico-list::before,
*[class*="-button"].ico-list::after{
	right: auto;
	left: 1.4em;
	border-color: #fff;
}
*[class*="button-width"] .ico-list,
*[class*="button-height"] .ico-list{
	margin-right: 1.2em;
	border-color: #fff;
}
*[class*="button-width"] .ico-list::after,
*[class*="button-width"] .ico-list::before,
*[class*="button-height"] .ico-list::after,
*[class*="button-height"] .ico-list::before{
	border-color: #fff;
}
/* xs sm*/
*[class*="-button"].button-xs.ico-list,
*[class*="-button"].button-sm.ico-list{
	padding-left: 2em
}
*[class*="-button"].button-xs.ico-list::before,
*[class*="-button"].button-sm.ico-list::before,
*[class*="-button"].button-xs.ico-list::after,
*[class*="-button"].button-sm.ico-list::after{
	left: .8em;
}

/* lg xl*/
*[class*="-button"].button-lg.ico-list,
*[class*="-button"].button-xl.ico-list{
	padding-left: 3.6em
}
*[class*="-button"].button-lg.ico-list::before,
*[class*="-button"].button-xl.ico-list::before,
*[class*="-button"].button-lg.ico-list::after,
*[class*="-button"].button-xl.ico-list::after{
	left: 1.6em;
}
/* ===================================================================
  hr
=================================================================== */
.hr-dotted {
	height: 1px;
	background-image: linear-gradient(to right, #d9d9d9 1px, transparent 1px);
	background-size: 2px 1px;
	background-position: bottom;
	background-repeat: repeat-x;
	border-bottom: 0;
}
.hr-margin-xs {
	margin: 3% 0;
}
.hr-margin-sm {
	margin: 3% 0;
}
.hr-margin-lg {
	margin: 8% 0;
}
.hr-margin-xl {
	margin: 8% 0;
}
@media screen and (min-width: 768px) {
	.hr-margin-xs {
		margin: 1em 0;
	}
	.hr-margin-sm {
		margin: 2em 0;
	}
	.hr-margin-lg {
		margin: 4em 0;
	}
	.hr-margin-xl {
		margin: 5em 0;
	}
}
/* ===================================================================
  image
=================================================================== */
.img-center {
	margin: auto auto;
}
.img-left {
	margin: auto auto auto 0;
}
.img-right {
	margin: auto 0 auto auto;
}
/* img-scaleup */
.img-scaleup {
	overflow: hidden;
	width: 100%;
	height: auto;
}
.img-scaleup img {
	-webkit-transition: transform .6s cubic-bezier(.2, 1, .5, 1);
	transition: transform .6s cubic-bezier(.2, 1, .5, 1);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
*:hover > .img-scaleup img {
	-webkit-transform: scale(1.1);
	-moz-transform: scale(1.1);
	-ms-transform: scale(1.1);
	-o-transform: scale(1.1);
	transform: scale(1.1);
}
/* ===================================================================
  rollover
=================================================================== */
.img-rollover {
	transition: opacity 0.3s ease;
}
.img-rollover:hover {
	opacity: 0.6;
}
.a-rollover,
.a-rollover > *{
	transition: opacity 0.3s ease;
}
.a-rollover:hover,
.a-rollover:hover > *{
	opacity: 0.6;
}
/* ===================================================================
  margin
=================================================================== */
.margin-top {
	margin-top: 5% !important;
}
.margin-bottom {
	margin-bottom: 5% !important;
}
.margin-top-sm,
.margin-top-xs{
	margin-top: 3% !important;
}
.margin-bottom-sm,
.margin-bottom-xs{
	margin-bottom: 3% !important;
}
.margin-top-lg,
.margin-top-xl{
	margin-top: 8% !important;
}
.margin-bottom-lg,
.margin-bottom-xl{
	margin-bottom: 8% !important;
}
.margin-top-none{
	margin-top: 0 !important;
}
.margin-bottom-none{
	margin-bottom: 0 !important;
}
.margin-none {
	margin: 0 !important;
}
@media screen and (min-width: 568px) {
	.margin-top {
		margin-top: 3em !important;
	}
	.margin-bottom {
		margin-bottom: 3em !important;
	}
	.margin-top-xs {
		margin-top: 1em !important;
	}
	.margin-bottom-xs {
		margin-bottom: 1em !important;
	}
	.margin-top-sm {
		margin-top: 2em !important;
	}
	.margin-bottom-sm {
		margin-bottom: 2em !important;
	}
	.margin-top-lg {
		margin-top: 5em !important;
	}
	.margin-bottom-lg {
		margin-bottom: 5em !important;
	}
	.margin-top-xl {
		margin-top: 8em !important;
	}
	.margin-bottom-xl {
		margin-bottom: 8em !important;
	}
}
/* ===================================================================
  padding
=================================================================== */
.padding-top {
	padding-top: 5% !important;
}
.padding-bottom {
	padding-bottom: 5% !important;
}
.padding-top-sm {
	padding-top: 3% !important;
}
.padding-bottom-sm {
	padding-bottom: 3% !important;
}
.padding-top-lg {
	padding-top: 8% !important;
}
.padding-bottom-lg {
	padding-bottom: 8% !important;
}
.padding-none {
	padding: 0 !important;
}
@media screen and (min-width: 568px) {
	.padding-top {
		padding-top: 2em !important;
	}
	.padding-bottom {
		padding-bottom: 2em !important;
	}
	.padding-top-sm {
		padding-top: 1em !important;
	}
	.padding-bottom-sm {
		padding-bottom: 1em !important;
	}
	.padding-top-lg {
		padding-top: 3em !important;
	}
	.padding-bottom-lg {
		padding-bottom: 3em !important;
	}
}
/* ===================================================================
  layout
=================================================================== */
.layout-center {
	text-align: center !important;
}
.layout-left {
	text-align: left !important;
}
.layout-right {
	text-align: right !important;
}
@media screen and (min-width: 768px) {
	.float-left{
		float: left !important;
	}
	.float-right{
		float: right !important;
	}
}
/* ===================================================================
  text
=================================================================== */
.text-center {
	text-align: center !important;
}
.text-left {
	text-align: left !important;
}
.text-right {
	text-align: right !important;
}
.text-nowrap {
	white-space: nowrap;
}
.text-sm {
	font-size: .875em;
}
.text-xs {
	font-size: .75em;
}
.text-lg {
	font-size: 1.125em;
}
.text-xl { /* 24px */
	font-size: 1.5em;
}
.text-strong {
	font-weight: 500;
}
.text-highlight{
	color: #ff9900;
}
.text-warning{
	color: #e02626;
}
.text-accent{
	color: #006ca7;
}
@media screen and (min-width: 768px) {
	.text-inline {
		display: inline-block;
	}
}
/* ===================================================================
  button
=================================================================== */
.pure-button { /* 15px */
	color: #fff;
	line-height: 1.4;
	white-space: inherit;
	background-color: #0099e2;
	border-radius: 5px;
	position: relative;
	overflow: hidden;
	z-index: 1;
	transition: background-color .3s ease;
}
.pure-button:focus,
.pure-button:hover{
	color: #fff;
	background-color: #76cef3;
	background-image: none;
}
.button-strong{
	font-weight: 500;
}
.button-highlight {
	background-color: #ff9900;
}
.button-highlight:focus,
.button-highlight:hover{
	background-color: #ffcc00;
}
.button-xs { /* 14px */
	font-size: 0.875em;
	padding: .3em .6em;
}
.button-sm { /* 14px */
	font-size: 0.875em;
	padding: .4em .8em;
}
.button-lg { /* 16px */
	font-size: 1em;
	padding: .6em 1.6em;
}
.button-xl { /* 16px */
	font-size: 1em;
	padding: 1.2em 2.4em;
}
.button-width,
.button-xs.button-width,
.button-sm.button-width,
.button-lg.button-width,
.button-xl.button-width {
	width: 100%;
}
.button-height{
	padding-top: .8em;
	padding-bottom: .8em;
}
.button-xs.button-height,
.button-sm.button-height{
	padding-top: .6em;
	padding-bottom: .6em;
}
.button-lg.button-height,
.button-xl.button-height{
	padding-top: 1em;
	padding-bottom: 1em;
}
.button-block {
	display: block;
	width: 100%;
}
.button-center {
	display: table;
	margin-right: auto;
	margin-left: auto;
}
.button-right {
	display: table;
	margin-right: 0;
	margin-left: auto;
}
.button-light {
	color: #54483d;
	border: 1px solid #ddd;
	background: rgba(255, 255, 255, 1);
	transition: background-color .3s ease, color .3s ease, border-color .3s ease;
}
.button-light:focus,
.button-light:hover {
	background: rgba(255, 255, 255, .6);
	color: #0099e2;
	border-color: #0099e2
}
.button-light [class*="ico-"]::after,
.button-light:focus [class*="ico-"]::after,
.button-light:hover [class*="ico-"]::after{
	border-color: #0099e2;
}
.button-light:hover  > .ico-arrow::after{
	border-color: #0099e2;
}
.button-light.ico-arrow::after{
	border-color: #0099e2;
}
@media screen and (min-width: 568px) {
	.button-width{
		width: auto;
		padding-left: 4em;
		padding-right: 4em;
	}
	.button-xs.button-width {
		width: auto;
		padding-left: 2.8em;
		padding-right: 2.8em;
	}
	.button-sm.button-width {
		width: auto;
		padding-left: 3.4em;
		padding-right: 3.4em;
	}
	.button-lg.button-width {
		width: auto;
		padding-left: 6em;
		padding-right: 6em;
	}
	.button-xl.button-width {
		width: auto;
		padding-left: 8em;
		padding-right: 8em;
	}
	.button-height{
		padding-top: 1em;
		padding-bottom: 1em;
	}
	.button-xs.button-height,
	.button-sm.button-height{
		padding-top: .8em;
		padding-bottom: .8em;
	}
	.button-lg.button-height,
	.button-xl.button-height{
		padding-top: 1.2em;
		padding-bottom: 1.2em;
	}
}
@media screen and (min-width: 768px) {
	.pure-button { /* 16px */
		font-size: 1em;
	}
	.button-xs { /* 12px */
		font-size: .75em;
	}
	.button-sm { /* 14px */
		font-size: .875em;
	}
	.button-lg { /* 18px */
		font-size: 1.125em;
	}
	.button-xl { /* 20px */
		font-size: 1.25em;
	}
}
/* ===================================================================
  button-arrow
=================================================================== */
.button-arrow {
	position: relative;
	padding-right: 2em;
}
.button-arrow::after {
	position: absolute;
	top: 0;
	right: .8em;
	bottom: 0;
	left: auto;
	width: .4em;
	height: .4em;
	margin: auto;
	content: '';
	transform: rotate(45deg);
	border-width: 2px 2px 0 0;
	border-style: solid;
	border-color: #fff;
}
.button-arrow {
	padding-right: 2.4em;
}
.button-xsmall.button-arrow {
	padding-right: 1.8em;
}
.button-small.button-arrow {
	padding-right: 1.6em;
}
.button-large.button-arrow {
	padding-right: 2.6em;
}
.button-xlarge.button-arrow {
	padding-right: 3.4em;
}
.button-large.button-arrow::after,
.button-xlarge.button-arrow::after {
	width: .4em;
	height: .4em;
}
.button-light.button-arrow::after {
	border-color: #0064ba;
}
.button-light.button-arrow:hover::after {
	border-color: #fff;
}
/*==================================================================
  button-sitelink
===================================================================*/
.button-sitelink {
	position: relative;
	padding-right: 3.2em;
}
.button-sitelink.button-sitelink--reverse::before,
.button-sitelink.button-sitelink--reverse::after {
	border-color: rgba(20, 160, 220, 1);
}
.button-sitelink::before {
	position: absolute;
	top: calc(50% - 7px);
	bottom: auto;
	left: auto;
	right: 17px;
	width: 9px;
	height: 5px;
	margin: auto;
	content: '';
	transform: rotate(0deg);
	border-width: 2px 1px 1px 1px;
	border-style: solid;
	border-color: #fff;
}
.button-sitelink::after {
	position: absolute;
	top: calc(50% - 2px);
	bottom: auto;
	left: auto;
	right: 20px;
	width: 9px;
	height: 5px;
	margin: auto;
	content: '';
	transform: rotate(0deg);
	border-width: 0 0 1px 1px;
	border-style: solid;
	border-color: #fff;
}
.button-xsmall.button-sitelink {
	padding-right: 2.6em;
}
.button-small.button-sitelink {
	padding-right: 2.8em;
}
.button-xsmall.button-sitelink::before,
.button-small.button-sitelink::before {
	top: calc(50% - 6px);
	right: 12px;
	width: 7px;
	height: 4px;
}
.button-xsmall.button-sitelink::after,
.button-small.button-sitelink::after {
	top: calc(50% - 1px);
	right: 15px;
	width: 7px;
	height: 4px;
}
/* ===================================================================
 table
=================================================================== */
.contents__table {
	font-size: .938em;
	width: 100%;
	margin: 0 0 2em 0;
	border-collapse: collapse;
	background-color: #fff;
	border: 1px solid #d6dee6 !important;
}
.contents__table--sm{
	font-size: .9em;
}
.contents__table th,
.contents__table td {
	padding: 1em 1.2em;
}
.contents__table th {
	font-weight: 500;
	background: #eaf8ff;
	color: #444;
	border-bottom: 3px solid #fff;
}
@media screen and (min-width: 768px) {
	.contents__table th,
	.contents__table td {
		border: 1px solid #d6dee6;
		padding: 1em 1em;
	}
}
/* table responsive
------------------------------------------------------------------- */
.table-responsive th{
	display: block;
	padding: .6em 1em !important;
}
.table-responsive td {
	display: block;
}
.table-responsive colgroup {
	width: auto ;
}
@media screen and (min-width: 768px) {
	.table-responsive th{
		display: table-cell;
		padding: .1em 1.2em !important;
		text-align: left;
	}
	.table-responsive td {
		display: table-cell;

	}
	.table-responsive colgroup {
		width: auto ;
	}
}
/* table-scroll
-------------------------------------------------------------------- */
.table-scroll {
	overflow: auto;
	display: block;
}
.table-scroll th{
	min-width: 3em;
	padding: .2em 1em !important;
}
.table-scroll td {
	min-width: 3em;
}
.table-scroll ::-webkit-scrollbar {
	height: 5px;
}
.table-scroll ::-webkit-scrollbar-track {
	background: #fff;
}
.table-scroll ::-webkit-scrollbar-thumb {
	background: #f0f0f0;
}
@media screen and (min-width: 768px) {
	.table-scroll {
		overflow: visible;
		display: table;
	}
	.table-scroll th{
		min-width: auto;
		padding: .8em 1em !important;
	}
	.table-scroll td {
		min-width: auto;
	}
}
/* ===================================================================
  list
=================================================================== */
.list-none,
.list-inline,
.list-normal,
.list-note,
.list-note-number,
.list-annotation{
	margin: 1em 0;
	padding: 0;
	list-style: none;
}
.list-normal--sm,
.list-note--sm,
.list-note-number--sm,
.list-annotation--sm{
	font-size: 0.9em;
}
.list-normal li,
.list-note li,
.list-note-number li,
.list-annotation li{
	margin: 0 0 .4em 2em;
}
.list-normal.pure-g li,
.list-note.pure-g li,
.list-note-number.pure-g li,
.list-annotation.pure-g li{
	margin: 0 0 .4em 0;
    box-sizing: border-box;
}
.list-margin-bottom li {
	margin-bottom: 1.6em;
}
/* ・-- ・-- ・-- */
.list-inline li {
	display: inline-block;
	margin: 0 1em 0 0;
}
.list-inline li:before {
	content: '・';
	color: #14a0dc;
}
/* ・-- */
.list-normal li {
	padding-left: 1em;
	text-indent: -1em;
}
.list-normal li:before {
	content: '・';
	color: #14a0dc;
}
/* ※-- */
.list-note li {
	margin-left: 1.4em;
	text-indent: -1.4em;
}
.list-note li:before {
	display: inline-block;
	width: 1.4em;
	content: '※';
	text-indent: 0;
}
/* 1.---- 2.---- 3.--- */
.list-note-number > li {
	margin-left: 2em;
	counter-increment: calc-ex9;
	text-indent: -2em;
}
.list-note-number > li:before {
	display: inline-block;
	width: 2em;
	content: counter(calc-ex9)'.';
	text-indent: 0;
}
/* ※1.---- ※2.---- ※3.--- */
.list-annotation {
	margin-left: 2em;
}
.list-annotation > li {
	margin-left: 1.2em;
	list-style-type: none;
	counter-increment: annotation;
	text-indent: -3em;
}
.list-annotation > li:before {
	display: inline-block;
	width: 3em;
	content: '\203B'counter(annotation);
	text-indent: 0;
}
/* ===================================================================
  dl list
=================================================================== */
.dl-list-table--sm, .dl-list-form--sm {
	font-size: 0.9em;
}
/* dl-list-table  */
.dl-list-table {
	border: 1px solid #d6dee6;
	border-top: none;
}
.dl-list-table > dt {
	background: #d9d9d9;
	padding: .6em;
}
.dl-list-table > dt:first-child {
	border-top: 1px solid #d6dee6;
	margin-top: 0;
}
.dl-list-table > dd {
	padding: .6em;
	margin: 0;
	background: #fff;
	word-break: break-all
}
/* dl-list-form */
.dl-list-form {
	padding: 1em 0 0 0;
	margin: 0;
}
.dl-list-form dt {
	margin: 0;
	padding: 0;
}
.dl-list-form dd {
	background-image: -o-linear-gradient(left, #d9d9d9 1px, transparent 1px);
	background-image: linear-gradient(to right, #d9d9d9 1px, transparent 1px);
	background-size: 2px 1px;
	background-repeat: repeat-x;
	background-position: left bottom 1px;
	margin:0;
	padding: 0 0 1em 0;
}
.dl-list-form a{
	color: #54483d;
}
.dl-list-form a:hover{
	opacity: .6;
}
@media screen and (min-width: 768px) {
	/* dl-list-table  */
	.dl-list-table,
	.dl-list-form{
		display: flex;
		flex-wrap: wrap;
		margin: 1em 0;
		padding: 0;
	}
	.dl-list-table > dt {
		width: 9em;
		margin: 1px 0 0 0;
	}
	.dl-list-table > dd {
		width: calc( 100% - 9em);
		border-left: 1px solid #d6dee6;
		border-top: 1px solid #d6dee6;
	}
	/* dl-list-form */
	.dl-list-form *:nth-child(-n + 2){
		margin-top: 0;
	}
	.dl-list-form dt {
		background-image: -o-linear-gradient(left, #d9d9d9 1px, transparent 1px);
		background-image: linear-gradient(to right, #d9d9d9 1px, transparent 1px);
		background-size: 2px 1px;
		background-repeat: repeat-x;
		background-position: right bottom 1px;
		color: #006ca7;
		width: 12em;
		margin: 1em 0 0 0;
		padding: .4em 2em 1em 0;
		text-align: right;
		box-sizing: border-box;
	}
	.dl-list-form dd {
		width: calc( 100% - 12em);
		margin: 1em 0 0 0;
		padding: 0 0 1em 0;
		box-sizing: border-box;
	}
}
