@charset "UTF-8";
*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {
	--main:#1d1d1d;
	--gray:#929081;
	--lightgray:#edeae5;
	--darkgray:#535250;
	--orange:#f17633;
	--paddingPC: 7rem 7vw;
	--paddingSP:3rem 5vw;
	--paddingTABLET: 3rem 5vw;
	--paddingchooseArea:0 11vw;
	--font01:myriad-pro, sans-serif;
	--font02:'Zen Kaku Gothic New', sans-serif;
	--font03:"Noto Sans JP", sans-serif;
    --size_content--l: 1520px;
    --size_content--full: 100%;
}



main img * {
	max-width:100%;
}
#main_contents {
	background: var(--lightgray);
}

@media only screen and (max-width: 599px) {
	.sp_only {
		display: block;
	}
	.sp_tablet_only {
		display: block;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: none !important;
	}
	.pc_tablet_only {
		display:none !important;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: block !important;
	}
	.tablet_only {
		display: block;
	}
	.pc_only {
		display: none !important;
	}
	.pc_tablet_only {
		display:block;
	}
}
@media only screen and (min-width: 1025px) {
	.sp_only {
		display: none !important;
	}
	.sp_tablet_only {
		display: none !important;
	}
	.tablet_only {
		display: none;
	}
	.pc_only {
		display: block;
	}
	.pc_tablet_only {
		display:block;
	}
}



