@charset "UTF-8";
/* CSS Document */

/* -----------------------
 * GLOBAL PARTS
----------------------- */
.ff-mincho,
.ff-mincho .num {
	font-family: "游明朝", "Yu Mincho", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", Meiryo, "Noto Serif JP", serif;
}

/* header */
.header { position: relative; }
	.header a { text-decoration: none; }
	.header-logo { float: left; }
		.header-logo .logo {
			background: url(/lib_image/common/logo_hd_reform.png) no-repeat 0 0;
			background-size: 100%;
			display: block;
		}
	.header .header-inner {}
	.header .header-text {
		clear: both;
		color: #666;
	}
		.header .header-text a {
			color: #666;
			text-decoration: none;
		}
	.header .header-area {}
		.header .header-area .header-area_btn {
			border: 1px solid #CCC;
			border-radius: 4px;
			color: #000;
			display: inline-block;
			font-weight: bold;
			line-height: 1;
			padding: .5em 2.5em .5em 1em;
			position: relative;
			-webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
			box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15);
		}
		.header .header-area a:after {
			content: "";
			color: #000;
			display: inline-block;
			width: 5px;
			height: 5px;
			border-top: 1px solid #000;
			border-right: 1px solid #000;
			-webkit-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			transform: rotate(45deg);
			position: absolute;
			top: 50%;
			right: 15px;
			margin-top: -4px;
		}
@media print, screen and (min-width: 768px) {
	.header-inner,
	.header-link_wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
	}
	.header-inner {
		max-width: 960px;
		padding: 10px 0; 
	}
	.header-logo { width: 247px; }
		.header-logo .logo { height: 27px; }
	.header .header-area {
		margin: 0 auto 0 30px;
	}
		.header .header-area .header-area_btn {
			font-size: 1.6rem;
		}
	.header-link_wrap {}
	.header-link { display: table; font-size: 1.4rem; margin-right: 55px; padding: 0; }
		.header-link a { color: #000; line-height: 1; }
		.header-link a:hover { text-decoration: underline; }
		.header-link li { display: table-cell; vertical-align: middle; padding: 0 12px; }
		.header-link li + li { border-left: 1px solid #CCC; }
		.header-link_faq {}
		.header-link_support {}
	.header-logo_group { width: 127px; }
		.header-logo_group img { display: block; }
	
	.header-company {
		background-color: #eaeaea;
		padding: 4px 0;
		overflow: hidden;
	}
		.header-company-inner {
			text-align: right;
		}
			.header-company-inner a:hover {
				text-decoration: underline !important;
			}
		.header-text {
			font-size: 1.1rem;
			font-weight: 500;
			display: inline-block;
			margin-right: 12px;
			vertical-align: 1px;
		}
		.header-company_link {
			display: inline-block;
			list-style: none;
			margin: 1px 5px 0 0;
			padding: 0;
		}
			.header-company_link li {
				display: inline-block;
				line-height: 1;
				font-size: 1.2rem;
				font-weight: 500;
				margin-right: 12px;
			}
			.header-company_link li:last-of-type{
				margin-right: 0;
			}
			.header-company_link a:before{
				content: "";
				color: #000;
				display: inline-block;
				width: 5px;
				height: 5px;
				border-top: 1px solid #000;
				border-right: 1px solid #000;
				-webkit-transform: rotate(45deg);
				-ms-transform: rotate(45deg);
				transform: rotate(45deg);
				vertical-align: 1px;
				margin-right: 6px;
			}
			.header-company_link a {
				display: inline-block;
				color: #000;
				margin-top: 2px;
				font-weight: normal;
			}
}
@media only screen and ( max-width : 767px ) {
	.header {
		margin-bottom: 19px;
	}
	.header-logo { margin: 0 0 0 10px; width: 161px; }
		.header-logo .logo { height: 18px; }
	.header-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;

		border-bottom: 1px solid #e6e6e6;height:55px;
	}
	.header-inner > .header-link_wrap,
	.header-inner > .header-text,
	.header-inner > .header-logo_group { display: none; }
	.header .header-area {
		margin: 0 auto 0 15px;
	}
		.header .header-area .header-area_btn {
			font-size: 1.1rem;
			padding: 7px 15px 7px 5px;
		}
		.header .header-area .header-area_btn:after {
			right: 7px;
		}
	.header-company {
		text-align: right;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
	}
	.header-catch {
		display: none;
	}
	.header-text {
		font-size: .9rem;
		margin: 0 auto;
		padding: 5px .5em;
		text-align: right;
	}
	.header-company_link{display: none;}
	#header-menu_sp__btn {
		background: transparent url(/lib_image/common/bt_menu_sp.png) no-repeat 0 0;
		background-size: contain;
		height: 55px;
		width: 55px;
		overflow: hidden;
		position: absolute;
		white-space: nowrap;
		text-indent: 100%;
		top: 0;
		right: 0;
	}
	#header-menu_sp__btn.open {
		background: transparent url(/lib_image/common/bt_menu_sp_close.png) no-repeat 0 0;
		background-size: contain;
	}
}

/* footer */
#footer {
	margin-bottom: 0 !important;
	position: relative;
}
/* signature */
.footer-sign { background: #FFF; }
	.footer-sign a {
		color: #333;
		text-decoration: none;
	}
	.footer-sign a:hover {
		text-decoration: underline;
	}
.footer-sign_inner {}
.footer-logo {
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	#footer { background: #EBEBE3; }
	.footer-sign { padding: 15px 0; }
	.footer-sign_inner { }
	.footer-sign_link { float: left; }
	.footer-logo {
		float: left;
		font-size: 1.8rem;
	}
	.footer-link_menu {
		float: right;
		margin: .25em 0;
		padding: 0 30px;
		text-align:  center;
	}
	.footer-link_menu li+li {
		border-left: 1px solid #333;
		margin-left: 1em;
		padding-left: 1em;
	}
	.footer-sign .copyright {
		float: right;
		font-size: 1.1rem;
		margin: 3px 0;
		text-align: right;
	}
}
@media only screen and ( max-width : 767px ) {
	.footer-logo,
	.footer-link_menu li {
	}
	.footer-logo {
		background: #eaeaea;
		font-size: 1.4rem;
		padding: 15px 0;
	}
	.footer-link_menu {
		display: table;
		padding: 15px 0;
		width: 100%;
	}
		.footer-link_menu li {
			display: table-cell;
			font-size: 1.4rem;
			width: 50%;
		}
		.footer-link_menu li + li { border-left: 1px solid #CCC; }
	.footer-sign .copyright {
		font-size: 0.8rem;
		padding: 10px 0;
		height: 45px;
	}
}
/* footer map */
#footer-map {
	background: #000;
	text-align: left;
}
	#footer-map a { color: #FFF; }
	#footer-map a:link { text-decoration: none; }
	#footer-map a:hover { text-decoration: underline; }
	#footer-map .footer-map_list {
		list-style:  none;
		margin: 0;
		padding: 0;
	}
