@charset "utf-8";

/* ------------------------------
 リセット
------------------------------ */
* {
border:0;
margin:0;
outline:0;
padding:0;
box-sizing:border-box;
font:inherit;
font-family:inherit;
font-size:100%;
font-style:inherit;
font-weight:inherit;
text-decoration:none;
vertical-align:baseline;
}
html {font-size:62.5%; width:100%; height:100%;}
body {
font-size:10px;
font-size:1.0rem;
line-height:1;
position:relative;
text-align:center;
-webkit-text-size-adjust:100%;
-webkit-font-smoothing:antialiased;
-moz-osx-font-smoothing:grayscale;
width:100%;
height:100%;
}
article, aside, dialog, figure, footer, header, main, menu, nav, section {display:block;}
audio, canvas, video {display:inline-block;}
hr {display:block;}
ol,
ul {list-style:none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after, q:before, q:after {content:""; content:none;}
input,
select {vertical-align:middle;}
table {border-collapse:collapse; border-spacing:0; empty-cells:show;}

/* ------------------------------
 サイト全体（PC）
------------------------------ */
html,
body {
	color: #323232;
	font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-weight: 500;
	line-height: 1.6;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
}
.site {
	width: 100%;
	min-width: 1240px;
	/* overflow: hidden; */
	font-size: 1.5rem;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
.cf:after {
	content: "";
	clear: both;
	display: block;
}
.fl {
	float:left;
}
.fr {
	float:right;
}
.tal {
	text-align:left;
}
.tac {
	text-align:center;
}
.tar {
	text-align:right;
}
.vat {
	vertical-align:top;
}
.vam {
	vertical-align:middle;
}
.vab {
	vertical-align:bottom;
}
.vtb {
	vertical-align:text-bottom;
}
strong,
.bold {
	font-weight: bold;
}
.nobold {
	font-weight: normal !important;
}
.auto {
	margin-left: auto;
	margin-right: auto;
}
input.none {
	display: none;
}
.sp {
	display: none !important;
}

/* 行スペース */
.b1 {
	margin-bottom: 1.7em;
}
.b2 {
	margin-bottom: 3.4em;
}
.b3 {
	margin-bottom: 5.1em;
}

/* スペース */
.mt0 {
	margin-top: 0 !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mb0 {
	margin-bottom: 0 !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb35 {
	margin-bottom: 35px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb70 {
	margin-bottom: 70px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}
.pb100 {
	padding-bottom: 100px !important;
}
/* リンク */
a {
	color: #005cab;
	text-decoration: none;
}
a:hover {
	/* text-decoration: underline;  */
}
a img {
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
a:hover img {
	opacity: 0.7;
}
a.uline,
a.uline:hover {
	text-decoration: underline;
}
/* カラー */
.red,
.orange {
	color: #f2713a !important;
	-webkit-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.blue {
	color: #005cab;
}
.cyan {
	color: #12b6ca;
}
/* フォントサイズ */
.f12 {
	font-size: 1.2rem;
}
.f13 {
	font-size: 1.3rem;
}
.f15 {
	font-size: 1.5rem;
}
.f16 {
	font-size: 1.6rem;
}
.f18 {
	font-size: 1.8rem;
}
.f20 {
	font-size: 2rem;
}
.f24 {
	font-size: 2.4rem;
}
small {
	font-size: 1.4rem;
}
sup {
	font-size: 80%;
	vertical-align: top;
}
sub {
	font-size: 80%;
	vertical-align: bottom;
}
/* ※字下げ */
.note {
	padding-left: 1em;
	text-indent: -1em;
}
.note2 {
	padding-left: 2em;
	text-indent: -2em;
}

/* ------------------------------
 サイト全体（PC）
------------------------------ */
@media print, screen and (min-width: 768px) {
	.pc_mb0 {
		margin-bottom: 0 !important;
	}
	.pc_tac {
		text-align: center;
	}
	a .img_hover {
		display: block;
		overflow: hidden;
		position: relative;
	}
	a .img_hover::before {
		content: "";
		position: absolute;
		display: block;
		z-index: 100;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: rgba(0,0,0,0);
		-webkit-transition: all .3s !important;
		transition: all .3s !important;
	}
	a:hover .img_hover::before {
		background: rgba(0,0,0,.35);
	}
	a .img_hover img {
		display: block;
		overflow: hidden;
		opacity: 1;
		background-blend-mode: multiply;
		transition: all .3s !important;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
	a:hover .img_hover img {
		-webkit-transform: scale(1.03);
		transform: scale(1.03);
	}
	/* -- TEL Link -- */
	a[href^="tel:"] {
		color: #323232;
		text-decoration: none;
		pointer-events: none;
		cursor: default;
	}
}

/* ------------------------------
 サイト全体（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	html,
	body {
		min-width: 100%;
		max-width: 100%;
	}
	.fl,
	.fr {
		float: none;
	}
	.site {
		min-width: 320px;
	}
	.pc {
		display: none;
	}
	.sp {
		display: block !important;
	}
	.pc_br br {
		display: none;
	}
	.sp480more_br {
		display: none;
	}
	.sp_tac {
		text-align: center;
	}
	.sp_tal {
		text-align: left;
	}
	/* スペース */
	.mt10 {
		margin-top: 5px !important;
	}
	.mb10 {
		margin-bottom: 5px !important;
	}
	.mb15 {
		margin-bottom: 10px !important;
	}
	.mb20 {
		margin-bottom: 10px !important;
	}
	.mb25 {
		margin-bottom: 15px !important;
	}
	.mb30 {
		margin-bottom: 15px !important;
	}
	.mb35 {
		margin-bottom: 20px !important;
	}
	.mb40 {
		margin-bottom: 20px !important;
	}
	.mb50 {
		margin-bottom: 30px !important;
	}
	.mb60 {
		margin-bottom: 40px !important;
	}
	.mb70 {
		margin-bottom: 50px !important;
	}
	.mb80 {
		margin-bottom: 55px !important;
	}
	.nopd {
		padding: 0 !important;
	}
	/* フォントサイズ */
	.f12 {
		font-size: 1.1rem;
	}
	.f13 {
		font-size: 1.2rem;
	}
	.f16 {
		font-size: 1.5rem;
	}
	.f18 {
		font-size: 1.6rem;
	}
	.f20 {
		font-size: 1.8rem;
	}
	.f24 {
		font-size: 2rem;
	}
	small {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 480px) {
	.sp480more_br {
		display: inline;
	}
}

/* ------------------------------
 ヘッダー
------------------------------ */
.header {
	position: fixed;
	height: 80px;
	z-index: 1000;
	width: 100%;
	background: #fff;
}
.headerBlock  {
	position: relative;
	-webkit-transition: 0.1s ease-in-out;
	-moz-transition: 0.1s ease-in-out;
	-o-transition: 0.1s ease-in-out;
	transition: 0.1s ease-in-out;
}
.headerBlock .gnav .headerMenu > li > p a {
	display: block;
}
/* -- ロゴ -- */
.logo img {
	width: 160px;
	height: auto;
}
.logo:hover img {
	opacity: 1;
}
/* -- 検索 -- */
.searchWrapper input {
	border-radius: 0;
	-webkit-appearance: none;
}
.searchWrapper input[type="text"] {
	height: 40px !important;
	padding: 0 8px !important;
	border: none !important;
	background-color: #8c9dab !important;
	background-position-x: 8px !important;
	color: #fff;
	line-height: 40px;
}
.searchWrapper input[type="submit"] {
	height: 40px;
	background: linear-gradient(90deg, rgba(0,92,171,1) 10%, rgba(18,182,202,1) 100%);
	color: #fff;
	font-weight: bold;
	cursor: pointer;
}
/* IE11 のみ適用される */
_:-ms-lang(x)::-ms-backdrop, .searchWrapper input[type="text"] {
	height: 40px !important;
	padding-top: 4px !important;
	line-height: 36px !important;
}
.searchWrapper input::-webkit-input-placeholder {
	color: #b3b4b4;
}
.searchWrapper input::-moz-placeholder { /* Firefox */
	color: #b5b5b5;
}
.searchWrapper input:-ms-input-placeholder { /* IE */
	color: #b5b5b5;
}
.searchWrapper input::-ms-input-placeholder { /* Edge */
	color: #b5b5b5;
}

/* ------------------------------
 ヘッダー（PC）
------------------------------ */
@media print, screen and (min-width: 768px) {
	.header {
		min-width: 1240px;
	}
	.onlineShop-btn,
	.yt-btn,
	.slidemenu-btn,
	.btn-submenu-toggle {
		display: none !important;
	}
	.headerBlock {
		width: 100%;
	}
	.headerBlock::after {
		content: "";
		display: block;
		clear: both;
	}
	* + .gnav .headerMenu,
	.gnav .headerMenu:after {
		content: "";
		clear: both;
		display: block;
	}
	/* -- ロゴ -- */
	.logoWrapper {
		float: left;
		width: 224px;
	}
	.logo {
		padding: 28px 32px;
	}
	.headerBlock .gnav {
		float: right;
		padding-right: 208px;
	}
	.headerBlock .gnav .headerMenu {
		visibility: visible;
		position: relative;
		margin: 0 auto;
		font-size: 0;
	}
	.headerBlock .gnav .headerMenu > li {
		float: left;
		position: relative;
		font-size: 1.5rem;
		font-weight: bold;
	}
	.headerBlock .gnav .headerMenu > li:not(:nth-child(8)):not(:nth-child(9)) {
		margin-left: .5em;
		margin-right: .5em;
	}
	.headerBlock .gnav .headerMenu > li:first-child {
		margin-left: 0 !important;
	}
	/* オンラインショップ */
	.headerBlock .gnav .headerMenu > li:nth-child(6) {
		margin-left: .5em;
		margin-right: 1em;
		padding-top: 28px;
		font-size: 1.2rem;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(6)::before {
		content: "";
		display: inline-block;
		width: 27px;
		height: 24px;
		margin-bottom: 0;
		margin-right: 5px;
		background: url(../img/icon_cart.png) no-repeat 0 0 / cover;
		vertical-align: middle;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(6) a {
		color: #323232;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(6) a:hover {
		color: #323232;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(7) {
		display: none;
	}
	.headerBlock .gnav .headerMenu > li > p a {
		padding-top: 28px;
		height: 80px;
		color: #323232;
		-webkit-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}
	.headerBlock .gnav .headerMenu > li > p a::after {
		content: "";
		width: 100%;
		height: 0;
		background-color: #12b6ca;
		display: block;
		position: absolute;
		top: 0;
		-webkit-transition: 0.2s ease-in-out;
		transition: 0.2s ease-in-out;
	}
	.headerBlock .gnav .headerMenu > li:hover > p a {
		color: #12b6ca;
	}
	.headerBlock .gnav .headerMenu > li:hover > p a::after,
	.headerBlock .gnav .headerMenu > li.on > p a::after {
		height: 6px;
	}
	.headerBlock .gnav .headerMenu > li > p a.down {
		padding-right: 1.3em;
	}
	.headerBlock .gnav .headerMenu > li > p a.down::before {
		content: "";
		display: block;
		position: absolute;
		top: 50%;
		right: 5px;
		width: 0;
		height: 0;
		margin-top: -4px;
		padding: 0;
		border: 4px solid transparent;
		border-top: 7px solid #323232;
		border-radius: 0;
		background-color: transparent;
		font-size: 0;
		line-height: 0;
		-webkit-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}
	/* IE11 のみ適用される */
	_:-ms-lang(x)::-ms-backdrop, .headerBlock .gnav .headerMenu > li > p a.down::before {
		margin-top: -6px;
	}
	.headerBlock .gnav .headerMenu > li:hover > p a.down::before {
		border-top: 7px solid #12b6ca;
	}
	.headerBlock .gnav .headerMenu > li.search > .open-btn {
		width: 50px;
		height: 80px;
		background: url(/shared/img/icon_search.png) no-repeat center center / 20px 20px;
		color: rgba(50,50,50,0);
		cursor: pointer;
	}
	.headerBlock .gnav .headerMenu > li.search > .open-btn::before,
	.headerBlock .gnav .headerMenu > li.search > .open-btn::after {
		content: "";
		display: block;
		position: absolute;
		top: 28px;
		left: 0;
		width: 1px;
		height: 24px;
		background-color: #dae4ed;
	}
	.headerBlock .gnav .headerMenu > li.search > .open-btn::after {
		left: auto;
		right: 0;
	}
	.headerBlock .gnav .headerMenu > li.search > .open-btn.btnactive {
		background: url(/shared/img/icon_close.png) no-repeat center center / 20px 20px;
	}
	.headerBlock .gnav .headerMenu > li.search:hover > p a::after,
	.headerBlock .gnav .headerMenu > li.search.on > p a::after {
		height: 0;
	}
	/* -- 検索 -- */
	.searchWrapper input[type="text"] {
		width: 200px !important;
	}
	.searchWrapper input[type="submit"] {
		width: 64px;
		margin-left: -5px;
	}
	/* IE11 のみ適用される */
	_:-ms-lang(x)::-ms-backdrop, .searchWrapper input[type="submit"] {
		padding-top: 5px;
	}
	/* -- YouTube -- */
	.headerBlock .gnav .headerMenu > li.yt > a {
		display: block;
		width: 50px;
		height: 80px;
		padding-top: 30px;
		text-align: center;
		line-height: 1;
	}
	.headerBlock .gnav .headerMenu > li.yt > a > img {
		width: 28px;
		height: 20px;
	}
	/* -- サブメニュー -- */
	.headersubMenu {
		font-size: 0;
		position: absolute;
		top: 0;
		right: 0;
		width: 208px;
	}
	.headersubMenu li {
		display: inline-block;
		width: 104px;
		font-size: 1.2rem;
		line-height: 1.3;
		font-weight: bold;
		vertical-align: top;
	}
	.headersubMenu li a {
		display: block;
		height: 104px;
		padding-top: 52px;
		color: #fff;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition: 0.3s ease-in-out;
		-o-transition: 0.3s ease-in-out;
		transition: 0.3s ease-in-out;
	}
	.headersubMenu li.contact a {
		background: #12b6ca url(../img/icon_mail.png) no-repeat center 22px / 26px 18px;
	}
	.headersubMenu li.catalog a {
		padding-top: 59px;
		background: #005bac url(../img/icon_catalog.png) no-repeat center 22px / 26px 22px;
	}
	.headersubMenu li.contact a:hover {
		background: #5accda url(../img/icon_mail.png) no-repeat center 22px / 26px 18px;
	}
	.headersubMenu li.catalog a:hover {
		background: #4c8cc5 url(../img/icon_catalog.png) no-repeat center 22px / 26px 22px;
	}
}
@media print, screen and (min-width: 1303px) {
	.headerBlock .gnav .headerMenu > li:not(:nth-child(8)):not(:nth-child(9)) {
		margin-left: .75em;
		margin-right: .75em;
	}
	/* -- オンラインショップ -- */
	.headerBlock .gnav .headerMenu > li:nth-child(6) {
		margin-left: .75em;
		margin-right: 1.5em;
	}
	/* -- 検索 -- */
	.headerBlock .gnav .headerMenu > li.search > .open-btn {
		width: 60px;
	}
	/* -- YouTube -- */
	.headerBlock .gnav .headerMenu > li.yt > a {
		width: 60px;
		padding-top: 28px;
	}
	.headerBlock .gnav .headerMenu > li.yt > a > img {
		width: 34px;
		height: 24px;
	}
}
@media print, screen and (min-width: 1499px) {
	.headerBlock .gnav .headerMenu > li:not(:nth-child(8)):not(:nth-child(9)) {
		margin-left: 1.5em;
		margin-right: 1.5em;
	}
	/* -- オンラインショップ -- */
	.headerBlock .gnav .headerMenu > li:nth-child(6) {
		margin-left: 1.5em;
		margin-right: 3em;
	}
	/* -- 検索 -- */
	.headerBlock .gnav .headerMenu > li.search > .open-btn {
		width: 80px;
	}
	/* -- YouTube -- */
	.headerBlock .gnav .headerMenu > li.yt > a {
		width: 80px;
	}
}
/* ------------------------------
 プルダウンメニュー（PC）
------------------------------ */
@media print, screen and (min-width: 768px) {
	/* 製品情報メニュー */
	.headerBlock .gnav .headerMenu > li > div.pc {
		display: block;
		overflow-y: auto;
		visibility: hidden;
		opacity: 0;
		position: fixed;
		top: 80px;
		left: 0;
		width: 100%;
		max-height: calc(100vh - 80px);
		padding: 12px 0 50px;
		background: #fff;
		color: #000;
		-webkit-transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
		transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > div {
		width: 1200px;
		margin-left: auto;
		margin-right: auto;
		text-align: left;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsTop {
		margin-bottom: 40px;
		padding-bottom: 20px;
		border-bottom: 1px solid #dae4ed;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsTop > a {
		color: #000;
		font-size: 2.8em;
		font-weight: bold;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsTop > a::after {
		content: "\f105";
		display: inline-block;
		width: 24px;
		height: 24px;
		margin-left: 11px;
		margin-bottom: 6px;
		padding-left: 3px;
		border-radius: 100%;
		box-sizing: border-box;
		background: #005cab;
		color: #fff;
		font-family: 'FontAwesome';
		font-size: 2rem;
		line-height: 23px;
		font-weight: normal;
		text-align: center;
		vertical-align: middle;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu::after {
		content: "";
		clear: both;
		display: block;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu a {
		color: #000;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu a:hover {
		color: #005cab;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu a[target="_blank"]::after {
		content: "";
		display: inline-block;
		width: 12px;
		height: 12px;
		margin-left: 5px;
		background: url(/wm/img/icon/blank.png) no-repeat 0 0 / cover;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu .imgIn {
		display: block;
		width: 100%;
		height: 56px;
		padding-top: 16px;
		padding-left: 15px;
		font-size: 1.6rem;
		font-weight: bold;
		margin-bottom: 10px;
		background-color: #12b6ca;
		color: #fff;
		transition: all .3s !important;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft li:first-child .imgIn {
		background: rgba(0,92,171,1);
		background: linear-gradient(90deg, rgba(0,92,171,1) 0%, rgba(18,182,202,1) 100%);
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu .imgIn:hover {
		opacity: .7;
		color: #fff;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft span {
		display: inline-block;
		margin-bottom: 2px;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft span::before {
		content: "\f105";
		display: inline-block;
		width: 16px;
		height: 16px;
		margin-right: 4px;
		margin-bottom: 4px;
		padding-left: 2px;
		border-radius: 100%;
		box-sizing: border-box;
		background: #005cab;
		color: #fff;
		font-family: 'FontAwesome';
		font-size: 1.3rem;
		line-height: 16px;
		font-weight: normal;
		text-align: center;
		vertical-align: middle;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight span {
		font-size: 1.25rem;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > ul {
		width: 584px;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft {
		display: flex;
		flex-flow: row wrap;
		float: left;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li {
		width: 276px;
		padding-top: 20px;
		padding-bottom: 16px;
		border-top: 1px solid #dae4ed;
		border-bottom: 1px solid #dae4ed;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child {
		width: 584px;
		padding: 0;
		border: none;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > a {
		display: block;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > ul {
		display: flex;
		flex-flow: row wrap;
		margin-bottom: 30px;
		column-gap: 32px;
	}
	/* .headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > ul {
		margin-bottom: 45px;
	} */
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > ul > li {
		width: 276px;
		font-size: 1.4rem;
		line-height: 1.85;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > ul > li:nth-child(6) {
		display: none;
	}
	/* .headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:first-child > ul > li:nth-child(even) {
		margin-left: 32px;
	} */
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:nth-child(even) {
		margin-right: 32px;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:last-child {
		width: 100%;
		margin-right: 0;
		padding-bottom: 0;
		border-top: none;
		border-bottom: none;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:last-child a {
		position: relative;
		display: block;
		padding: 16px 0 14px;
		border-radius: 28px;
		background-color: #005bac;
		color: #fff;
		font-weight: bold;
		text-align: center;
		transition: all .3s;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:last-child a::after {
		content: "\f105";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		right: 20px;
		width: 16px;
		height: 16px;
		margin: auto 0;
		padding-left: 2px;
		border-radius: 100%;
		box-sizing: border-box;
		background: #fff;
		color: #005cab;
		font-family: 'FontAwesome';
		font-size: 1.3rem;
		line-height: 16px;
		font-weight: normal;
		text-align: center;
		vertical-align: middle;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:last-child a:hover {
		background-color: #4c8cc5;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuLeft > li:last-child a span::before {
		content: none;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight {
		display: flex;
		flex-flow: row wrap;
		gap: 22px 32px;
		float: right;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li {
		width: 276px;
	}
	/* .headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:nth-child(2),
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:nth-child(4) {
		margin-left: 32px;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:nth-child(n+3)  {
		padding-top: 17px;
	} */
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li > ul > li {
		font-size: 1.4rem;
		line-height: 1.85;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:first-child > ul {
		width: 276px;
	}
	.headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:nth-child(5) > ul > li {
		line-height: 1.3;
	}
	/* .headerBlock .gnav .headerMenu > li > div.pc > .productsMenu > .productsMenuRight > li:first-child > ul + ul {
		margin-left: 32px;
	} */
	/* お役立ち情報・企業情報メニュー */
	.headerBlock .gnav .headerMenu > li > ul {
		display: block;
		visibility: hidden;
		opacity: 0;
		position: absolute;
		top: 80px;
		left: -53px;
		width: 215px;
		padding: 25px 0 20px;
		background: #183a57;
		color: #fff;
		-webkit-transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
		transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
	}
	.headerBlock .gnav .headerMenu > li:first-child > ul {
		display: none;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(4) > ul {
		left: -89px;
		width: 258px;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(8) > .searchWrapper {
		display: block;
		visibility: hidden;
		opacity: 0;/*透過を0に*/
		position: absolute;
		top: 80px;
		left: auto;
		right: 0;
		z-index: -1;/*最背面に設定*/
		width: 360px;
		padding: 48px;
		background: #183a57;
		color: #fff;
		-webkit-transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
		transition: visibility 0s ease .15s, opacity .15s ease-in-out .15s;
	}
	.headerBlock .gnav .headerMenu > li > ul::before {
		content: "";
		display: block;
		position: absolute;
		width: 0;
		height: 0;
		top: -7px;
		left: 50%;
		margin-left: -8px;
		border-right: 8px solid transparent;
		border-bottom: 8px solid #183a57;
		border-left: 8px solid transparent;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(8) > .searchWrapper::before {
		content: "";
		display: block;
		position: absolute;
		top: -7px;
		left: auto;
		right: 17px;
		width: 0;
		height: 0;
		margin-left: 0;
		border-right: 8px solid transparent;
		border-bottom: 8px solid #183a57;
		border-left: 8px solid transparent;
	}
	.headerBlock .gnav .headerMenu > li > ul:hover,
	.headerBlock .gnav .headerMenu > li:hover > ul,
	.headerBlock .gnav .headerMenu > li:hover > div.pc {
		visibility: visible;
		opacity: 1;
	}
	.headerBlock .gnav .headerMenu > li:nth-child(8) > .searchWrapper.panelactive {
		visibility: visible;
		opacity: 1;/*不透明に変更*/
		z-index: 3;/*全面に出現*/
	}
	/* -- 下層メニュー -- */
	.headerBlock .gnav .headerMenu > li > ul > li {
		text-align: left;
	}
	.headerBlock .gnav .headerMenu > li > ul > li a {
		display: block;
		position: relative;
		height: auto;
		padding: 0 0 0 48px;
		color: #fff;
		font-size: 1.5rem;
		line-height: 2.1;
		text-decoration: none;
		-webkit-transition: 0.05s ease-in-out;
		transition: 0.05s ease-in-out;
	}
	.headerBlock .gnav .headerMenu > li > ul > li a:hover {
		color: #12b6ca;
	}
	.headerBlock .gnav .headerMenu > li > ul > li a::before {
		content: "";
		position: absolute;
		top: 12px;
		left: 35px;
		width: 4px;
		height: 4px;
		margin-right: 10px;
		border-top: 2px solid #12b6ca;
		border-right: 2px solid #12b6ca;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	/* IE11 のみ適用される */
	_:-ms-lang(x)::-ms-backdrop, .headerBlock .gnav .headerMenu > li > ul > li a::before {
		top: 10px;
	}
}
@media print, screen and (min-width: 1303px) {
	.headerBlock .gnav .headerMenu > li:nth-child(8) > .searchWrapper::before {
		right: 22px;
	}
}
@media print, screen and (min-width: 1499px) {
	.headerBlock .gnav .headerMenu > li:nth-child(8) > .searchWrapper::before {
		right: 32px;
	}
}
/* ------------------------------
 ヘッダー（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	.header {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1000;
		width: 100%;
		min-width: 100%;
		height: 60px;
	}
	/* -- ロゴ -- */
	.logoWrapper {
		position: relative;
		top: 0;
		z-index: 10;
		width: 100%;
		height: 60px;
		background-color: #fff;
	}
	.logo {
		padding: 16px 5%;
		text-align: left;
	}
	.logo img {
		width: 186px;
		height: auto;
	}
	/* -- オンラインショップボタン -- */
	.onlineShop-btn {
		display: block;
		position: absolute;
		top: 0;
		right: 97px;
		width: 37px;
		height: 60px;
		padding: 18px 5px;
		transition: .3s ease-in-out;
	}
	/* -- YouTubeボタン -- */
	.yt-btn {
		display: block;
		position: absolute;
		top: 0;
		right: 60px;
		width: 37px;
		height: 60px;
		padding: 21px 0 20px 10px;
		line-height: 1;
		transition: .3s ease-in-out;
	}
	/* -- 開閉メニューボタン -- */
	.slidemenu-btn {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 60px;
		height: 60px;
		transition: .3s ease-in-out;
	}
	.menu-icon,
	.menu-icon:before,
	.menu-icon:after {
		display: block;
		position: absolute;
		width: 24px;
		height: 3px;
		background-color: #005cab;
	}
	.menu-icon:before,
	.menu-icon:after {
		-webkit-transition: color .25s ease;
		transition: color .25s ease;
	}
	.page-open-slidemenu {
		overflow: hidden;
	}
	.page-open-slidemenu .menu-icon:before,
	.page-open-slidemenu .menu-icon:after {
		background-color: #005cab;
	}
	.menu-icon:before,
	.menu-icon:after {
		content: "";
		-webkit-transform-origin: 50% 50%;
		-o-transform-origin: 50% 50%;
		-ms-transform-origin: 50% 50%;
		-moz-transform-origin: 50% 50%;
		transform-origin: 50% 50%;
	}
	.menu-icon {
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		-webkit-transition: all .25s ease-out;
		transition: all .25s ease-out;
	}
	.menu-icon:before {
		top: -7px;
		-webkit-transition: -webkit-transform .1s ease-out;
		transition: -webkit-transform .1s ease-out;
		transition: transform .1s ease-out;
		transition: transform .1s ease-out, -webkit-transform .1s ease-out;
	}
	.menu-icon:after {
		bottom: -7px;
		-webkit-transition: -webkit-transform .1s ease-out;
		transition: -webkit-transform .1s ease-out;
		transition: transform .1s ease-out;
		transition: transform .1s ease-out, -webkit-transform .1s ease-out;
	}
	.page-open-slidemenu .menu-icon {
		background-color: transparent;
	}
	.page-open-slidemenu .menu-icon:before {
		-webkit-transform: translateY(7px) rotate(45deg);
		transform: translateY(7px) rotate(45deg);
		-webkit-transition: -webkit-transform .1s ease-out .25s;
		transition: -webkit-transform .1s ease-out .25s;
		transition: transform .1s ease-out .25s;
		transition: transform .1s ease-out .25s, -webkit-transform .1s ease-out .25s;
	}
	.page-open-slidemenu .menu-icon:after {
		-webkit-transform: translateY(-7px) rotate(-45deg);
		transform: translateY(-7px) rotate(-45deg);
		-webkit-transition: -webkit-transform .1s ease-out .25s;
		transition: -webkit-transform .1s ease-out .25s;
		transition: transform .1s ease-out .25s;
		transition: transform .1s ease-out .25s, -webkit-transform .1s ease-out .25s;
	}
	/* -- 開閉メニュー -- */
	.headerBlock .gnav {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
		-webkit-transition: -webkit-transform .3s ease-in-out;
		transition: -webkit-transform .3s ease-in-out;
		transition: transform .3s ease-in-out;
		transition: transform .3s ease-in-out, -webkit-transform .3s ease-in-out;
		position: absolute;
		width: 100%;
		padding: 28px 5%;
		background: #183a57;
	}
	.headerBlock .gnav .headerMenu > li > p a,
	.headerBlock .gnav .headerMenu > li > ul > li > a {
		color: #fff;
	}
	.page-open-slidemenu .headerBlock .gnav {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		max-height: 100vh;
		max-height: -webkit-calc(100vh - 60px);
		max-height: calc(100vh - 60px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
	.page-open-slidemenu .headerBlock .gnav .headerMenu > li {
		position: relative;
		text-align: left;
		z-index: 1;
	}
	.page-open-slidemenu .headerBlock .gnav .headerMenu > li:first-child {
		border-top: 1px solid #466178;
	}
	.page-open-slidemenu .headerBlock .gnav .headerMenu > li:not(:last-child) {
		border-bottom: 1px solid #466178;
	}
	/* -- 開閉ボタン 開く処理 -- */
	.headerBlock .gnav .headerMenu > li > ul {
		position: relative;
		overflow: hidden;
		display: none;
		padding-bottom: 15px;
	}
	/* -- カテゴリー -- */
	.headerBlock .gnav .headerMenu > li a:not(.btn-submenu-toggle)  {
		display: block;
		position: relative;
		width: 100%;
		padding: 16px 0;
		line-height: 1;
		font-weight: bold;
		text-align: left;
		text-decoration: none;
	}
	.headerBlock .gnav .headerMenu > li.onlineShop {
		display: none;
	}
	.headerBlock .gnav .headerMenu > li.language {
		padding: 11px 0;
		color: #fff;
		font-weight: bold;
	}
	.headerBlock .gnav .headerMenu > li.language::before {
		content: "";
		display: inline-block;
		width: 16px;
		height: 16px;
		margin-bottom: 3px;
		/* margin-left: 11px; */
		margin-right: 5px;
		background: url(../img/icon_globe_w.png) no-repeat 0 0 / cover;
		vertical-align: middle;
	}
	.headerBlock .gnav .headerMenu > li.language a {
		display: inline;
		padding: 0;
		color: #fff;
	}
	.headerBlock .gnav .headerMenu > li.search  {
		border-bottom: none !important;
	}
	.headerBlock .gnav .headerMenu > li.search > .open-btn {
		display: none;
	}
	.headerBlock .gnav .headerMenu > li.search > .searchWrapper {
		display: block;
		padding: 28px 0;
	}
	/* -- 検索 -- */
	.searchWrapper {
		font-size: 0;
	}
	.searchWrapper input[type="text"] {
		width: 80%;
		font-size: medium;
	}
	.searchWrapper input[type="submit"] {
		width: 20%;
		font-size: medium;
	}
	/* -- YouTube -- */
	.headerBlock .gnav .headerMenu > li.yt {
		display: none;
	}
	/* -- ボタン -- */
	.headerBlock .gnav .headerMenu > li.sp a {
		display: inline-block;
		width: 48.5%;
		height: 108px;
		padding: 54px 20px 0;
		color: #fff;
		font-size: 1.4rem;
		line-height: 1.3;
		text-align: center;
		font-weight: bold;
		transition: .3s ease-in-out;
	}
	.headerBlock .gnav .headerMenu > li.sp a.btn-contact {
		float: left;
		background: #12b6ca url(../img/icon_mail.png) no-repeat center 22px / 26px 18px;
	}
	.headerBlock .gnav .headerMenu > li.sp a.btn-catalog {
		float: right;
		padding-top: 59px;
		background: #005bac url(../img/icon_catalog.png) no-repeat center 21px / 26px 22px;
	}
	.headerBlock .gnav .headerMenu > li.sp a.btn-contact:hover {
		background: #5accda url(../img/icon_mail.png) no-repeat center 22px / 26px 18px;
	}
	.headerBlock .gnav .headerMenu > li.sp a.btn-catalog:hover {
		background: #4c8cc5 url(../img/icon_catalog.png) no-repeat center 21px / 26px 22px;
	}
	/* -- プルダウンメニュー部分 -- */
	.headerBlock .gnav .headerMenu > li > ul > li > a:before {
		content: "";
		position: absolute;
		top: 12px;
		left: 8px;
		width: 4px;
		height: 4px;
		margin-right: 10px;
		border-top: 2px solid #12b6ca;
		border-right: 2px solid #12b6ca;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.headerBlock .gnav .headerMenu > li:before,
	.headerBlock .gnav .headerMenu > li:after {
		content: "";
		display: table;
	}
	.headerBlock .gnav .headerMenu > li:after {
		clear: both;
	}
	.headerBlock .gnav .headerMenu > li > ul > li > a {
		width: 100%;
		padding: 7px 0 7px 20px !important;
		border: none !important;
		font-size: 1.4rem;
		line-height: 1.2 !important;
		font-weight: 400 !important;
		text-decoration: none;
	}
	.headerBlock .gnav .headerMenu > li:last-child > ul > li,
	.headerBlock .gnav .headerMenu > li:nth-last-child(2) > ul > li {
		display: none !important;
	}
	/* -- サブメニュー --  */
	.headersubMenu {
		display: none;
	}
	/* -- トグルボタン -- */
	.btn-submenu-toggle {
		display: block;
		width: 60px;
		position: absolute;
		top: 0;
		right: 0;
		height: 100%;
		z-index: 10;
	}
	.btn-submenu-toggle:before,
	.btn-submenu-toggle:after {
		content: '';
		position: absolute;
		display: block;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		background-color: #fff;
		-webkit-transition: background-color .2s ease-in-out;
		transition: background-color .2s ease-in-out;
	}
	.btn-submenu-toggle:before {
		width: 2px;
		height: 14px;
	}
	.btn-submenu-toggle:after {
		width: 14px;
		height: 2px;
	}
	.headerBlock .gnav .headerMenu > li > p {
		position: relative;
	}
	.is-open .btn-submenu-toggle:before {
		background-color: transparent;
	}
}
@media screen and (max-width: 359px) {
	.logo {
		padding: 18px 5% 19px;
	}
	.logo img {
		width: 154px;
	}
}

/* ------------------------------
 コンテンツ
------------------------------ */
.menu-layer {
	display: none;
}
.contentsHome,
.contents {
	position: relative;
	width: 100%;
	background: #fff;
}
.contents {
	text-align: left;
}
.inlineBlock {
	display: inline-block;
	width: auto !important;
}

/* ------------------------------
 コンテンツ（PC）
------------------------------ */
@media print, screen and (min-width: 768px) {
	.contentsHome,
	.contents {
		min-width: 1240px;
		padding-top: 80px;
	}
	.contents {
		margin-bottom: 100px;
	}
	.contents .cms_block,
	.contents .cms_block.wide .cms_text {
		width: 1200px;
		margin-left: auto;
		margin-right: auto;
	}
	.contents .cms_block .contentsMain {
		float: left;
		width: 779px;
	}
	.contents .cms_block .contentsMain .cms_block {
		width: 779px;
	}
	.contents .cms_block .side {
		float: right;
		width: 358px;
	}
}
.contents .cms_block.wide {
	width: 100%;
}
.contents .cms_block.wide .cms_text::after {
	content: "";
	display: block;
	clear: both;
}

/* -- サイドナビ -- */
.sideNav > li {
	border-bottom: 1px solid #dcdcdc;
}
.sideNav > li:first-child {
	border-top: 1px solid #dcdcdc;
}
.sideNav > li a {
	color: #323232;
}
.sideNav > li > a {
	display: block;
	padding: 20px 0;
}
.sideNav > li a:hover,
.sideNav > li.on > a {
	color: #005cab;
	font-weight: bold;
}
.sideNav > li > a::before {
	content: "\f105";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-bottom: 4px;
	margin-left: 24px;
	margin-right: 8px;
	padding-left: 2px;
	border-radius: 100%;
	box-sizing: border-box;
	background: #005cab;
	color: #fff;
	font-family: 'FontAwesome';
	font-size: 1.3rem;
	line-height: 16px;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
}
.sideNav > li > ul {
	margin: -15px 0 10px 28px;
}
.sideNav > li > ul > li > a {
	display: block;
	padding: 5px 0;
}
.sideNav > li > ul > li > a::before {
	content: "";
	display: inline-block;
	width: 4px;
	height: 4px;
	margin-right: 16px;
	border-top: 1px solid #005cab;
	border-right: 1px solid #005cab;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	vertical-align: middle;
}


/* ------------------------------
 コンテンツ（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	/* #bggr {
		position: relative;
		z-index: 1;
	} */
	.menu-layer {
		width: 100%;
		height: 100%;
		position: absolute;
		background-color: rgba(0,0,0,.2);
		top: 0;
		left: 0;
		z-index: 10;
	}
	.page-open-slidemenu .menu-layer {
		display: block;
	}
	.page-open-slidemenu .site {
		overflow: hidden;
	}
	.contentsHome,
	.contents {
		min-width: 320px;
		padding-top: 60px;
	}
	.contents {
		margin-bottom: 40px;
	}
	.contents .cms_block,
	.contents .cms_block.wide .cms_text,
	.contents .cms_block.wide .cms_image {
		width: 90%;
		margin-left: 5%;
		margin-right: 5%;
	}
	.contents .cms_block.wide {
		margin-left: 0;
		margin-right: 0;
	}
	.contents .cms_block .contentsMain {
		margin-bottom: 40px;
	}
	.contents .cms_block .contentsMain .cms_block {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
	}

	/* -- サイドナビ -- */
	.sideNav {
		width: 110%;
		margin: 0 -5%;
	}
	.sideNav > li:last-child {
		border-bottom: none;
	}
	.sideNav > li > a {
		padding: 15px 0;
	}
	.sideNav > li > ul {
		margin: -10px 0 10px 28px;
	}
}


/* ------------------------------
 タイトル（PC）
------------------------------ */
.heading {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 160px;
	background: #eaf3f5 url(/shared/img/heading_bg.png) repeat center center / cover;
	text-align: center;
}
@media print, screen and (min-width: 768px) and (max-width: 1920px) {
	.heading {
		background-size: 1920px 160px;
	}
}
/* ------------------------------
 タイトル（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	.heading {
		height: 100px;
		margin-bottom: 40px;
		background: #eaf3f5 url(/shared/img/heading_bg_sp.png) repeat center center / cover;
	}
}


/* ------------------------------
 パンくず（PC）
------------------------------ */
.crumb {
	font-size: 1.2rem;
	text-align: left;
	width: 1200px;
	margin: 25px auto 70px;
}
.crumb a {
	color: #005bac;
	text-decoration: underline;
}
.crumb a:hover {
	text-decoration: underline;
}
.crumb a::after {
	content: "";
	display: inline-block;
	width: 6px;
	height: 6px;
	margin: 0 1em;
	border-top: 1px solid #bebebe;
	border-right: 1px solid #bebebe;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.crumb a:hover::after {
	text-decoration: none;
}

/* -- 製品情報下層パンくず -- */
.productsPage .crumb {
	font-size: 1.2rem;
	text-align: left;
	width: 100%;
	margin: 0;
	padding: 12px 0 13px;
	background-color: #eaf3f5;
}
.productsPage .crumbIn {
	width: 1200px;
	margin: 0 auto;
}

/* ------------------------------
 パンくず（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	.crumb {
		display: none;
	}
}


/* ------------------------------
 カテゴリーメニュー
------------------------------ */
.contentsNav {
	display: flex;
	flex-flow: row wrap;
}
.contentsNav li {
	text-align: left;
	margin-bottom: 60px;
}
.contentsNav li a {
	display: block;
	color: #323232;
}
.contentsNav li p {
	margin-top: 20px;
	font-size: 1.8rem;
	font-weight: bold;
}
.contentsNav li p::after {
	content: "\f105";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 7px;
	margin-bottom: 4px;
	padding-left: 2px;
	border-radius: 100%;
	box-sizing: border-box;
	background: #005cab;
	color: #fff;
	font-family: 'FontAwesome';
	font-size: 1.3rem;
	line-height: 16px;
	font-weight: normal;
	text-align: center;
	vertical-align: middle;
}
.contentsNav li div:not(.img_hover) {
	margin-top: 15px;
}

/* ------------------------------
 カテゴリーメニュー（PC）
------------------------------ */
@media print, screen and (min-width: 768px) {
	.contentsNav li {
		width: 358px;
	}
	.contentsNav li:not(:nth-child(3n+1)) {
		margin-left: 63px;
	}
}

/* ------------------------------
 カテゴリーメニュー（スマホ）
------------------------------ */
@media screen and (max-width: 767px) {
	.contentsNav li {
		width: 49%;
		margin-bottom: 30px;
	}
	.contentsNav li:not(:nth-child(2n+1)) {
		margin-left: 2%;
	}
	.contentsNav li p {
		margin-top: 10px;
		font-size: 1.7rem;
	}
	.contentsNav li div:not(.img_hover) {
		margin-top: 5px;
	}
}

@media screen and (max-width: 479px) {
	.contentsNav li {
		width: 100%;
	}
	.contentsNav li:not(:nth-child(2n+1)) {
		margin-left: 0;
	}
	.contentsNav li img {
		width: 100%;
	}
}

/* ------------------------------
 フッター
------------------------------ */
.footer {
	text-align: left;
}
/* -- CONTACT -- */
.contactBlock {
	background: #eaf3f5 url(/shared/img/contact_bg.png) no-repeat center center / cover;
}
.contactBox {
	background: #fff;
}
.contactBox li {
	text-align: center;
}
.contactBox li:first-child {
	line-height: 1.6;
}
.contactBox li .cc {
	height: 28px;
	margin-bottom: 12px;
	line-height: 28px;
	border-radius: 14px;
	background: linear-gradient(90deg, rgba(0,92,171,1) 0%, rgba(18,182,202,1) 100%);
	background-color: rgba(0,92,171,1);
	color: #fff;
	font-weight: bold;
}
.contactBox li .call {
	color: #005bac;
	font-size: 3.2rem;
	line-height: 1;
	font-weight: bold;
}
.contactBox li .call span {
	font-size: 2rem;
}
.contactBox li .call a {
	color: #005bac;
}
.contactBox li > img {
	width: 243px;
	height: 14px;
	line-height: 1;
}
.contactBox .btn a {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100%;
	padding: 0;
	font-size: 1.8rem;
}
.contactBox .btn a span::before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 15px;
	margin: 0 15px 5px 0;
	background: url(/shared/img/icon_mail_s.png) no-repeat 0 0 / cover;
	vertical-align: middle;
}
/* -- フッター上ブロック -- */
.footerTop {
	background-color: #183a57;
	font-size: 1.3rem;
	color: #d1d8dd;
}
.infoBox > img {
	width: 172px;
	height: 20px;
}
.infoBox > a {
	display: block;
	margin-top: 36px;
	color: #d1d8dd;
	font-family: 'Hind', sans-serif;
	font-size: 1.5rem;
}
.infoBox > a::before {
	content: "";
	display: inline-block;
	opacity: .8;
	width: 16px;
	height: 16px;
	margin-bottom: 3px;
	margin-right: 5px;
	background: url(../img/icon_globe_w.png) no-repeat 0 0 / cover;
	vertical-align: middle;
}
/* -- SNS -- */
.snsLink {
	display: flex;
	column-gap: 20px;
	margin-top: 35px;
}
.snsLink li:last-child {
	padding-top: 3px;
}
.snsLink {
	opacity: .8;
}
/* -- フッター下ブロック -- */
.footerBottom {
	background-color: #153047;
	color: rgba(255,255,255,.4);
}
.footerNav li {
	display: inline-block;
}
.footerNav a {
	color: rgba(255,255,255,.4);
}
.footerNav a:hover {
	text-decoration: underline;
}
.footerCopy {
	font-family: 'Hind', sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
}

/* -- PAGE TOP -- */
.js-btn-pagetop {
	width: 80px;
	height: 80px;
	display: block;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 1000;
	background: #005bac;
	transition: background-color 0.2s ease 0s;
	cursor: pointer;
}
.js-btn-pagetop__icon {
	width: 20px;
	height: 20px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	display: block;
}
.js-btn-pagetop__icon::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 2px;
	height: 18px;
	background: #fff;
}
.js-btn-pagetop__icon::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 2px;
	margin: auto;
	width: 12px;
	height: 12px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	transform: rotate(-45deg);
}
/* ------------------------------
 フッター（PC）
------------------------------ */
@media print, screen and (min-width: 768px) and (max-width: 1920px) {
	.contactBlock {
		background-size: 1920px 416px;
	}
}
@media print, screen and (min-width: 768px) {
	.footer {
		position: relative;
		z-index: 2;
		min-width: 1240px;
		background-color: #fff;
	}
	/* -- CONTACT -- */
	.contactBlock {
		margin-top: -1px;
		padding: 121px 0 120px;
	}
	.contactBox {
		display: flex;
		justify-content: space-between;
		overflow: hidden;
		width: 1200px;
		max-height: 176px;
		margin: 0 auto;
		padding: 40px;
	}
	.contactBox p img {
		width: 166px;
		height: 27px;
		margin: 20px 0 10px;
	}
	.contactBox ul {
		display: flex;
		width: 773px;
		border-left: 1px solid #dcdcdc;
	}
	.contactBox li {
		width: 386px;
		padding-left: 38px;
	}
	.contactBox li .cc {
		width: 348px;
	}
	/* -- フッター上ブロック -- */
	.footerTop {
		padding: 60px 0 51px;
	}
	.footerTopIn {
		width: 1200px;
		margin: 0 auto;
	}
	.footerTopIn::after {
		content: "";
		display: block;
		clear: both;
	}
	.footerMenu {
		float: left;
		width: 930px;
		margin-top: -7px;
	}
	.footerMenu::after {
		content: "";
		display: block;
		clear: both;
	}
	.footerMenu .naviBox {
		float: left;
		width: 250px;
	}
	.footerMenu .naviBox:first-of-type {
		width: 430px;
	}
	.footerMenu a {
		line-height: 2.2;
		color: #d1d8dd;
	}
	.footerMenu a:hover {
			text-decoration: underline;
	}
	.footerMenu .naviBox p {
		font-weight: bold;
	}
	.footerMenu .naviBox li::before {
		content: "― ";
	}
	.footerMenu > div:first-child > ul > li:last-child,
	.footerMenu > div:first-child > ul > li:nth-last-child(2) {
		display: none;
	}
	.infoBox {
		width: 270px;
		float: right;
	}
	.infoBox > img {
		margin-bottom: 20px;
	}
	/* -- フッター下ブロック -- */
	.footerBottom {
		padding: 30px 0;
	}
	.footerBottomIn {
		width: 1200px;
		margin: 0 auto;
	}
	.footerBottomIn::after {
		content: "";
		display: block;
		clear: both;
	}
	.footerNav {
		float: left;
	}
	.footerNav ul {
		font-size: 1.3rem;
		line-height: 20px;
	}
	.footerNav li:not(:last-child) {
		margin-right: 3em;
	}
	.footerCopy {
		float: right;
		padding-right: 70px;
		line-height: 20px;
	}
}
@media print, screen and (min-width: 1281px) and (max-width: 1360px) {
	.footerCopy {
		padding-right: 35px;
	}
}
@media print, screen and (min-width: 1361px) {
	.footerCopy {
		padding-right: 0;
	}
}
/* ------------------------------
 スマホ用コード（フッタ）
------------------------------ */
@media screen and (max-width: 767px) {
	/* -- CONTACT -- */
	.contactBlock {
		padding: 30px;
		background: #eaf3f5 url(/shared/img/contact_bg_sp.png) no-repeat center center / cover;
	}
	.contactBox {
		padding: 20px;
		text-align: center;
	}
	.contactBox p {
		font-size: 1.3rem;
		text-align: center;
	}
	.contactBox p img {
		width: 132px;
		height: 21px;
		margin-bottom: 5px;
	}
	.contactBox ul {
		margin: 15px auto 0;
		padding-top: 20px;
		border-top: 1px solid #dcdcdc;
	}
	.contactBox li {
		display: block;
		text-align: center;
	}
	.contactBox li:not(:last-child) {
		margin-bottom: 15px;
	}
	.contactBox li a.call[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
	.contactBox .btn a {
		width: 100%;
		height: 56px;
		margin: 0 auto;
	}
	/* -- フッター上ブロック -- */
	.footerTop {
		padding: 28px 5% 23px;
	}
	.footerMenu {
		display: none;
	}
	.infoBox {
		text-align: center;
	}
	.infoBox > img {
		margin-bottom: 15px;
	}
	.infoBox > a {
		display: none;
	}
	/* -- SNS -- */
	.snsLink {
		justify-content: center;
		margin-top: 25px;
	}
	/* -- フッター下ブロック -- */
	.footerBottom {
		padding: 13px 5% 16px;
	}
	.footerNav ul {
		margin: 0 auto 5px;
		font-size: 1.2rem;
	}
	.footerNav li:not(:last-child) {
		margin-right: .75em;
	}
	/* -- PAGE TOP -- */
	.js-btn-pagetop {
		width: 40px;
		height:40px;
	}
	.js-btn-pagetop__icon {
		width: 20px;
		height: 20px;
	}
	.js-btn-pagetop__icon::before {
		height: 14px;
		top: 3px;
	}
	.js-btn-pagetop__icon::after {
		width: 8px;
		height: 8px;
		top: 4px;
	}
}
@media screen and (max-width: 390px) {
	/* -- CONTACT -- */
	.contactBox li .call {
		font-size: 2.8rem;
	}
	.contactBox li .call span {
		font-size: 1.75rem;
	}
	.contactBox .btn a {
		font-size: 1.6rem;
	}
	.contactBox .btn a span::before {
		margin: 0 10px 3px 0;
	}
}
@media screen and (max-width: 360px) {
	/* -- CONTACT -- */
	.contactBox > p {
		font-size: 1.2rem;
	}
}
@media screen and (max-width: 359px) {
	/* -- フッター下ブロック -- */
	.footerNav ul {
		margin: 0 auto 5px;
		font-size: 1.1rem;
	}
	.footerNav li:not(:last-child) {
		margin-right: .5em;
	}
}

/* ------------------------------
 ノースクリプト
------------------------------ */
#nojs {
	width: 100%;
	padding: 0;
	text-align: center;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99999;
	background: #153047;
}
#nojs p {
	padding: 3px 0;
	color: #fff;
	font-size: 1.2rem;
}

/* ------------------------------
 印刷用コード
------------------------------ */
@media print {
	html,
	body {
		background: none;
	}
	.header {
		position: absolute;
	}
	.contents {
		margin-top: 0;
	}
	.cms_block {
		page-break-inside: avoid;
	}
}

/* -- 余白 -- */
@page {
	size: A4;
	margin: 9.7mm 9.7mm;
}

/* -- IE10以上 -- */
@media print and (-ms-high-contrast: none) {
	body {
		zoom: .98;
		width: 1200px;
		transform: scale(.98);
		transform-origin: 0 0;
	}
}

/* ------------------------------
 Android用アラート
------------------------------ */
.alert-old-android-browser {
	display: none;
}
.alert-old-android-browser.is-show {
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	z-index: 200000;
	width: 100%;
	padding: 30px 40px 20px 20px;
	border-top: 1px solid #aaa;
	background-color: #fff;
	color: #222;
	font-size: 16px;
}
/* android browser */
.page-fixed-header-android .alert-old-android-browser.is-show {
	position: fixed;
	bottom: 0;
	left: 0;
}
.alert-old-android-browser.is-show > .alert-old-android-browser__text {
	margin-bottom: 10px;
	background-size: 20px 18px;
	line-height: 18px;
}
.alert-old-android-browser.is-show > .alert-old-android-browser__link {
	text-decoration: none;
}
.alert-old-android-browser.is-show > .alert-old-android-browser__close {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	width: 40px;
	height: 40px;
}
.alert-old-android-browser.is-show > .alert-old-android-browser__close:before,
.alert-old-android-browser.is-show > .alert-old-android-browser__close:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 20px;
	height: 2px;
	margin: auto;
	background-color: #aaa;
	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
}
.alert-old-android-browser.is-show > .alert-old-android-browser__close:before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.alert-old-android-browser.is-show > .alert-old-android-browser__close:after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.alert-old-android-browser.is-show > .alert-old-android-browser__link:before {
	content: "\f138";
	display: inline-block;
	margin-right: 5px;
	color: #b09e71;
	font-family: 'FontAwesome';
}