/* ------------------------------------------ 
	
 - COMMON

------------------------------------------ */
/*
 area_title h2
---------------------------- */
@media only screen and (max-width: 599px) {
	.area_title h2 {
		padding: 0;
	}
	.area_title h2 > ul {
		display:flex;
		align-items: flex-start;
		justify-content: flex-end;
		/* margin-bottom: 2rem; */
		flex-direction: column;
	}
	.area_title h2 > ul > li:first-child {
		font-size: 10vw;
		text-align:left;
		font-family:var(--font01);
		font-weight:600;
	}
	.area_title h2 > ul > li:first-child::first-letter {
		font-size: 15vw;
		letter-spacing:-2px;
		font-weight:400;
	}
	.area_title h2 > ul > li:last-child {
		font-size: 14px;
		text-align:left;
		font-family:var(--font02);
		margin-top:-0.7rem;
		padding-left:4px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.area_title h2 {
		padding: 0;
	}
	.area_title h2 > ul {
		display:flex;
		align-items: flex-start;
		justify-content: flex-end;
		margin-bottom: 2rem;
		flex-direction: column;
	}
	.area_title h2 > ul > li:first-child {
		font-size: 8vw;
		text-align:left;
		font-family:var(--font01);
		font-weight:600;
	}
	.area_title h2 > ul > li:first-child::first-letter {
		font-size: 12vw;
		letter-spacing:-2px;
		font-weight:400;
	}
	.area_title h2 > ul > li:last-child {
		font-size: 14px;
		text-align:left;
		font-family:var(--font02);
		margin-top:-0.7rem;
		padding-left:4px;
	}
}
@media only screen and (min-width: 1025px) {
	.area_title h2 {
		padding: 0;
	}
	.area_title h2 > ul {
		display:flex;
		align-items: flex-end;
		justify-content: flex-end;
		margin-bottom: 2rem;
		flex-direction: column;
	}
	.area_title h2 > ul > li:first-child {
		font-size: 5vw;
		font-family: var(--font01);
		font-weight:600;
	}
	.area_title h2 > ul > li:first-child::first-letter {
		font-size: 8vw;
		letter-spacing:-2px;
		font-weight:400;
	}
	.area_title h2 > ul > li:last-child {
		text-align:right;
		font-family:var(--font02);
	}
}


/* ------------------------------------------ 
	
 - MV

------------------------------------------ */
.top_mv {
	width: 100%;
	height: 100%;
	position: relative;
	top: 0px;
}
.mv {
	position:relative;
	visibility: visible;
	background: #fff;
}

@keyframes mvAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@media only screen and (max-width: 599px) {
    .top_mv {
		padding-bottom: 190px;
		background: #fff;
	}
	.mv {
		width:100%;
	}
	.mv_img {
	    max-width:100%;
	}
	.mv_imagelist {
		display:flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.mv_imagelist li {
		width: 50%;
	}
	.mv_imagelist li:nth-child(3),
	.mv_imagelist li:nth-child(4) {
		margin-top: -6px;
	}
	.mv_imagelist li:nth-child(1),
	.mv_imagelist li:nth-child(3) {
		z-index:1;
		
	}
	.mv_imagelist li:nth-child(2),
	.mv_imagelist li:nth-child(4) {
		z-index:0;
		
	}
	.mv_imagelist li img {
		max-width:100%;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	 .top_mv {
		margin-bottom: 200px;
		background: #fff;
	}
	.mv {
		max-width: 1024px;
		width:100%;
	}
	.mv_img {
	    
	}
	.mv_imagelist {
		display:flex;
	}
	.mv_imagelist li {
		
	}
	.mv_imagelist li img {
		max-width:100%;
	}
}
@media only screen and (min-width: 1025px) {
	.mv {
		max-width: 1980px;
		width:100%;
	}
	.mv_img {
	    
	}
	.mv_imagelist {
		display:flex;
	}
	.mv_imagelist li {
		
	}
	.mv_imagelist li img {
		max-width:100%;
	}
}


/* ===================
 mv animation
=================== */
.change-time15{
  animation-duration: 1.5s;
}
.change-time2{
  animation-duration: 2s;
}
.change-time25{
  animation-duration: 2.5s;
}
.change-time30{
  animation-duration: 3s;
}
.change-time35{
  animation-duration: 3.5s;
}
.change-time4{
  animation-duration: 4s;
}
.change-time45{
  animation-duration: 4.5s;
}


.delay-time1{
animation-delay: 1s;
}
.delay-time15{
animation-delay: 1.5s;
}
.delay-time2{
animation-delay: 2s;
}
.delay-time25{
  animation-delay: 2.5s;
}
.delay-time3{
  animation-delay: 3s;
}
.delay-time35{
  animation-delay: 3.5s;
}
.delay-time4{
  animation-delay: 4s;
}
.delay-time5{
  animation-delay: 4.5s;
}
.delay-time55{
  animation-delay: 5s;
}
.delay-time6{
  animation-delay: 5.5s;
}
.delay-time65{
  animation-delay: 6s;
}
.delay-time7{
  animation-delay: 6.5s;
}

@media only screen and (max-width: 599px) {
	.mv_image01 {
		animation:imagelist04 1s ease-in-out 1s forwards alternate;
		-webkit-animation:imagelist04 1.5s ease-in-out 1s forwards alternate;
		-moz-animation:imagelist04 1.5s ease-in-out 1s forwards alternate;
	    opacity:0;
	}
	.mv_image02 {
		animation:imagelist03 1s ease-in-out 2s forwards alternate;
		-webkit-animation:imagelist03 1.5s ease-in-out 2s forwards alternate;
		-moz-animation:imagelist03 1.5s ease-in-out 2s forwards alternate;
	    opacity:0;
	}
	.mv_image03 {
		animation:imagelist02 1s ease-in-out 3s forwards alternate;
		-webkit-animation:imagelist02 1.5s ease-in-out 3s forwards alternate;
		-moz-animation:imagelist02 1.5s ease-in-out 3s forwards alternate;
	    opacity:0;
	}
	.mv_image04 {
		animation:imagelist01 1s ease-in-out 4s forwards alternate;
		-webkit-animation:imagelist01 1.5s ease-in-out 4s forwards alternate;
		-moz-animation:imagelist01 1.5s ease-in-out 4s forwards alternate;
	    opacity:0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	
}
@media only screen and (min-width: 1025px) {
	.mv_image04 {
		animation:imagelist04 1.5s ease-in-out 1s forwards alternate;
		-webkit-animation:imagelist04 1.5s ease-in-out 1s forwards alternate;
		-moz-animation:imagelist04 1.5s ease-in-out 1s forwards alternate;
	    opacity:0;
	}
	.mv_image03 {
		animation:imagelist03 1.5s ease-in-out 2s forwards alternate;
		-webkit-animation:imagelist03 1.5s ease-in-out 2s forwards alternate;
		-moz-animation:imagelist03 1.5s ease-in-out 2s forwards alternate;
	    opacity:0;
	}
	.mv_image02 {
		animation:imagelist02 1.5s ease-in-out 3s forwards alternate;
		-webkit-animation:imagelist02 1.5s ease-in-out 3s forwards alternate;
		-moz-animation:imagelist02 1.5s ease-in-out 3s forwards alternate;
	    opacity:0;
	}
	.mv_image01 {
		animation:imagelist01 1.5s ease-in-out 4s forwards alternate;
		-webkit-animation:imagelist01 1.5s ease-in-out 4s forwards alternate;
		-moz-animation:imagelist01 1.5s ease-in-out 4s forwards alternate;
	    opacity:0;
	}
}
@keyframes imagelist04{
	0% {
		transform:translate(-30px, 0%);
		opacity:0;
	}
	100% {
		transform:translate(0%, 0%);
		opacity:1;
	}
}
@keyframes imagelist03{

	0% {
		transform:translate(-30px, 0%);
		opacity:0;
	}
	100% {
		transform:translate(0%, 0%);
		opacity:1;
	}
}
@keyframes imagelist02{
	0% {
		transform:translate(-30px, 0%);
		opacity:0;
	}
	100% {
		transform:translate(0%, 0%);
		opacity:1;
	}
}
@keyframes imagelist01{
	0% {
		transform:translate(-30px, 0%);
		opacity:0;
	}
	100% {
		transform:translate(0%, 0%);
		opacity:1;
	}
}

/*
 header_logo
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
    .header_logo {
        width: 35%;
        position: absolute;
        top: 2.5%;
        left: 17px;
        z-index: 2;
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .header_logo {
        width: 22%;
        position: absolute;
        top: 6%;
        left: 17px;
    }
}
@media only screen and (min-width: 1025px) {
    .header_logo {
        width: 10%;
        position: absolute;
        top: 3%;
        left: 27px;
    }
}


/*
 main_tit
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.main_tit_wrap {
		position: absolute;
		top: 78%;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
	}
	.main_tit01 {
    }
	.main_tit01 p {
		font-size: 4.6vw;
	}
	.main_tit02 {
		margin: 25px auto 0;
	}
	.main_tit02 img {
		width: 45%;
	}
	.fadeIn,
	.fadeIn span {
		animation-name: fadeInAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
	.fadeOut,
	.fadeOut span {
		animation-name: fadeOutAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
	.fadeUp,
	.fadeUp span {
		animation-name: fadeUpAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.main_tit_wrap {
		position: absolute;
		top: 100%;
		left: 50%;
		transform: translateX(-50%);
		width: 100%;
		background: #fff;
		padding: 3rem 0;
	}
	.main_tit01 {
    }
	.main_tit01 p {
		font-size: 2.6vw;
	}
	.main_tit02 {
		margin: 20px auto 0;
	}
	.main_tit02 img {
		width: 25%;
	}
	.fadeIn,
	.fadeIn span {
		animation-name: fadeInAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
	.fadeOut,
	.fadeOut span {
		animation-name: fadeOutAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
	.fadeUp,
	.fadeUp span {
		animation-name: fadeUpAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
}
@media only screen and (min-width: 1025px) {
	.main_tit01 {
		position:absolute;
		font-size: 2.5vw;
		top: 6%;
		left: 26%;
		font-weight:normal;
	}
	.main_tit01 p {
		text-align:left;
	}
	.main_tit02 {
		position:absolute;
		top: 17%;
		left: 40%;
		width: 21%;
	}
	.main_tit02 img {
		width: 100%;
	}

	.fadeIn,
	.fadeIn span {
		animation-name: fadeInAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
	.fadeOut,
	.fadeOut span {
		animation-name: fadeOutAnime;
		animation-fill-mode:forwards;
		opacity: 0;
	}
	.fadeUp,
	.fadeUp span {
		animation-name: fadeUpAnime;
		animation-fill-mode:forwards;
		opacity:0;
	}
}

@keyframes fadeInAnime{
	from {
		opacity: 0;
	}
	to {
	opacity: 1;
	}
}
@keyframes fadeOutAnime{
	0% {
		opacity: 0;
	}
	50% {
		opacity: 1;
	}
	100% {
		opacity: 0;
	}
}
@keyframes fadeUpAnime{
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
	opacity: 1;
	transform: translateY(0);
	}
}




@media only screen and (max-width: 599px) {
    
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    
}
@media only screen and (min-width: 1025px) {
    
}



/* -----------------------------------------------------

- recommend_anchor_area

----------------------------------------------------- */
@media only screen and (max-width: 599px) {
     .recommend_anchor_area {
        padding: 7vh 5vw 4vh;
        background: #fff;
        position: relative;
        z-index: 5;
        margin-top: -5px;
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend_anchor_area {
        padding: 6vh 3vw 7vh;
        background: #fff;
        position: relative;
        z-index: 5;
    }
}
@media only screen and (min-width: 1025px) {
    .recommend_anchor_area {
        padding: 11vh 5vw 14vh;
        background: #fff;
        position: relative;
        z-index: 5;
        margin-top: -5px;
    }
}


/*
anchor_lead
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.anchor_lead {
		text-align:left;
		margin: 0vh auto 8vh 5vw;
		font-size: 16px;
		position:relative;
	}
	.anchor_lead::after {
		content:"Design";
		font-size: 64px;
		letter-spacing:1px;
		position:absolute;
		top: -50px;
		right: 4%;
		color: var(--lightgray);
		z-index: -1;
		font-family: var(--font01);
		opacity: 0.5;
	}
}

@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.anchor_lead {
		text-align:right;
		margin: 1vh auto 9vh;
		font-size:1rem;
		position:relative;
	}
	.anchor_lead::after {
		content:"Design";
		font-size: 86px;
		letter-spacing:1px;
		position:absolute;
		bottom: -39px;
		right: 1%;
		color: var(--lightgray);
		z-index: -1;
		font-family: var(--font01);
		opacity: 0.5;
	}
}

@media only screen and (min-width: 1025px) {
	.anchor_lead {
		text-align:right;
		margin: 10vh auto 14vh;
		font-size: clamp(1.4vw, 1.4vw, 1.6vw);
		position:relative;
	}
	.anchor_lead::after {
		content:"Design";
		font-size: 180px;
		letter-spacing:1px;
		position:absolute;
		bottom: -90px;
		right: 0%;
		color: var(--lightgray);
		z-index: -1;
		font-family: var(--font01);
		opacity: 0.5;
	}
}


/*
recommend_anchor_list_wrap
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
     .recommend_anchor_list_wrap {
        display:flex;
        flex-flow: row wrap;
        justify-content: space-around;
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
     .recommend_anchor_list_wrap {
        display:flex;
        justify-content:space-between;
        flex-direction: row;
        align-items: stretch;
        flex-wrap: nowrap;
    }
}
@media only screen and (min-width: 1025px) {
    .recommend_anchor_list_wrap {
        display:flex;
        justify-content:space-between;
        align-items: stretch;
    }
}


/*
recommend_anchor_list
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend_anchor_list {
        width: 42%;
        padding:0;
        background: #fff;
        margin-bottom: 40px;
    }
	.recommend_anchor_list a {
		display:block;
		word-break: break-all;
	}
    .recommend_anchor_list ul {

    }
	.recommend_anchor_list:first-of-type ul li:last-child::after {
		content:"Style01";
		position:absolute;
		z-index:12;
		bottom: -12px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.3rem;
        font-weight: 600;
		color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(2) ul li:last-child::after  {
		content:"Style02";
		position:absolute;
		z-index:12;
		bottom: -12px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.3rem;
        font-weight: 600;
		color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(3) ul li:last-child::after {
		content:"Style03";
		position:absolute;
		z-index:12;
		bottom: -12px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.3rem;
        font-weight: 600;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(4) ul li:last-child::after {
		content:"Style04";
		position:absolute;
		z-index:12;
		bottom: -12px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.3rem;
        font-weight: 600;
        color: var(--gray);
	}
    .recommend_anchor_list ul li {
        text-align:left;
        font-size: 0.8rem;
    }
    .recommend_anchor_list ul li:nth-child(2) {
        padding: 10px 10px 0;
        background: var(--lightgray);
    }
	 .recommend_anchor_list ul li:nth-child(3) {
        padding: 7px 10px 15px;
        background: var(--lightgray);
    }
	.recommend_anchor_list img {
        max-width:100%;
        filter: contrast(1.1);
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend_anchor_list {
        width: 22%;
        padding:0;
    }
	.recommend_anchor_list a {
		display:block;
		word-break: break-all;
	}
    .recommend_anchor_list ul {

    }
	.recommend_anchor_list:first-of-type ul li:last-child::after {
		content:"Style01";
		position:absolute;
		z-index:12;
		bottom: -15px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.5rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(2) ul li:last-child::after {
		content:"Style02";
		position:absolute;
		z-index:12;
		bottom: -15px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.5rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(3) ul li:last-child::after {
		content:"Style03";
		position:absolute;
		z-index:12;
		bottom: -15px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.5rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(4) ul li:last-child::after {
		content:"Style04";
		position:absolute;
		z-index:12;
		bottom: -15px;
		right: 0;
		font-family:var(--font01);
		font-size: 1.5rem;
		color: var(--gray);
	}
    .recommend_anchor_list ul li {
        text-align:left;
        font-size: 0.8rem;
        position: relative;
    }
    .recommend_anchor_list ul li:nth-child(2) {
        padding: 14px 20px 5px;
        background: var(--lightgray);
    }
	 .recommend_anchor_list ul li:nth-child(3) {
        padding: 5px 20px 20px;
        background: var(--lightgray);
    }
	.recommend_anchor_list img {
        max-width:100%;
        filter:contrast(1.1);
    }
}
@media only screen and (min-width: 1025px) {
    .recommend_anchor_list {
        width: 22%;
        padding:0;
    }
	.recommend_anchor_list a {
		display:block;
		word-break: break-all;
	}
    .recommend_anchor_list ul {

    }
	.recommend_anchor_list:first-of-type ul li:last-child::after {
		content:"Style01";
		position:absolute;
		z-index:12;
		bottom: -25px;
		right: 0;
		font-family:var(--font01);
		font-size: 2.3rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(2) ul li:last-child::after {
		content:"Style02";
		position:absolute;
		z-index:12;
		bottom: -25px;
		right: 0;
		font-family:var(--font01);
		font-size: 2.3rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(3) ul li:last-child::after {
		content:"Style03";
		position:absolute;
		z-index:12;
		bottom: -25px;
		right: 0;
		font-family:var(--font01);
		font-size: 2.3rem;
        color: var(--gray);
	}
	.recommend_anchor_list:nth-of-type(4) ul li:last-child::after {
		content:"Style04";
		position:absolute;
		z-index:12;
		bottom: -25px;
		right: 0;
		font-family:var(--font01);
		font-size: 2.3rem;
		color: var(--gray);
	}
    .recommend_anchor_list ul li {
        text-align:left;
        font-size: 0.95vw;
        position: relative;
    }
    .recommend_anchor_list ul li:nth-child(2) {
        padding: 14px 20px 5px;
        background: var(--lightgray);
    }
	 .recommend_anchor_list ul li:nth-child(3) {
        padding: 5px 20px 24px;
        background: var(--lightgray);
    }
	.recommend_anchor_list img {
        max-width:100%;
        filter:contrast(1.1);
    }
}





@media only screen and (max-width: 599px) {
    
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    
}
@media only screen and (min-width: 1025px) {

}





/* --------------------------------------------------

- bg_wrap

-------------------------------------------------- */
@media only screen and (max-width: 599px) {
    .bg_text_wrap {
        background: #fff;
    }
	.bg_text {
        background: #fff;
        font-size: 14px;
		line-height:1.7;
    }
    .bg_text span{
        font-size: 28px;
        letter-spacing: 10px;
    }
    .bg_color {
        display: inline-block;
        max-width: 599px;
        width: 100%;
        height: clamp(196px, 196px, 200px);
        border-radius: 50% / 0 0 90% 90%;
        background: #fff;
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
     .bg_text_wrap {
        width: 100%;
        background: #fff;
    }
    .bg_text {
        background: #fff;
        font-size: clamp(16px,16px,18px);
        padding: 10px 0 0;
    }
    .bg_text span{
        font-size: clamp(26px, 26px, 32px);
        letter-spacing: 10px;
    }
    .bg_color {
        display: inline-block;
        max-width: 1024px;
        width: 100%;
        height: clamp(250px, 260px, 270px);
        border-radius: 50% / 0 0 100% 100%;
        background: #fff;
    }
}
@media only screen and (min-width: 1025px) {
    .bg_text_wrap {
        width: 100%;
        background: #fff;
    }
    .bg_text {
        background: #fff;
        font-size: clamp(16px,24px,32px);
        padding: 120px 0 0;
    }
    .bg_text span{
        font-size: clamp(32px, 42px, 42px);
        letter-spacing: 10px;
    }
    .bg_color {
        display: inline-block;
        max-width: 1920px;
        width: 100%;
        height: clamp(350px, 500px, 500px);
        border-radius: 50% / 0 0 100% 100%;
        background: #fff;
    }
}



/* --------------------------------------------------

 - scrolldown

-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	 .scrolldown_wrap {
        position:relative;
        width: 100%;
    }
	.scrolldown {
	    position:absolute;
	    left:50%;
	    top: 130px;
	    height: 50px;
	    z-index: 50;
	}
	.scrolldown span{
	    position: absolute;
	    left: -19px;
	    top: -31px;
	    color: var(--main);
	    font-weight: bold;
	    font-size: 0.9rem;
	    font-family: var(--font01);
	    letter-spacing: 0.05em;
	    animation-name: Scrolldown;
	    animation-delay:2s;
	    animation-fill-mode:forwards;
	    opacity:1;
	}
	.scrolldown::after{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 1px;
		height: 77px;
		background: var(--main);
		animation: pathmove 1.4s ease-in-out infinite;
		animation-delay:2s;
		opacity: 1;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.scrolldown_wrap {
        position:relative;
        width: 100%;
        top: 50px;
    }
	.scrolldown {
	    position:absolute;
	    left:50%;
	    top: 89px;
	    height: 110px;
	    z-index: 50;
	}
	.scrolldown span{
	    position: absolute;
	    left: -22px;
	    top: -38px;
	    color: var(--main);
	    font-weight: bold;
	    font-size: 1rem;
	    font-family: var(--font01);
	    letter-spacing: 0.05em;
	    opacity:1;
	}
	.scrolldown::after{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 1px;
		height: 140px;
		background: var(--main);
		opacity: 1;
	}
}
@media only screen and (min-width: 1025px) {
    .scrolldown_wrap {
        position:relative;
        width: 100%;
        top: 250px;
    }
	.scrolldown {
	    position:absolute;
	    left:50%;
	    top: 89px;
	    height: 150px;
	    z-index: 50;
	}
	.scrolldown span{
	    position: absolute;
	    left: -22px;
	    top: -38px;
	    color: var(--main);
	    font-weight: bold;
	    font-size: 1rem;
	    font-family: var(--font01);
	    letter-spacing: 0.05em;
	    opacity:1;
	}
	.scrolldown::after{
		content: "";
		position: absolute;
		top: 0;
		left: 50%;
		width: 1px;
		height: 220px;
		background: var(--main);
		opacity: 1;
	}
}





/* -----------------------------------------------------

- detail_area

----------------------------------------------------- */
/* -----------------------------------------------------
 detail_area COMMON
----------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.detail_area {
		padding: 10vh 6vw 6vh;
		position: relative;
		z-index: 10;
		background: var(--lightgray);
	}
	.detail_area img {
		max-width:100%;
	}
	.detail_area .area_title {
	}
	.detail_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.detail_area {
		padding: 9vh 7vw 6vh;
		position: relative;
		z-index: 2;
		background: var(--lightgray);
	}
	.detail_area img {
		max-width:100%;
	}
	.detail_area .area_title {
	}
	.detail_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 1025px) {
	.detail_area {
		padding: 10vh 10vw;
		background: #fff;
		background: var(--lightgray);
	}
	.detail_area img {
		max-width:100%;
	}
	.detail_area .area_title {
		text-align:right;
	}
	.detail_area .area_title h2 {
		padding: 0;
	}
}

/*
item_price_list
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.item_price_list {
		margin:0 auto 3rem;
		width:50%;
	}
	.item_price_list a {
		background: var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:0.5rem 2rem;
		font-size:0.9rem;
		display:block;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.item_price_list {
		margin: 0 0 3rem auto;
		width: 22%;
	}
	.item_price_list a {
		background: var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:0.5rem 2rem;
		font-size:0.9rem;
		display:block;
	}
}
@media only screen and (min-width: 1025px) {
	.item_price_list {
		margin-bottom:1rem;
	}
	.item_price_list a {
		background: var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:0.5rem 2rem;
	}
}


/*
parts_wrap_title
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap_title {
		margin-bottom: 1rem;
	}
	.parts_wrap_title h3 {
		text-align: left;
		font-size: 1.8rem;
		margin-bottom:0.5rem;
		font-family: var(--font01);
		font-weight: 400;
		border-bottom: 1px solid var(--main);
	}
	.parts_wrap_title p {
		font-size: 0.9rem;
		font-family: var(--font02);
		font-weight:bold;
        text-align: left;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.parts_wrap_title {
		margin-bottom: 1rem;
	}
	.parts_wrap_title h3 {
		text-align: left;
		font-size: 2rem;
		margin-bottom:0.5rem;
		font-family: var(--font01);
		font-weight: 400;
		border-bottom: 1px solid var(--main);
	}
	.parts_wrap_title p {
		font-size: 1rem;
		font-family: var(--font02);
		font-weight:bold;
        text-align: left;
	}
}
@media only screen and (min-width: 1025px) {
	.parts_wrap_title {
		margin-bottom:2rem;
	}
	.parts_wrap_title h3 {
		text-align: left;
		font-size: 2.5rem;
		margin-bottom:1rem;
		font-family: var(--font01);
		font-weight: 400;
		border-bottom: 1px solid var(--main);
	}
	.parts_wrap_title p {
		font-size: 1rem;
		font-family: var(--font02);
		font-weight:bold;
        text-align: left;
	}
}



/*
parts_wrap
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	
}
@media only screen and (min-width: 1025px) {
	.parts_wrap {
		padding: 5vh 10vw;
	}
}







/* --------------------------------------------------
 ◆ base_unit
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.base_unit {
		margin-bottom: 2rem;
	}
	.base_unit_col {
		display:flex;
		justify-content: flex-start;
		flex-flow:row wrap;
		align-items: stretch;
	}
	.base_unit_col > li {
		width: 48.9%;
		margin-bottom:3px;
		margin-right:7px;
	}
	.base_unit_col > li:nth-of-type(2),
	.base_unit_col > li:nth-of-type(4),
	.base_unit_col > li:nth-of-type(7),
	.base_unit_col > li:nth-of-type(9) {
		margin-right:0;
	}
	.base_unit_col > li:nth-of-type(5) {
		width: 75%;
		margin-right:0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.base_unit {
	}
	.base_unit_col {
		display:flex;
		justify-content: flex-start;
		flex-flow:row wrap;
		align-items: stretch;
	}
	.base_unit_col > li {
		width: 25%;
		margin-bottom: 1rem;
	}
	.base_unit_col > li:nth-of-type(5) {
		width: 37%;
		margin-right:30px;
		margin-bottom: 1rem;
	}
	.base_unit .base_unit_col:nth-of-type(2) {
		justify-content:flex-start;
	}
}
@media only screen and (min-width: 1025px) {
	.base_unit {
	}
	.base_unit_col {
		display:flex;
		justify-content: flex-start;
		flex-flow:row wrap;
		align-items: stretch;
	}
	.base_unit_col > li {
		width: 18.1%;
		margin-bottom: 1rem;
	}
	.base_unit_col > li:nth-of-type(5) {
		width: 27.6%;
		margin-bottom: 1rem;
	}
	.base_unit .base_unit_col:nth-of-type(2) {
		justify-content:flex-start;
	}
}


/* --------------------------------------------------
 ◆ arm
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap .arm {
		margin-bottom:3rem;
	}
	.parts_wrap .arm_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 100%;
	}
	.parts_wrap .arm_col > li {
		width: 49%;
	}
	.parts_wrap .arm_col > li p {
		font-size: 0.75rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.arm {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
		margin-bottom:30px;
	}
	.arm .parts_wrap_title {
		width: 42%;
		margin-top: -25px;
	}
	.arm_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 56%;
	}
	.arm_col > li {
		width: 49%;
	}
	.arm_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 1025px) {
	.arm {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
	}
	.arm .parts_wrap_title {
		width: 42%;
		margin-top: -25px;
	}
	.arm_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 56%;
	}
	.arm_col > li {
		width: 49%;
	}
	.arm_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}


/* --------------------------------------------------
 ◆ back
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap .back {
		margin-bottom:3rem;
	}
	.parts_wrap .back_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 100%;
	}
	.parts_wrap .back_col > li {
		width: 49%;
	}
	.parts_wrap .back_col > li p {
		font-size: 0.75rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.back {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: row;
		flex-wrap: nowrap;margin-bottom:30px;
	}
	.back .parts_wrap_title {
		width: 42%;
		margin-top: -35px;
	}
	.back_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 56%;
	}
	.back_col > li {
		width: 49%;
	}
	.back_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 1025px) {
	.back {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: row;
		flex-wrap: nowrap;
	}
	.back .parts_wrap_title {
		width: 42%;
		margin-top: -35px;
	}
	.back_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 56%;
	}
	.back_col > li {
		width: 49%;
	}
	.back_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}


/* --------------------------------------------------
 ◆ leg
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap .leg {
		margin-bottom:3rem;
	}
	.parts_wrap .leg_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 100%;
	}
	.parts_wrap .leg_col > li {
		width: 49%;
	}
	.parts_wrap .leg_col > li p {
		font-size: 0.75rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.leg {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: row;
		flex-wrap: nowrap;
		margin-bottom:30px;
	}
	.leg .parts_wrap_title {
		width: 33%;
		margin-top: -32px;
	}
	.leg_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 65%;
	}
	.leg_col > li {
		width: 32%;
	}
	.leg_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}
@media only screen and (min-width: 1025px) {
	.leg {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		flex-direction: row;
		flex-wrap: nowrap;
	}
	.leg .parts_wrap_title {
		width: 33%;
		margin-top: -32px;
	}
	.leg_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 65%;
	}
	.leg_col > li {
		width: 32%;
	}
	.leg_col > li p {
		font-size:0.8rem;
		letter-spacing:-0.5px;
	}
}


/* --------------------------------------------------
 ◆ color
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap .color {
		margin-bottom:3rem;
	}
	.parts_wrap .color_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 100%;
		
	}
	.color_col > li {
		border-radius:30px;
        background: #fff;
        width:100%;
	}
	.color_col > li p {
		font-size: 0.9rem;
		letter-spacing:-0.5px;
	}
	.color_col > li p a {
		display:block;
		color:var(--darkgray);
		padding:10px 10px;
		font-weight:bold;
		border-radius:30px;
	}
	.color_col > li p a:hover {
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
		transition: 0.5s; 
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.color {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
		margin-bottom:60px;
	}
	.color .parts_wrap_title {
		width: 42%;
		margin-top: -21px;
	}
	.color_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 54%;
		margin-top: 20px;
	}
	.color_col > li {
		width: 100%;
		background:#fff;
		border-radius:30px;
	}
	.color_col > li p {
		font-size:1rem;
		letter-spacing:-0.5px;
	}
	.color_col > li p a {
		display:block;
		color:var(--darkgray);
		padding:10px 10px;
		font-weight:bold;
		border-radius:30px;
	}
	.color_col > li p a:hover {
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
		transition: 0.5s; 
	}
}
@media only screen and (min-width: 1025px) {
	.color {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
	}
	.color .parts_wrap_title {
		width: 42%;
		//margin-top: -31px;
	}
	.color_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 54%;
		margin-top: 20px;
	}
	.color_col > li {
		width: 100%;
		background:#fff;
		border-radius:30px;
	}
	.color_col > li p {
		font-size:1rem;
		letter-spacing:-0.5px;
	}
	.color_col > li p a {
		display:block;
		color:var(--darkgray);
		padding:10px 10px;
		font-weight:bold;
		border-radius:30px;
	}
	.color_col > li p a:hover {
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
		transition: 0.5s; 
	}
}

/* --------------------------------------------------
 ◆ comfort
-------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.parts_wrap .comfort {
		margin-bottom:3rem;
	}
	.parts_wrap .com_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 100%;
	}
	.parts_wrap .com_col > li {
		width: 49%;
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
	}
	.parts_wrap .com_col > li p {
		font-size: 0.9rem;
		letter-spacing:-0.5px;
		padding:10px 10px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.comfort {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
		margin-bottom: 5rem;
	}
	.comfort .parts_wrap_title {
		width: 42%;
		margin-top: -42px;
	}
	.parts_wrap .com_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 54%;
	}
	.parts_wrap .com_col > li {
		width: 49%;
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
	}
	.parts_wrap .com_col > li p {
		font-size:1rem;
		letter-spacing:-0.5px;
		padding:10px 10px;
	}
}
@media only screen and (min-width: 1025px) {
	.comfort {
		display: flex;
		justify-content: space-between;
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: center;
		margin-bottom: 5rem;
	}
	.comfort .parts_wrap_title {
		width: 42%;
		//margin-top: -52px;
	}
	.parts_wrap .com_col {
		display:flex;
		justify-content: space-between;
		flex-flow:row wrap;
		align-items: stretch;
		width: 54%;
        margin-top: 20px;
	}
	.parts_wrap .com_col > li {
		width: 49%;
		background:var(--darkgray);
		color:#fff;
		border-radius:30px;
	}
	.parts_wrap .com_col > li p {
		font-size:1rem;
		letter-spacing:-0.5px;
		padding:10px 10px;
	}
}




/* -----------------------------------------------------

- recommend_style_area

----------------------------------------------------- */
/* -----------------------------------------------------
 recommend_style_area COMMON
----------------------------------------------------- */
@media only screen and (max-width: 599px) {
	.recommend_style_area {
		padding: 4vh 6vw 6vh;
		position: relative;
		z-index: 10;
		background: #fff;
	}
	.recommend_style_area img {
		max-width:100%;
	}
	.recommend_style_area .area_title {
	}
	.recommend_style_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.recommend_style_area {
		padding: 4vh 9vw 6vh;
		margin-top: -3px;
		position: relative;
		z-index: 6;
		background: #fff;
	}
	.recommend_style_area img {
		max-width:100%;
	}
	.recommend_style_area .area_title {
	}
	.recommend_style_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 1025px) {
	.recommend_style_area {
		position: relative;
		z-index: 2;
		background: #fff;
	}
	.recommend_style_area img {
		max-width: 100%;
	}
	.recommend_style_area .area_title {
		text-align:right;
	}
	.recommend_style_area .area_title h2 {
		padding: 0;
		padding: 2vh 10vw 2vh;
	}
}



/* -----------------------------------------------

- recommend_style_area / SP - TABLET

----------------------------------------------- */
/* -----------------------------------------------
 recommend-outer-00-wrap  / SP - TABLET
----------------------------------------------- */
.recommend-outer-01-wrap,
.recommend-outer-02-wrap,
.recommend-outer-03-wrap {
	position: relative;
	padding-top: 3rem;
}
.recommend-outer-04-wrap {
	position: relative;
    padding-top: 3rem;
	padding-bottom: 2rem;
}
.recommend-outer-01,
.recommend-outer-02,
.recommend-outer-03,
.recommend-outer-04 {
	text-align:left;
}
.recommend-outer-image {
	margin:0 auto;
	max-width:100%;
}

/*
 recommend-outer-title-wrap
----------------------------------------------- */
.recommend-outer-title-wrap {
	position:relative;
}
.recommend-outer-hashtag {
	position:absolute;
	top: 7px;
	left: 1px;
	font-size: 2.2rem;
	font-weight:bold;
}
/* 01 */
.recommend-outer-01 .recommend-outer-number {
	position:absolute;
	top: -2px;
	left: 17px;
	font-size: 70px;
	font-family:var(--font01);
	letter-spacing:-5px;
}
.recommend-outer-01 .recommend-outer-subtitle {
	position:absolute;
	top: 21px;
	left: 88px;
	font-size: 22px;
	font-family:var(--font02);
	font-weight: bold;
}
.recommend-outer-01 .recommend-outer-title {
	position:absolute;
	top: 46px;
	left: 88px;
	font-size: 22px;
	font-family:var(--font02);
    font-weight: bold;
}
/* 02 */
.recommend-outer-02 .recommend-outer-number {
	position:absolute;
	top: -2px;
	left: 17px;
	font-size: 70px;
	font-family:var(--font01);
	letter-spacing:-4px;
}
.recommend-outer-02 .recommend-outer-subtitle {
	position:absolute;
	top: 21px;
	left: 91px;
	font-size: 22px;
	font-family:var(--font02);
	font-weight: bold;
}
.recommend-outer-02 .recommend-outer-title {
	position:absolute;
	top: 46px;
	left: 91px;
	font-size: 22px;
	font-family:var(--font02);
	font-weight: bold;
}
/* 03 */
.recommend-outer-03 .recommend-outer-number {
	position:absolute;
	top: -2px;
	left: 17px;
	font-size: 70px;
	font-family:var(--font01);
	letter-spacing:-4px;
}
.recommend-outer-03 .recommend-outer-subtitle {
	position:absolute;
	top: 21px;
	left: 92px;
	font-size: 22px;
	font-family:var(--font02);
	font-weight: bold;
}
.recommend-outer-03 .recommend-outer-title {
	position:absolute;
	top: 47px;
	left: 92px;
	font-size: 22px;
	font-family:var(--font02);
    font-weight: bold;
}
/* 04 */
.recommend-outer-04 .recommend-outer-number {
	position:absolute;
	top: -2px;
	left: 17px;
	font-size: 70px;
	font-family:var(--font01);
	letter-spacing: -3px;
}
.recommend-outer-04 .recommend-outer-subtitle {
	position:absolute;
	top: 21px;
	left: 98px;
	font-size: 22px;
	font-family:var(--font02);
	font-weight: bold;
}
.recommend-outer-04 .recommend-outer-title {
	position:absolute;
	top: 47px;
	left: 98px;
	font-size: 22px;
	font-family:var(--font02);
    font-weight: bold;
}



/*
 recommend-outer-text-wrap
----------------------------------- */
.recommend-outer-text-title {
	margin-top: 6rem;
	font-size: 1.2rem;
}
.recommend-outer-text {
	margin: 6rem auto 1.5rem;
	font-size: 0.88rem;
	line-height:1.7;
}

/*
 recommend-outer-item-wrap
----------------------------------- */
.recommend-outer-item-wrap {

}
.recommend-outer-05-wrap .recommend-outer-item-wrap {
	
}
.recommend-outer-itemtitle {
	font-size: 1rem;
	margin:0 auto 0.3rem;
}
.recommend-outer-itemprice {
	font-size: 1rem;
	margin:0 auto 0.3rem;
}
.recommend-outer-itemsize {
	font-size: 1rem;
}
.recommend-outer-parts_col {
	display:flex;
	flex-flow:row wrap;
	justify-content: flex-start;
	padding: 1rem 0 2rem;
	text-align:center;
}
.recommend-outer-parts_col li {
	text-align:left;
	font-size:0.75rem;
	border:1px solid var(--gray);
	margin-bottom: 5px;
	margin-right: 4px;
	padding: 0.1rem 0.3rem;
}
.recommend-outer-parts_col li.recommend-outer-note {
	margin: 5px auto 0;
	font-size:0.7rem;
	border: none;
	width:100%;
}
.recommend-outer-morebtn {
	width:100%;
	position:relative;
	margin-bottom: 3rem;
}
.recommend-outer-morebtn a {
	position:absolute;
	right:0;
	display: block;
	background: var(--darkgray);
	color: #fff;
	text-align: center;
	border-radius: 30px;
	padding: 0.6rem 4rem 0.6rem 4.5rem;
	font-size: 0.9rem;
}


/* ----------------------------------------------
 recommend-inner-00-wrap  / SP - TABLET
----------------------------------------------*/
@media only screen and (max-width: 599px) {
    .recommend-inner-wrap {
		position:relative;
	}
	
	.recommend-inner-01,
	.recommend-inner-02,
	.recommend-inner-03,
	.recommend-inner-04 {
		text-align:left;
	}
	.recommend-inner-image {
		margin:0 auto;
		max-width:100%;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
     .recommend-inner-wrap {
		position:relative;
	}
	
	.recommend-inner-01,
	.recommend-inner-02,
	.recommend-inner-03,
	.recommend-inner-04 {
		text-align:left;
	}
	.recommend-inner-image {
		margin:0 auto;
		max-width:100%;
	}
}


/*
 recommend-inner-title-wrap
----------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner-title-wrap {
		position: relative;
	}
	.recommend-inner-hashtag {
		position:absolute;
		top: 7px;
		left: 0;
		font-size: 2.2rem;
		font-weight:bold;
		font-family: var(--font03);
	}
	/* 01 */
	.recommend-inner-01 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-5px;
	}
	.recommend-inner-01 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 88px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-01 .recommend-inner-title {
		position:absolute;
		top: 46px;
		left: 88px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
	/* 02 */
	.recommend-inner-02 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-4px;
	}
	.recommend-inner-02 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 91px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-02 .recommend-inner-title {
		position:absolute;
		top: 46px;
		left: 91px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	/* 03 */
	.recommend-inner-03 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-4px;
	}
	.recommend-inner-03 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 92px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-03 .recommend-inner-title {
		position:absolute;
		top: 47px;
		left: 92px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
	/* 04 */
	.recommend-inner-04 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing: -3px;
	}
	.recommend-inner-04 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 98px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-04 .recommend-inner-title {
		position:absolute;
		top: 47px;
		left: 98px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-title-wrap {
		position: relative;
	}
	.recommend-inner-hashtag {
		position:absolute;
		top: 7px;
		left: 0;
		font-size: 2.2rem;
		font-weight:bold;
		font-family: var(--font03);
	}
	/* 01 */
	.recommend-inner-01 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-5px;
	}
	.recommend-inner-01 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 88px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-01 .recommend-inner-title {
		position:absolute;
		top: 46px;
		left: 88px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
	/* 02 */
	.recommend-inner-02 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-4px;
	}
	.recommend-inner-02 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 91px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-02 .recommend-inner-title {
		position:absolute;
		top: 46px;
		left: 91px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	/* 03 */
	.recommend-inner-03 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing:-4px;
	}
	.recommend-inner-03 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 92px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-03 .recommend-inner-title {
		position:absolute;
		top: 47px;
		left: 92px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
	/* 04 */
	.recommend-inner-04 .recommend-inner-number {
		position:absolute;
		top: -2px;
		left: 17px;
		font-size: 70px;
		font-family:var(--font01);
		letter-spacing: -3px;
	}
	.recommend-inner-04 .recommend-inner-subtitle {
		position:absolute;
		top: 21px;
		left: 98px;
		font-size: 22px;
		font-family:var(--font02);
		font-weight: bold;
	}
	.recommend-inner-04 .recommend-inner-title {
		position:absolute;
		top: 47px;
		left: 98px;
		font-size: 22px;
		font-family:var(--font02);
	    font-weight: bold;
	}
}




/*
 recommend-inner
--------------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner {
		padding: 0.5vh 8vw 0;
		position: absolute;
	}
	.recommend-inner img {
		max-width:100%;
	}
    .recommend-inner-note {
		padding: 0 8vw 2vh;
	}
	.recommend-inner-note p {
		font-size:0.7rem;
		font-family: var(--font02);
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner {
		padding: 0.5vh 8vw 0;
		position: absolute;
	}
	.recommend-inner img {
		max-width:100%;
	}
     .recommend-inner-note {
		padding: 0 8vw 2vh;
	}
	.recommend-inner-note p {
		font-size:0.7rem;
		text-align:right;
		font-family: var(--font02);
	}
}


/*
recommend-inner-text-wrap
--------------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner-text-title {
		padding: 7rem 0 1rem;
		font-size: 1.1rem;
		font-family: var(--font02);
	}
	.recommend-inner-text {
		font-family: var(--font02);
		margin: 7rem auto 2rem;
		font-size: 0.88rem;
		line-height: 1.8;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-text-title {
		padding: 7rem 0 1rem;
		font-size: 1.1rem;
		font-family: var(--font02);
	}
	.recommend-inner-text {
		font-family: var(--font02);
		margin: 7rem auto 4rem;
		font-size: 0.88rem;
		line-height: 1.8;
	}
}


/*
 ■ recommend-inner-image
--------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner-image {
        
	}
    .recommend-inner-image img {
        max-width:100%;
        filter: contrast(1.1);
    }
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-image {
        
	}
	.recommend-inner-image img {
        max-width:100%;
        filter: contrast(1.1);
    }
}



/*
 ■ recommend-inner-price
--------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner-price {
		margin-bottom:30px;
	}
	.recommend-inner-price h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-price h4 span {
		font-size:10px;
		padding-left:5px;
	}
	.recommend-inner-price p {
		text-align:right;
		font-size:14px;
		font-family:var(--font03);
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-price {
		margin-bottom:30px;
	}
	.recommend-inner-price h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:18px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-price h4 span {
		font-size:12px;
		padding-left:10px;
	}
	.recommend-inner-price p {
		text-align:right;
		font-size:16px;
		font-family:var(--font03);
	}
}

/*
 ■ recommend-inner-size
--------------------------------- */
@media only screen and (max-width: 599px) {
    .recommend-inner-size {
		margin-bottom:30px;
	}
	.recommend-inner-size h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-size h4 span {
		font-size:10px;
		padding-left:5px;
	}
	.recommend-inner-size p {
		text-align:right;
		font-size:14px;
		font-family:var(--font03);
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-size {
		margin-bottom:30px;
	}
	.recommend-inner-size h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:18px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-size h4 span {
		font-size:12px;
		padding-left:10px;
	}
	.recommend-inner-size p {
		text-align:right;
		font-size:16px;
		font-family:var(--font03);
	}
}




/*
 ■ recommend-inner-col01
------------------------------------ */
@media only screen and (max-width: 599px) {
    .recommend-inner-col01 {
		margin-bottom:30px;
	}
	.recommend-inner-col01 h4{
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-col01 h4 span {
		font-size:10px;
		padding-left:5px;
	}
	.recommend-inner-col01 ul {
		display:flex;
		flex-flow:row nowrap;
		justify-content: space-between;
		margin-top: 10px;
	}
	.recommend-inner-col01 ul li {
		width: 100%;
	}
	.recommend-inner-col01 ul li > p {
		text-align:center;
		font-size: 11px;
		font-family:var(--font03);
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-col01 {
		margin-bottom:30px;
	}
	.recommend-inner-col01 h4{
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-col01 h4 span {
		font-size:12px;
		padding-left:10px;
	}
	.recommend-inner-col01 ul {
		display:flex;
		flex-flow:row nowrap;
		justify-content: space-between;
		margin-top: 10px;
	}
	.recommend-inner-col01 ul li {
		width: 72%;
	}
	.recommend-inner-col01 ul li > p {
		text-align:center;
		font-size: 11px;
		font-family:var(--font03);
	}
}



/*
 ■ recommend-inner-col02
------------------------------------ */
@media only screen and (max-width: 599px) {
    .recommend-inner-col02 {
		display:flex;
		flex-flow:row nowrap;
		justify-content: space-between;
		margin-bottom:30px;
	}
	.recommend-inner-col02 div {
		width: 47.5%;
	}
	.recommend-inner-col02 h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
    .recommend-inner-col02 h4 span {
		font-size:10px;
		padding-left:5px;
	}
	.recommend-inner-col02 ul {
		display: flex;
		justify-content: flex-end;
		margin-top: 10px;
	}
	.recommend-inner-col02 ul > li {
		width: 100%;
	}
	.recommend-inner-col02 ul li > p {
		text-align:center;
		font-size: 11px;
		font-family:var(--font03);
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-col02 {
		display:flex;
		flex-flow:row nowrap;
		justify-content: space-between;
		margin-bottom:30px;
	}
	.recommend-inner-col02 div {
		width: 47.5%;
	}
	.recommend-inner-col02 h4 {
		font-family:var(--font03);
		font-weight:500;
		font-size:16px;
		padding-bottom:5px;
		margin-bottom:5px;
		border-bottom:1px solid #1d1d1d;
	}
	.recommend-inner-col02 h4 span {
		font-size:12px;
		padding-left:10px;
	}
	.recommend-inner-col02 ul {
		display: flex;
		justify-content: flex-end;
		margin-top: 10px;
	}
	.recommend-inner-col02 ul > li {
		width: 100%;
	}
	.recommend-inner-col02 ul li > p {
		text-align:center;
		font-size: 11px;
		font-family:var(--font03);
	}
}


/*
recommend-inner-btn
------------------------------------------ */
@media only screen and (max-width: 599px) {
    .recommend-inner-btn {
		padding: 0 0 5rem;
		text-align:center;
	}
	.recommend-inner-btn a {
		display: block;
	    font-size: 0.9rem;
	    letter-spacing: 1px;
	    padding: 11px 0 9px;
	    background: var(--darkgray);
	    color: #fff;
	    border-radius: 60px;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
    .recommend-inner-btn {
		padding: 0 0 5rem;
		text-align:center;
	}
	.recommend-inner-btn a {
		display: block;
	    font-size: 0.9rem;
	    letter-spacing: 1px;
	    padding: 11px 0 9px;
	    background: var(--darkgray);
	    color: #fff;
	    border-radius: 60px;
	}
}







/* -------------------------------------------------

- recommend_style_area / PC

------------------------------------------------- */
/* -------------------------------------------------
 recommend-01-wrap,recommend-02-wrap,
 recommend-03-wrap,recommend-04-wrap,
 recommend-05-wrap/ PC
------------------------------------------------- */
#recommend-01-wrap,
#recommend-03-wrap,
#recommend-05-wrap {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}
#recommend-02-wrap,
#recommend-04-wrap {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	flex-direction: row-reverse;
}
.recommend-01-wrap{

	background:#eee;
	margin-top: 50px;
}
.recommend-02-wrap {
	background:#fff;
	
}
.recommend-03-wrap{
	background:#eee;
}
.recommend-04-wrap {
	background:#fff;
}
.recommend-05-wrap{
	background:#eee;
}


/* ------------------------------------------------------
 recommend-01,recommend-02,recommend-03,
 recommend-04,recommend-05 / LEFT AREA / PC
------------------------------------------------------ */
.fixed-area{
    position: sticky;
    top: 0;
    width: 45%;
    height: 100vh;
    display: flex;
    justify-content: center;
    background-size:cover;
    align-items: flex-start;
}
.fixed-area-note {
	position: absolute;
	bottom: 1%;
	right: 1%;
}
.fixed-area-note p {
	font-size: 14px;
	color: #fff;
}


/* --------------------------------------------------------
 recommend-01,recommend-02,recommend-03,
 recommend-04,recommend-05 / RIGHT AREA / PC
-------------------------------------------------------- */
.recommend-01,.recommend-02,.recommend-03,
.recommend-04,.recommend-05 {
	width: 55%;
}



/* -------------------------------------------
LEFT text area
------------------------------------------- */
/*
 recommend-content
-------------------------------- */
.recommend-content {
	min-height: 110vh;
	padding: 200px 80px 120px;
	background: #fff;
}
.recommend-content:last-of-type {
	min-height: 100vh;
	padding: 150px 80px 70px;
	background: var(--lightgray);
}

/*
 recommend-right-area
-------------------------------- */
.recommend-right-area {
    margin:0 auto;
    /* margin-top: 20vh; */
}
.recommend-right-area__text {
    max-width: 600px;
}
.recommend-right-area__detail {
    max-width: 900px;
}





/*
 recommend-title-wrap
-------------------------------- */
.recommend-title-wrap {
	
}
.recommend-number {
	font-size: 62px;
	font-family:var(--font01);
	letter-spacing:-2px;
}
.recommend-subtitle {
	font-size: 28px;
	font-family:var(--font01);
	margin-top: 20px;
}
.recommend-title {
	font-size: 45px;
	font-family:var(--font01);
	margin-top: -16px;
}



/*
 recommend-text-wrap
-------------------------------- */
.recommend-text-wrap {
	
}
.recommend-text-title {
	font-size: 30px;
	font-weight: bold;
	font-family: var(--font02);
	padding: 1.5rem 0;
}
.recommend-text {
	margin: 2.5rem auto 4rem;
	font-size: 1rem;
	line-height: 2;
	font-family: var(--font02);
	text-align:left;
}



/*
 recommend-image-wrap
-------------------------------- */
.recommend-image-wrap {
	  margin: -40px auto 40px;
}
.recommend-itemimage {
    
}
.recommend-itemimage img {
    max-width: 100%;
    filter: contrast(1.1);
}



/*
 recommend-item-wrap
-------------------------------- */
.recommend-item-wrap {	
	text-align: left;
}
.recommend-itemtitle {
	font-size: 1.2rem;
	margin:0 auto 1rem;
}
.recommend-itemprice {
	font-size: 1.2rem;
	margin:0 auto 1rem;
	font-family: var(--font03);
}
.recommend-itemprice span:first-child {
	position:relative;	
	display: block;
	font-size:1.1rem;
	font-family: var(--font03);
	margin-bottom:0.3rem;
}
.recommend-itemprice span:first-child::after {
	position:absolute;
	top:50%;
	left:60px;
	content:"";
	background-color: #1d1d1d;
	width:90%;
	height:1px;
}
.recommend-itemprice span {
	font-size:0.8rem;
}
.recommend-itemsize {
	font-size: 1.2rem;
	margin:0 auto;
	font-family: var(--font03);
}
.recommend-itemsize span:first-child {
	position:relative;	
	display: block;
	font-size:1.1rem;
	font-family: var(--font03);
	margin-bottom:0.3rem;
}
.recommend-itemsize span:first-child::after {
	position:absolute;
	top:50%;
	left:60px;
	content:"";
	background-color:#1d1d1d;
	width:90%;
	height:1px;
}
.recommend-itemsize span {
	font-size:0.8rem;
}

/*
 recommend-parts_col
-------------------------------- */
.parts_col-title {
	font-size: 1rem;
	text-align:left;
	margin-bottom:2rem;
}
.recommend-parts_col {
	display:flex;
	flex-flow:row wrap;
	justify-content: flex-start;
	margin-top: 5rem;
}
.recommend-parts_col > li {
	width: 33%;
	margin-bottom: 30px;
}
.recommend-parts_col > li p {
	margin: 1rem 0.5rem 1rem;
	font-size:0.9rem;
	font-weight:bold;
	background: #fff;
}
.recommend-parts_col > li > img {
	width:92%;
	
}

.recommend-01 .recommend-content .recommend-parts_col li:first-child {
	width:55%;
}



/*
 recommend-morebtn
-------------------------------- */
.recommend-morebtn-wrap {
	position:relative;
}
.recommend-morebtn01,
.recommend-morebtn02,
.recommend-morebtn03,
.recommend-morebtn04,
.recommend-morebtn05 {
	 display: none;
	padding: 3rem 0 1rem;
	text-align:center;
	width: 15%;
	margin: 0 0 0 auto;
	z-index: 5;
}
.recommend-morebtn01 a,
.recommend-morebtn02 a,
.recommend-morebtn03 a,
.recommend-morebtn04 a,
.recommend-morebtn05 a {
	display:block;
	padding: 0.5rem 0;
	background:var(--darkgray);
	color:#fff;
	border-radius:60px;
	
}

.recommend-morebtn01.is-active,
.recommend-morebtn02.is-active,
.recommend-morebtn03.is-active,
.recommend-morebtn04.is-active,
.recommend-morebtn05.is-active {
	position: fixed;
	display: block;
	z-index:10;
	bottom: 81px;
	right: 78px;
}




/* -------------------------------------------
RIGHT img fixed
------------------------------------------- */
.img-frame {
	position: relative;
	width: 100%;
	height: 100%;
	min-height: 720px;
	overflow: hidden;
	margin: 0 auto;
  }
.img-01,.img-02,.img-03,.img-04,.img-05,
.img-06,.img-07,.img-08,.img-09,.img-10,
.img-11,.img-12,.img-13,.img-14,.img-15 {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
	height: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.img-01 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-01_01.jpg');
	animation: slide-animation-01 20s infinite;
}
.img-02 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-01_02.jpg');
	animation: slide-animation-02 20s infinite;
}
.img-03 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-01_03.jpg');
	animation: slide-animation-03 20s infinite;
}
.img-04 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-02_01.jpg');
	animation: slide-animation-04 20s infinite;
}
.img-05 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-02_02.jpg');
	animation: slide-animation-05 20s infinite;
}
.img-06 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-02_03.jpg');
	animation: slide-animation-06 20s infinite;
}
.img-07 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-03_01.jpg');
	animation: slide-animation-07 20s infinite;
}
.img-08 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-03_02.jpg');
	animation: slide-animation-08 20s infinite;
}
.img-09 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-03_03.jpg');
	animation: slide-animation-09 20s infinite;
}
.img-10 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-04_01.jpg');
	animation: slide-animation-10 20s infinite;
}
.img-11 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-04_02.jpg');
	animation: slide-animation-11 20s infinite;
}
.img-12 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-04_03.jpg');
	animation: slide-animation-12 20s infinite;
}
.img-13 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-05_01.jpg');
	animation: slide-animation-13 20s infinite;
}
.img-14 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-05_02.jpg');
	animation: slide-animation-14 20s infinite;
}
.img-15 {
	background-image: url('/idc_recommend/duo/images/recommend-pc-05_03.jpg');
	animation: slide-animation-15 20s infinite;
}

  
/* 1 */  
@keyframes slide-animation-01 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.05);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-02 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.0);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.05);}
100% {opacity: 0;}
}
@keyframes slide-animation-03 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.05);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.0);}
}
/* 2 */
@keyframes slide-animation-04 {
    0% {opacity: 1; transform: scale(1.05);}
  30% {opacity: 1;}
  40% {opacity: 0;transform: scale(1.0);}
  90% {opacity: 0; }
100% {opacity: 1; transform: scale(1.05);}
}
@keyframes slide-animation-05 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.0);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.05);}
100% {opacity: 0;}
}
@keyframes slide-animation-06 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.05);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.0);}
}
/* 3 */
@keyframes slide-animation-07 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.05);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-08 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.05);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.0);}
100% {opacity: 0;}
}
@keyframes slide-animation-09 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.05);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.0);}
}
/* 4 */
@keyframes slide-animation-10 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.05);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-11 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.0);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.05);}
100% {opacity: 0;}
}
@keyframes slide-animation-12 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.05);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.0);}
}

