#insta{
	margin-top:5em;
}
#mainvisual{
	width:100%;
	height:100vh;
	background-color:rgba(243,245,240,0.8);
}
#mainvisual .slick-slide{
	height:100vh;
}
#mainvisual .mainvisual_slide_cont{
	margin-left:90px;
	width:calc(100% - 90px);
	height:calc(100% - 40px);
	border-radius:0 0 0 64px;
	background-size:cover;
	position:relative;
}
#mainvisual .mainvisual_slide_cont p{
	position:absolute;
	font-size:5vmin;
	bottom:80px;
	left:-80px;
	text-align:left;
}
#mainvisual .mainvisual_slide_cont p span{
	display:inline-block;
	background-color:rgba(255,255,255,0.8);
	letter-spacing:0.3em;
	padding:0 0.5em;
	margin-bottom:0.2em;
}

.text{
	line-height:1.8em;
	font-size:1.2em;
	letter-spacing:0.1em;
}

body{
	background-repeat:no-repeat;
	background-attachment:fixed;
	background-position:bottom right;
	background-size: auto 96%;
}

#oshirase .contents > div{
	width:60%;
}

#oshirase .contents{
	padding-bottom: 180px;
}



#method{
	background-color:rgba(219,201,150,0.87);
}

#method .contents{
	padding-top:30px;
}

#method .contents video{
	margin-bottom:3em;
}

#method .contents ul{
	width:100%;
}

#method .contents ul li{
	display:flex;
	align-items:flex-start;
	flex-wrap:wrap;
	margin-bottom:112px;
}

#method .contents ul li:last-child{
	margin-bottom:0;
}

#method .contents ul li .img{
	width:202px;
	margin-right:38px;
	border-radius:50%;
	overflow:hidden;
	background-size: cover; /* 背景画像を要素の大きさに合わせる */
    background-position: center; /* 背景画像を中央に配置 */
}

#method .contents ul li .img:before{
	content:"";
	display:block;
	width:100%;
	padding-top:100%;
}

#method .contents ul li section{
	width:calc(100% - 240px);
}
#method .contents ul li section h3{
	font-weight:normal;
	color:#5A4C37;
	font-size:1.5em;
	margin-bottom:1em;
	letter-spacing: 0.2em;
	line-height: 1.8em;
}

#method .contents ul li section h3 span{
	color: #69AD50;
    font-size: 0.8em;
    display: block;
    line-height: 1;
}

#method .contents ul li section p{
}

#about{
	background-color:rgba(243,245,240,0.8);
}

#about .about_head{
	border-radius:0 0 64px 64px;
	overflow:hidden;
	margin-bottom:3em;
}
#about .about_head img{
	width:100%;
}

#about .contents{
	padding-top:60px;
	padding-bottom:60px;
}





#topics{
	background-color:rgba(223,230,223,0.87);
}

/* タブメニューのスタイル */
.tab-menu {
	display: flex;
    list-style: none;
    padding: 0;
    margin: 0 0 20px 0;
    overflow-x: scroll;
	overflow-y: hidden;
    width: 100%;
}

.tab {
	margin-right: 1em;
	cursor: pointer;
	background-color:#fff;
	font-size: 16px;
	color: #555;
	transition: all 0.3s ease;
	font-weight:normal;
	text-align:center;
	min-width:150px;
	padding:1em 0;
	position: relative;
}

.tab.active {
	color: #fff;
	font-weight: bold;
	background-color:#504A3A;
}

.tab.active::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 20px solid #504A3A;
}


/* タブコンテンツのスタイル */
.tab-content {
	background-color:#fff;
	padding:2.4em;
}

.tab-pane {
	display: none;
}

.tab-pane.active {
	display: block;
}

#free{
	margin-top:3em;
}
#free img{
	display:block;
	width:100%;
	margin:1em 0;
}

#page_link {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#page_link a{
	display:block;
	line-height:1.5;
	padding:0.5em 0;
	border-radius:10px;
	text-align:center;
	width:30%;
	color: #fff;
    font-weight: bold;
    background-color: #504A3A;
}

@media only screen and (max-width: 767px){
	#page_link a{
		width:100%;
		margin-bottom:2em;
	}
	#page_link a:last-child{
		margin-bottom:0;
	}
	#mainvisual{
		margin-bottom:100vw;
		height:auto;
		background:none;
	}
	#mainvisual .mainvisual_slide_cont p{
		font-size:5.5vmin;
	}
	#scroll{
		text-align:center;
		margin-top:-2em;
	}
	#scroll img{
		display:inline-block;
		width:7em;
	}
	#mainvisual .mainvisual_slide_cont{
		background-position:center;
	}
	#mainvisual .slick-slide{
		height:150vw;
	}
	#container,#site-footer{
		position:relative;
	}
	#oshirase .contents > div{
		width:100%;
	}
	#oshirase,#concept{
		background-color:rgba(243,245,240,0.87);
	}
	#oshirase .contents{
		padding-bottom:3em;
		margin-bottom:10em;
	}
	#method .contents ul li .img{
		width:50%;
		margin:0 auto 1em;
	}
	#method .contents ul li section{
		width:100%;
	}
	#about .contents ul li{
		width:100%;
		margin-bottom:2em;
	}
	#about .contents ul li:last-child{
		margin-bottom:0;
	}
	#method .contents ul li section h3{
		text-align:center;
	}
	#method .contents ul li section p{
		font-size:1.2em;
	}
	
	.tab{
		font-size:1em;
		min-width: auto;
        padding: 1em 1em;
	}
	.text{
		font-size:1.1em;
	}
	#method .contents ul li section h3 span{
		font-size:0.5em;
	}
	#method{
		background-color: rgba(219, 201, 150, 0.9);
	}
	#about{
		background-color: rgba(243, 245, 240, 0.9);
	}
	#method:before{
		opacity:0.9;
	}
}