@charset "UTF-8";


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

Bootstrap4 調節

=========================*/
/* リセット */
ul,ol {list-style: none;}
ul,ol,li,p,button,figure {padding: 0;margin:0;}
button:focus {outline: none;}

/* 幅調節 */
@media screen and (min-width: 1200px){
	.container.narrow {
		max-width: 960px;
	}
}
@media screen and (max-width: 575px){
	.row {margin-left:-7px;margin-right:-7px;}
	.row [class^="col-"] {padding-left:7px;padding-right:7px;}
}
@media screen and (max-width: 767px){
	.container,.container-md,.container-sm {padding-left: 2rem;padding-right: 2rem;}
}
/* Bootstrap4専用ガター調整 */
.row.row-0 {margin-left:0px; margin-right:0px;}
.row.row-0 > * {padding-left:0px; padding-right:0px;}
.row.row-1 {margin-left:-1px; margin-right:-1px;}
.row.row-1 > * {padding-left:1px; padding-right:1px;}
.row.row-3 {margin-left:-3px; margin-right:-3px;}
.row.row-3 > * {padding-left:3px; padding-right:3px;}
.row.row-27 {margin-left:-27px; margin-right:-27px;}
.row.row-27 > * {padding-left:27px; padding-right:27px;}
.row.row-39 {margin-left:-30px; margin-right:-30px;}
.row.row-39 > * {padding-left:39px; padding-right:39px;}

/* スマホ時のガター調節 */
@media screen and (max-width: 575px) {
	.row.row-27,.row.row-39 {margin-left:-15px; margin-right:-15px;}
	.row.row-27 > *,.row.row-39 > * {padding-left:15px; padding-right:15px;}
}
/* 文字調節 */
.text-center p {
	text-align: center;
}

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

共通

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

/* テキスト */
a.link {text-decoration: underline;}
a.link:hover {text-decoration: none;}
a {color:#666;}
.link-arrow:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-left: 5px;
	vertical-align: middle;
}
.up-arrow:after {transform: rotate(-90deg);}
.down-arrow:after {transform: rotate(90deg);}
p {
	text-align: justify;
	text-justify: inter-ideograph;
}
li {word-wrap: break-word;}
.text-bold{font-weight:bold !important;}
.text-normal{font-weight:normal;}
.line-height1-4{line-height: 1.4 !important;}
.line-height1-8{line-height: 1.8 !important;}

@media screen and (min-width: 576px) {
	p {line-height: 2em;font-size: 1rem;}
	.text-xl {line-height: 1.4;font-size: 2.2rem !important;}
	.text-lg {line-height: 1.4;font-size: 1.75rem !important;}
	.text-md {line-height: 1.4;font-size: 1rem !important;}
	.text-sm {font-size: .875rem !important;}
	.text-xs {font-size: .75rem !important;}
}
@media screen and (max-width: 575px) {
	p {line-height: 1.8;font-size: .875rem;}
	.text-xl {line-height: 1.4;font-size: 1.5rem !important;}
	.text-lg {font-size: 1.25rem !important;}
	.text-md {font-size: .875rem !important;}
	.text-sm {font-size: .75rem !important;}
	.text-xs {font-size: .5rem !important;}
	li {font-size: .875rem;}
}


/* 画像 */
.img-150 {
	display: inline-block;
	height: 150px;
	width: auto;
}
a.link-zoom img {transition: all .3s;transform: scale(1);}
a.link-zoom:hover img {transition: all .3s;transform: scale(1.1);}