@media print, screen and (min-width: 768px) {
	#footer-map {
		padding: 48px 0 85px;
	}
	#footer-map .layout-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		-ms-justify-content: space-between;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		max-width: 100%;
	}
	#footer-map .box {}
	#footer-map .box + .box {
		margin-left: 44px;
	}
	#footer-map li + li {
		margin-top: 1.75em;
	}
	#footer-map .box.epsilon {
		font-size: 1.3rem;
		line-height: 1.5;
	}
}
@media only screen and (max-width: 767px) {
	#footer-map {
		line-height: 1.5;
		padding: 40px 20px;
	}
	#footer-map .box.alpha,
	#footer-map .box.beta {
		display: none;
	}
	#footer-map .box.gamma,
	#footer-map .box.delta {
		display: inline;
	}
	#footer-map .box.epsilon {
		font-size: 1.1rem;
		margin-top: 2em;
		text-align: center;
	}
	#footer-map li {
		display: inline-block;
		font-size: 1.2rem;
		margin-bottom: 1em;
		vertical-align: top;
		width: 49%;
	}
}

/* navigation:global */
.nav-global {
	clear: both;
}
	.nav-global ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
@media print, screen and (min-width: 768px) {
	.nav-global {
		background: #080904;
	}
	/* parents */
	.nav-global .nav-parent {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-align-items: center;
		align-items: center;
		margin: 0 auto;
		width: 960px;
	}
	.nav-global .nav-parent_item {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
		-webkit-flex: 1 1 auto;
		flex: 1 1 auto;
	}
		.nav-global .nav-parent_item > a {
			border-bottom: 1px solid transprent;
			color: #fff;
			display: block;
			font-size: 1.5rem;
			line-height: 1.35;
			padding: 12px 10px 10px;
			text-decoration: none;
			text-align: center;
      font-weight: bold;
		}
		.nav-global .nav-parent_item > a:hover {
			background: #555555;
			color: #fff;
		}
		.nav-global .nav-parent_item.current > a {
			background: #fff;
			color: #009B63;
		}
		.nav-global .nav-parent_item .category {
			font-size: 1.8rem;
			font-weight: bold;
		}
	/* childrens */
	.nav-global .nav-wrap.has-child {
		background-color: #fff;
		display: none;
		position: absolute;
		text-align: center;
		top: 100%;
		right: 0;
		left: 0;
		padding: 0;
		z-index: 900;
	}
	.nav-global .nav-wrap.has-child.fixed {
		-webkit-box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.16);
		box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.16);
		position: fixed;
		top: 0;
	}
	.nav-global .current .nav-wrap.has-child {
		display: block;
	}
	.nav-global .nav-child {
		width: 960px;
		margin: 0 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: flex-start;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-flex-wrap: nowrap;
		-ms-flex-wrap: nowrap;
		flex-wrap: nowrap;
		-ms-flex-align: stretch;
		-webkit-align-items: stretch;
		-moz-align-items: stretch;
		-webkit-box-align: stretch;
		align-items: stretch;
	}
		.nav-global .nav-child > li {
			display: block;
			position: relative;
			width: 192px;
		}
  .nav-global .nav-child > li > a,
  .nav-global .nav-child > li > span {
    background: #FFF;
    border-width: 5px 0;
    color: #000;
    display: block;
    font-weight: 500;
    font-size: 1.5rem;
    line-height: 1.35;
    letter-spacing: -.4px;
    padding: 15px 25px 15px 10px;
    position: relative;
  }
  .nav-global .nav-child > li + li > a {
    border-left-width: 4px;
  }
  .nav-global .has-dropdown:hover a,
  .nav-global .nav-child .has-dropdown.clicked > a {
    color: #009B63;
  }

  .nav-global .nav-child > li > a:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 5px 0 5px 7px;
    border-color: transparent transparent transparent #009B63; 
    position: absolute;
    right: 24px;
    top: 50%;
    margin-top: -4px;
  }
  .nav-global .nav-child > li > a:before {
    background-color: #ccc;
    content: "";
    height: 16px;
    width: 1px;
    position: absolute;
    right: 0px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
  }
  .nav-global .nav-child > li:last-child > a:before {
    content: none;
  }
  .nav-global .nav-child > li.has-dropdown > a:after {
    border-width: 7px 5px 0 5px;
    border-color: #009B63 transparent transparent transparent;
  }
  .nav-global .nav-child > li > a:hover {
    color: #009B63;
  }
  .nav-global .has-dropdown.clicked:after, .nav-global .has-dropdown.clicked:before {
    bottom: -4px;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
    z-index: 10;
  }
  .nav-global .has-dropdown.clicked:before {
    border-bottom-color: #009B63;
    border-width: 14px;
    margin-left: -14px;
  }
  .nav-global .has-dropdown.clicked:after {
    border-bottom-color: #F8F6F1;
    border-width: 9px;
    margin-left: -9px;
  }
	/* dropdown menu */
  .nav-global .has-dropdown:nth-child(2) .nav-dropdown {
  left: -197px;
  }
 .nav-global .has-dropdown:nth-child(3) .nav-dropdown {
  left: -389px;
  }
  .nav-global .has-dropdown:nth-child(4) .nav-dropdown {
  left: -581px;
  }
  .nav-global .has-dropdown:nth-child(5) .nav-dropdown {
  left: -773px;
  }
	.nav-global .nav-dropdown {
    border: 4px solid #009B63;
    background-color: #fff;
    position: absolute;
    left: -5px;
    text-align: left;
    width: 960px;
    display: none;
    border-radius: 8px;
	}
	.nav-global .has-dropdown.clicked .nav-dropdown {
		display: block;
	}
	.nav-global .nav-dropdown a {
		color: #009B63;
		display: inline-block;
		padding-left: 10px;
		position: relative;
	}
	.nav-global .nav-dropdown a:hover {
		color: #009B63;
	}
  .nav-global .nav-dropdown a:before {
    content: "";
    color: #000;
    display: inline-block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #009B63;
    border-right: 2px solid #009B63;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: -12px;
    margin-top: -4px;
  }
	.nav-global .nav-dropdown_head {
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		background-color: #F8F6F1;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		margin-bottom: 30px;
		position: relative;
		padding: 37px 40px 24px;
		border-radius: 4px 4px 0 0;
	}
	.nav-global .category-name {
		color: #009B63;
		font-size: 2.2rem;
		font-weight: bold;
		position: relative;
		margin-right: 32px;
	}
	.nav-global .category-title {
		border-bottom: 2px solid #E6DCD0;
		color: #8A7151;
		font-size: 2rem;
		font-weight: bold;
		margin-bottom: 12px;
		padding-bottom: 10px;
		position: relative;
	}
	.nav-global .category-list + .category-title,
  .nav-global .category-group + .category-title
  {
		margin-top: 22px;
	}

	.nav-global .category-title:before {
		content: url(/lib_image/common/icon_nav_loupe.png);
		display: inline-block;
		margin-top: -3px;
		margin-right: 10px;
		vertical-align: middle;
	}
  .nav-global .category-link {
    color: #009B63;
    font-size: 1.4rem;
    position: relative;
  }
  .nav-global .category-link::before {
    content: "";
    background-color: #009B63;
    display: block;
    position: absolute;
    height: 20px;
    width: 2px;
    left: -16px;
    top: 50%;
    margin-top: -10px;
  }
  .nav-global .category-link a {
    color: #009B63;
    display: inline-block;
    padding-left: 0;
    position: relative;
  }
  .nav-global .category-link a::before {
    content: none;
  }
  .nav-global .category-link a::after {
    content: "";
    color: #000;
    display: inline-block;
    width: 5px;
    height: 5px;
    border-top: 1px solid #006E46;
    border-right: 1px solid #006E46;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: -12px;
    margin-top: -4px;
  }
  .nav-global .btn-close {
    position: absolute;
    right: 0;
    background-color: #009B63;
    height: 56px;
    width: 60px;
    color: #fff;
    top: 0;
    border-radius: 0 3px 0 6px;
    padding-left: 2px;
    text-align: center;
    cursor: pointer;
  }
  .nav-global .btn-close .btn-close_item {
    color: #fff;
    font-size: 1.2rem;
    position: relative;
    margin-top: 32px;
    padding-left: 0;
  }
