@charset "utf-8";
/*
 * ==========================================================================
 * 
 * [home]
 * 
 * ==========================================================================
 */

/*PC*/
@media only screen and (min-width: 769px) {
	body {
		font-family: 'Noto Sans JP', sans-serif !important;
	}

	.sp {
		display: none
	}

	.flexbox {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	/* メインコンテンツ */
	h1 {
		font-size: 2em;
		margin: 0.67em 0;
		text-align: left;
		font-weight: bold;
		padding: 0 !important;
	}

	#common_head {
		height: auto;
		margin-bottom: 80px;
	}

	.slick-arrow {
		display: none !important;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li {
		width: 16px;
		height: 16px;
		margin: 5px;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li button {
		background-color: #fff;
		width: 16px;
		height: 16px;
		border-radius: 50%;
		box-shadow: none;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li.slick-active button {
		background-color: #6E4A1F;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li button span {
		display: none;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots {
		bottom: -40px;
	}

	.slick-dots li {
		width: 16px;
		height: 16px;
		margin: 5px;
	}

	.slick-dots li button {
		width: 16px;
		height: 16px;
		background-color: #fff;
		border: solid 1px #6E4A1F;
		box-shadow: none;
	}

	.slick-dots li.slick-active button {
		background: #6E4A1F !important;
	}

	.slick-dots li button:before {
		color: #6E4A1F;
		height: 16px;
		width: 16px;
	}
	
	.slick-slide img.sp{
		display: none;
	}

	.hsm-content {
		background-color: #ECF6F0;
		margin: 0 calc(50% - 50vw);
		width: 100vw;
		padding: 40px 0 80px;
	}

	.hsm-content .inner {
		max-width: 1052px;
		margin: 0 auto;
	}

	.tab-area {
		display: flex;
		cursor: pointer;
		margin: 0 auto 20px;
	}

	.hsm-text1 {
		margin-bottom: 10px;
	}

	.tab {
		width: 50%;
		padding: 15px 0;
		text-align: center;
		font-size: 18px;
		background-color: #fff;
		color: #6E4A1F;
	}
	
	.tab.high{
		padding: 0;
	}
	
	.tab.high a{
		padding: 15px 0;
	}

	.tab.active {
		background-color: #009D37;
		color: #fff;
		position: relative;
		display: inline-block;
	}
	
	.tab.active a{
		color: #fff;
	}

	.tab.active:before {
		content: "";
		position: absolute;
		top: 100%;
		left: 50%;
		margin-left: -13px;
		border: 13px solid transparent;
		border-top: 13px solid #009D37;
	}
	
	.tab a{
		display: block;
	}
	
	.tab a:hover{
		opacity: 1;
	}

	.panel {
		display: none;
		text-align: center;
	}

	.panel.active {
		display: block;
	}

	.hsm-list {
		margin-bottom: 48px;
	}

	.hsm-card {
		width: 46%;
		width: calc(49.4% - 40px);
		background-color: #fff;
		border-radius: 10px;
		margin-bottom: 12px;
		text-align: left;
		padding: 20px 20px 13px 20px;
	}

	.hsm-card a {
		display: block;
	}

	.hsm-card:hover {
		border: solid 3px #009D37;
		padding: 17px 17px 10px 17px;
	}

	.hsm-card a:hover {
		opacity: 1;
	}

	.hsm-card-title {
		color: #333333;
		background-color: #E5F1D1;
		font-size: 20px;
		padding: 8px 0 8px 20px;
		margin-bottom: 10px;
		position: relative;
		border-radius: 5px;
	}

	.hsm-card-title .new {
		position: absolute;
		right: 10px;
		top: 13px;
		background-color: #CC0000;
		color: #fff;
		font-size: 12px;
		border-radius: 5px;
		padding: 3px 15px;
	}

	.hsm-card2 .hsm-card-title {
		margin-bottom: 36px;
	}

	.hsm-card-box1 {
		align-items: center;
		margin-bottom: 20px;
	}

	.hsm-card-img1 {
		width: 41.6%;
	}

	.hsm-card-img1 img {
		max-width: 100%;
	}

	.hsm-card-box2 {
		width: 51%;
	}

	.hsm-card-text1 {
		min-height: 42px;
		margin-bottom: 40px;
		letter-spacing: 0.025em;
		padding-top: 20px;
	}

	.hsm-card-price {
		text-align: right;
	}

	.hsm-card-text2 {
		font-weight: bold;
		margin-bottom: 14px;
	}

	.hsm-card-text2:before {
		content: "●";
		font-size: 8px;
		color: #009D37;
		position: relative;
		top: -2px;
		margin-right: 10px;
	}

	.hsm-function {
		justify-content: flex-start;
		margin-bottom: 25px;
	}

	.hsm-function li {
		width: 32.5%;
		text-align: center;
		background-color: #F6F5F2;
		padding: 3px 0 4px;
		margin: 0 1% 6px 0;
		font-size: 12px;
	}

	.hsm-function li:nth-child(3n) {
		margin: 0 0 6px 0;
	}

	.hsm-card-box3 {
		justify-content: flex-start;
		margin-bottom: 14px;
	}

	.hsm-card-box3 .hsm-card-text2 {
		margin: 0;
	}

	.hsm-card-text3 {
		margin-left: 20px;
	}

	.hsm-card-tag {
		justify-content: flex-end;
	}

	.hsm-card-tag li:nth-child(n+2) {
		margin-left: 5px;
	}

	.hsm-card-tag1 {
		background-color: #E083A5;
		border-radius: 5px;
		color: #fff;
		font-size: 12px;
		padding: 3px 10px;
	}

	.hsm-card-tag2 {
		background-color: #78BD36;
		border-radius: 5px;
		color: #fff;
		font-size: 12px;
		padding: 3px 10px;
	}

	.hsm-btn1 {
		margin-bottom: 20px;
	}

	.hsm-btn1 a {
		width: 450px;
		background-color: #fff;
		display: block;
		border-radius: 10px;
		color: #6E4A1F;
		background-image: url(/-/media/cojp/product/hsm/img/embropc/top2023/img/arrow2);
		background-repeat: no-repeat;
		background-position: 94% 50%;
		-webkit-background-size: 20px auto;
		background-size: 20px auto;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 70px;
		margin: 0 auto;
		font-size: 16px;
	}

	.leaf-bg {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}

	.hsm-leaf.pc {
		text-align: center;
		display: block;
	}

	.hsm-leaf img {
		width: 100%;
	}

	.footer-img img {
		width: 100%;
	}

}

/*タブレット*/
@media only screen and (min-width: 769px) and (max-width: 1110px) {}

/*スマホ*/
@media only screen and (max-width: 768px) {
	html {
		font-size: 26.7vw;
	}

	body {
		font-size: 0.14rem;
		font-family: 'Noto Sans JP', sans-serif;
	}

	.sp {
		display: block;
	}

	.pc {
		display: none;
	}

	.st-contents {
		padding: 0 0.15rem;
	}

	.flexbox {
		display: -ms-flexbox;
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	/* SP：メインコンテンツ */
	.mod-headingLv4 {
		margin: 0;
	}

	#common_head h1 {
		position: relative;
		margin: 0 0 0.7rem;
	}

	.mod-headingLv1 h1 {
		font-size: 0.24rem;
		margin: 0.67em 0;
		text-align: left;
		font-weight: bold;
		padding: 0 !important;
	}

	#common_head {
		height: auto;
		margin: 0 0 0.75rem;
	}

	.mod-categoryTopHeroImg {
		display: block;
		margin: 0 -0.15rem;
	}

	.slick-arrow {
		display: none !important;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li {
		width: 0.16rem;
		height: 0.16rem;
		margin: 0.05rem;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li button {
		background-color: #fff;
		width: 0.16rem;
		height: 0.16rem;
		border-radius: 50%;
		box-shadow: none;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li.slick-active button {
		background-color: #6E4A1F;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots li button span {
		display: none;
	}

	.mod-categoryTopHeroImg_imgChanger .slick-dots {
		bottom: -0.4rem;
	}

	.slick-dots li {
		width: 0.16rem;
		height: 0.16rem;
		margin: 0.05rem;
	}

	.slick-dots li button {
		width: 0.16rem;
		height: 0.16rem;
		background-color: #fff;
		border: solid 1px #6E4A1F;
		box-shadow: none;
	}

	.slick-dots li.slick-active button {
		background: #6E4A1F !important;
	}

	.slick-dots li button:before {
		color: #6E4A1F;
		width: 0.16rem;
		height: 0.16rem;
	}
	
	.slick-slide img.sp{
		display: block;
		width: 100%;
	}
	
	.slick-slide img.pc{
		display: none;
	}

	.hsm-content {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
		padding-bottom: 0.3rem;
	}

	.hsm-content .inner {
		max-width: 1052px;
		margin: 0 auto;
	}

	.hsm-text1 {
		margin-bottom: 0.1rem;
	}

	.tab-area {
		display: flex;
		cursor: pointer;
		margin: 0 auto 0.2rem;
	}

	.tab {
		width: 50%;
		padding: 0.15rem 0;
		text-align: center;
		font-size: 0.18rem;
		background-color: #F2F0ED;
		color: #6E4A1F;
	}

	.tab.active {
		background-color: #009D37;
		color: #fff;
		position: relative;
		display: inline-block;
	}

	.tab.active:before {
		content: "";
		position: absolute;
		top: 100%;
		left: 50%;
		margin-left: -13px;
		border: 13px solid transparent;
		border-top: 13px solid #009D37;
	}

	.panel {
		display: none;
		text-align: center;
	}

	.panel.active {
		display: block;
	}

	.hsm-card {
		width: 100%;
		border-radius: 10px;
		margin-bottom: 0.3rem;
		text-align: left;
	}

	.hsm-card-title {
		color: #333333;
		background-color: #E5F1D1;
		font-size: 0.18rem;
		padding: 0.1rem 0 0.1rem 0.44rem;
		margin-bottom: 0.2rem;
		position: relative;
		background-image: url(/-/media/cojp/product/hsm/img/embropc/top2023/img/arrow1);
		background-repeat: no-repeat;
		-webkit-background-size: 0.2rem auto;
		background-size: 0.2rem auto;
		background-position: 0.15rem 0.15rem;
	}

	.hsm-card-title .new {
		position: absolute;
		right: 0.1rem;
		top: 0.13rem;
		background-color: #CC0000;
		color: #fff;
		font-size: 0.12rem;
		border-radius: 5px;
		padding: 0.03rem 0.11rem;
	}

	.hsm-card-box1 {
		align-items: center;
		margin-bottom: 0.2rem;
		padding: 0 0.15rem;
	}

	.hsm-card-img1 {
		width: 45%;
	}

	.hsm-card-img1 img {
		max-width: 100%;
	}

	.hsm-card-box2 {
		width: 45%;
	}

	.hsm-card-text1 {
		margin-bottom: 0.2rem;
		letter-spacing: 0.025em;
	}

	.hsm-card-price {
		text-align: right;
	}

	.hsm-card-text2 {
		font-weight: bold;
		margin-bottom: 0.1rem;
		padding: 0 0.15rem;
	}

	.hsm-card-text2:before {
		content: "●";
		font-size: 8px;
		color: #009D37;
		position: relative;
		top: -2px;
		margin-right: 10px;
	}

	.hsm-function {
		justify-content: flex-start;
		padding: 0 0.15rem;
		margin-bottom: 0.2rem;
	}

	.hsm-function li {
		width: 49.5%;
		width: calc(50% - 1px);
		text-align: center;
		background-color: #F6F5F2;
		padding: 0.06rem 0;
		font-size: 0.12rem;
		border-right: solid 1px #fff;
		border-bottom: solid 1px #fff;
	}

	.hsm-card-text3.sp {
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 0.2rem 0;
	}

	.hsm-card-text3 img {
		width: 0.43rem;
		margin-right: 2px;
	}

	.hsm-card-text3 span {
		background-color: #FFEEEE;
		font-size: 0.12rem;
		padding: 0.1rem 0.13rem 0.11rem;
	}

	.leaf-bg {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}

	.hsm-leaf.pc {
		text-align: center;
		display: none;
	}

	.hsm-leaf img {
		width: 100%;
	}

	.hsm-card-tag {
		justify-content: flex-end;
		margin: 0 0.15rem 0.1rem 0;
	}

	.hsm-card-tag li:nth-child(n+2) {
		margin-left: 5px;
	}

	.hsm-card-tag1 {
		background-color: #E083A5;
		border-radius: 5px;
		color: #fff;
		font-size: 0.12rem;
		padding: 3px 10px;
	}

	.hsm-card-tag2 {
		background-color: #78BD36;
		border-radius: 5px;
		color: #fff;
		font-size: 0.12rem;
		padding: 3px 10px;
	}

	.hsm-btn1 {
		margin-bottom: 0.3rem;
		padding: 0 0.15rem;
	}

	.hsm-btn1 a {
		width: 100%;
		background-color: #F2F0ED;
		display: block;
		border-radius: 5px;
		color: #6E4A1F;
		background-image: url(/-/media/cojp/product/hsm/img/embropc/top2023/img/arrow2);
		background-repeat: no-repeat;
		background-position: 94% 50%;
		-webkit-background-size: 0.2rem auto;
		background-size: 0.2rem auto;
		display: flex;
		justify-content: center;
		align-items: center;
		height: 0.7rem;
		margin: 0 auto;
		font-size: 0.14rem;
		text-align: center;
	}

	.hsm-card-box3 {
		display: block;
		margin-bottom: 0.14rem;
	}

	.hsm-card-box3 .hsm-card-text2 {
		margin: 0 0 5px;
	}

	.hsm-card-text3 {
		padding: 0 0.15rem;
	}

	.footer-img img {
		width: 100%;
	}

}