@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400..700;1,400..700&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');
/*======================
           mb           
======================*/
@media screen and (max-width: 768px) {
	/* --------- 調整・消去 --------- */
	body .box-white,
	body .post-content{
		padding: 0 0 0;
	}
	body .group{
		padding: 0 0 80px;
	}
	body main > .title_area,
	body .group::before,
	body .inner > header,
	body .inner dl.periodText{
		display: none !important;
	}
	body .group .inner{
		width: 100%;
	}
	body .post-content p{
		margin: 0;
	}
	#topic .pc { display: none !important; }
	#topic .sp { display: block !important; }


	/*------------------------
	         個別Style        
	------------------------*/

	#topic .content-main {
		color: #875c5c;
		padding-bottom: 10px;
		background-color: #f7e0d3;
	}

	body #topic p,
	body #topic th,
	body #topic td,
	body #topic li,
	body #topic dt,
	body #topic dd{
		font-family: 'Noto Sans JP','メイリオ','Meiryo',sans-serif;
		font-size:14px;
		line-height:1.75em;
		color: #875c5c;
	}
	#topic h1{
		font-family: "Lora","Noto Serif JP",serif;
		line-height:1.4em;
		font-feature-settings : "palt";
		color: #875c5c;
	}
	#topic h2,
	#topic h3,
	#topic h4,
	#topic h5{
		color: #875c5c;
		font-family: 'Noto Sans JP','メイリオ','Meiryo',sans-serif;
		line-height:1.4em;
		font-feature-settings : "palt";
	}
	#topic p{
		line-height:2em;
		margin:0 0 15px 0;
		font-size:14px;
	}
	#topic .template h1{
		text-align: center;
		margin-top: 60px;
		line-height: 2em;
	}
	#topic .template h1 span{
		font-size: 2em;
		letter-spacing: 0.1em;
	}



	/*-------------------------------------- header */

	#topic header {
	}


	/*-------------------------------------- #concept_area */

	#topic #concept_area{
		background: url(images/wave_pw.png) no-repeat 50% 100%;
		padding-bottom: 60px;
		background-size: 100% auto;
	}
	#topic #concept_area h1{
		text-align: center;
		margin: 20px 0 0 0;
	}
	#topic .concept_box{
		margin: 50px 7vw 0;
	}
	#topic .concept_box .txt-box p{
		margin: 30px 20px;
	}
	#topic .concept_box #catch{
		margin: 20px 0 0;
		text-align: center;
		width: 100%;
	}
	#topic .concept_box #catch span{
		font-family: 'Noto Sans JP',sans-serif;
		font-size: 2em;
		background-color: #fff;
		line-height: 1.6em;
		letter-spacing: 0.05em;
		font-weight: 200;
		padding: 0 5px;
	}
	#topic .concept_box .img-box{
	}
	#topic .concept_box .img-box img{
		width: 100%; height: auto;
	}
	#topic .concept_box_odd .img-box img{ border-radius: 100px 0 0 0;}
	#topic .concept_box_even .img-box img{ border-radius: 0 100px 0 0;}


	/*-------------------------------------- about */

	#topic #about_area{
		margin: 0 auto;
		padding: 20px 0 80px;
		background: #fcf3ef url(images/wave_wp.png) no-repeat 50% 100%;
	}
	#topic #about_area figure{
		margin: 35px 0 30px;
	}
	#topic #about_area h2{
		color: #fff;
		font-size: 1.3em;
		margin: 15px 20px;
		letter-spacing: 0.075em;
	}
	#topic #about_area p{
		color: #fff;
		margin: 0 20px 0;
	}
	#topic #about_outer{
		margin: 60px 40px 0;
	}
	#topic #about_area .about_box{
		margin: 50px 0;
		padding-bottom: 20px;
		border-radius: 51px 51px 0 0;
	}
	#topic #about_area .about_box img{
		width: 100%;
		border-radius: 50px 50px 0 0;
	}
	#topic #about_area .box1{ background-color:#efa186;}
	#topic #about_area .box2{ background-color:#bda7bc;}
	#topic #about_area .box3{ background-color:#d49ba0;}


	/*-------------------------------------- color */

	#topic #color_area {
		margin: 0 auto 0;
		padding: 0 0 40px;
		background: url(images/wave_pw.png) no-repeat 50% 100%;

	}
	#topic #color_area figure{
		text-align: center;
		margin: 40px 3vw;
	}
	#topic #color_area figure + p{
		text-align: center;
	}


	/*-------------------------------------- recipe */

	#topic #recipe_area {
		padding: 40px 7vw 80px;
		background: #fcf3ef url(images/wave_wp.png) no-repeat 50% 100%;
	}
	#topic #recipe_area h1{
		margin-top: 0;
	}
	#topic #recipe_area figure{
		margin: 35px 0 30px;
	}
	#topic #recipe_area figure img{
		border-radius: 50px;
	}
	#topic #recipe_area .attention{
		margin: 20px auto 50px;
		padding: 20px 7vw 5px;
		background-color: #fff;
	}
	#topic #recipe_area .attention p{
		text-align: left;
	}

	/*-------------------------------------- product */
	
	#topic #product_area{
		margin: 0 auto;
	}
	#topic .product_box{
		margin: 60px 7vw 40px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#topic .product_box img{
		border-radius: 0 100px 0 0;
	}
	#topic #product_area h2{
		font-size: 1.2em;
		margin: 30px 0 15px;
	}

	/*-------------------------------------- buttons */

	#topic .button_flex{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 40px 0 60px;
	}
	#topic .ecbutton {
		width: 86vw;
		margin: 7px 0;
	}
	#topic .ecbutton + p{
		text-align: center;
		color: #875c5c;
	}
	#topic .ecbutton a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 50px;
		position: relative;
		background: #ef023a;
		border: 1px solid #ef023a;
		border-radius: 30px;
		box-sizing: border-box;
		padding: 0 45px 0 25px;
		color: #fff;
		line-height: 1.3;
		text-align: left;
		text-decoration: none;
		transition-duration: 0.3s;
	}
	#topic .ecbutton a:before {
		content: '';
		width: 8px;
		height: 8px;
		border: 0;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 25px;
		margin-top: -6px;
	}
	#topic .ecbutton a:hover {
		background: #fff;
		color: #ef023a;
	}
	#topic .ecbutton a:hover:before {
		border-top: 2px solid #ef023a;
		border-right: 2px solid #ef023a;
	}
}