/* カラー
----------------------------------------------*/
::selection {
	background: #00A0EB;
	color: #fff;
}
.bg-lightgray {background-color: #F6F8F9 !important;}
.bg-white {background-color: #fff !important;}
.bg-black {background-color: #000 !important;}
.bg-blue {background: #1466bf !important;}
.bg-blue {background: #1466bf !important;}
.bg-lightpink {background: #FFECEC !important;}
.color-lightred {color: #F33 !important;}
.color-red {color: #C1272D !important;}
.color-white {color: #fff !important;}
.color-gray {color: #999 !important;}
.color-black {color: #000 !important;}
.color-blue {color: #1466bf !important;}
.color-yellow{color: #faf064 !important;}


/* ライン
----------------------------------------------*/
.line-md {border: 3px solid #ccc;}
.line-sm {border: 2px solid #ccc;}

.line-sm h4:first-of-type,.line-sm h3:first-of-type,.line-md h4:first-of-type,.line-md h3:first-of-type,.line-lg h4:first-of-type,.line-lg h3:first-of-type, {margin-top:0;}
.line-col {
	position: relative;
}
.line-col:after,.line-col:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0px;
  right: 0;
  background: #fff;
}
.line-col:after {
  width: 100%;
  height: 1px;
}

.line-col:before {
  width: 2px;
  height: 100%;
  z-index: 1;
}
.line-col > li,.line-col > div {
	display: flex;
}
.line-col > li > div,.line-col > div > div {
	width: 100%;
	padding: 30px;
	border-right: dashed 1px #ccc;
	border-bottom: dashed 1px #ccc;
}
.line-col h4 {
	margin-top: 15px;
}
.line-t {border-top: solid 1px #ccc;}
.line-b {border-bottom: solid 1px #ccc;}
.line-b-dashed {border-bottom: dashed 1px #ccc;}

/* マージン */
section > h2:first-of-type,.div > h2:first-of-type,
.div > h3:first-of-type,.div > h4:first-of-type {
	margin-top: 0px !important;
}
.mt-0 {margin-top: 0px !important;}
.mb-0 {margin-bottom: 0px !important;}
@media screen and (max-width: 991px) {
	.mb-max991-md {margin-bottom: 30px !important;}
	.mb-max991-sm {margin-bottom: 15px !important;}
}
@media screen and (max-width: 767px) {
	.mb-max767-md {margin-bottom: 30px !important;}
	.mb-max767-sm {margin-bottom: 15px !important;}
}
@media screen and (min-width: 576px) {
	.m-xl {margin: 90px !important;}
	.m-lg {margin: 60px !important;}
	.m-md {margin: 30px !important;}
	.m-sm {margin: 15px !important;}
	.m-xs {margin: 10px !important;}
	.mt-xl {margin-top: 90px !important;}
	.mt-lg {margin-top: 60px !important;}
	.mt-md {margin-top: 30px !important;}
	.mt-sm {margin-top: 15px !important;}
	.mt-xs {margin-top: 10px !important;}
	.mb-xl {margin-bottom: 90px !important;}
	.mb-lg {margin-bottom: 60px !important;}
	.mb-md {margin-bottom: 30px !important;}
	.mb-sm {margin-bottom: 15px !important;}
	.mb-xs {margin-bottom: 10px !important;}
	.mr-xl {margin-right: 90px !important;}
	.mr-lg {margin-right: 60px !important;}
	.mr-md {margin-right: 30px !important;}
	.mr-sm {margin-right: 15px !important;}
	.mr-xs {margin-right: 10px !important;}
	.ml-xl {margin-left: 90px !important;}
	.ml-lg {margin-left: 60px !important;}
	.ml-md {margin-left: 30px !important;}
	.ml-sm {margin-left: 15px !important;}
	.ml-xs {margin-left: 10px !important;}
}

@media screen and (max-width: 575px) {
	.m-xl {margin: 45px !important;}
	.m-lg {margin: 30px !important;}
	.m-md {margin: 15px !important;}
	.m-sm {margin: 10px !important;}
	.m-xs {margin: 5px !important;}
	.mt-xl {margin-top: 45px !important;}
	.mt-lg {margin-top: 30px !important;}
	.mt-md {margin-top: 15px !important;}
	.mt-sm {margin-top: 10px !important;}
	.mt-xs {margin-top: 5px !important;}
	.mb-xl {margin-bottom: 45px !important;}
	.mb-lg {margin-bottom: 30px !important;}
	.mb-md {margin-bottom: 15px !important;}
	.mb-sm {margin-bottom: 10px !important;}
	.mb-xs {margin-bottom: 5px !important;}
	.ml-xl {margin-left: 45px !important;}
	.ml-lg {margin-left: 30px !important;}
	.ml-md {margin-left: 15px !important;}
	.ml-sm {margin-left: 10px !important;}
	.ml-xs {margin-left: 5px !important;}
	.mr-xl {margin-right: 45px !important;}
	.mr-lg {margin-right: 30px !important;}
	.mr-md {margin-right: 15px !important;}
	.mr-sm {margin-right: 10px !important;}
	.mr-xs {margin-right: 5px !important;}
}

/* パディング */
.p-0 {padding: 0px !important;}
.pt-0 {padding-top: 0px !important;}


@media screen and (min-width: 576px) {
	.p-xl {padding: 90px !important;}
	.p-lg {padding: 60px !important;}
	.p-md {padding: 30px !important;}
	.p-sm {padding: 15px !important;}
	.p-xs {padding: 10px !important;}
	.pt-xl {padding-top: 90px !important;}
	.pt-lg {padding-top: 60px !important;}
	.pt-md {padding-top: 30px !important;}
	.pt-sm {padding-top: 15px !important;}
	.pt-xs {padding-top: 10px !important;}
	.pb-xl {padding-bottom: 90px !important;}
	.pb-lg {padding-bottom: 60px !important;}
	.pb-md {padding-bottom: 30px !important;}
	.pb-sm {padding-bottom: 15px !important;}
	.pb-xs {padding-bottom: 10px !important;}
	.pl-xl {padding-left: 90px !important;}
	.pl-lg {padding-left: 60px !important;}
	.pl-md {padding-left: 30px !important;}
	.pl-sm {padding-left: 15px !important;}
	.pl-xs {padding-left: 10px !important;}
	.pr-xl {padding-right: 90px !important;}
	.pr-lg {padding-right: 60px !important;}
	.pr-md {padding-right: 30px !important;}
	.pr-sm {padding-right: 15px !important;}
	.pr-xs {padding-right: 10px !important;}
}
@media screen and (max-width: 575px) {
	.p-xl {padding: 45px !important;}
	.p-lg {padding: 30px !important;}
	.p-md {padding: 15px !important;}
	.p-sm {padding: 10px !important;}
	.p-xs {padding: 5px !important;}
	.pt-xl {padding-top: 45px !important;}
	.pt-lg {padding-top: 30px !important;}
	.pt-md {padding-top: 15px !important;}
	.pt-sm {padding-top: 10px !important;}
	.pt-xs {padding-top: 5px !important;}
	.pb-xl {padding-bottom: 45px !important;}
	.pb-lg {padding-bottom: 30px !important;}
	.pb-md {padding-bottom: 15px !important;}
	.pb-sm {padding-bottom: 10px !important;}
	.pb-xs {padding-bottom: 5px !important;}
	.pl-xl {padding-left: 45px !important;}
	.pl-lg {padding-left: 30px !important;}
	.pl-md {padding-left: 15px !important;}
	.pl-sm {padding-left: 10px !important;}
	.pl-xs {padding-left: 5px !important;}
	.pr-xl {padding-right: 45px !important;}
	.pr-lg {padding-right: 30px !important;}
	.pr-md {padding-right: 15px !important;}
	.pr-sm {padding-right: 10px !important;}
	.pr-xs {padding-right: 5px !important;}
}
/* 幅 */
@media screen and (max-width: 575px) {.w-maxsm-100 {width: 100% !important;}}
@media screen and (max-width: 767px) {.w-maxmd-100 {width: 100% !important;}}
@media screen and (max-width: 991px) {.w-maxlg-100 {width: 100% !important;}}


/* アニメーション */
@keyframes fade-in {
	0% {display: none;opacity: 0;}
	1% {display: block;opacity: 0;}
	100% {display: block;opacity: 1;}
}

/* アニメーション */
@media screen and (max-width: 991px) {
	.icnArrow01:before {
		display: block;
		font-size: 1.25rem;
		transition: all .3s;
	  color: #fff;
		font: normal normal normal 1em / 1 "Phosphor";
    content: "\f31c";
		speak: never;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
		margin-left: 5px;
		vertical-align: middle;
	}
	.collapsed .icnArrow01:before {transform: rotate(-90deg);}
	.icnArrow01:before {transform: rotate(90deg);	}
}

/* 角丸 */
.rounded-sm {border-radius: .5rem!important;}
.rounded-sm-top {border-top-left-radius: .5rem!important;border-top-right-radius: .5rem!important;}
.rounded-sm-bottom {border-bottom-left-radius: .5rem!important;border-bottom-right-radius: .5rem!important;}
.rounded-sm-left {border-top-left-radius: .5rem!important;border-bottom-left-radius: .5rem!important;}
.rounded-sm-right {border-top-right-radius: .5rem!important;border-bottom-right-radius: .5rem!important;}

.rounded-md {border-radius: 1rem!important;}
.rounded-md-top {border-top-left-radius: 1rem!important;border-top-right-radius: 1rem!important;}
.rounded-md-bottom {border-bottom-left-radius: 1rem!important;border-bottom-right-radius: 1rem!important;}
.rounded-md-left {border-top-left-radius: 1rem!important;border-bottom-left-radius: 1rem!important;}
.rounded-md-right {border-top-right-radius: 1rem!important;border-bottom-right-radius: 1rem!important;}

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

proヘッダー

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

#pro-header {
	display: flex;
  justify-content: space-between;
	flex-wrap: wrap;
}
#pro-logo h1 {line-height: 1;margin:0;}
#pro-logo {font-size: 12px;}
#pro-logo a {color: #000;}
#pro-search .form-control,#pro-search .search-button,.dropdown-menu {border:none;}
#pro-search .search-button {
	color: #fff;
	transition: all .3s ease;
	border-radius: 0 4px 4px 0;
	background:#888;
	cursor: pointer;
	padding: 0 10px;
}
#pro-search .form-control,#pro-header .form-control:focus {outline:none;box-shadow: 0 0 0px 1000px white inset;}
#pro-search .search-button:focus {outline:none;background:#333;}
#pro-search .dropdown-menu form .input-group-append:hover .search-button:hover {background:#333;}


#pro-gnav {
	display: flex;
	align-items: flex-end;
  justify-content: space-between;
}
#pro-gnav li a {
	font-weight: bold;
}
#pro-gnav li a:hover {
	text-decoration: none;
}

/* pc
----------------------------------------------*/
@media screen and (min-width: 1200px) {
	#pro-gnav > li {font-size: 1rem;}
	#pro-gnav > li {padding-left: 45px;}
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
	#pro-gnav > li {margin-left: 30px;}
}

@media screen and (min-width: 992px) {
	#pro-logo {padding-bottom: 25px;}
	#pro-logo a:hover {text-decoration:none;color:#666;}
	#pro-logo a p {font-size:12px;letter-spacing:1px;}
	#pro-logo img {height: 30px;margin-top:3px;}
	#ProNav__btn {display:none;}
	#pro-header {align-items: flex-end;}
	#pro-header .btn-header {
		display: flex;
		justify-content: flex-end;
		position: relative;
	}
	#pro-header .btn-header > li {margin-left: 1px;}
	#pro-header .btn-header > li > a {
		display: block;
		background: #1466bf;
		font-size: .75rem;
		color: #fff;
		padding: 10px 20px;
		line-height: 1;
		transition: all .3s;
	}
	#pro-header .btn-header > li:hover > a {
		background: #ddd;
		color: #1466bf;
		text-decoration: none;
	}
	#pro-header .btn-header > li:first-child {
		margin-left: 0px;
	}
	#pro-header .btn-header > li:first-child a {
		border-radius: 0 0 0 4px;
	}
	#pro-header .btn-header > li:last-child a {
		border-radius: 0 0 4px 0;
	}

	#pro-search .dropdown-menu {
		padding: 0;
		left: auto !important;
		right: 0px !important;
		border: none;
		margin: 0;
		transform: translate3d(0px, 50px, 0px) !important;
  	animation-duration: 0.3s;
  	animation-name: fade-in;
  	}
	#pro-search .dropdown-menu form {
		padding:20px;
		background:#e5e5e5;
		border-radius: 4px;
		width: 342px;
	}
}

/* sp
----------------------------------------------*/
@media screen and (max-width: 991px) {
	#pro-header.container {padding-right:0px;}
	#ProNav__btn {font-size:.75rem;line-height:0;text-align:center;padding: 20px 10px;width:65px;background:#1466BF;color:#fff;}
	#ProNav__btn span:after {content: attr(data-txt-menu);}
	.PronavOpen #ProNav__btn {background:#123F6F;}
	.PronavOpen #ProNav__btn span:after {content: attr(data-txt-close);}
	#pro-header {
  	position: fixed;
  	top: 0;
  	z-index: 200;
		width:100%;
  	}
  	.PronavOpen #pro-header {
		height: 100%;
	}
	#pro-header > div {
		width: 100%;
		display: flex;
		align-items: center;
	  justify-content: space-between;
  	background: #F6F8F9;
  	height: 40px;
  	}
	#pro-logo {margin-left:15px;}
	#pro-logo a p {display:none;}
	#pro-logo img {height:20px;}

	#pro-header nav > ul > li > a {color: #fff;}
	#pro-header nav > ul#pro-gnav > li > a {
		width: calc(100% - 52px);
		padding: 15px 30px;
		display: block;
		text-align: left;
	}
  .btn-header li:not(#pro-search){width:calc(50%);text-align:center;padding:10px;position:fixed;bottom:0;z-index:1100;}
	#pro-header nav > ul > li#btn-shop {left:0;background:#003B9F;}
	#pro-header nav > ul > li#btn-member {right:0;background:#000;}
	#pro-header nav > ul > li#pro-search {width:100%;margin-bottom: 100px;;}
	#pro-header nav > ul > li#pro-search a {display:none;}
	#pro-header nav > ul > li#pro-search div.dropdown-menu {display:block;position:static !important;transform:none !important;float:none;padding:0;margin:10px 15px;}
	#pro-header nav {display: none;background: rgba( 0, 104, 182, 0.9);width:100%;height: 100%;overflow-y: scroll;opacity: 1;animation-duration: 0.5s;animation-name: fade-in;}
	.PronavOpen #pro-header nav {display: flex;flex-direction:column;padding-top:15px;}
	.PronavOpen #pro-header nav > ul {display: block;}
	.PronavOpen #pro-header nav > ul.btn-header {order: 2;}
	.PronavOpen #pro-header nav > ul.pro-gnav {order: 1;}
}






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

コンテンツヘッダー

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

/* コンテンツヘッダー共通
----------------------------------------------*/
#ContentsTitle {margin: 0;font-weight:900;}
#ContentsHeader a {text-decoration: none;}
#ContentsHeader nav ul > li > div > ul > li:before {
  font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-right: 15px;
	vertical-align: middle;
}

