@charset "UTF-8";
main{
  min-height: 1000px;
  background: #F4F4F4;
}

a {
    color: #FF9933;
    vertical-align: baseline;
    transition: all .2s;
    text-decoration: none;
}
a[nohref]{
    cursor:pointer;
}

button{
	font-family : inherit;
}

#main *, #main *::after, #main *::before {
    box-sizing: border-box;
}

.content_inner, .content_inner_wide {
    margin: 0 auto;
    box-sizing: border-box;
		background-color: #ffffff;
		border-radius: 16px;
}

.sec .content_inner > *:last-child,
.sec_inner > *:last-child,
.sec_inner .sec_inner > *:last-child{
	margin-bottom: 0;
}
.sec:last-child,
.sec_inner:last-child,
.sec_inner .sec_inner:last-child{
	margin-bottom: 0;
}


/*** PC ***/
@media print, screen and (min-width: 768px) {
	.content_section{
		margin-top: 25px;
	}
	.content_section.first_section{
		margin-top: 60px;
	}

	.content {
			padding-bottom: 60px;
	}
	
	.content_inner {
		max-width: 1024px;
		padding: 60px 50px 70px;
	}
	.sec_inner{
		margin-bottom: 60px;
	}
	.sec_inner .sec_inner {
		margin-bottom: 45px;
	}

	.pc_only{
		display: block;
	}
	.sp_only{
		display: none;
	}

	.date{
		margin-top: 20px;
		text-align: right;
	}
}

/*** SP ***/
@media screen and (max-width: 767px) {
	.content_section{
		margin: 30px 20px 0;
	}

	.content {
		padding-bottom: 0px;
	}
	.content_inner {
			width: 100%;
			padding: 40px 20px 75px;
	}
	.sec_inner{
		margin-bottom: 35px;
	}
	.sec_inner .sec_inner {
		margin-bottom: 30px;
	}

	.pc_only{
		display: none;
	}
	.sp_only{
		display: block;
	}

	.date{
		margin-top: 10px;
		text-align: right;
		font-size: 14px;
	}
}


/*** ------------------------------------------------------------
    見出し
------------------------------------------------------------ ***/

/*** PC ***/
@media print, screen and (min-width: 768px) {
	.ttl_product{
		font-size: 30px;
		margin-bottom: 50px;
		letter-spacing: 0.1em;
		font-weight: bold;
	}
	.ttl_h3{
		margin-bottom: 20px;
		font-size: 26px;
		font-weight: bold;
	}
}

/*** SP ***/
@media screen and (max-width: 767px) {
	.ttl_product{
		font-size: 24px;
		margin-bottom: 25px;
		letter-spacing: 0.1em;
		line-height: 1.4;
		font-weight: bold;
	}
	.ttl_h3{
		margin-bottom: 20px;
		font-size: 19.5px;
		font-weight: bold;
	}
}


/*** ------------------------------------------------------------
    parts.cssからの引用
------------------------------------------------------------ ***/

/*ttl_bdr_blue*/
.ttl_bdr_blue{
	position: relative;
	text-align: center;
}
.ttl_bdr_blue .txt_main{
	font-weight: 700;
	letter-spacing: 0.2em;
}
.ttl_bdr_blue._black .txt_main{
	color: #222222;
}
.ttl_bdr_blue .txt_main sub {
    bottom: .85em;
}
.ttl_bdr_blue .txt_sub{
	font-weight: 900;
	letter-spacing: 0.02em;
	font-family: 'Roboto', sans-serif;
}
.ttl_bdr_blue .txt_sub_ttl{
	font-weight: bold;
	color: #FF9933;
}
.ttl_bdr_blue._left .txt_main,
.ttl_bdr_blue._left .txt_sub,
.ttl_bdr_blue._left .txt_sub_ttl{
	text-align: left;
}
.ttl_bdr_blue._left:before{
	right: auto;
	margin: 0;
}