.nav-global .btn-close .btn-close_item:before {
    content: "";
    position: absolute;
    display: inline-block;
    top: -28px;
    left: 45%;
    width: 2px;
    height: 24px;
    border: 0;
    margin: 0;
    padding: 0;
    background-color: white;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
  }
.nav-global .btn-close .btn-close_item:after {
    content: "";
    position: absolute;
    display: inline-block;
    top: -28px;
    left: 45%;
    width: 2px;
    height: 24px;
    border: 0;
    margin: 0;
    padding: 0;
    background-color: white;
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
  }
  .nav-global .has-dropdown:hover .btn-close .btn-close_item {
    color: #fff;
  }
	.nav-global .nav-dropdown_main {
		background-color: #fff;
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		margin: 40px 48px;
	}
	.nav-global .nav-dropdown_col {
    width: 100%;
	}
	.nav-global .nav-dropdown_main .category-top {
		border: 1px solid #009B63;
		font-size: 1.5rem;
		font-weight: bold;
		padding: 20px 30px;
	}
	.nav-global .nav-dropdown_main .category-top a {
		display: block;
		padding-left: 0;
		padding-right: 29px;
	}
	.nav-global .nav-dropdown_main .category-top a:before {
		left: inherit;
		right: 0;
		width: 18px;
	}
	.nav-global .nav-dropdown_main .category-top a:after {
		height: 6px;
		left: inherit;
		right: 0;
	}
  .nav-global .nav-dropdown_main .category-group {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -20px;
  }
  .nav-global .nav-dropdown_main .category-group.col2 > li {
    width: 50%;
    padding-left: 20px;
  }
  .nav-global .nav-dropdown_main .category-group.col2 > li a {
  }
  .nav-global .nav-dropdown_main .category-list {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-left: -20px;
  }
  .nav-global .nav-dropdown_main .category-list.col1 li {
    width: 100%;
  }
  .nav-global .nav-dropdown_main .category-list.col2 li {
    width: 50%;
  }
  .nav-global .nav-dropdown_main .category-list.col3 li {
    width : 33.33333% ;
    width : calc(100% / 3) ;
  }
  .nav-global .nav-dropdown_main .category-list.col4 li {
    width: 25%;
  }
	.nav-global .nav-dropdown_main .category-list li {
    font-size: 1.4rem;
    line-height: 1.2;
	}
	.nav-global .nav-dropdown_main .category-list li a {
		display: block;
		padding: 20px 1em 20px 32px;
		position: relative;
    margin-left: 20px;
		vertical-align: top;
    border-bottom: 1px solid #ccc;
	}
	.nav-global .nav-dropdown_main .category-list li a:before {
		left: 12px;
	}
  .nav-global .nav-dropdown_main .category-list li a:hover {
    background-color: #EEEEEE;
	}
  .nav-global .nav-dropdown_main .category-list li a:hover {
    color: #009B63;
	}
  /* 4列リストの一番左下にある要素 */
  .nav-global .nav-dropdown_main .category-list.col4 li:nth-child(4n+1):nth-last-child(-n+4) a,
  /* 4列リストの一番左下にある要素以降にあるliすべて */
  .nav-global .nav-dropdown_main .category-list.col4 li:nth-child(4n+1):nth-last-child(-n+4) ~ li a {
    border-bottom: none;
  }
  /* 3列リストの一番左下にある要素 */
  .nav-global .nav-dropdown_main .category-list.col3 li:nth-child(3n+1):nth-last-child(-n+3) a,
  /* 3列リストの一番左下にある要素以降にあるliすべて */
  .nav-global .nav-dropdown_main .category-list.col3 li:nth-child(3n+1):nth-last-child(-n+3) ~ li a {
    border-bottom: none;
  }
  /* 2列リストの一番左下にある要素 */
  .nav-global .nav-dropdown_main .category-list.col2 li:nth-child(2n+1):nth-last-child(-n+2) a,
  /* 2列リストの一番左下にある要素以降にあるliすべて */
  .nav-global .nav-dropdown_main .category-list.col2 li:nth-child(2n+1):nth-last-child(-n+2) ~ li a {
    border-bottom: none;
  }
  /* 1列リスト番下にある要素 */
  .nav-global .nav-dropdown_main .category-list.col1 li:last-child a {
    border-bottom: none;
  }
  .nav-global .nav-dropdown_main .category-list li a{
    color: #000;
    font-size: 1.5rem;
    font-weight: bold;
  }
	.nav-global .top-link {
		display: none;
	}
	.nav-global .nav-list_owner {
    margin-left: 30px;
    padding: 10px 0;
    width: 270px;
    -webkit-box-flex: 0;
    -ms-flex: 0 1 auto;
    -webkit-flex: 0 1 auto;
    flex: 0 1 auto;
	}
		.nav-global .nav-list_owner .header-link_owner {
			background: #FFF url(/lib_image/common/icon_header_person.png) no-repeat 18px 50%;
			border-radius: 4px;
			color: #008D54;
			display: block;
			font-size: 1.3rem;
			font-weight: bold;
			padding: 12px 15px 12px 38px;
			text-align: left;
		}
		.nav-global .nav-list_owner .header-link_owner:hover {
			opacity: .6;
		}
}
@media only screen and (max-width: 767px) {
	.has-menu body {
		position: fixed;
		width: 100%;
	}
	/* common */
	.nav-global *::before,
	.nav-global *::after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.nav-global a {
		display: block;
		position: relative;
	}
	.nav-global .nav-parent > li > a {
		color: #FFF;
		font-size: 13px;
		font-weight: bold;
		line-height: 1.15;
		padding: 1.1em 1em .9em;
		text-align: center;
		white-space: nowrap;
	}
	.has-menu #nav-global {
		opacity: 0;
	}
	/* global */
	#nav-global {
		position: relative;
		margin-bottom: 73px;
	}
	.nav-global .tab-menu,
	#nav-global .nav-parent {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}
	.nav-global .tab-menu li,
	#nav-global .nav-parent_item {
		-webkit-box-flex: 1;
		-webkit-flex: 1 0 auto;
		-ms-flex: 1 0 auto;
		flex: 1 0 auto;
		width: 33.33%;
	}
	.nav-global .tab-menu li + li a::before,
	#nav-global .nav-parent li + li a::before {
		background: #808080;
		content: "";
		display: block;
		height: 2.1em;
		width: 1px;
		position: absolute;
		top: 1.2em;
		left: 0;
	}
	#nav-global .nav-global_children,
	#nav-global .cat-04,
	#nav-global .nav-list_owner {
		display: none;
	}
	#nav-global .nav-parent {
		background: #000;
		position: absolute;
		top: 19px;
		left: 0;
		width: 100%;
		z-index: 1000;
	}
	#nav-global li.current a {
		color: #00CC82;
	}
	/* menu */
	#header-menu_sp {
		background: rgba(0, 0, 0, .4);
		display: block;
		font-size: 13px;
		position: fixed;
		top: 55px;
		right: 0;
		left: 0;
		z-index: 9999;
		opacity: 0;
		-webkit-overflow-scrolling: touch;
		overflow: hidden;
		overflow-y: auto;
		-webkit-transition: opacity .3s;
		transition: opacity .3s;
	}
	.has-menu #header-menu_sp {
		opacity: 1;
		bottom: 0;
	}
	#header-menu_sp .menu-sp_inner {
		background: #444;
		color: #FFF;
		-webkit-transition: all .3s ease-in-out;
		transition: all .3s ease-in-out;
		height: 100%;
		overflow-y: auto;
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
		position: fixed;
		top: 55px;
		right: 0;
		min-width: 315px;
		width: 84%;
	}
	.has-menu #header-menu_sp .menu-sp_inner {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
	#header-menu_sp a {
		color: inherit;
	}
	#nav-global_sp {}
	/* tab */
	.nav-global .tab-menu {}
	.nav-global .tab-menu li a {}
	.nav-global .tab-menu li.is-current a {
		background: #2B2B2B;
	}
	.nav-global .tab-menu li.is-current a::before,
	.nav-global .tab-menu li.is-current + li a::before {
		display: none;
	}
	.nav-global .tab-menu li.is-current a::after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 7px 4.5px 0 4.5px;
		border-color: #FFF transparent transparent transparent;
		position: absolute;
		bottom: 0;
		left: 50%;
		-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	/* parents */
	.nav-global .nav-parent {}
	#nav-global_sp .nav-list {
		padding: 0 24px;
	}
	#nav-global_sp .nav-list:nth-child(-n+3) {
		background: #2B2B2B;
		display: none;
	}
	#nav-global_sp .nav-list:nth-child(-n+3).current {
		display: block !important;
	}
	#nav-global_sp .nav-list:nth-child(-n+3) > a {
			display: none;
		}
	/* childrens */
	.nav-global .nav-global_children {}
	.nav-global .nav-list > a.disable.active::after {}
	.nav-global .nav-child {}
		.nav-global .nav-child > li {
			border-top: 1px solid #555;
		}
		.nav-global .nav-child > li > a {}
		/*.nav-global .top-link,*/
		.nav-global .nav-child .has-dropdown > a {
			display: none;
		}
	/* dropdown menu */
	.nav-global .nav-dropdown {}
		.nav-global .nav-dropdown_head {}
		.nav-global .top-link a,
		.nav-global .nav-child > li > a,
		.nav-global .nav-dropdown .category-name,
		.nav-parent > li.cat-04 > a {
			font-size: 16px;
			font-weight: bold;
			line-height: 1.2;
			padding: 24px 0;
			position: relative;
			text-align: left;
		}
		.nav-global .top-link a,
		.nav-global .nav-child > li > a,
		.nav-global .nav-dropdown .category-name,
		.nav-parent > li.cat-04 > a {
			padding-right: 24px;
		}
		.nav-global .nav-dropdown .category-name::before,
		.nav-global .nav-dropdown .category-name::after,
		.nav-global .nav-parent > li.cat-04 > a::before,
		.nav-global .nav-parent > li.cat-04 > a::after {
			content: "";
			display: block;
			width: 20px;
			height: 20px;
			position: absolute;
			top: 50%;
			right: 0;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
		.nav-global .nav-dropdown .category-name::before,
		.nav-global .nav-parent > li.cat-04 > a::before {
			border: 1px solid #FFF;
			border-radius: 20px;
			height: 20px;
		}
		.nav-global .nav-dropdown .category-name::after,
		.nav-global .nav-parent > li.cat-04 > a::after {
			background: url(/lib_image/common/icon_plus.png) no-repeat 50% 50% / 8px;
		}
		.nav-global .nav-dropdown.active .category-name::after,
		.nav-global .nav-parent > li.cat-04.active > a::after {
			background-image: url(/lib_image/common/icon_minus.png);
		}
		.nav-global .nav-dropdown_main {
			margin: 0 -10px;
			position: relative;
			max-height: 0;
			opacity: 0;
			overflow: hidden;
			visibility: hidden;
			-webkit-transition: all .3s linear;
			transition: all .3s linear;
		}
		.nav-global .active .nav-dropdown_main {
			max-height: 100%;
			opacity: 1;
			visibility: visible;
			margin-top: -10px;
			padding-bottom: 15px;
	}
		.nav-global .category-title {
			font-size: 14px;
			font-weight: bold;
			margin: 0 10px 0;
			padding: 1em 0;
			position: relative;
		}
	.nav-global .category-group li + li .category-title,
	.nav-global * + .category-title {
		margin-top: 2em;
	}
	.nav-global * + .category-title {
	}
	.nav-global .category-title::after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 9px 6px 0 6px;
		border-color: #009B63 transparent transparent transparent;
		position: absolute;
		top: 50%;
		right: 0;
		margin-top: -5px;
	}
		.nav-global .nav-dropdown .category-link,
		.nav-global .nav-dropdown li {
			font-size: 14px;
			padding: 5px 0 0;
		}
		.nav-global .nav-dropdown .category-link {
			border-top: 1px solid #444;
			font-size: 12px;
			margin-top: 5px;
		}
	.nav-global .nav-dropdown .category-list li:before {
		background: #444;
		content: "";
		display: block;
		height: 1px;
		margin: 0 10px 5px;
		}
		.nav-global .nav-dropdown a {
			border-radius: 4px;
			padding: 10px 24px 10px 10px;
		}
		.nav-global .top-link a::before,
		.nav-global .top-link a::after,
		.nav-global .nav-child > li > a::before,
		.nav-global .nav-child > li > a::after,
		.nav-global .nav-dropdown a::before,
		.nav-global .nav-dropdown a::after {
			content: "";
			display: block;
			position: absolute;
			top: 50%;
			right: 10px;
			-webkit-transform: translateY(-50%);
			-ms-transform: translateY(-50%);
			transform: translateY(-50%);
		}
		.nav-global .top-link a::before,
		.nav-global .nav-child > li > a::before,
		.nav-global .nav-dropdown a::before {
			width: 8px;
			height: 8px;
			border-right: 1px solid #777;
			border-bottom: 1px solid #777;
			-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
			margin-top: -4px;
		}
		.nav-global .top-link a::after,
		.nav-global .nav-child > li > a::after,
		.nav-global .nav-dropdown a::after {
			background: #777;
			width: 17px;
			height: 1px;
		}
		.nav-global .top-link a::before,
		.nav-global .top-link a::after,
		.nav-global .nav-child > li > a::before,
		.nav-global .nav-child > li > a::after {
			right: 1px;
		}
		.nav-global .top-link a::before,
		.nav-global .nav-child > li > a::before {
			border-right: 2px solid #FFF;
			border-bottom: 2px solid #FFF;
		}
		.nav-global .top-link a::after,
		.nav-global .nav-child > li > a::after {
			background: #FFF;
			height: 2px;
		}
	.nav-global .nav-dropdown a.is-current {
		background: #009B63;
	}
	.nav-global .nav-dropdown a.is-current::before,
	.nav-global .nav-dropdown a.is-current::after {
		display: none;
	}
	/* renewal category */
	.nav-parent > li.cat-04 {
		background: #444;
	}
	.nav-parent > li.cat-04 .nav-wrap {
		max-height: 0;
		position: relative;
		opacity: 0;
		overflow: hidden;
		visibility: hidden;
		-webkit-transition: all .3s linear;
		transition: all .3s linear;
	}
	.nav-parent > li.cat-04.active .nav-wrap {
		max-height: 100vh;
		opacity: 1;
		visibility: visible;
	}
	/* other */
	.nav-links {
		border-top: 1px solid #777;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		list-style: none;
		margin: 0 20px;
		padding: 20px 0 0;
	}
	.nav-links li {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		width: 50%;
		padding: 4px;
	}
	.nav-links li a {
		background: #555;
		border-radius: 4px;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 1.5em 1em;
		text-align: center;
		width: 100%;
		word-break: keep-all;
	}
	.nav-links .nav-list_owner {
		width: 100%;
	}
	.nav-links .nav-list_owner a {
		font-size: 14px;
		font-weight: bold;
		position: relative;
		white-space: nowrap;
	}
	.nav-links .nav-list_owner a::before {
		background: url(/lib_image/common/icon_header_person_wh.png) no-repeat 50% 50% / contain;
		content: "";
		display: inline-block;
		width: 18px;
		height: 18px;
		vertical-align: middle;
	}
	/* contact */
	.header-link_wrap {
		margin: 20px 17px;
	}
	.header-link {
		border-spacing: 7px 0;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.header-link li {
		padding: 4px;
		width: 50%;
	}
	.header-link li.header-link_support {
		-webkit-box-ordinal-group: 4;
		-webkit-order: 3;
		-ms-flex-order: 3;
		order: 3;
		width: 100%;
	}
	.header-link li.header-link_news {
		-webkit-box-ordinal-group: 3;
		-webkit-order: 2;
		-ms-flex-order: 2;
		order: 2;
	}
	.header-link a {
		background: #555;
		border-radius: 4px;
		color: #FFF;
		display: block;
		font-size: inherit;
		padding: 20px 10px;
		text-align: center;
	}
	.header-link li.header-link_support a {
		background: #009B63;
	}
	.menu-sp_inner .header-link_tel { display: none; }
	.menu-sp_inner .header-logo_group {
		background: url(/lib_image/common/logo_hd_group_wh.png) no-repeat 0 0 / cover;
		display: block;
		margin: 35px auto 12px;
		width: 102px;
		height: 28px;
	}
	.menu-sp_inner .header-logo_group a {
		display: block;
	}
	.menu-sp_inner .header-logo_group img {
		visibility: hidden;
	}
	.menu-sp_inner .header-text { color: inherit; font-size: 10px; text-align: center; margin-bottom: 30px; }
}