/*======================
           pc          
======================*/
@media print, screen and (min-width: 769px) {
	/* --------- 調整・消去 --------- */
	body .box-white,
	body .post-content{
		padding: 0 0 0;
		max-width: 960px;
	}
	body .inner > header,
	body .inner dl.periodText{
		display: none;
	}
	body .post-content p{
		margin: 0;
	}
	#topic div.image{
		text-align:center;
	}
	#topic .pc { }
	#topic .sp { display: none !important; }

	/*------------------------
	         個別Style        
	------------------------*/

	#topic .content-main {
		color: #875c5c;
		padding-bottom: 10px;
		background-color: #f7e0d3;
		max-width: 960px;
		margin: 0 auto;
	}
	body #topic p,
	body #topic th,
	body #topic td,
	body #topic li,
	body #topic dt,
	body #topic dd{
		font-family: 'Noto Sans JP','メイリオ','Meiryo',sans-serif;
		font-size:14px;
		line-height:1.75em;
		color: #875c5c;
	}
	#topic h1{
		font-family: "Lora","Noto Serif JP",serif;
		line-height:1.4em;
		font-feature-settings : "palt";
		color: #875c5c;
	}
	#topic h2,
	#topic h3,
	#topic h4,
	#topic h5{
		font-family: 'Noto Sans JP','メイリオ','Meiryo',sans-serif;
		line-height:1.4em;
		font-feature-settings : "palt";
		color: #875c5c;
	}
	#topic p{
		line-height:2em;
		margin:0 0 15px 0;
		font-size:14px;
	}
	#topic .template h1{
		text-align: center;
		margin-top: 60px;
		line-height: 2em;
	}
	#topic .template h1 span{
		font-size: 2em;
		letter-spacing: 0.1em;
	}

	/*-------------------------------------- header */

	#topic header {
	}


	/*-------------------------------------- #concept_area */

	#topic #concept_area{
		background: url(images/wave_pw.png) no-repeat 50% 100%;
		padding-bottom: 100px;
	}
	#topic #concept_area h1{
		text-align: center;
		margin: 70px 0 0 30px;
	}
	#topic .concept_box{
		margin: 60px 40px 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#topic .concept_box:nth-child(odd) { flex-direction: row-reverse; }
	#topic .concept_box:nth-child(even) { flex-direction: row; }
	#topic .concept_box .txt-box{
		flex:1;
	}
	#topic .concept_box .txt-box p{
		margin: 30px;
	}
	#topic .concept_box .img-box{
		width: 60%;
	}
	#topic .concept_box #catch{
		position: absolute;
		margin: 20px 0 0 20px;
	}
	#topic .concept_box #catch span{
		font-family: 'Noto Sans JP',sans-serif;
		font-size: 2.4em;
		background-color: #fff;
		line-height: 1.6em;
		letter-spacing: 0.05em;
		font-weight: 200;
		padding: 0 5px;
	}
	#topic .concept_box .img-box img{
		width: 100%;
	}
	#topic .concept_box_odd .img-box img{ border-radius: 100px 0 0 0;}
	#topic .concept_box_odd .txt-box{ margin-right: 20px;}
	#topic .concept_box_even .img-box img{ border-radius: 0 100px 0 0;}
	#topic .concept_box_even .txt-box{ margin-left: 20px;}


	/*-------------------------------------- about */

	#topic #about_area{
		margin: 0 auto;
		padding: 20px 0 140px;
		background: #fcf3ef url(images/wave_wp.png) no-repeat 50% 100%;
	}
	#topic #about_area figure{
		margin: 35px 0 30px;
	}
	#topic #about_area h2{
		color: #fff;
		font-size: 1.1em;
		margin: 15px 20px;
		letter-spacing: 0.075em;
	}
	#topic #about_area p{
		color: #fff;
		margin: 0 20px 20px;
	}
	#topic #about_outer{
		margin: 60px 0 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 2%;
	}
	#topic #about_area .about_box{
		width: 280px;
		border-radius: 51px 51px 0 0;
	}
	#topic #about_area .about_box img{
		width: 100%;
		border-radius: 50px 50px 0 0;
	}
	#topic #about_area .box1{ background-color:#efa186;}
	#topic #about_area .box2{ background-color:#bda7bc;}
	#topic #about_area .box3{ background-color:#d49ba0;}


	/*-------------------------------------- color */

	#topic #color_area {
		margin: 0 auto 0;
		padding: 20px 0 40px;
		background: url(images/wave_pw.png) no-repeat 50% 100%;

	}
	#topic #color_area figure{
		text-align: center;
		margin: 70px 0 40px;
	}
	#topic #color_area figure + p{
		text-align: center;
	}


	/*-------------------------------------- recipe */

	#topic #recipe_area {
		margin: 0 auto 0;
		padding: 20px 0 80px;
		background: #fcf3ef url(images/wave_wp.png) no-repeat 50% 100%;
		text-align: center !important;
	}
	#topic #recipe_area figure{
		margin: 35px 0 30px;
	}
	#topic #recipe_area figure img{
		border-radius: 100px;
	}
	#topic #recipe_area p.center_left{
		display: inline-block;
		text-align: left;
		margin: 50px 0;
	}
	#topic #recipe_area .attention{
		width: 640px;
		margin: 0 auto 50px;
		padding: 20px 60px 5px;
		border-radius: 100px;
		background-color: #fff;
	}
	#topic #recipe_area .attention p{
		text-align: left;
	}

	/*-------------------------------------- product */
	
	#topic #product_area{
		margin: 0 auto;
		padding: 20px 0 0;
	}
	#topic .product_box{
		margin: 60px 40px 40px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	#topic .product_box img{
		border-radius: 0 100px 0 0;
	}
	#topic #product_area h2{
		font-size: 1.2em;
		margin: 30px 0 15px;
	}

	/*-------------------------------------- buttons */

	#topic .button_flex{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin: 70px 0 100px;
	}
	#topic .ecbutton {
		width: 380px;
		margin: 0 15px;
	}
	#topic .ecbutton + p{
		text-align: center;
		color: #875c5c;
	}
	#topic .ecbutton a {
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 50px;
		position: relative;
		background: #ef023a;
		border: 1px solid #ef023a;
		border-radius: 30px;
		box-sizing: border-box;
		padding: 0 45px 0 25px;
		color: #fff;
		line-height: 1.3;
		text-align: left;
		text-decoration: none;
		transition-duration: 0.3s;
	}
	#topic .ecbutton a:before {
		content: '';
		width: 8px;
		height: 8px;
		border: 0;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 25px;
		margin-top: -6px;
	}
	#topic .ecbutton a:hover {
		background: #fff;
		color: #ef023a;
	}
	#topic .ecbutton a:hover:before {
		border-top: 2px solid #ef023a;
		border-right: 2px solid #ef023a;
	}


}