@media screen and (min-width: 992px) {
	.Pro-Title {margin: 60px 0 30px;}
}
@media screen and (max-width: 991px) {
	.Pro-Title {margin: 70px 0 20px;}
	.Pro-Contents {margin-top: 40px;}
	#ContentsTitle h1 {
  	margin: 0;
  	font-size: 1.2rem;
  	line-height: 0;
	}
}


/* pc
----------------------------------------------*/
@media screen and (min-width: 992px){
	#ContentsHeader nav > ul {display: flex;flex-wrap:wrap}
	#ContentsNav__btn,#ContentsHeader nav ul li button {
	  border: none;
	  background: none;
		display:inline-block;
		transition: all .3s;
	}
	#ContentsNav__btn,#ContentsHeader nav ul li button:before,
	#ContentsNav__btn,#ContentsHeader nav ul li:hover button:before {
		font: normal normal normal 1em / 1 "Phosphor";
		content: "\f31c";
		speak: never;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		-webkit-font-smoothing: antialiased;
	  color: #fff;
		vertical-align: middle;
	}
	#ContentsNav__btn,#ContentsHeader nav ul li button {transform: rotate(90deg);}
	#ContentsNav__btn,#ContentsHeader nav ul li:hover button {transform: rotate(-90deg);}
	#ContentsTitle {display:inline-block; margin: 30px 0;}
	#ContentsTitle p {font-size: 2rem;line-height:1;margin-top:19px;}
	#ContentsTitle img {
		height: 50px;
		width: auto;
	}
	.SubTitle {display:inline-block;vertical-align:bottom;margin-left:10px;margin-right:10px;}

	/*ナビ*/
	#ContentsHeader nav {position:relative;}
	#ContentsHeader nav > ul > li {margin:0px 30px 0px 0px;padding-top:15px;padding-bottom:15px;}
	#ContentsHeader nav > ul > li > a {display:inline-block;color: #fff;}
	#ContentsHeader nav > ul > li:last-child > a {margin-right:0;}
	#ContentsHeader nav ul > li > div {
		display:block;
		position: absolute;
		visibility: hidden;
		top: 100%;
		left: 0;
		width: 100%;
		padding-top: 30px;
		padding-bottom: 30px;
		background: rgba( 60, 60, 60, 0.1);
		transition: all .2s ease;
  		opacity: 0;
	}
	#ContentsHeader nav ul > li:hover > div {
		visibility: visible;
		z-index: 101;
		background: rgba( 60, 60, 60, 0.9);
		opacity: 1;
	}
	#ContentsHeader nav ul > li > div > ul {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
		height: 200px;
	}
	#ContentsHeader nav ul > li > div > ul > li {margin-bottom: 15px;}
	#ContentsHeader nav ul > li > div > ul > li:before {color:#fff;}
	#ContentsHeader nav ul > li > div > ul > li > a {
		color: #fff;
	}
}