@media print, screen and (min-width:768px){
	.ttl_bdr_blue{
		margin-bottom: 45px;
	}
	.ttl_bdr_blue .txt_main{
		line-height: 1.5;
		font-size: 32px;
	}
	.ttl_bdr_blue .txt_sub{
		margin-top: 2px;
		font-size: 20px;
	}
	.ttl_bdr_blue .txt_sub_ttl{
		margin-bottom: -5px;
		font-size: 24px;
		line-height: 1.5;
	}
	.ttl_simple_bold {
		margin-bottom: 25px;
		font-size: 20px;
		font-weight: bold;
	}
}

@media screen and (max-width:767px){
	.ttl_bdr_blue{
		margin-bottom: 35px;
		padding: 15px 20px 0;
	}
	.ttl_bdr_blue._left{
		padding: 15px 0 0;
	}
	.ttl_bdr_blue .txt_main{
		font-size: 23px;
	}
	.ttl_bdr_blue .txt_sub{
		margin-top: 3px;
		font-size: 13px;
	}
	.ttl_bdr_blue .txt_sub_ttl{
		font-size: 17px;
	}
	.ttl_simple_bold {
		margin-bottom: 20px;
		font-size: 16px;
		font-weight: bold;
	}
}

/*ttl_dot_blue*/
.ttl_dot_blue{
	font-weight: bold;
	line-height: 1.5;
}
._ttl_dot_blue_em{
	color: #FF9933;
}
.ttl_dot_blue sub{
	bottom: .85em;
}
@media print, screen and (min-width:768px){
	.ttl_dot_blue{
		margin-bottom: 15px;
		font-size: 24px;
	}
}
@media screen and (max-width:767px){
	.ttl_dot_blue{
		margin-bottom: 10px;
		font-size: 17px;
	}
}

.imgtxt_hor_2_1 > .col_inner:last-child{
	margin-bottom: 0;
}
.imgtxt_hor_2_1 .img .download_prevent,
.imgtxt_hor_2_1 .img img{
	width: 100%;
}

.text_cp01 {
	font-weight: bold;
	color: #FF9933;
	letter-spacing: 0.1em;
}

.text_note1 {
	font-size: 14px;
}

.list_note li{
	font-size: 14px;
}

/*** PC ***/
@media print, screen and (min-width: 768px) {
	.imgtxt_hor_2_1{
		margin-bottom: 50px;
	}
	.imgtxt_hor_2_1 > .col_inner{
		display: flex;
		justify-content: space-between;
		margin-bottom: 50px;
	}
	.imgtxt_hor_2_1 > .col_inner > *{
		width: calc((100% - 20px) / 2);
	}
	._img_large.imgtxt_hor_2_1 > .col_inner >.txt{
		width: calc(40% - 53px);
	}
	._img_large.imgtxt_hor_2_1 > .col_inner >.img{
		width: 60%;
	}
	.imgtxt_hor_2_1 > .txt{
		margin-top: 30px;
	}

    .text_cp01 {
        margin-bottom: 20px;
        font-size: 26px;
    }

}

/*** SP ***/
@media screen and (max-width: 767px) {
	.imgtxt_hor_2_1{
		margin-bottom: 30px;
	}
	.imgtxt_hor_2_1 > .col_inner{
		margin-bottom: 30px;
	}
	.imgtxt_hor_2_1 > .col_inner > * {
		margin-bottom: 10px;
	}
	.imgtxt_hor_2_1 > .col_inner > *:last-child {
		margin-bottom: 0;
	}
	.imgtxt_hor_2_1 > .txt{
		margin-top: 15px;
	}
	.imgtxt_hor_2_1.ttl_only > .col_inner > * {
		margin-bottom: 8px;
	}
	.imgtxt_hor_2_1.ttl_only > .col_inner > *:last-child {
		margin-bottom: 0;
	}

	.text_cp01 {
		margin-bottom: 18px;
		font-size: 20px;
	}
}