/* to pagetop */
@media print, screen and (min-width: 768px) {
#nav-pagetop {
	position: relative;
}
	#nav-pagetop .link-pagetop {
		margin-top: -90px;
		right: 0;
		position: absolute;
	}
	#nav-pagetop.fixed .link-pagetop{
		margin-left: 980px;
		right: auto;
	}
		#nav-pagetop .link-pagetop a {
			background: rgba(0, 0, 0, .8);
			color: #FFF;
			border: 1px solid #FFF;
			display: block;
			overflow: hidden;
			text-indent: 100%;
			white-space: nowrap;
			width: 50px;
			height: 50px;
		}
		#nav-pagetop .link-pagetop a:before {
			border: 1px solid #FFF;
			border-width: 1px 1px 0 0;
			content: "";
			display: block;
			width: 9px;
			height: 9px;
			position: absolute;
			top: 50%;
			left: 50%;
			-webkit-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			transform: rotate(-45deg);
			margin-top: -3px;
			margin-left: -5px;
		}
#nav-pagetop.fixed .link-pagetop {
	bottom: 40px;
	margin-top: 0;
	position: fixed;
}
	#nav-pagetop {
		margin: 0 auto;
		max-width: 980px;
		z-index: 150;
	}
}
@media only screen and (max-width: 767px) {
	#nav-pagetop {}
		#nav-pagetop .link-pagetop {
			bottom: 0;
			right: 0;
			position: absolute;
		}
			#nav-pagetop .link-pagetop a {
				background: rgba(0, 110, 51, 0.8);
				color: #FFF;
				display: block;
				height: 45px;
				overflow: hidden;	
				text-decoration: none;
				white-space: nowrap;
				width: 45px;
			}
	#nav-pagetop .link-pagetop a:before {
		color: #FFF;
		content: "\f106";
		display: block;
		font-family: "fa_custom";
		font-size: 25px;
		line-height: 42px;
		height: 45px;
		width: 45px;
	}
	#nav-pagetop.fixed .link-pagetop {
		bottom: 20px;
		position: fixed;
	}
}