/* sp
----------------------------------------------*/
@media screen and (max-width: 991px) {
	[id^="anc"],#Member,#Faq {
	  display: block;
	  padding-top: 80px;
	  margin-top: -80px;
  }
	#ContentsHeader {
  	height: 50px;
	}
	#ContentsTitle {display:block;}
	#ContentsTitle p {font-weight:bold;font-size:20px;line-height:1;margin-top:5px;margin-bottom:5px;}
	.menu-btn span:after {content: attr(data-txt-menu);}
	.open .menu-btn span:after {content: attr(data-txt-close);}

	#ContentsTitle img {
		height: 30px;
		width: auto;
		margin: 0;
	}
	.SubTitle {display:none;}
	#ContentsHeader > div {
  	width: 100%;
		position: fixed;
		z-index: 100;
		left: 0px;
	}
	#ContentsHeader > div > div {
  	display: flex;
		max-width: 100%;
		padding-top: 10px;
		padding-bottom: 10px;
  	justify-content:space-between;
  	align-items: center;
		background: rgba( 255, 255, 255, 0.95);
	}
	#ContentsNav__btn {
		width: 32px;
		height: 21px;
	}
	#ContentsHeader nav {display: none;}
	#ContentsHeader nav {
		width: 100%;
		height:100%;
		padding-bottom: 91px;
		overflow-y: scroll;
		text-align: center;
		background: rgba( 60, 60, 60, 0.9);
		animation-duration: 0.5s;animation-name: fade-in;
	}
	#ContentsHeader nav ul {
		max-width: 100%;
		padding: 0;
	}
	#ContentsHeader nav ul > li {
	  display: flex;
		align-items: center;
	  flex-wrap: wrap;
	}
	#ContentsHeader nav > ul > li > a {
		width: calc(100% - 52px);
		color: #fff;
		padding: 15px 15px 15px 15px;
		display:block;
		text-align: left;
	}
	#ContentsHeader nav ul > li button {
		width: 52px;
		height: 45px;
	  border: none;
	  background: none;
	  cursor: pointer;
	}
	#ContentsHeader .navbar-nav > li > a {
		color: #fff;
	}
	#ContentsHeader nav > ul > li > div {
		width: 100%;
	}
	#ContentsHeader nav ul > li > div > ul {
		text-align: left;
		padding: 15px;
		background: #fff;
	}
	#ContentsHeader nav ul > li > div > ul > li {margin-bottom: 10px;}
	/* ナビが開いている時 */
	.ContentsOpen #ContentsHeader > div {
		height: 100%;
	}
	.ContentsOpen #ContentsHeader nav {
		display: block;
	}
	#ContentsHeader nav ul > li > div > ul > li a {
		color: #000;
	}
	/* コンテンツハンバーガー */
	.menu-trigger,.menu-trigger span {
	 display: inline-block;
	 transition: all .4s;
	 box-sizing: border-box;
	}
	.menu-trigger {
	 position: relative;
	 width: 32px;
	 height: 21px;
	}
	.menu-trigger span {
	 position: absolute;
	 left: 0;
	 width: 100%;
	 height: 3px;
	 background-color: #000;
	 border-radius: 0px;
	}
	.menu-trigger span:nth-of-type(1) {top: 0;}
	.menu-trigger span:nth-of-type(2) {top: 9px;}
	.menu-trigger span:nth-of-type(3) {bottom: 0;}
	.ContentsOpen .menu-trigger span:nth-of-type(1) {
	 -webkit-transform: translateY(9px) rotate(-315deg);
	 transform: translateY(9px) rotate(-315deg);
	}
	.ContentsOpen .menu-trigger span:nth-of-type(2) {opacity: 0;}
	.ContentsOpen .menu-trigger span:nth-of-type(3) {
	 -webkit-transform: translateY(-9px) rotate(315deg);
	 transform: translateY(-9px) rotate(315deg);
	}
}
@media screen and (min-width: 992px) {
	#js__btn {display: none;}
}