/*** ------------------------------------------------------------
    #main
------------------------------------------------------------ ***/
#main{
    line-height: 1.75;
}

/* ttl_section */
.ttl_section .content_inner{
	background-color: initial;
}

.ttl_section .txt_page{
	color: #FF9933;
	line-height: 1.5;
}

@media print, screen and (min-width: 768px) {
	#main a:hover {
    text-decoration: underline;
  }
	.ttl_section{
		background: url(../img/img_ttlbg01.png)no-repeat right center / contain , #ffffff;
	}
	.ttl_section .content_inner{
		padding: 40px 0px 30px;
	}
	.ttl_section .txt_page{
		font-size: 80px;
	}
	.ttl_section .txt_product{
		font-size: 24px;
		letter-spacing: 0.1em;
		width: 42.5vw;
		min-width: 430px;
    height: 3.5em;
		text-align: left;
	}
}

@media screen and (max-width: 767px) {
	.ttl_section{
		position: relative;
		background-color: #ffffff;
		margin-bottom: 35px;
	}
	.ttl_section::before{
		position: absolute;
		content:'';
		display: block;
		width: 100%;
		height: 50px;
		bottom: 205px;
		z-index: 1;
		background: linear-gradient(0deg, rgba(255,255,255,0) 35%, rgba(255,255,255,1) 60%);
	}
	.ttl_section::after{
		position: relative;
		content:'';
		display: block;
		width: 100%;
		height: 250px;
		margin-top: -25px;
		background: url(../img/img_ttlbg02.png)no-repeat bottom right / cover;
	}
	.ttl_section .content_inner{
		padding: 0 20px ;
	}
	.ttl_section .txt_page{
		font-size: 57px;
	}
	.ttl_section .txt_product{
		font-size: 20px;
		letter-spacing: 0.1em;
	}
}

.content_status_wrap{
	display: none;
	left:0;
	right: 0;
	position: relative;
}
.content_status_wrap.on{
	display: block;
}

.content_status_wrap .content_status{
	position: absolute;
	border: 2px solid #FF9933;
	color: #FF9933;
	text-align: center;
	transform: translateY(-50%);
}
@media print, screen and (min-width: 768px) {
	.content_status_wrap .content_status{
		font-size: 17px;
		top: -20px;
		right: -15px;
		padding: 0px 40px;
	}
}

@media print{
	.content_status_wrap .content_status{
		top: 85px;
		right: 0;
	}
}

@media screen and (max-width: 767px) {
	.content_status_wrap .content_status{
		font-size: 14px;
    top: -15px;
    right: 0px;
    padding: 0px 25px;
	}
}


/*classify*/
.classify{
    margin-bottom: 30px;
    font-size: 14px;
}

.classify ul li{
    margin-right: 1.8em;
    display: inline-block;
}
.classify ul li:last-child:after{
    margin-right: 0;
    display: none;
}
.classify ul li dl{
	display: flex;
	align-items: center;
}
.classify ul li dt,
.classify ul li dd{
    display: inline-block;
}
.classify ul li dd{
	background: #F4F4F4;
	border-radius: 50px;
	text-align: center;
}

.classify ul li dd a{
	color: #222222;
}

.mB40 {
    margin-bottom: 40px !important;
}

@media print, screen and (min-width:768px){
	.classify ul{
			font-size: 16px;
	}
	.classify ul li dd{
		min-width: 100px;
		padding: 0 20px;
	}

	.classify ul li dd a:hover{
		color: #FF9933;
	}
}

@media screen and (max-width:767px){
	.classify ul{
			text-align: left;
	}
	.classify ul li{
		display: block;
		margin-bottom: 5px;
	}
	.classify ul li dt{
		min-width: 90px;
	}
	.classify ul li dd{
		min-width: 110px;
		padding: 5px 15px;
	}
}