/* floating banner */
@media print, screen and (min-width: 768px) {
	.side-float {
		position: fixed;
		top: 15%;
		right: 0;
		z-index: 2000;
	}
	.side-float a {
		display: block;
		text-decoration: none;
	}
	.side-float_btn {
		margin-top: 5px;
		text-align: right;
	}
	.side-float_catalogue a img {
		position: relative;
	}
	.side-float_contact {}
	.side-float_contact .side-float_tab {
		position: relative;
		width: 68px;
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
		-webkit-transition: -webkit-transform .3s;
		transition: -webkit-transform .3s;
		transition: transform .3s;
		transition: transform .3s, -webkit-transform .3s;
	}
	.side-float_contact .side-float_tab a {
		background: #EDA502;
		border-radius: 4px 0 0 4px;
		color: #FFF;
		display: inline-block;
		font-size: 20px;
		font-weight: bold;
		margin-left: 14px;
		padding: 1em 0;
		position: relative;
		width: 54px;
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		line-height: 54px;
		text-shadow: 0 0 3px rgba(170, 85, 0, 0.84);
	}
	.side-float_contact .side-float_tab a:hover {
		opacity: .6;
	}
}
@media print, screen and (max-width: 767px) {
	.bottom_floating_sp { position: fixed; bottom: 0; width: 100%; background: rgba(0,0,0,0.8); z-index: 100; }
	.bottom-float {
		display: -webkit-box;
		display: -ms-flexbox;
		display: -webkit-flex;
		display: flex;
		padding: 11px 5px;
		width: 100%;
	}
	.bottom-float_btn { width: 50%; padding: 0 5px; }
	.bottom-float_btn a {
		border-radius: 3px;
		color: #FFF;
		display: block;
		font-size: 14px;
		font-weight: bold;
		line-height: 38px;
		text-align: center;
		padding: 0 5px;
		text-decoration: none;
	}
	.bottom-float_catalogue a {
		background: #9FBC3D;
	}
		.bottom-float_catalogue a:before {
			background: url(/lib_image/common/bottom_float_free_sp.png) no-repeat 50% 50% / contain;
			content: "";
			display: inline-block;
			width: 33px;
			height: 29px;
			vertical-align: middle;
			margin-right: 5px;
		}
	.bottom-float_contact a {
		background: #EDA502;
	}
	#footer{ margin-bottom: 60px !important; }
	#nav-pagetop,
	#nav-pagetop.fixed .link-pagetop,
	.link-pagetop { display: none !important; }
}
/* float drawer */
.float-drawer {
	position: fixed;
	top: 0;
	right: 0;
	overflow-y: auto;
	height: 100%;
	-webkit-transition: -webkit-transform .3s;
	transition: -webkit-transform .3s;
	transition: transform .3s;
	transition: transform .3s, -webkit-transform .3s;
	z-index: 2000;
}
.float-drawer a {
	text-decoration: none;
}
.float-drawer .scroll {
	background: #FFF;
	padding: 16px 16px 15px;
}
.float-drawer .float-header {
	background: #333;
	color: #FFF;
	margin: -16px -16px 0;
	padding: 21px 16px 13px;
	text-align: center;
}
.float-drawer .float-header .unit-title {
	font-size: 2.6rem;
	letter-spacing: .02em;
	padding: 0 0 11px;
	border: 0;
	border-bottom: 1px solid #FFF;
	text-align: center;
	display: inline-block;
	line-height: inherit;
	margin-bottom: 0;
}
.float-drawer .float-unit {
	padding: 32px 0 9px;
	text-align: center;
}
.float-drawer .unit-title {
	border-left: 3px solid #009B63;
	text-align: left;
	font-size: 2.2rem;
	font-weight: bold;
	font-weight: 600;
	line-height: 1.4;
	padding-left: 13px;
	margin-bottom: 40px;
}
.float-drawer .lead {
	font-size: 1.4rem;
	line-height: 1.45;
	margin-top: 13px;
	text-align: center;
}
.float-unit .box {
	background: #FFF;
	border: 1px solid #DDD;
	border-radius: 3px;
	margin-top: 32px;
	padding: 16px 19px 20px;
}
.float-unit .box.box-shop {
	border-color: #DDD;
}
.float-unit .box-title {
	color: #000;
	font-size: 1.8rem;
	margin: -26px 0 9px;
	line-height: 1.25;
}
.float-unit .box-title span {
	display: inline-block;
	background: #FFF;
	padding: 0 10px;
}
.float-unit .box-btn {
	margin-top: 12px;
}
.float-unit .btn {
	border: 1px solid #009B63;
	color: #009B63;
	border-radius: 3px;
	display: block;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	margin-top: .75em;
	margin-bottom: 3px;
	padding: 14px 0 10px 10px;
}
.float-unit .btn:hover {
	background: #009B63;
	color: #FFF;
}
.float-unit .box-note {
	margin: 9px 0 3px;
	font-size: 1.4rem;
	font-weight: 500;
	letter-spacing: -.01em;
}
.float-drawer .float-unit-event {
	padding-bottom: 0;
}
.float-drawer .float-unit .box-btn + .box-search {
	margin-top: 25px;
}
.float-unit_shop form {
	position: relative;
	margin-top: -2px;
}
.float-unit_shop form input[type="text"] {
	-webkit-appearance: none;
	appearance: none;
	border: 1px solid #009B63;
	border-radius: 3px;
	display: block;
	width: 100%;
	font-size: 1.8rem;
	height: 48px;
	font-weight: bold;
	padding: 10px 15px;
	font-family: inherit;
}
.float-unit_shop form input[type="text"]::placeholder {
	color: #AAA;
}
.float-unit_shop form input[type="text"]:-ms-input-placeholder {
	color: #AAA;
}
.float-unit_shop form input[type="text"]::-ms-input-placeholder {
	color: #AAA;
}
.float-unit_shop form button {
	-webkit-appearance: none;
	appearance: none;
	border: 0;
	width: 72px;
	border: 1px solid #009B63;
	background: #009B63;
	color: #FFF;
	font-size: 1.6rem;
	text-align: center;
	font-weight: bold;
	position: absolute;
	top: 0;
	right: 0;
	height: 48px;
	border-radius: 0 3px 3px 0;
	font-family: inherit;
	cursor: pointer;
}
.float-unit_shop form button:hover {
	background: #FFF;
	color: #009B63;
}
.float-drawer .float-unit_shop {
	padding-top: 0;
}
.float-drawer .float-unit .box-text {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.4;
	margin-top: 12px;
}
.float-drawer .float-unit .box-search {
	font-size: 1.6rem;
	font-weight: 500;
	margin: 22px 0 15px;
}
.float-drawer .float-unit .box-search::after {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9px 5px 0;
	border-color: #009B63 transparent transparent;
	margin-left: 5px;
}
.float-drawer .float-unit_owner {
	padding-top: 24px;
}
.float-drawer .float-unit_owner .unit-title {
	margin-bottom: 30px;
}
.float-drawer .float-unit_owner .btn {
	background: #A28556;
	border-color: #A28556;
}
.float-drawer .float-unit_owner .btn:hover {
	background: #FFF;
	color: #A28556;
	border-color: #A28556;
}
.float-contact .box-tel {
	color: #000;
}
.float-contact .box-tel a[href^="tel:"] {
	pointer-events: none;
	color: inherit;
}
.float-contact .box-tel .num {
	display: inline-block;
	font-family: Arial, Helvetica, "sans-serif";
	font-size: 3.0rem;
	font-weight: bold;
	line-height: 1.36;
	letter-spacing: .01em;
}
.float-contact .box-tel .fs-small {
	font-size: 1.3rem;
	font-weight: 500;
	letter-spacing: -.05em;
	white-space: nowrap;
}
.float-contact .box.box-shop {
	font-size: 1.3rem;
	padding: 13px 16px;
	text-align: left;
}
.float-contact .box-shop a {
	color: #000;
}
.float-contact .box-shop a:hover {
	color: #009B63;
}
.float-contact .box-shop_link {
	display: -webkit-box !important;
	display: -webkit-flex !important;
	display: -ms-flexbox !important;
	display: flex !important;
}
.float-contact .box-shop .thumb {
	width: 77px;
	height: 58px;
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
}
.float-contact .box-shop .data {
	line-height: 1.23;
	padding-left: 14px;
}
.float-contact .box-shop .data span {
	display: block;
}
.float-contact .box-shop .data .name {
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 5px;
}
.float-contact .box-shop .data .tel {
	color: #009B63;
	font-size: 1.7rem !important;
	font-family: Arial, Helvetica, "sans-serif";
	font-weight: bold;
	margin-top: .25em;
	white-space: nowrap;
}
.float-contact .box-shop .address {
	border-top: 1px solid #DDD;
	line-height: 1.46;
	margin-top: 10px;
	padding-top: 10px;
}
.float-contact .btn.outline {
	background-color: #FFF;
}
.float-contact .fa-custom_a.fa-arrow_bold::after {
	content: "\e902";
	font-size: 24px;
	margin-top: -2px;
	margin-left: 10px;
	vertical-align: middle;
}
.float-contact .fa-custom_b.fa-tel::before {
	content: "\e903";
	margin-right: 5px;
	font-size: 2.5rem;
	vertical-align: 1px;
}
.has-drawer body {
	overflow: hidden;
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}
.has-drawer body::before {
	background: rgba(0, 0, 0, .3);
	content: "";
	display: block;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
}
@media print, screen and (min-width: 768px) {
	.float-drawer {
		-webkit-transform: translateX(100%);
		-ms-transform: translateX(100%);
		transform: translateX(100%);
		width: 317px;
	}
	.has-drawer .side-float_tab {
		-webkit-transform: translateX(-317px);
		-ms-transform: translateX(-317px);
		transform: translateX(-317px);
	}
	.has-drawer .float-drawer {
		-webkit-transform: translateX(0);
		-ms-transform: translateX(0);
		transform: translateX(0);
	}
}
@media print, screen and (max-width: 767px) {
	.float-drawer {
		-webkit-transform: translateY(100%);
		-ms-transform: translateY(100%);
		transform: translateY(100%);
		margin: 8% 8% 0;
	}
	.has-drawer .float-drawer {
		bottom: 0;
		height: auto;
	}
	.float-drawer .scroll {
		padding-bottom: 16px;
	}
	.float-drawer_close {
		content: "";
		display: block;
		width: 24px;
		height: 24px;
		border: 2px solid #FFF;
		border-radius: 50%;
		position: absolute;
		top: 12px;
		right: 12px;
	}
	.float-drawer_close::before,
	.float-drawer_close::after {
		background: #FFF;
		border-radius: 2px;
		content: "";
		display: block;
		width: 12px;
		height: 2px;
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -1px 0 0 -6px;
	}
	.float-drawer_close::before { -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg);}
	.float-drawer_close::after { -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }
	.has-drawer body::before {
		background: rgba(0, 0, 0, .5);
	}
	.has-drawer .float-drawer {
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
	.float-contact .box-tel a[href^="tel:"] {
		pointer-events: auto;
	}
}