/* 検索窓 */



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

コンテンツ内容

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


/* コンテンツ共通
----------------------------------------------*/
@media screen and (min-width: 992px){
	.contents {margin-top: 60px;margin-bottom: 60px;}
}
@media screen and (max-width: 991px){
	.contents {margin-top: 30px;margin-bottom: 30px;}
}


/* メインビジュアル
----------------------------------------------*/
.main-visual {margin:0;}

/* リスト
----------------------------------------------*/
.list-ul li,.list-ul-md li {
	padding-left: 21px;
	font-size: .875rem;
	margin-top: 5px;
}
.list-ul li:before,.list-ul-md li:before {
  content: "●";
  display: block;
  float: left;
  margin-left: -21px;
  text-align: center;
  height: 1rem;
  width: 1rem;
}
@media screen and (min-width: 768px) {
	.list-ul-md li {font-size: 1rem;}
}

.list-ol li {
	margin-bottom: 1.5rem;
	  padding-left: 1.5rem;
	  margin-top: 0.5rem;
	  list-style: decimal;
	  margin-left: 2rem;
}



.list-arrow li {
	font-size: .875rem;
    padding: 10px 20px;
    position: relative;
}
.list-arrow li:before {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
    position: absolute;
	height: 1rem;
	color: #1466bf;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
		vertical-align: middle;
}
.list-line-ul li,.list-download li {
	border-bottom: solid 1px #ccc;
	padding: 15px;
}
.list-line-ul li time {margin-right: 1rem;}
.list-download li a {
	display: block;
	position: relative;
}
.list-download li a:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	position: absolute;
	right: 0;
	vertical-align: middle;
}
.list-point-ul li {
  position: relative;
	padding-left: 21px;
	font-size: .875rem;
	margin-top: 15px;
}
.list-point-ul li:before {
  counter-increment: number;
  content: "POINT";
  display: block;
  float: left;
  font-size: .875rem;
	margin-right: 10px;
  margin-left: -21px;
  text-align: center;
	padding: 2px 15px;
	border-radius: 4px;
	background: #666;
	color: #fff;
}