/*prd_head*/
@media print, screen and (min-width:768px){
    .prd_head .prd_head_pht{
        margin-bottom: 50px;
    }
}

@media screen and (max-width:767px){
    .prd_head .prd_head_pht{
        margin-bottom: 25px;
    }
}

.prd_head_btn{
    margin: 60px auto 0;
}
.prd_head_btn .cv_btn{
	display: block;
	padding: 8px 10px;
    margin: 0 auto;
	text-align:center; 
    max-width: 400px;
	border-radius: 30px;
	transition: all 0.2s;
	border:2px solid #FF9933;
}
.prd_head_btn .cv_btn:hover{
	text-decoration: none!important;
}
.prd_head_btn .cv_btn .txt{
    position: relative;
	padding-left: 15px;
}
.prd_head_btn .cv_btn .txt:before{
	content: "";
    position: absolute;
    display: block;
    width: 8px;
    height: 8px;
    transform: translate(-50%, -50%) rotate(45deg);
    border: 2px solid #FF9933;
    border-bottom: none;
    border-left: none;
    top: calc(50% + 2px / 2);
    left: 0;
}
@media screen and (max-width:767px){
	.prd_head_btn{
		margin: 50px auto 0;
	}
}
@media print {
	.prd_head_btn{
		display: none;
	}
}