/* contact
------------------------------ */
.common-contact {
	background: url(../../lib_image/top/bg_contact.jpg) no-repeat center top / cover;
	padding: 56px 0 65px;
}
.common-contact a.btn-arrow {
	background: #009B63;
	border-radius: 3px;
	color: #FFF !important;
	width: auto;
	display: block;
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	margin: 0 9px;
	text-decoration: none;
	padding: 18px 15px 18px 20px;
}
.common-contact a.btn-arrow:after {
	content: '';
	display: inline-block;
	width: 19px;
	height: 10px;
	margin: 0 0 2px 11px;
	background: url(../../lib_image/top/icon_arrow_btn_04.svg) no-repeat left top / 19px auto;
	-webkit-transition: transform 300ms;
	-webkit-transition: -webkit-transform 300ms;
	transition: -webkit-transform 300ms;
	transition: transform 300ms;
	transition: transform 300ms, -webkit-transform 300ms;
}
.common-contact_inner {
	margin: 0 auto;
	max-width: 960px;
}
.common-contact_title {
  color: #fff;
	font-size: 3.2rem;
	line-height: 1;
	letter-spacing: .025em;
	text-align: center;
	position: relative;
  font-weight: normal;
}
.common-contact_title:after {
	background: #fff;
	content: "";
	display: block;
	width: 56px;
	height: 2px;
	margin: 15px auto 0;
}
.common-contact_lead {
	font-size: 1.8rem;
	line-height: 1;
	margin-top: 29px;
	color: #FFF;
	text-shadow: 0 0 8px rgba(0, 0, 0, .4);
}
.common-contact .wrap-contact {
	margin-top: 31px;
}
	.common-contact .col {
		background: #FFF;
		padding: 24px 16px;
		width: 308px;
	}