dt {margin-bottom: 5px;}
dd {margin-bottom: 20px;}

/* qa */
.qa dt,.qa dd {padding: 0px 0px 20px 60px;}
.qa dt {
	background: url(/images/q.png) no-repeat left top;
	font-weight: bold;
  padding-top: 5px;
}
.qa dd {
	background: url(/images/a.png) no-repeat left top;
	margin-bottom: 30px;
	border-bottom: 2px solid #eee;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	.qa dt {background: url(/images/q@2x.png) no-repeat left top;	background-size: 40px;}
	.qa dd {background: url(/images/a@2x.png) no-repeat left top;	background-size: 40px;}
}

/* ラインナップ
----------------------------------------------*/
.lineup li {
	text-align: center;
	margin-bottom: 30px;
}
.lineup li img {
	margin-bottom: 10px;
	max-height: 330px;
}
.lineup li p {
	font-size: .875rem;
	text-align: center;
}
.delimiter-line-md {
	border-bottom: 1px solid #ccc;
	margin-bottom: 30px;
	padding-bottom: 30px;
}


/* カード
----------------------------------------------*/
.card-a img,.card-b img,.card-c img {transition: all .3s;transform: scale(1);}
.card-a a:hover img,.card-b a:hover img,.card-c a:hover img {transition: all .3s;transform: scale(1.1);}