/* 栄養成分表示 */
.ingredient_list ul{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.ingredient_list ul li dl{
    height: 100%;
    display: flex;
    flex-wrap: wrap;
}
.ingredient_list ul li dt,
.ingredient_list ul li dd{
    height: 100%;
    padding: 12px;
    border-bottom: 1px solid #bebec8;
	word-break: break-all;
	word-wrap: break-word;
}
.ingredient_list ul li dt{
	padding-right: 5px;
    font-weight: bold;
}

@media print, screen and (min-width:768px){
	.ingredient_list{
		font-size: 14px;
	}
	.ingredient_list ul li{
			width: calc((100% - 30px)/2);
	}
	.ingredient_list ul li dt{
			width: 43%;
	}
	.ingredient_list ul li dd{
			width: 57%;
	}
	.ingredient_list ul li:nth-of-type(-n+2){
			border-top: 1px solid #bebec8;
	}
}

@media screen and (max-width:767px){
	.ingredient_list{
		font-size: 14px;
	}
    .ingredient_list ul li{
        width: 100%;
    }
    .ingredient_list ul li:first-of-type{
        border-top: 1px solid #bebec8;
    }
    .ingredient_list ul li dt{
        width: 45%;
    }
    .ingredient_list ul li dd{
        width: 55%;
    }
		.ingredient_list .sp_fs12{
			font-size: 12px !important;
		}
}


/*調理方法*/
.method_list ul{
    display: flex;
    flex-wrap: wrap;
}
.method_list ul li{
    width: 20%;
    margin-bottom: 20px;
    text-align: center;
}
.method_list ul li:nth-child(5n){
    margin-right: 0;
}
.method_list ul li:nth-last-child(-n+5){
    margin-bottom: 0;
}
.method_list ul li img{
    width: 100%;
}
.square_orange {
    display: inline-block;
    width: 40px;
    height: 20px;
    background-color: #FF9933;
    vertical-align: sub;
    margin: 0 3px;
}
@media print, screen and (min-width:768px){
    .method_list ul li{
        width: 75px;
        margin-right: 3.696%;
    }
}

@media screen and (max-width:767px){
    .method_list ul li{
        width: 17.681%;
        margin-right: 2.898%;
    }
}


/*allergy_list*/
.allergy_list ul{
    border-top: 1px solid #c0bfc7;
    border-left: 1px solid #c0bfc7;
    display: flex;
    flex-wrap: wrap;
}
.allergy_list ul li{
    background-color: #fff;
    border-right: 1px solid #c0bfc7;
    border-bottom: 1px solid #c0bfc7;
    text-align: center;
    display: flex;
    align-items: center;
    color: #999999;
}
.allergy_list ul li.on{
    background-color: #FF9933;
    color: #fff;
}
.allergy_list ul li span{
    width: 100%;
		font-size: 93%;
}

@media print, screen and (min-width:768px){
	.allergy_list{
		font-size: 14px;
	}
    .allergy_list ul li{
        width: calc(100% / 8);
        padding: 13px 2px 14px;
    }
}

@media screen and (max-width:767px){
    .allergy_list ul li{
        width: 25%;
        padding: 8px 5px 9px;
        font-size: 12px;
    }
}


/*btn_wrap*/
.btn_wrap{
	display: flex;
	justify-content: center;
	align-items: center;
}
.btn_wrap button,
.btn_wrap a{
	background-color: #ffffff;
	padding: 12px;
	width: 300px;
	margin: auto;
	border: none;
	border-radius: 50px;
}

@media print, screen and (min-width:768px){
	.btn_wrap{
		margin-top: 55px;
		flex-wrap: nowrap;
	}
	.btn_wrap button,
	.btn_wrap a{
		width: 300px;
	}
}

@media screen and (max-width:767px){
	.btn_wrap{
		flex-direction: column;
	}
	.btn_wrap button,
	.btn_wrap a{
		width: 260px;
		font-size: 16px;
	}
}

/*btn_print*/
.btn_print {
	text-align: center;
}
.btn_print button {
	border: 2px solid #FF9933;
}
.btn_print button:hover {
	opacity: 0.7;
}

.btn_print button .btn_txt{
	display: inline-block;
	background: url(../img/icon_print.svg)no-repeat center left / auto 25px;
}


@media print, screen and (min-width:768px){
	.btn_print{
		margin-right: 20px;
	}
	.btn_print button .btn_txt{
		font-size: 20px;
		padding-left: 50px;
	}
}

@media print, screen and (max-width:767px){
	.btn_print{
		display: none;
	}
}

/*btn_return*/
.btn_return {
	text-align: center;
}
.btn_return a {
	color: #222222;
	display: block;
	border: 2px solid #69BB00;
	padding: 9px;
}
.btn_return a:hover {
	opacity: 0.7;
}

.btn_return a .btn_txt{
	display: inline-block;
	background: url(../img/icon_return.svg)no-repeat center left / auto 20px;
}


@media print, screen and (min-width:768px){
	.btn_return a .btn_txt{
		font-size: 20px;
		padding-left: 30px;
	}
}

@media screen and (max-width:767px){
	.btn_return{
		margin-top: 45px;
	}
	.btn_return a {
		padding: 10px 15px;
	}
	.btn_return a .btn_txt{
		padding-left: 30px;
	}
}


/*** ------------------------------------------------------------
    パンくず（breadcrumbs）
------------------------------------------------------------ ***/
.breadcrumbs_wrap .breadcrumbs{
	display: flex;
	flex-wrap: wrap;
	padding: 20px 0;
}
.breadcrumbs_wrap .breadcrumbs li{
	margin-right: 5px;
}
.breadcrumbs_wrap .breadcrumbs li a,
.breadcrumbs_wrap .breadcrumbs li span{
	font-size: 14px;
}
.breadcrumbs_wrap .breadcrumbs li a,
.breadcrumbs_wrap .breadcrumbs li .link_none{
	position: relative;
	padding-right: 13px;
}
.breadcrumbs_wrap .breadcrumbs li .link_none{
	display: inline;
}
.breadcrumbs_wrap .breadcrumbs li a:after,
.breadcrumbs_wrap .breadcrumbs li .link_none:after{
	position: absolute;
	top:50%;
	right: 0px;
	content: "";
	display: inline-block;
	width: 7px;
	height: 1px;
	background-color: #333333;
	transform: translateY(calc(-50% + 1px));
}
.breadcrumbs_wrap .breadcrumbs li .link_none:after{
	bottom: 7px;
}
@media print, screen and (min-width:768px){
	.breadcrumbs_wrap .content_inner {
    width: 1024px;
    padding: 0;
	}
}
@media screen and (max-width:767px){
	.breadcrumbs_wrap{
		position: relative;
		z-index: 3;
	}
	.breadcrumbs_wrap .content_inner {
		padding: 0;
	}
	.breadcrumbs_wrap .breadcrumbs{
		flex-wrap: nowrap;
		overflow-x: auto;
		word-break: keep-all;
		white-space: nowrap;
		-webkit-overflow-scrolling: touch;
		padding: 10px 20px 6px;
	}
	.breadcrumbs_wrap .breadcrumbs li{
		padding-bottom: 5px;
	}
	/* .breadcrumbs_wrap .breadcrumbs li:last-child{
		padding-right: 10px;
	} */
	.breadcrumbs_wrap .breadcrumbs li a,
.breadcrumbs_wrap .breadcrumbs li span{
	font-size: 12px;
}
}

/*** ------------------------------------------------------------
    ダウンロード防止機能付き画像
------------------------------------------------------------ ***/
.download_prevent,
.js-download_prevent{
	display: inline-block;
	max-width: 100%;
	position: relative;
}
.download_prevent:after,
.js-download_prevent:after{
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/*** ------------------------------------------------------------
    印刷用CSS
------------------------------------------------------------ ***/
@media print {
	header .hd_nav,
	header .cp_cont,
	.ttl_section,
	.btn_wrap,
	#page_top,
	.cookie-consent,
	.ft_cont,
	.ft_inner{
		display: none !important;
	}

	.pc_only{
		display: block;
	}
	.sp_only{
		display: none;
	}
	header{
		height: initial;
	}
	header .hd_inner{
		height: 35px !important;
		justify-content: end;
		border:none;
		padding: 0 50px;
		margin: 30px 0 -10px;
	}
	.hd_inner img{
		height: 100%;
		width: auto;
	}

	main {
		background-color: #ffffff;
    min-height: 403mm;
	}

	.content{
		padding-bottom: 10px;
	}
	.content_inner {
		max-width: initial;
		width: 100%;
		padding: 10px 30px 0px;
		border-radius: 0;
	}

	.content_section{
		margin-top: 0px;
	}
	.content_section.first_section {
		margin-top: 0px;
	}

	.ttl_product{
		margin-top: 10px;
		margin-bottom: 10px;
	}
	.classify{
		font-size: 10px;
		margin-bottom: 10px;
	}
	.prd_head .prd_head_pht,.imgtxt_hor_2_1{
		margin-bottom: 10px;
	}
	.imgtxt_hor_2_1 .img .download_prevent, .imgtxt_hor_2_1 .img{
		text-align: center;
	}
	.imgtxt_hor_2_1 .img .download_prevent, .imgtxt_hor_2_1 .img img{
		width: 90%;
		height: auto;
	}
	.text_cp01{
		margin-bottom: 0px;
	}

	.ttl_bdr_blue {
		margin-bottom: 10px;
		font-size: 85%;
	}

	.sec_inner {
		margin-bottom: 10px;
	}
	.sec_inner .sec_inner {
		margin-bottom: 10px;
	}

	/* .ingredient_list ul li dt, .ingredient_list ul li dd{
		padding: 10px 12px;
	} */

	.method_list ul li {
		width: 75px;
		margin-right: 10px;
	}
	.method_list ul li:nth-child(5n) {
    margin-right: 10px;
	}

	.ttl_h3 {
		margin-bottom: 5px;
		font-size: 22px;
	}
	.ttl_dot_blue{
		font-size: 20px;
	}
	.mB40{
		margin-bottom: 10px !important;
	}
	.allergy_list ul li{
		padding: 10px 2px 11px;
	}
	.date{
		margin-top: 0;
	}
	.copyright{
		padding: 15px 0 0;
	}
}