.common-contact_label {
	font-size: 2.4rem;
	font-weight: normal;
	text-align: center;
  color: #000;
}
.common-contact_thumb {
	margin: 16px 0 35px;
	height: 88px;
	text-align: center;
	overflow: hidden;
}
.common-contact_thumb img[src*="contact_web"] {
	margin-top: 6px;
}
.common-contact_thumb img[src*="contact_event"] {
	margin-right: 23px;
}
.common-contact_list {
	font-size: 1.5rem;
	list-style: none;
	margin: 0 9px 20px;
	padding: 0;
	text-align: left;
}
	.common-contact_list li {
		padding-left: 23px;
		position: relative;
	}
	.common-contact_list li:before {
		background: url(/lib_image/top/img_contact_check.svg) no-repeat 50% 50% / contain;
		border-radius: 100px;
		content: "";
		display: inline-block;
		width: 16px;
		height: 16px;
		position: absolute;
		left: 0;
		top: -3px;
	}
	.common-contact_list li + li {
		margin-top: 17px;
	}
.common-contact_info {
	margin-top: 24px;
  }
	.common-contact_info a {
		text-align: left;
		width: 100%;
	}
.common-contact_info.tel {
	font-size: 1.3rem;
	color: #009B63;
	line-height: 1.4;
	margin: 0 8px;
  }
	.common-contact_info.tel a {
		color: #000;
		text-decoration: none;
		pointer-events: none;
		color: #009B63;
	}
	.common-contact_info.tel a span {
		display: block;
	}
	.common-contact_info.tel .num {
		font-family: Arial, Helvetica, "sans-serif";
		font-size: 3.3rem;
		font-weight: bold;
		white-space: nowrap;
		letter-spacing: .01em;
    line-height: 1.2;
	}
	.common-contact_info.tel .num:before {
		background: url(/lib_image/top/icon_contact_tel.svg) no-repeat 50% 50% / contain;
		content: "";
		display: inline-block;
		width: 30px;
		height: 30px;
		margin-right: 6px;
		vertical-align: -2px;
	}
.common-contact_info.tel a .desc {
  font-weight: bold;
}
  .common-contact_thumb {
      margin: 10px 0 24px;
      height: 88px;
      text-align: center;
      overflow: hidden;
  }
@media screen and (max-width: 767px) {
	.common-contact {
		padding: 40px 16px 16px;
    background: url(../../lib_image/top/bg_contact_sp.jpg) no-repeat center top / 100% ;
    background-color: #7e7e7e;
	}
	.common-contact a.btn-arrow {
		font-size: 1.6rem;
		padding: 1em 15px;
		min-width: 75%;
	}
	.common-contact a.btn-arrow:after {
		margin: 0 0 0 11px;
	}
  .common-contact_title {
		font-size: 2.2rem;
		line-height: 1.2;
	}
	.common-contact_title:after {
		width: 2.5em;
		margin: 8px auto 0;
	}
	.common-contact_lead {
		font-size: 1.5rem;
		line-height: 1.3;
		text-align: left;
	}
	.common-contact .wrap-contact {
		margin-top: 10px;
	}
	.common-contact .col {
		margin-top: 10px;
		padding: 20px 16px 20px;
	}
	.common-contact_label {
		font-size: 2rem;
	}
	.common-contact_list {
		font-size: 1.4rem;
		margin: 0 auto;
    width: 235px;
	}
	.common-contact_list li:before {
		width: 15px;
		height: 15px;
	}
	.common-contact_list li + li {
		margin-top: 1em;
	}
  .common-contact_info {
    margin-top: 20px;
}
	.common-contact_info.tel {
		font-size: 1.2rem;
    margin-top: 20px;
	}
	.common-contact_info.tel a {
		pointer-events: auto;
    display: inline-block;
    text-align: center;
	}
	.common-contact_info.tel .num {
		font-size: 3.6rem;
	}
	.common-contact_info.tel .num:before {
		width: 33px;
		height: 33px;
	}
  .common-contact_info.tel a .desc {
    font-size: 1.3rem;
  }
}

/* relation links
------------------------------ */
.list-relation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-justify-content: space-between;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 56px 0 0 -10px;
}
	.list-relation li {
		background: #F7F7F7;
		margin-left: 10px;
		width: 184px;
		overflow: hidden;	
	}
	.list-relation a {
		text-decoration: none;
	}
	.list-relation .title {
		display: block;
		font-size: 1.4rem;
		line-height: 1;
		padding: 20px 0;
	}