/* 5 */
@keyframes slide-animation-13 {
    0% {opacity: 1; transform: scale(1.0);}
  30% {opacity: 1;}
  40% {opacity: 0; transform: scale(1.05);}
  90% {opacity: 0}
100% {opacity: 1; transform: scale(1.0);}
}
@keyframes slide-animation-14 {
    0% {opacity: 0;}
  30% {opacity: 0; transform: scale(1.0);}
  40% {opacity: 1;}
  60% {opacity: 1;}
  70% {opacity: 0; transform: scale(1.05);}
100% {opacity: 0;}
}
@keyframes slide-animation-15 {
    0% {opacity: 0;}
  60% {opacity: 0;  transform: scale(1.05);}
  70% {opacity: 1;}
  90% {opacity: 1;}
100% {opacity: 0; transform: scale(1.0);}
}



/* -----------------------------------------------------

- more_detail_style_area

----------------------------------------------------- */
/* -------------------------------------
 more_detail_style_area COMMON
------------------------------------- */
@media only screen and (max-width: 599px) {
	.more_detail_style_area {
		padding: 4vh 6vw 1vh;
		position: relative;
		z-index: 10;
		background: #fff;
	}
	.more_detail_style_area img {
		max-width:100%;
		box-shadow: 3px 3px 6px 0px rgb(35 32 32 / 29%);
	}
	.more_detail_style_area .area_title {
	    margin-bottom:2rem;
	}
	.more_detail_style_area .area_title h2 {
		padding: 0;
	}
	
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.more_detail_style_area {
		padding: 4vh 9vw 1vh;
		position: relative;
		z-index: 6;
		background: #fff;
		margin-top: -10px;
	}
	.more_detail_style_area img {
		max-width:100%;
		box-shadow: 3px 3px 6px 0px rgb(35 32 32 / 29%);
	}
	.more_detail_style_area .area_title {
	
	}
	.more_detail_style_area .area_title h2 {
		padding: 0;
	}	
}
@media only screen and (min-width: 1025px) {
	.more_detail_style_area {
		position: relative;
		z-index: 2;
		background: #fff;
		padding: 10vh 10vw 2vh;
	}
	.more_detail_style_area img {
		max-width:100%;
		box-shadow: 3px 3px 6px 0px rgb(35 32 32 / 29%);
	}
	.more_detail_style_area .area_title {
		text-align:right;
	}
	.more_detail_style_area .area_title h2 {
		padding: 0;
		text-align: right;
	}
}