.card-a > div .img,.card-c > div .img {overflow: hidden;}
.card-a > div .icon,.card-c > div .icon {overflow: hidden;position:relative;color:#fff;}

.card-a > div,.card-b > div,.card-c > div {position: relative;}
.card-new {position: absolute;top: 0;left: 0;z-index: 1;transform: scale(1) !important;}

.card-a {display: flex;}
.card-a > div > a {
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}
.card-a > div {
	display: flex;
	flex-direction: column;
	background: #fff;
	overflow: hidden;
}
.card-a .text {flex-grow: 1;}
.card-a a:hover,.card-c a:hover {text-decoration: none;}
.card-a > div a:hover div.icon,.card-c > div a:hover div.icon {opacity: .8;}
.card-a > div p,.card-a > div dd,.card-c > div p {
	color: #000;
}
.box-wide .card-a > div,.box-lg .card-a > div,.box-md .card-a > div,.card-c .img,.card-c .icon {border-radius: 4px;}
.box-wide .card-a img,.box-lg .card-a img,.box-md .card-a img {border-radius: 0;}
.card-b {text-align: center;}
.card-b img {width:80%;}
.card-c {margin-top:15px;margin-bottom: 15px;}

.card-a.col-lg-2 > div div p {font-size: .875rem;color: #000;}
.card-heading {line-height: 1.4; margin-bottom:5px;font-weight: 600;}
.card-a a .card-heading:after,.card-b a .card-heading:after,.card-c a .card-heading:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-left: 5px;
  display: inline-block;
	vertical-align: middle;
}
@media screen and (min-width: 1200px) {
	.card-a > div .icon i,.card-c > div .icon i {font-size:5rem;position:absolute;z-index:1;top:50%;left:50%;margin-top:-2.5rem;margin-left:-2.5rem;}
}
@media screen and (min-width: 992px) and (max-width: 1199px) {
	.card-a > div .icon i,.card-c > div .icon i {font-size:4rem;position:absolute;z-index:1;top:50%;left:50%;margin-top:-2rem;margin-left:-2rem;}
}
@media screen and (max-width: 991px) and (min-width: 576px) {
	.card-a > div .icon i,.card-c > div .icon i {font-size:3rem;position:absolute;z-index:1;top:50%;left:50%;margin-top:-1.5rem;margin-left:-1.5rem;}
}
@media screen and (min-width: 576px) {
	.card-a,.card-b {margin-top:15px;margin-bottom: 15px;}
	.card-a > div .text,.card-c > div .text {padding-top: 20px;}
	.card-a > div p,.card-a > div dd,.card-c > div p {font-size: .875rem;}
	.box-wide .card-a > div .text,.box-lg .card-a > div .text,.box-md .card-a > div .text {padding: 20px 30px 20px 20px;line-break: strict;}
	.box-mb {margin-bottom: -30px;}
	.card-a > div p.card-heading,.card-c > div p.card-heading {font-size: 1rem;}
}
@media screen and (max-width: 575px) {
	.card-a,.card-b {margin-top: 7px;margin-bottom: 7px;}
	.card-a > div .text,.card-c > div .text {padding-top: 15px;}
	.box-wide .card-a > div .text,.box-lg .card-a > div .text,.box-md .card-a > div .text {padding: 15px;}
	.box-mb {margin-bottom: -15px;}
	.card-a > div p,.card-a > div dd,.card-c > div p {font-size: .75rem;}
	.card-a > div .icon i,.card-c > div .icon i {font-size:3rem;position:absolute;z-index:1;top:50%;left:50%;margin-top:-1.5rem;margin-left:-1.5rem;}
}
@media screen and (max-width: 375px) {
	.card-a > div .icon i,.card-c > div .icon i {font-size:2rem;position:absolute;z-index:1;top:50%;left:50%;margin-top:-1rem;margin-left:-1rem;}
}

/* ニュース
----------------------------------------------*/
.news li {margin-bottom: 15px; padding-bottom: 15px; border-bottom: solid 1px #eee;}
.news a {display:flex;flex-wrap:wrap;align-items: center;}
.news a time {width:120px; margin-right: 15px;}
.news-label {font-size: .75rem; color:#fff; background:#1466bf; text-align:center; margin-right: 15px;}
.news a time,.news a .txt {color:#000;}
@media screen and (min-width: 992px) {
	.news-label {padding:5px 10px;width:150px;}
	.news .txt {width: calc(100% - 300px);}
}
@media screen and (max-width: 991px) {
	.news-label {padding:3px 10px;width:100px;}
	.news .txt {margin-top:10px;}
}


/* ページタイトル
----------------------------------------------*/
.ContentsHeading h1 {
	font-weight: bold;
	margin-bottom: 0px;
}

@media screen and (min-width: 576px) {
	.ContentsHeading {
		padding: 30px;
		margin-bottom: 60px;
	}
	h1,.ContentsHeading h1 {
		font-size: 1.75rem;
		margin-bottom: 0px;
	}
}
@media screen and (max-width: 575px) {
	.ContentsHeading {
		padding: 20px;
		margin-bottom: 30px;
	}
	.ContentsHeading h1 {
		font-size: 1.25rem;
	}
}




/* 見出し
----------------------------------------------*/
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {line-height:1.3;}
h2 {
	border-bottom: solid 2px #ccc;
}
h2 small {
	font-size: 1rem;
}
h2,h3,h4,h5 {
	font-weight: bold;
}
.heading-band {
	font-weight: normal;
	margin-top: 30px;
	padding: 10px 15px;
	background: #DEE5E9;
	border: 0;
}
.heading-line {
	border: solid 2px #000;
	padding:10px;
	font-weight: bold;
}
.entry-text-unit .heading-line {
	border: none;
	padding: 0;
}
@media screen and (max-width: 991px) {
	h1 {font-size: 1.75rem;}
}
@media screen and (min-width: 576px) {
	h2 {
		font-size: 1.5rem;
		margin-top: 60px;
		margin-bottom: 30px;
		padding-bottom:15px;
	}
	h3 {
		font-size: 1.2rem;
		margin-top: 45px;
		margin-bottom: 15px;
	}
	h4 {
		font-size: 1.125rem;
		margin-top: 20px;
		margin-bottom: 15px;
	}
	h5 {
		font-size: 1rem;
		margin-top: 20px;
		margin-bottom: 15px;
	}
	.qa dt {font-size: 1.2rem;}
}
@media screen and (max-width: 575px) {
	h2 {
		font-size: 1.25rem;
		margin-top: 45px;
		margin-bottom: 15px;
		padding-bottom:10px;
	}
	h3 {
		font-size: 1.125rem;
		margin-top: 30px;
		margin-bottom: 10px;
	}
	h4 {
		font-size: 1rem;
		margin-top: 20px;
		margin-bottom: 10px;
	}
	h5 {
		font-size: .875rem;
		margin-top: 15px;
		margin-bottom: 10px;
	}
	.qa dt {font-size: 1.125rem}
}
.box-wide h2,.box-md h2 {
	border-bottom: none;
	padding-bottom:0px;
}
.box-wide h2:first-child {
	margin-top: 0;
}
h2.footer-company-title {
	border: none;
	padding: 0;
}


/* ラベル
----------------------------------------------*/
.label-frame {
	border: solid 1px #000;
	padding: 3px;
}
.label-frame-red {
	border: solid 1px red;
	padding: 3px;
	color: red;
}




/* box
----------------------------------------------*/
.box-md p {font-size: .875rem;}
.box-heading {
	display: inline-block;
	color: #fff;
	padding: 5px 30px;
	margin-bottom: 20px;
	border-radius: 0px 0px 5px 5px;
}
@media screen and (min-width: 576px) {
	.box-wide {padding-top: 60px;padding-bottom: 60px;}
	.box-lg {padding: 45px;}
	.box-md {padding: 30px;}
	.box-sm {padding: 20px;}
}
@media screen and (max-width: 575px) {
	.box-wide {padding-top: 30px;padding-bottom: 30px;}
	.box-lg {padding: 30px;}
	.box-md {padding: 15px;}
	.box-sm {padding:10px;}
	.box-md p,.box-sm p {font-size: .75rem;}
}

/* table
----------------------------------------------*/
.table-a {
	width: 100%;
	border-collapse: collapse;
}

.table-a th,.table-a td {
	padding: 10px;
	border: solid 2px #fff;
	font-size: .875rem;
}
.table-a th {
	font-weight: normal;
	background: #ccc;
}
.table-a td {
	background: #F6F8F9;
}
.table-line {
	border-top: solid 1px #ccc;
}
.table-line tr {
	border-bottom: solid 1px #ccc;
}
.table-line th,.table-line td {
	padding: 10px;
	border-right: solid 1px #ccc;
}
@media screen and (max-width: 575px) {
	.table-a th,.table-a td {
		font-size: .75rem;
	}
}
.bg-lightgray .table-a th,.bg-lightgray .table-a td {
  border: 1px solid #bbb;
}
.bg-lightgray .table-a td {background:#fff;}



/* ピクト
----------------------------------------------*/
.pro-pict img {margin-right:5px;margin-bottom:5px;}

@media screen and (max-width: 575px) {
	.pict-sm {height:15px}
	.pict-md {height:30px}
}

/* button
----------------------------------------------*/
.btn-md,.btn-sm,.btn-lock-sm,.btn-xs {
  color: #fff !important;
  display: inline-block !important;
  text-decoration: none;
  line-height: 1.4;
  background: #999;
	cursor: pointer;
}
.btn-md:hover,.btn-sm:hover,.btn-lock-sm:hover,.btn-xs:hover {
	transition: all .3s;
	text-decoration: none;
}

.btn-md:after,.btn-sm:after,.btn-xs:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-left: 5px;
	vertical-align: middle;
}
.btn-lock-sm:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f4a3";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	margin-left: 5px;
	vertical-align: middle;
}
.btn-md {
  font-weight: bold;
	border-radius: 26px;
	font-size: 1rem;
}
.btn-sm,.btn-lock-sm {
	font-size: .75rem;
  border-radius: 37px;
}
.btn-xs {
	font-size: .7rem;
  border-radius: 13px;
}
.btn-md input,.btn-sm input,.btn-lock-sm input,.btn-xs input {
	cursor: pointer;
	border: none;
	padding: 0;
	color: #fff;
	background: none;
}

@media screen and (min-width: 768px) {
	.btn-md {
		padding: 15px 90px;
		margin-top: 30px;
		margin-bottom: 30px;
	}
	.btn-sm,.btn-lock-sm {
		padding: 10px 50px;
		margin-top: 15px;
		margin-bottom: 15px;
	}
	.btn-xs {
		padding: 5px 30px;
		margin-top: 15px;
		margin-bottom: 15px;
	}
}
@media screen and (max-width: 767px) {
	.btn-md {
		padding: 10px 60px;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.btn-sm,.btn-lock-sm {
		padding: 5px 25px;
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.btn-xs {
		padding: 5px 25px;
		margin-top: 10px;
		margin-bottom: 10px;
	}
}

.ul-btn-col li {
 	display:-webkit-box;
 	display:-ms-flexbox;
 	display:flex;
 	align-items: center;
 	margin-bottom: 2px;
}
.ul-btn-col a {
  color: #fff !important;
  line-height: 1.4;
	background: #005bac;
  padding: 10px 30px 10px 15px;
 	display:block;
  width: 100%;
  height: 100%;
  font-size: .875rem !important;
  position: relative;
}
.ul-btn-col a:hover {
	background: #2d74bb;
  text-decoration: none;
}
.ul-btn-col a:after {
	font: normal normal normal 1em / 1 "Phosphor";
	content: "\f31c";
	speak: never;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
  position: absolute;
  right: 15px;
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
  top: 50%;
  margin-top: -8px;
	vertical-align: middle;
}

.ul-btn-icon li {
	display: flex;
	flex-direction: column;
}
.ul-btn-icon li > div {
	flex-grow: 1;
	background:#ededed;
	border-radius: 4px;
}
.ul-btn-icon a {display: block;height: 100%;}
.ul-btn-icon a:hover {
	background:#ddd;
	text-decoration: none;
}
.ul-btn-icon a {height: 100%}
@media screen and (min-width: 768px) {
	.ul-btn-icon a img {height: 3rem;}
	.ul-btn-icon a i {font-size:3rem;}
}
@media screen and (max-width: 767px) {
	.ul-btn-icon a img {height: 2rem;}
	.ul-btn-icon a i {font-size:2rem;}
}


/* ビデオ
----------------------------------------------*/
.J-stream {width: 100%;position: relative;padding-bottom: 56.25%;aspect-ratio: 16 / 9;}
.J-stream43 {width: 100%;position: relative;padding-bottom: 75%;aspect-ratio: 4 / 3;}

.YouTube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.YouTube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* お問い合わせ
----------------------------------------------*/
.products-info,.products-info p {
	text-align: center;
	padding:
}


.info,.info p {
	text-align: center;
}
.info .heading-info {
	background: #DEE5E9;
	padding: 5px 20px;
	text-align: center;
	display: inline-block;
	font-size: .875rem;
}
.tel {
	font-size: 2.5rem;
	font-weight: bold;
}






/* -------------------------------
旧PRO用のUTSUWA修正 a-blog
------------------------------- */
.acms-container h2 {
	border-bottom: none;
	padding-bottom:0px;
}
h1 {margin: 0;}