@media screen and (max-width: 767px) {
	.list-relation {
		margin: 32px -5px 0;
	}
		.list-relation li {
			margin: 5px 5px 0;
			width: calc( 50% - 10px );
		}
		.list-relation .title {
			font-size: 1.0rem;
			padding: 14px;
		}
}


/**/
.section.section-relation {
	padding: 80px 0 75px;
	text-align: center;
}
.section.section-relation .section-title {
  color: #000;
  font-size: 3.2rem;
  line-height: 1;
  letter-spacing: .025em;
  text-align: center;
  position: relative;
  font-weight: normal;
}
.section.section-relation .section-title:after {
  background: #009B63;
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  margin: 15px auto 0;
}
.section.section-relation .section-title + .lead {
	margin-top: 20px;
}
.section.section-relation .lead {
	font-size: 1.8rem;
}
@media screen and (max-width: 767px) {
	.section.section-relation {
		padding: 40px 16px 16px;
	}
	.section.section-relation .section-title {
		font-size: 2.2rem;
    line-height: 1.2;
	}
	.section.section-relation .section-title:after {
    width: 2.5em;
    margin: 8px auto 0;
	}
	.section.section-relation .lead {
		font-size: 1.5rem;
		line-height: 1.3;
		text-align: left
	}
}


@media print, screen and (min-width: 768px) {
	#yrHere.sub-margin { border-top: 1px solid #EEE; }
}


/* online soudan banner */
.soudan-banner {}
.has-drawer .soudan-banner { display: none; }
.soudan-banner_btn {
	background: #009B63;
	border: none;
	border-radius: 4px;
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	color: #FFF;
	cursor: pointer;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	z-index: 3000;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	-webkit-animation: 'btn' .3s ease-out;
	animation: 'btn' .3s ease-out;
}
.soudan-banner_btn,
.soudan-banner_msg {
	-webkit-transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, -webkit-transform .3s;
	transition: opacity .3s, transform .3s;
	transition: opacity .3s, transform .3s, -webkit-transform .3s;
}
@-webkit-keyframes btn {
	0% {
		-webkit-transform: scale( .8 );
		transform: scale( .8 );
		opacity: 0;
	}
	to {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
		opacity: 1;
	}
}
@keyframes btn {
	0% {
		-webkit-transform: scale( .8 );
		transform: scale( .8 );
		opacity: 0;
	}
	to {
		-webkit-transform: scale( 1 );
		transform: scale( 1 );
		opacity: 1;
	}
}
.soudan-banner_btn::after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 12px 0 12px;
	border-color: #009B63 transparent transparent transparent;
	position: absolute;
	bottom: -6px;
	left: 50%;
	margin-left: -12px;
}
.soudan-banner_btn .em {
	font-size: 15px;
}
.soudan-banner_msg {
	background: #FFF;
	border-radius: 4px;
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	box-shadow: 0 3px 6px rgba(0, 0, 0, .16);
	z-index: 99989;
	-webkit-animation: 'msg' .3s ease-out;
	animation: 'msg' .3s ease-out;
}
@-webkit-keyframes msg {
	0% {
		-webkit-transform: translateY(20px);
		transform: translateY(20px);
		opacity: 0;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
@keyframes msg {
	0% {
		-webkit-transform: translateY(20px);
		transform: translateY(20px);
		opacity: 0;
	}
	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
}
.soudan-banner_msg__head {
	background: #009B63;
	border-radius: 4px 4px 0 0;
	color: #FFF;
	font-size: 15px;
	font-weight: bold;
	padding: 10px 13px;
	position: relative;
}
.soudan-banner_msg__head .em {
	font-size: 17px;
}
.soudan-banner_close {
	cursor: pointer;
	display: block;
	width: 35px;
	height: 35px;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -17px;
}
.soudan-banner_close::before,
.soudan-banner_close::after {
	background: #FFF;
	content: "";
	display: block;
	width: 1px;
	height: 12px;
	position: absolute;
	top: 48%;
	right: 16px;
	margin-top: -6px;
}
.soudan-banner_close::before {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.soudan-banner_close::after {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.soudan-banner_msg__body {
	color: #000;
	font-size: 13px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 10px 10px 10px 15px;
	width: 100%;
}
.soudan-banner_msg__lead {
	font-size: 15px;
	font-weight: bold;
	margin-top: 4px;
}
.soudan-banner_msg__lead .em {
	color: #EF8305;
}
.soudan-banner_msg__list {
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
}
.soudan-banner_msg__list li {
	display: inline-block;
}
.soudan-banner_msg__list li + li { margin-left: 5px; }
.soudan-banner_msg__list li::before {
	background-repeat: no-repeat;
	background-position: 50% 50%;
	content: "";
	display: inline-block;
	height: 18px;
	margin-right: 3px;
	vertical-align: -.25em;
}
.soudan-banner__shop::before { background-image: url(/lib_image/common/icon_soudan_shop.svg); width: 18px; }
.soudan-banner__tv::before { background-image: url(/lib_image/common/icon_soudan_tv.svg); width: 21px; }
.soudan-banner__home::before { background-image: url(/lib_image/common/icon_soudan_home.svg); width: 20px; }
.soudan-banner_msg__link a {
	border: 1px solid #009B63;
	border-radius: 3px;
	color: #009B63;
	display: block;
	font-weight: bold;
	letter-spacing: -.5px;
	line-height: 1.23;
	padding: 8px 9px 5px;
	text-decoration: none;
}
.soudan-banner_msg__link a::after {
	content: "\e901";
	font-size: 16px;
	font-weight: bold;
	margin-left: 5px;
	vertical-align: middle;
}
.soudan-banner_msg__link .em {
	letter-spacing: -1.5px;
}
.modaal-noscroll .soudan-banner,
.soudan-banner_msg { display: none; }
.soudan-banner.has-msg .soudan-banner_btn { display: none; }
.soudan-banner.has-msg .soudan-banner_msg { display: block; }

@media print, screen and (min-width: 768px) {
	.soudan-banner_btn {
		width: 123px;
		height: 74px;
		position: fixed;
		right: 16px;
		bottom: 18px;
	}
	.soudan-banner_msg {
		width: 340px;
		position: fixed;
		right: 12px;
		bottom: 12px;
	}
}
@media screen and (max-width: 767px) {
	#soudan-banner { display: none; }
	#soudan-banner.is-show { display: block; }
	.soudan-banner {
		position: fixed;
		left: 10px;
		bottom: 0;
		-webkit-transition: bottom .3s;
		transition: bottom .3s;
		z-index: 999999;
	}
	.soudan-banner.pos-h {
		bottom: 60px;
	}
	.soudan-banner.has-msg {
		background: rgba(0, 0, 0, .3);
		padding: 15px 10px;
		right: 0;
		left: 0;
		width: 100%;
	}
	.soudan-banner_btn {
		background: #009B63 url(/lib_image/common/icon_soudan_sp.svg) no-repeat 0 0;
		width: 72px;
		height: 75px;
		margin-bottom: 15px;
	}
	.soudan-banner_btn__txt {
		display: block;
		height: 0;
		overflow: hidden;
	}
	.soudan-banner_btn::after,
	.soudan-banner_btn__txt {
		opacity: 0;
	}
	.soudan-banner_msg {
		position: relative;
	}
}