/*
 moredetail_col
-------------------------------- */
@media only screen and (max-width: 599px) {
	.moredetail_col_wrap {
		
	}
	.moredetail_col {
		display:flex;
		flex-flow:row wrap;
		justify-content:space-between;
	}
	.moredetail_col > li {
		width:31%;
	}
    .moredetail_col-btn {
        width:90%;
        margin: 2rem auto 3rem;
    }
    .moredetail_col-btn a {
        display: block;
        background: var(--darkgray);
        color: #fff;
        text-align: center;
        border-radius: 30px;
        padding: 0.6rem 4rem 0.6rem 4.5rem;
        font-size: 0.9rem;
    }
	.moredetail_title_col {
		display: flex;
        flex-direction: column;
        align-items: center;
	}
	.moredetail_title_col li {
		
	}
	.moredetail_title_col li:first-child {
		width: 91%;
	    letter-spacing: -0.2px;
	}
	.moredetail_title_col li h4 {
		margin: 5px auto 1rem;
		font-size: 11px;
		text-align: left;
		font-weight: normal;
		line-height: 1.2;	
	}
	.moredetail_col > li > a {
		display:block;
	}
	.moredetail-slide h4 {
		text-align:justify;
		font-family:var(--font02);
		font-size:1rem;
		padding:1rem 1.5rem;
	}
	.moredetail-slide p {
		text-align:justify;
		font-family:var(--font02);
		padding:0 1.5rem;
		font-size:0.8rem;
		line-height:1.8;
	}
	.moredetail-slide p span.come {
		font-size:0.5rem;
		vertical-align:super;
	}
	.moredetail-slide p span.note {
		font-size: 0.68rem;
		display: block;
		margin-top: 0.5rem;
	}
	.moredetail_color_btn {
		text-align:right;
		padding: 2rem 1.5rem 4rem;	
	}
	.moredetail_color_btn a {
		position:relative;
		font-family:var(--font02);
		background: var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:0.3rem 1.5rem;
		font-size:0.8rem;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.moredetail_col_wrap {
		
	}
	.moredetail_col {
		display:flex;
		flex-flow:row wrap;
		justify-content:space-between;
	}
	.moredetail_col li {
		width: 31%;
		margin-bottom: 4rem;
	}
	.moredetail_col li h4 {
		margin:1rem auto;
		font-size: 0.9rem;
	}
	.moredetail_col li p {
		text-align:justify;
		font-size: 0.8rem;
		line-height:1.6;
	}
	.moredetail_col li p span.come {
		font-size:0.5rem;
		vertical-align:super;
	}
	.moredetail_col li p span.note {
		font-size: 0.68rem;
		display: block;
		margin-top: 0.5rem;
	}
	.moredetail_color_btn {
		text-align:right;
		padding-top:2rem;	
	}
	.moredetail_color_btn a {
		position:relative;
		background: var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:0.3rem 1.5rem;
		font-size:0.8rem;
	}
}
@media only screen and (min-width: 1025px) {
	.moredetail_col_wrap {
		
	}
	.moredetail_col {
		display:flex;
		flex-flow:row wrap;
		justify-content:space-between;
	}
	.moredetail_col li {
		width:30%;
		margin-bottom:5rem;
	}
	.moredetail_col li h4 {
		margin:1rem auto;
	}
	.moredetail_col li p {
		text-align:justify;
		font-size:0.9rem;
		line-height:1.6;
	}
	.moredetail_col li p span.come {
		font-size:0.5rem;
		vertical-align:super;
	}
	.moredetail_col li p span.note {
		font-size: 0.68rem;
		display: block;
		margin-top: 0.5rem;
	}
	.moredetail_color_btn {
		text-align:right;
		padding-top:2rem;
	}
	.moredetail_color_btn a {
		position:relative;
		background:var(--darkgray);
		color:#fff;
		border-radius:60px;
		padding:5px 25px;
		font-size:0.8rem;
	}
}




/* ------------------------------------------ 
	
 - showroom_area

------------------------------------------ */
/* -------------------------------------
 showroom_area COMMON
------------------------------------- */
/*
@media only screen and (max-width: 599px) {
	.showroom_area {
		padding: 4vh 6vw 4vh;
		position: relative;
		z-index: 10;
		background: #fff;
	}
	.showroom_area img {
		max-width:100%;
	}
	.showroom_area .area_title {
	    margin-bottom:2rem;
    }
	.showroom_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.showroom_area {
		position: relative;
		z-index: 6;
		background: #fff;
		padding: 4vh 9vw 2vh;
		margin-top: -10px;
	}
	.showroom_area img {
		max-width:100%;
	}
	.showroom_area .area_title {
		text-align:right;
	}
	.showroom_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 1025px) {
	.showroom_area {
		position: relative;
		z-index: 2;
		background: #fff;
		padding: 10vh 10vw;
	}
	.showroom_area img {
		max-width:100%;
	}
	.showroom_area .area_title {
		text-align:right;
	}
	.showroom_area .area_title h2 {
		padding: 0;
	}
}

@media only screen and (max-width: 599px) {
	.showroom_area > p {
		font-size: 1.1rem;
		margin: 0 auto 2rem;
	}
	.showroom_area p span {
		font-size: 0.8rem;
	}
	.showroom_area img {
		max-width:100%;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.showroom_area > p {
		font-size: 1.1rem;
		margin: 0 auto 2rem;
	}
	.showroom_area p span {
		font-size: 0.8rem;
	}
	.showroom_area img {
		max-width:100%;
	}
}
@media only screen and (min-width: 1025px) {
	.showroom_area > p {
		font-size: 1.3rem;
	    margin: 0 auto 4rem;
	}
}
*/

/*
 showroom_area_col
-------------------------------- */
/*
@media only screen and (max-width: 599px) {
	.showroom_area_col {
		display:flex;
		justify-content: space-between;
		flex-flow: row wrap;
		text-align:left;
		padding: 0 0 1rem;
	}
	.showroom_area_col > li {
		width: 47%;
	}
	.showroom_area_list {
		display:flex;
		justify-content:flex-start;
		flex-flow: column wrap;
		text-align:left;
		position: relative;
		background: #fff;

		margin-bottom:1rem
	}
	.showroom_area_list > li:first-child {
		margin-bottom:0.5rem;
		font-size: 0.95rem;
	}
	.showroom_area_list > li:last-child {
		font-size: 0.95rem;
	}
	.showroom_smy > li {
		margin-bottom:0.5rem;
	}
	.showroom_smy a {
		text-decoration:underline;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.showroom_area_col {
		display:flex;
		justify-content: space-between;
		flex-flow: row wrap;
		text-align:left;
		padding-bottom: 1rem;
	}
	.showroom_area_col > li {
		width: 23%;
	}
	.showroom_area_list {
		display:flex;
		justify-content:flex-start;
		flex-flow: column wrap;
		text-align:left;
		position: relative;
		background: #fff;
		margin-bottom:1rem
	}
	.showroom_area_list > li:first-child {
		margin-bottom:0.5rem;
		font-size: 0.95rem;
	}
	.showroom_area_list > li:last-child {
		font-size: 0.95rem;
	}
	.showroom_smy > li {

		margin-bottom:0.5rem;
	}
	.showroom_smy a {
		text-decoration:underline;
	}
}
@media only screen and (min-width: 1025px) {
	.showroom_area_col {
		display:flex;
		justify-content:center;
		flex-flow:row wrap;
		text-align:left;
		padding: 0 0 0 6vw;
	}
	.showroom_area_col > li {
		width:20%;
	}
	.showroom_area_list {
		display:flex;
		justify-content:center;
		flex-flow:column wrap;
		text-align:left;
		position: relative;
		background: #fff;
	}
	.showroom_area_list > li:first-child {
		margin-bottom:0.5rem;
		font-size:1.3rem
	}
	.showroom_area_list > li:last-child {
		text-indent: 1.7rem;
	}
	.showroom_area p {
		text-align:center;
	}
	.showroom_area p span {
		font-size:0.9rem;
	}
	.showroom_smy > li {
		margin-bottom:0.5rem;
	}
	.showroom_smy a {

		text-decoration:underline;
	}
}
*/

/*
 showroom_img_col
-------------------------------- */
/*
.showroom_img_col {
	display:flex;
	justify-content: center;
	flex-flow: row nowrap;
	text-align:left;
	padding:2rem 0 0;
}
.showroom_img_col li {
	width:25%;
}
.showroom_img_col li img {
	max-width:100%;	
}
*/



/* ------------------------------------------ 
	
 - service_area

------------------------------------------ */
/*
 service_area COMMON
-------------------------------- */
/*
@media only screen and (max-width: 599px) {
	.service_area {
		padding: 4vh 6vw 10vh;
		position: relative;
		z-index: 10;
		background: #fff;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area .area_title {
        margin-bottom:2rem;
	}
	.service_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.service_area {
		position: relative;
		z-index: 6;
		background: #fff;
		padding: 7vh 9vw;
		margin-top: -10px;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area .area_title {
		text-align:right;
	}
	.service_area .area_title h2 {
		padding: 0;
	}
}
@media only screen and (min-width: 1025px) {
	.service_area {
		position: relative;
		z-index: 2;
		background: #fff;
		padding: 10vh 10vw;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area .area_title {
		text-align:right;
	}
	.service_area .area_title h2 {
		padding: 0;
	}
}

@media only screen and (max-width: 599px) {
	.service_area > p {
		font-size: 1.1rem;
		margin: 0 auto 2rem;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area > ul {
		display:flex;
		justify-content:space-between;
		flex-flow:column wrap;
		align-items:center;
		text-align:left;
	}
	.service_area > ul > li {
		width:100%;
	}
	.service_area > ul > li:last-child ul {
		margin-top: 1rem;
	}
	.service_area > ul > li:last-child ul li {
		margin-bottom:1rem;
		font-size: 0.9rem;
		letter-spacing: -0.8px;
	}
	.service_area > ul > li:last-child ul li a {
		text-decoration:underline;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.service_area > p {
		font-size: 1.1rem;
		margin: 0 auto 2rem;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area > ul {
		display:flex;
		justify-content:space-between;

		flex-flow:column wrap;
		align-items:center;
		text-align:left;
	}
	.service_area > ul > li {
		width:100%;
	}
	.service_area > ul > li:last-child ul {
		margin-top: 1rem;
	}
	.service_area > ul > li:last-child ul li {
		margin-bottom:1rem;
		font-size: 1rem;
		letter-spacing: -0.8px;
	}
	.service_area > ul > li:last-child ul li a {
		text-decoration:underline;
	}
}
@media only screen and (min-width: 1025px) {
	.service_area > p {
		font-size: 1.3rem;
	    margin: 0 auto 4rem;
	}
	.service_area img {
		max-width:100%;
	}
	.service_area > ul {
		display:flex;
		justify-content:space-between;
		flex-flow:row nowrap;
		align-items:center;
		text-align:left;
		padding: 0 4vw;
	}
	.service_area > ul > li {
		width:46%;
		font-size: 1.2rem;
	}
	.service_area > ul > li:last-child ul {
		margin-left:3rem;
	}
	.service_area > ul > li:last-child ul li {
		margin-bottom:2rem;
	}
	.service_area > ul > li:last-child ul li a {
		text-decoration:underline;
	}
}
*/




/* ------------------------------------------ 
	
 - coordinate

------------------------------------------ */
/*
 COMMON
-------------------------------- */
.l-content__f {
    width: var(--size_content--full);
    background: #fff;
}

.l-content__l {
    position: relative;
    max-width: var(--size_content--l);
    width: 100%;
    margin: 0 auto;
}

@media only screen and (max-width: 960px) {
    .l-content__l {
        width: 100%;
        padding: 0;
    }
}




/*
 p-coordinate
-------------------------------- */
.p-coordinate {
    padding: 0 80px 120px;
    padding: 0 min(8vw,80px) min(12vw,120px);
}
.p-coordinate img {
    max-width:100%;
}
@media only screen and (max-width: 1200px) {
    .p-coordinate {
        padding: 0  40px 120px;
        padding: 0 min(4vw,40px) min(12vw,120px);
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate {
        padding: 0 5.3vw 100px;
        padding: 0 5.3vw min(10vw,100px);
    }
}
/*
 p-coordinate__head
-------------------------------- */
.p-coordinate__head {
    padding: 70px 0;
    padding: min(7vw,70px) 0;
    text-align: center;
}
@media only screen and (max-width: 960px) {
    .p-coordinate__head {
        padding: 8vw 0;
    }
}
/*
 p-coordinate__catch
-------------------------------- */
.p-coordinate__catch {
    margin-bottom: 26px;
    font-size: 1rem;
    font-family: "Baskerville","Baskervville", serif;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__catch {
        margin-bottom: 3.2vw;
        font-size: 2.5vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__catch {
        margin-bottom: 3.2vw;
        font-size: 3.6vw;
    }
}
/*
 p-coordinate__ttl
-------------------------------- */
.p-coordinate__ttl {
    font-size: 1.75rem;
    line-height: 1.4;
    font-family: var(--font02);
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__ttl {
        margin-bottom: 4vw;
        font-size: 3vw;
        line-height: 1.4;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__ttl {
        margin-bottom: 4vw;
        font-size: 5vw;
        line-height: 1.4;
    }
}
/*
 p-coordinate__top
-------------------------------- */
.p-coordinate__top {
    position: relative;
    display: flex;
    align-items: center;
    z-index: 1;
    margin-bottom: 20px;
    margin-bottom: min(2vw,20px);
    //padding-right: 3%;
    justify-content: center;
}
@media only screen and (max-width: 1200px) {
    .p-coordinate__top {
        margin-bottom: 40px;
        padding-right: 2%;
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate__top {
        flex-direction: column;
        gap: 5.3vw;
        margin-bottom: 8vw;
        padding-right: 0;
    }
}
.p-coordinate__top:after {
    position: absolute;
    top: 40px;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
    background: var(--lightgray);
    z-index: -1;
}
@media only screen and (max-width: 1200px) {
    .p-coordinate__top:after {
        top: 3vw;
        height: 110%;
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate__top:after {
        top: 5.3vw;
        height: 138vw;
    }
}
.p-coordinate__top .p-coordinate__img {
    width: 44.2%;
    overflow: hidden;
      padding-left: 30px;
}
@media only screen and (max-width: 960px) {
    .p-coordinate__top .p-coordinate__img {
        width: 100%;
    }
}
.p-coordinate__top .p-coordinate__txt {
    position: relative;
    top: 10px;
    width: 41.8%;
    min-width: 565px;
    padding: 0 min(8vw,80px);
}
@media only screen and (max-width: 1200px) {
    .p-coordinate__top .p-coordinate__txt {
        padding: 0 40px;
        padding: 0 min(4vw,40px);
        min-width: 430px;
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate__top .p-coordinate__txt {
        width: 100%;
        min-width: auto;
        top: 0;
        padding: 0;
    }
}
/*
 p-coordinate__btm
-------------------------------- */
.p-coordinate__btm {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-direction: row-reverse;
    z-index: 1;
    padding-right: 0;
}
@media only screen and (max-width: 1200px) {
    .p-coordinate__btm {
        padding-right: 2%;
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate__btm {
        flex-direction: column;
        gap: 5.3vw;
        padding-right: 0;
    }
}
.p-coordinate__btm .p-coordinate__img {
    width: 35%;
    min-width: 565px;
    padding: 0 60px 0 80px;
    //padding: 0 min(8vw,80px);
    overflow: hidden;
}
@media only screen and (max-width: 1200px) {
    .p-coordinate__btm .p-coordinate__img {
        padding: 0 40px;
        padding: 0 min(4vw,40px);
        min-width: 430px;
    }
}
@media only screen and (max-width: 960px) {
    .p-coordinate__btm .p-coordinate__img {
        width: 100%;
        min-width: inherit;
        padding: 0;
    }
}
.p-coordinate__btm .p-coordinate__txt {
    width: 49.2%;
    padding-left: 6%;
}
@media only screen and (max-width: 960px) {
    .p-coordinate__btm .p-coordinate__txt {
        width: 100%;
        padding: 0;
    }
}
/*
 p-coordinate__subttl
-------------------------------- */
.p-coordinate__subttl {
    margin-bottom: 32px;
    margin-bottom: min(2.8vw,32px);
    font-size: 1.5rem;
    line-height: 1.4;
    letter-spacing: -0.02em;
    font-family: var(--font02);
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__subttl {
        margin-bottom: 5.3vw;
        font-size: 3vw;
        text-align: center;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__subttl {
        margin-bottom: 5.3vw;
        font-size: 4.8vw;
        text-align: center;
    }
}
/*
 p-coordinate__list
-------------------------------- */
.p-coordinate__list {
    display: flex;
    flex-direction: column;
    gap: 18px;
    gap: min(1.2vw,18px);
    text-align: left;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__list {
        gap: 1vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__list {
        gap: 2vw;
    }
}
.p-coordinate__list li {
    position: relative;
    padding-left: 45px;
    padding-left: min(3.6vw,45px);
    line-height: 1.6;
    opacity: 0;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__list li {
        padding-left: 5vw;
        font-size: 2.3vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__list li {
        padding-left: 6.2vw;
        font-size: 3.6vw;
    }
}
.p-coordinate__list li:before {
    position: absolute;
    top: -2px;
    left: 0;
    content: "";
    width: 28px;
    width: min(2.2vw,28px);
    height: 28px;
    height: min(2.2vw,28px);
    background: #fff;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__list li:before {
        top: 0.6vw;
        width: 3vw;
        height: 3vw;
        background: #fff;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__list li:before {
        top: 0.6vw;
        width: 4.2vw;
        height: 4.2vw;
        background: #fff;
    }
}
.p-coordinate__list li:after {
    position: absolute;
    top: -5px;
    left: 2px;
    content: "";
    width: 30px;
    width: min(2.8vw,30px);
    height: 30px;
    height: min(2.8vw,30px);
    background: url(/idc_recommend/duo/images/icon-check.png) no-repeat;
    background-size: 100%;
    clip-path: inset(0 100% 0 0);
    transition-duration: 0.4s;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__list li:after {
        top: 0.6vw;
        width: 3vw;
        height: 3vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__list li:after {
        top: 0.6vw;
        width: 4.4vw;
        height: 4.4vw;
    }
}
.p-coordinate__list li.is-active:after {
    clip-path: inset(0 0 0 0);
}
.p-coordinate__btm {
}
/*
 p-coordinate__desc
-------------------------------- */
.p-coordinate__desc {
    font-size: 1rem;
    line-height: 1.8;
    text-align: left;
}
@media only screen and (max-width: 1024px) {
    .p-coordinate__desc {
        font-size: 2vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-coordinate__desc {
        font-size: 3.6vw;
    }
}




/* ------------------------------------------ 
	
 - shop

------------------------------------------ */
/*
 p-shop
-------------------------------- */
.p-shop {
    padding: 0 min(8vw,80px) min(7vw,70px);
    background: var(--lightgray);
}
@media only screen and (max-width: 1200px) {
    .p-shop {
        padding: 0 40px 70px;
        padding: 0 min(4vw,40px) min(7vw,70px);
    }
}
@media only screen and (max-width: 960px) {
    .p-shop {
        padding: 0 5.3vw 8vw;
    }
}
/*
 p-shop__head
-------------------------------- */
.p-shop__head {
    padding: 70px 0;
    padding: min(7vw,70px) 0;
    text-align: center;
}
@media only screen and (max-width: 960px) {
    .p-shop__head {
        padding: 10vw 0;
    }
}
/*
 p-shop__catch
-------------------------------- */
.p-shop__catch {
    margin-bottom: 32px;
    margin-bottom: min(2.6vw,32px);
    font-size: 1rem;
    font-family: "Baskerville","Baskervville", serif;
}
@media only screen and (max-width: 1024px) {
    .p-shop__catch {
        margin-bottom: 3vw;
        font-size: 2.5vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__catch {
        margin-bottom: 4vw;
        font-size: 3.6vw;
    }
}
/*
 p-shop__ttl
-------------------------------- */
.p-shop__ttl {
    font-size: 1.75rem;
    line-height: 1.2;
    font-family: var(--font02);
}
@media only screen and (max-width: 1024px) {
    .p-shop__ttl {
        font-size: 3vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__ttl {
        font-size: 5vw;
    }
}
/*
 p-shop__list
-------------------------------- */
.p-shop__list {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    gap: min(4vw,40px);
}
@media only screen and (max-width: 1024px) {
    .p-shop__list {
        flex-direction: row;
        gap: 3vw;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__list {
        flex-direction: column;
        gap: 5.3vw;
    }
}
/*
 p-shop__item
-------------------------------- */
.p-shop__item {
    position: relative;
    width: calc((100% - 120px) / 4);
    width: calc((100% - min(12vw,120px)) / 4);
}
@media only screen and (max-width: 1024px) {
    .p-shop__item {
		width: 48.2%
	}
}	
@media only screen and (max-width: 599px) {
    .p-shop__item {
        width: 100%;
    }
}
/*
 p-shop__img
-------------------------------- */
.p-shop__img {
    position: relative;
    overflow: hidden;
}
.p-shop__img img {
    vertical-align: middle;
    width: 100%;
}
/*
 p-shop__img i
-------------------------------- */
.p-shop__img i {
    position: absolute;
    top: 10px;
    padding: 2px 8px;
    color: #fff;
    background: var(--darkgray);
    text-align: center;
    font-size: 0.875rem;
    z-index: 1;
    font-style: normal;
}
@media only screen and (max-width: 1024px) {
    .p-shop__img i {
        top: 2vw;
        padding: 0.8vw 2vw;
        font-size: 2vw;
        line-height: 1;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__img i {
        top: 3.8vw;
        padding: 0.8vw 2vw;
        font-size: 4vw;
        line-height: 1;
    }
}
/*
 p-shop__txt
-------------------------------- */
.p-shop__txt {
    padding: 30px 20px;
    padding: 30px min(1.6vw,20px);
    background: #fff;
    text-align: center;
}
@media only screen and (max-width: 1024px) {
    .p-shop__txt {
        padding: 3vh 5vw 3vh;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__txt {
        padding: 3vh 7vw 2vh;
    }
}
/*
 p-shop__name
-------------------------------- */
.p-shop__name {
    margin-bottom: 16px;
    font-size: 1.125rem;
    line-height: 1.4;
    min-height: 48px;
}
@media only screen and (max-width: 1024px) {
    .p-shop__name {
        font-size: 1rem;
        margin-bottom: 10px;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__name {
        min-height: inherit;
        margin-bottom: 0;
        font-size: 4.4vw;
        line-height: 1.2;
    }
}
/*
 p-shop__addr
-------------------------------- */
.p-shop__addr {
    font-size: 0.875rem;
    line-height: 1.8;
    min-height: 89px;
    font-style: normal;
}
@media only screen and (max-width: 1024px) {
    .p-shop__addr {
        min-height: inherit;
        /* padding-right: 6vw; */
        font-size: 2vw;
        text-align: left;
    }
}
@media only screen and (max-width: 599px) {
    .p-shop__addr {
        min-height: inherit;
        /* padding-right: 6vw; */
        font-size: 3.6vw;
        text-align: left;
    }
}
/*
 p-shop__btn
-------------------------------- */
.p-shop__btn {
    position: relative;
    display: inline-block;
    margin-top: 16px;
    padding: 11px 17px; 
    padding: 11px min(0.8vw,17px); 
    font-size: 0.875rem;
    border: 1px solid var(--darkgray);
    background: #fff;
    z-index: 12;
    overflow: hidden;
}
@media only screen and (max-width: 960px) {
    .p-shop__btn {
        display: none;
    }
}
.p-shop__btn:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
}
.p-shop__item {
    opacity: 0;
}
.p-shop__item a:hover .p-shop__btn {
    color: #fff;
	background:var(--darkgray);
}

.p-shop__btn i {
    display: inline-block;
    margin-left: 12px;
    margin-left: min(0.8vw,12px);
    width: 16px;
    height: 16px;
    background: url(/idc_recommend/duo/images/icon-arrow-black.svg) no-repeat;
    background-size: 100%;
    vertical-align: -2px;
}

.p-shop__item a:hover .p-shop__btn i {
    background: url(/idc_recommend/duo/images/icon-arrow-white.svg) no-repeat;
    background-size: 100%;
    animation: btn-anim 850ms cubic-bezier(0.4, 1, 0.3, 1) forwards;
}
.p-shop__item a:hover .p-shop__btn:after {
    animation: btn-anim2 650ms cubic-bezier(0.4, 1, 0.3, 1) forwards;
}

@media only screen and (max-width: 960px) {
    .p-shop__item a:after {
        content: "";
        position: absolute;
        right: 5.3vw;
        bottom: 5.3vw;
        display: inline-block;
        width: 4vw;
        height: 4vw;
        background: url(/idc_recommend/duo/images/icon-arrow-black.svg) no-repeat;
        background-size: 100%;
    }
}


/* -----------------------------------------------

 - moredetail
 
----------------------------------------------- */
/* -----------------------------------------------
  - moredetail_col modaal SP
----------------------------------------------- */
.modaal-content-container {
    padding: 60px !important;
}
/* -----------------------------------------------
  - recommend-inner-wrap modaal SP
----------------------------------------------- */
.modaal-content-container {
    padding: 0px !important;
}
.modaal-close:after,
.modaal-close:before {
	background: var(--darkgray);
}
.modaal-close:after,
.modaal-close:before {
	width: 2px;
	height: 40px;
}
.modaal-fullscreen .modaal-close {
	background: none;
	z-index:2;
	right: 19px;
	top: 7px;
}





/* -----------------------------------------------

 - swiper
 
----------------------------------------------- */
/* -----------------------------------------------
  - moredetail_col_wrap swiper SP
----------------------------------------------- */
.moredetail_sp_slider01 .swiper-pagination-bullet {
	border-radius: unset;
	background-color: var(--lightgray);
	opacity: 0.8;
}
.moredetail_sp_slider01 .swiper-pagination-bullet-active {
	background-color: var(--gray);
	opacity: 1;
}
.moredetail_col_wrap .swiper-container-wrap .swiper-button-prev:after,
.moredetail_col_wrap .swiper-container-wrap .swiper-button-next:after {
	font-size: 1.4rem;
	color: var(--gray);
}	
.moredetail_col_wrap .swiper-container-wrap .swiper-button-prev,
.moredetail_col_wrap .swiper-container-wrap .swiper-button-next {
	position:absolute;
	top: 95.5%;
	width: calc(var(--swiper-navigation-size)/ 40 * 27);
}

/* -----------------------------------------------
  - recommend_sp_slider01 swiper SP
----------------------------------------------- */
@media only screen and (max-width: 599px) {
	.recommend_sp_slider01 .swiper-pagination-bullet,
	.recommend_sp_slider02 .swiper-pagination-bullet,
	.recommend_sp_slider03 .swiper-pagination-bullet,
	.recommend_sp_slider04 .swiper-pagination-bullet {
		border-radius: unset;
		background-color: var(--darkgray);
		opacity: 0.8;
	}
	.recommend_sp_slider01 .swiper-pagination-bullet-active,
	.recommend_sp_slider02 .swiper-pagination-bullet-active,
	.recommend_sp_slider03 .swiper-pagination-bullet-active,
	.recommend_sp_slider04 .swiper-pagination-bullet-active {
		background-color: var(--lightgray);
		opacity: 1;
	}
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-prev:after,
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-next:after {
		font-size: 1.4rem;
		color: var(--darkgray);
	}	
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-prev,
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-next {
		position:absolute;
		top: 91%;
		width: calc(var(--swiper-navigation-size)/ 40 * 27);
	}
	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	    bottom: 10px;
	    left: 0;
	    width: 100%;
	}
	.recommend_sp_slider01 > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	    bottom: 18px;
	    left: 0;
	    width: 100%;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	.recommend_sp_slider01 .swiper-pagination-bullet,
	.recommend_sp_slider02 .swiper-pagination-bullet,
	.recommend_sp_slider03 .swiper-pagination-bullet,
	.recommend_sp_slider04 .swiper-pagination-bullet {
		border-radius: unset;
		background-color: var(--darkgray);
		opacity: 0.8;
	}
	.recommend_sp_slider01 .swiper-pagination-bullet-active,
	.recommend_sp_slider02 .swiper-pagination-bullet-active,
	.recommend_sp_slider03 .swiper-pagination-bullet-active,
	.recommend_sp_slider04 .swiper-pagination-bullet-active {
		background-color: var(--lightgray);
		opacity: 1;
	}
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-prev:after,
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-next:after {
		font-size: 2rem;
		color: var(--darkgray);
	}	
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-prev,
	.recommend-inner-wrap .swiper-container-wrap .swiper-button-next {
		position:absolute;
		top: 95%;
		width: calc(var(--swiper-navigation-size)/ 40 * 27);
	}
	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	    bottom: 10px;
	    left: 0;
	    width: 100%;
	}
	.recommend_sp_slider01 > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	    bottom: 18px;
	    left: 0;
	    width: 100%;
	}
}


/* ------------------------------------------ 
	
 - TO TOP

------------------------------------------ */
@media only screen and (max-width: 599px) {
	#page-top a{
		display: block;
		transition:all 0.3s;
	}
	#page-top a img {
		width: 24%;
	}
	#page-top a:hover{
	}
	#page-top {
		position: fixed;
		right: 3%;
		bottom:8px;
		z-index: 32;
		opacity: 0;
		text-align: right;
	}
}
@media only screen and (min-width: 600px) and (max-width: 1024px) {
	#page-top a{
		display: block;
		transition:all 0.3s;
	}
	#page-top a img {
		width:32%;
	}
	#page-top a:hover{
	}
	#page-top {
		position: fixed;
		right: 2%;
		bottom:10px;
		z-index: 32;
		opacity: 0;
		text-align: right;
	}
}
@media only screen and (min-width: 1025px) {
	#page-top a{
		display: block;
		transition:all 0.3s;
	}
	#page-top a img {
		width:27%;
	}
	#page-top a:hover{
	}
	#page-top {
		position: fixed;
		right: 1%;
		bottom:10px;
		z-index: 32;
		opacity: 0;
		text-align: right;
	}
}

#page-top.UpMove{
  animation: UpAnime 0.5s forwards;
}
@keyframes UpAnime{
  from {
    opacity: 0;
  transform: translateY(100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

#page-top.DownMove{
  animation: DownAnime 0.5s forwards;
}
@keyframes DownAnime{
  from {
    opacity: 1;
  transform: translateY(0);
  }

  to {
    opacity: 1;
  transform: translateY(100px);
  }
}



/* ------------------------------------------ 
	
 - SNS FOOOTER

------------------------------------------ */
.snsicon_wrap {
	padding: 1rem 0 1rem;
	text-align: center;
}


.snsicon_wrap img {
	width: 28px;
}
.snsicon_wrap ul {
	text-align: center;
	display: flex;
	flex-flow:row nowrap;
	justify-content:space-around;
	align-items: center;
	margin: 1rem auto 0;
	width: 70%;
}
.snsicon_wrap ul li {
	width: 9%;
}
footer {
	padding-bottom: 2rem;
}

footer p:first-child {
	margin-top:0;
}
footer p:last-child {
	margin-top:0.5rem;
}
footer p img {
	width:30%;
}

@media only screen and (min-width: 768px) {
	.snsicon_wrap {
		padding: 3rem 0 1.5rem;
		text-align: center;
	}
	.snsicon_wrap img {
		width: 26px;
	}
	.snsicon_wrap ul {
		text-align: center;
		display: flex;
		flex-flow:row nowrap;
		justify-content:space-around;
		align-items: center;
		margin: 1rem auto 0;
	}
	.snsicon_wrap ul {
		margin: 0.5em auto 0;
		width: 380px;	
	}
	.snsicon_wrap ul li {
		width: 7%;
	}
	footer {
		padding-bottom: 2rem;
	}
	footer p:first-child {
		margin-top:0;
	}
	footer p:last-child {
		margin-top:1rem;
	}
}
.sns_fixed {
	display:none;
}

/* ------------------ WRAP ---------------- */
.wrapper{
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: normal;
	color:#222;
	background: #e9e0db;
}

main {
	font-family: 'Zen Kaku Gothic New', sans-serif;
	font-weight: normal;
}

@media only screen and (min-width: 1100px) {
    footer {
        width: 1100px;
        margin-left: auto;
        margin-right: auto;
        padding-bottom: 6rem;
    }
}



html {
    /*scroll-behavior: auto !important;*/
}








