@charset "UTF-8";
/*
 Theme Name: SANGO Child
 Theme URI: https://saruwakakun.design
 Author: SARUWAKA
 Author URI: https://saruwakakun.com
 Template: sango-theme
 Version: 3.0
*/
/*こちらはSANGOの子テーマ用CSSです。以下にCSSを記入していきましょう。*/


/* ========================================
   SANGOテーマリセット（
   ======================================== */

#wrapper,
.contents,
.main {
    background: #fff !important;
}

header,
header .header,
header .header-bar {
    background: #fff !important;
    background-color: #fff !important;
}

header,
header .header,
header .header-bar {
    background-image: none !important;
}

header,
header .header,
header .header-bar {
    box-shadow: none !important;
}


/* INDEX ------------------------------------------------------------
01.Common
02.Header
03.Home
04.Story
05.Lineup
06.Recipe
07.Contents
08.FAQ
09.Privacy policy
10.Footer
11.Margin
12.Block editor
13.404
14.Search&Tags




/* 01.Common
--------------------------------------------------------------------*/
html { 
	font-size: 62.5%;
	scroll-padding-top: 150px;
    overflow-x: hidden;
}

body {
	font-family: "Poppins", "BIZ UDPGothic", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.6rem;
	background: #fff;
	color: #333;
    overflow-x: hidden;
    letter-spacing: 0.05em;
}
img {
	width: 100%;
	height: auto;
    vertical-align: top;
    font-size: 0;
    line-height: 0;
}
a {
    text-decoration: none;
    color: #fff;
}
a:hover {
    text-decoration: underline;
    opacity: 0.7;
    /* color: #ad0a08 !important; */
}
a img:hover {
    opacity: 0.7;
}
a[target="_blank"]:after{
    content:'';
    display:inline-block;
    background-image:url('../images/common__window_icon.png');
    width:1em;
    height:1em;
    background-size: contain;
    vertical-align: middle;
    margin-left: 5px;
	margin-right: 5px;
	margin-bottom: 3px;
}
a.imgs[target="_blank"]:after{
    display: none;
}
.indent {
  text-indent: -1em;
  padding-left: 1em;
}
.fadeIn_up {
  opacity: 0;
  transform: translate(0, 50%);
  transition: 2s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}

.display_pc {
	display: block;
}
.display_sp {
	display: none;
}
@media screen and (max-width: 640px) {
.display_pc {
	display: none;
}
.display_sp {
	display: block;
}
}

.container {
	position: relative;
	margin: 152px auto 70px;
	padding: 0;
    width: 94%;
}
.container .pageTitle, .container .heading {
	text-align: center;
	font-size: 3.6rem;
	font-weight: 700;
    line-height: 1.8;
    margin-bottom: 50px;
}
.container .pageTitle span {
    display: block;
	font-size: 1.6rem;
	font-weight: 400;
    line-height: 1;
}
.container .home {
    line-height: 1.4;
	color: #ad0a08;
}
.container .home span {
	display: block;
	font-size: 1.6rem;
	font-weight: 400;
}
@media screen and (max-width: 1280px) {
.container {
	margin: 152px auto 70px;
	padding: 0;
    width: 100%;
}
.container .pageTitle, .container .heading {
	font-size: 2.4rem;
    margin-bottom: 30px;
}
}
@media screen and (max-width: 835px) {
.container {
	padding: 0;
    width: 100%;
	margin-top: 132px;
    margin-left: 0;
    margin-right: 0;
}
.container .pageTitle, .container .heading {
	font-size: 2.0rem;
}
.container .pageTitle span {
	font-size: 1.2rem;
}
}
@media screen and (max-width: 640px) {
.container {
	margin-top: 122px;
    margin-left: 0;
    margin-right: 0;
}
}

/* 背景の角Rのやつ赤ver */
.cont__wrapper {
    background: #ad0a08;
    border-radius: 48px;
    position: absolute;
    top: 290px;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: -9999;
}
@media screen and (max-width: 1280px) {
.cont__wrapper {
    border-radius: 0;
    top: 150px; /* 250px TOPコンテンツ無い時用 */
}
}
/* 背景の角Rのやつグレーver */
.cont__wrapper__gray {
    background: #f5f5f5;
    border-radius: 48px;
    position: absolute;
    top: 200px;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: -9999;
}
@media screen and (max-width: 1280px) {
.cont__wrapper__gray {
    border-radius: 0;
    top: 150px;
}
}

/* reCAPTCHA*/
.grecaptcha-badge {
     visibility: hidden; 
}



/* 02.Header
--------------------------------------------------------------------*/
.header {
	width: 100%;
	margin: 0 auto;
	padding: 24px 3%;
	display: flex;
	justify-content: space-between;
	background: #fff;
	position: fixed;
	z-index: 10;
	top: 0;
	left: 0;
	right: 0;
}
.header .logoArea {
	width: 450px;
	display: flex !important;
	justify-content: space-between;
	align-items: center;
}
.header .logoArea .logo {
	width: 276px;
}
.header .logoArea .logo a:hover, .header .logoArea .logo a img:hover {
	opacity: 1 !important;
}
.header .logoArea .logoName {
	font-size: 2.0rem;
	color: #ad0a08;
	font-weight: 700;
}
.header .navArea {
	max-width: 840px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: flex-start;
}
.header .navArea .sns-search {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	position: relative;
	width: 100%;
	margin-bottom: 10px;
}
.header .navArea .sns-search .sns {
	list-style: none;
	display: flex;
	align-items: center;
	margin: 0 30px 0 0;
	padding: 0;
}
.header .navArea .sns-search .sns a {
	color: #ad0a08 !important;
	text-decoration: none;
	font-size: 1.2rem;
	display: block;
	height: 20px;
	line-height: 1.5;
}
.header .navArea .sns-search .sns .ig {
	background: #fff url("../images/header__instagram.png") no-repeat left center;
	background-size: 20px;
	padding: 0 20px 0 30px;
}
.header .navArea .sns-search .sns .yt {
	background: #fff url("../images/header__youtube.png") no-repeat left center;
	background-size: 20px;
	padding: 0 20px 0 30px;
}
.header .navArea .sns-search .sns a:hover {
	opacity: 0.7;
}
.header .navArea .sns-search .search {
	position: absolute;
	z-index: 2;
	top: -9px;
	right: 0;
}
.header .navArea .sns-search .search .search-text{
	-webkit-appearance:none;
	width: 36px;
	height: 36px;
	padding: 0 0 0 36px;
	border: none;
	background:#fff url("../images/header__search.png") no-repeat 18px center;
	background-size: 18px 18px;
	transition: all 0.5s;
	outline: none;
	cursor: pointer;
	vertical-align: middle;
	color: #ad0a08;
}
.header .navArea .sns-search .search .search-text:focus {
	width: 250px;
	padding: 10px 0 10px 50px;
	border: 1px solid #ad0a08;
}
.header .navArea .grobalNav {
	list-style: none;
	margin: 20px 0 0;
	padding: 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
}
.header .navArea .grobalNav li {
	text-align: center;
	margin: 0 50px 0 0;
	padding: 0;
}
.header .navArea .grobalNav li:last-child {
	margin-right: 0;
}
.header .navArea .grobalNav li span {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
}
.header .navArea .grobalNav li a {
	text-decoration: none;
	color: #ad0a08 !important;
	font-size: 1.6rem;
	line-height: 1;
	font-weight: 700;
}
.header .navArea .grobalNav li a:hover {
	opacity: 0.7;
}
.header .navArea .grobalNav li.current a {
	color: #333 !important;
}
.navArea_sp {
    display: none;
}

@media screen and (min-width:836px) and ( max-width:1280px) {
.header .logoArea {
	width: 380px;
}
.header .logoArea .logo {
	width: 240px;
}
.header .logoArea .logoName {
	font-size: 1.6rem;
	color: #ad0a08;
	font-weight: 700;
}
}

@media screen and (max-width: 1199px) {
.header .navArea {
    display: none;
}
.navArea_sp {
    display: block;
    position: fixed;
    top: 0;
    right: -100%;
    width: 100%;
    max-width: 300px;
    height: 100%;
    background-color: #ad0a08;
    color: #fff;
    transition: right 0.3s ease;
    padding: 20px;
    box-sizing: border-box;
    z-index: 10;
}
.navArea_sp.open {
    right: 0;
}
.hamburger {
    position: fixed;
    top: 30px;
    right: 16px;
    width: 30px;
    cursor: pointer;
    z-index: 20;
}
.hamburger span {
    display: block;
    height: 3px;
    width: 100%;
    background-color: #ad0a08;
    margin: 5px 0;
    transition: 0.4s;
}
.hamburger.active span:nth-child(1) {
    transform: rotate(45deg) translate(5px, 5px);
    background-color: #fff;
}
.hamburger.active span:nth-child(2) {
    opacity: 0;
}
.hamburger.active span:nth-child(3) {
    transform: rotate(-45deg) translate(6px, -6px);
    background-color: #fff;
}
.header .navArea_sp .sns-search {
	display: block;
}
.header .navArea_sp .sns-search .search {
	position: absolute;
	z-index: 2;
	top: 80px;
	right: 13px;
}
.header .navArea_sp .sns-search .search .search-text{
	-webkit-appearance:none;
	width: 260px;
	height: 48px;
	padding: 10px 0 10px 40px;
	margin-right: 7px;
    border: none;
	background:#fff url("../images/header__search.png") no-repeat 10px center;
	background-size: 18px 18px;
	transition: all 0.5s;
	outline: none;
	cursor: pointer;
}
.header .navArea_sp .grobalNav {
	list-style: none;
	margin: 120px 0 0;
	padding: 0;
	display: block;
}
.header .navArea_sp .grobalNav li {
	margin: 0;
	padding: 15px 0;
    border-bottom: 1px solid #fff;
}
.header .navArea_sp .grobalNav li a {
	text-decoration: none;
	color: #fff!important;
	font-size: 1.6rem;
	line-height: 1;
	font-weight: 700;
    display: block;
}
.header .navArea_sp .grobalNav li a span {
	display: block;
	font-size: 1.2rem;
	font-weight: 400;
    padding-top: 10px;
}
.header .navArea_sp .grobalNav li a:hover {
	opacity: 0.7;
}
.header .navArea_sp .sns-search .sns {
	list-style: none;
	display: block;
	margin: 20px 0 0 0;
	padding: 0;
}
.header .navArea_sp .sns-search .sns a {
	color: #fff!important;
	text-decoration: none;
	font-size: 1.4rem;
	display: block;
	line-height: 1.5;
    padding: 10px 0;
}
.header .navArea_sp .sns-search .sns .ig {
	background: url("../images/header__instagram_sp.png") no-repeat left center;
	background-size: 24px;
	padding-left: 36px;
}
.header .navArea_sp .sns-search .sns .yt {
	background: url("../images/header__youtube_sp.png") no-repeat left center;
	background-size: 24px;
	padding-left: 36px;
}
.header .navArea_sp .sns-search .sns a:hover {
	opacity: 0.7;
}

/* 検索フォームのスタイル強化（SANGOテーマの干渉を防ぐ） */
.header .navArea .sns-search .search .search-form,
.header .navArea_sp .sns-search .search .search-form {
    margin: 0 !important;
    padding: 0 !important;
}

.header .navArea .sns-search .search .search-text,
.header .navArea_sp .sns-search .search .search-text {
    -webkit-appearance: none !important;
    appearance: none !important;
    border: none !important;
    background: #fff url("../images/header__search.png") no-repeat 18px center !important;
    background-size: 18px 18px !important;
    transition: all 0.5s !important;
    outline: none !important;
    cursor: pointer !important;
    font-family: "Poppins", "BIZ UDPGothic", sans-serif !important;
    color: #333 !important;
}

.header .navArea .sns-search .search .search-text:focus {
    width: 250px !important;
    padding: 10px 0 10px 50px !important;
    border: 1px solid #ad0a08 !important;
    background: #fff url("../images/header__search.png") no-repeat 10px center !important;
    background-size: 18px 18px !important;
}

.header .navArea_sp .sns-search .search .search-text {
    width: 260px !important;
    height: 48px !important;
    padding: 10px 0 10px 40px !important;
    margin-right: 7px !important;
    background: #fff url("../images/header__search.png") no-repeat 10px center !important;
    background-size: 18px 18px !important;
    border-radius: 0;
}
}

@media screen and (max-width: 835px) {
.header {
    width: 100%;
	max-width: 100%;
	margin: 0 auto;
	padding: 20px 4%;
}
.header .logoArea {
	width: 85%;
    justify-content: flex-start;
}
.header .logoArea .logo {
	width: 30%;
}
.header .logoArea .logoName {
	font-size: 1.4rem;
    margin-left: 15px;
}
.hamburger {
    position: fixed;
    top: 20px;
    right: 4%;
}
}
@media screen and (max-width: 640px) {
.header .logoArea .logo {
	width: 40%;
}
}

@media screen and (max-width: 260px) {
   .sns-search .search {
display: none;
    }
}





/* 03.Home
--------------------------------------------------------------------*/
/* スライダー */
.mainVisual {
	width: 100%;
	margin: 0;
	padding: 152px 0 0;
}
.swiper1 .swiper-slide {
    transform: scale(0.7);
    transition: none;
}
.swiper1 .swiper-slide-active {
  transform: scale(1);
}
.swiper1.is-ready .swiper-slide {
  transition: transform 0.6s; /* 初期化完了後に有効化 */
}
.swiper1 .swiper-slide {
  flex-shrink: 0;
  width: 100%; /* モバイル用 (slidesPerView: 1) */
}

@media (min-width: 600px) {
  .swiper1 .swiper-slide {
    width: calc((100% - 10px) / 1.8); /* PC用 (slidesPerView: 1.8, spaceBetween:10) */
  }
}
/* 左右のスライド */
.swiper1 .swiper-slide-prev,
.swiper1 .swiper-slide-next,
.swiper1 .swiper-slide-duplicate-prev,
.swiper1 .swiper-slide-duplicate-next {
    transform: scale(0.7);
}
.swiper1 .swiper-slide img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
	border-radius: 24px;
	border: 5px solid #ad0a08;
}
.swiper1 .swiper-button-prev {
  left: 16.3%;
}
.swiper1 .swiper-button-next {
  right: 16.3%;
}
.swiper1 .swiper-button-prev,
.swiper1 .swiper-button-next {
    height: 50px;
    width: 50px;
}
.swiper1 .swiper-button-prev::after,
.swiper1 .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 50px;
    margin: auto;
    width: 50px;
}
.swiper1 .swiper-button-prev::after {
    background-image: url("../images/home__showcase_left.png");
    height: 40px;
    margin: auto;
    width: 40px;

}
.swiper1 .swiper-button-next::after {
    background-image: url("../images/home__showcase_right.png");
    height: 40px;
    margin: auto;
    width: 40px;
}
@media screen and (max-width: 835px) {
.mainVisual {
	padding: 100px 0 0;
}
.swiper1 .swiper-slide img {
	border-radius: 12px;
	border: 3px solid #ad0a08;
}
.swiper1 .swiper-button-prev {
  left: 15%;
}
.swiper1 .swiper-button-next {
  right: 15%;
}
.swiper1 .swiper-button-prev,
.swiper1 .swiper-button-next {
    height: 40px;
    width: 40px;
}
.swiper1 .swiper-button-prev::after,
.swiper1 .swiper-button-next::after {
    height: 40px;
    width: 40px;
}
.swiper1 .swiper-button-prev::after {
    height: 30px;
    width: 30px;

}
.swiper1 .swiper-button-next::after {
    height: 30px;
    width: 30px;
}
}
@media screen and (max-width: 640px) {
.swiper1 .swiper {
    padding: 0 8%;
}
.swiper1 .swiper-button-prev,
.swiper1 .swiper-button-next {
    height: 30px;
    width: 30px;
}
.swiper1 .swiper-button-prev::after {
    height: 20px;
    width: 20px;

}
.swiper1 .swiper-button-next::after {
    height: 20px;
    width: 20px;
}
.swiper1 .swiper-button-prev {
    left: 0;
    top: 55%
}
.swiper1 .swiper-button-next {
    right: 0;
    top: 55%
}
}


/* 作り方 */
.youtube_wrapper .home {
    width: 900px;
    margin: 0 auto;
}
.home_howto {
	display: flex;
	justify-content: space-between;
	list-style: none;
	color: #fff;
}
.home_howto {
	display: flex;
	justify-content: space-between;
	list-style: none;
	font-size: 2.0rem;
	text-align: center;
	max-width: 1340px;
	margin: 50px auto 0;
	padding: 0 50px;
}
.home_howto li {
	width: 31.5%;
}
.home_howto .num {
	font-size: 3.0rem;
	font-weight: 700;
	line-height: 1;
}
.home_howto .num .num_big {
	font-size: 6.0rem;
}
.home_howto .detail {
	display: block;
	margin: 20px 0;
	line-height: 1.5;
}
@media screen and (max-width: 1024px) {
.youtube_wrapper .home {
    width: 92%;
}
.home_howto {
	max-width: 92%;
    width: 92%;
	padding: 0;
}
.home_howto li {
	width: 31.5%;
}
}
@media screen and (max-width: 835px) {
.home_howto {
	display: block;
	font-size: 1.6rem;
}
.home_howto li {
	width: 80%;
	margin: 0 auto 50px;
}
.home_howto .num {
	font-size: 2.0rem;
}
.home_howto .num .num_big {
	font-size: 4.0rem;
}
.home_howto .detail {
	text-align: left !important;
	display: block;
	margin: 10px 0;
}
}

/* 製品ラインアップ */
.home_products {
	display: flex;
	justify-content: space-between;
	max-width: 1340px;
	margin: 0 auto;
	padding: 0 50px;
    list-style: none;
}
.home_products li {
	width: 46%;
	margin: 0;
	padding: 3% 4%;
	border: 5px solid #ad0a08;
	border-radius: 24px;
	text-align: center;
	font-weight: 700;
	color: #ad0a08;
	font-size: 2.0rem;
	line-height: 1;
}
.home_products li a:hover, .home_products li a img:hover {
	opacity: 1 !important;
}
.home_products li .check a {
	text-align: right !important;
	display: block;
	font-size: 1.6rem;
	font-weight: 400;
	position: relative;
	padding-right: 36px;
    color: #333;
}
.home_products li:hover {
	text-decoration: underline;
    color: #333;
}
.home_products li .check a::after {
    position: absolute;
    bottom: 0;
    right: 0;
    content: "";
    background: url(../images/common__arrow_gray.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 640px) {
.home_products {
	display: block;
	max-width: 100%;
	padding: 0 4%;
}
.home_products li {
	width: 100%;
	border: 2px solid #ad0a08;
	border-radius: 12px;
	font-size: 2.0rem;
	line-height: 1;
	padding: 5%;
}
.home_products li:first-child {
    margin-bottom: 30px;
}
.home_products li .check a {
	font-size: 1.4rem;
}

 .home_contents {
    max-width: 100% !important;
    margin: 0 auto;
    padding: 0 4% !important;
}
.home_contents .contentsList li {
    width: 100%;
    margin: 0;
}
.home_contents .contentsList li dl {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 20px;
    
}
.home_contents .contentsList li dl dt {
    width: 35%;
}
.home_contents .contentsList li dl dd {
    width: 60%;
}
.home_contents .check a::after {
    right: 4%;
}
.home_contents .check {
    margin-top: 10px;
}
.home_contents .check a {
    font-size: 1.4rem !important;
}
.home_faq .accordion_wrapper .check a {
    font-size: 1.4rem !important;
}
}

/* アレンジレシピ */
.contents_full {
	width: 100%;
	padding: 100px 0 0 100px;
	position: relative;
}
.contents_full::before {
    content: "";
    position: absolute;
	border-bottom-right-radius: 120px;
    background-color: #ad0a08;
    left: 0;
    top: 0;
    height: calc(100% + 100px);
    width: 70%;
    z-index: -1;
}
.contents_full::after {
    content: "";
    position: absolute;
	border-bottom-left-radius: 120px;
    background-color: #f5f5f5;
	top: 80%;
    right: 0;
    height: calc(33% + 100px);
    width: 80%;
    z-index: -2;
}
.home_recipe {
	display: flex;
}
.home_recipe::before {
    content: "";
    position: absolute;
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
    background-color: #ad0a08;
    left: 70%;
    top: 13%;
    height: 60px;
    width: 250px;
    z-index: -1;
}
.contents_full .home-recipe {
    line-height: 1.4;
	color: #fff;
	font-size: 3.6rem;
	margin-bottom: 50px;
}
.contents_full .home-recipe span {
	display: block;
	font-size: 1.6rem;
	font-weight: 400;
}
.home_recipe {
	display: flex;
	justify-content: space-between;
}
.home_recipe .recipe_left {
	margin: 0;
	padding: 0;
	width: 50%;
}
.home_recipe .recipe_left ul {
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}
.home_recipe .recipe_left ul li {
	width: 100%;
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #fff;
}
.home_recipe .recipe_left ul li a {
	display: block;
	padding: 15px 0;
	color: #fff!important;
	font-size: 1.6rem;
	position: relative;
}
.home_recipe .recipe_left ul li a:hover {
	text-decoration: none;
}
.home_recipe .recipe_left ul li a::after {
    position: absolute;
    bottom: 15px;
    right: 0;
    content: "";
    background: url(../images/common__arrow_white.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
.home_recipe .recipe_right {
	display: block;
}
.home_recipe .recipe_right ul {
	display: flex;
	list-style: none;
	margin: 0;
	padding: 0 0 0 4%;
	width: 100%;
}
.home_recipe .recipe_right ul li:first-child {
	border-top-left-radius: 24px;
	border-bottom-left-radius: 24px;
}
.home_recipe .recipe_right ul li a:hover, .home_recipe .recipe_right ul li a img:hover {
	opacity: 1;
}
.zoom {
	cursor: pointer;
    overflow: hidden;
}
.zoom img {
    height: auto;
    transition: transform .6s ease;
}
.zoom:hover img {
    transform: scale(1.1);
}
@media screen and (max-width: 1280px) {
.contents_full {
	width: 100%;
	padding: 100px 50px;
	position: relative;
}
.contents_full::before {
    content: "";
    position: absolute;
	border-bottom-right-radius: 0;
    background-color: #ad0a08;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    z-index: -1;
}
.contents_full::after, .home_recipe::before {
	display: none;
}
.home_recipe {
	display: block;
}
.contents_full .home-recipe {
	text-align: center;
}
.home_recipe .recipe_left {
	width: 100%;
}
.home_recipe .recipe_left ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 50px;
	padding: 0;
	width: 100%;
}
.home_recipe .recipe_left ul li {
	width: 48%;
	margin: 0 4% 0 0 ;
	padding: 0;
}
.home_recipe .recipe_left ul li:nth-child(2n) {
	margin-right: 0;
}
.home_recipe .recipe_right ul {
	padding: 0;
}
.home_recipe .recipe_right ul li:first-child {
	border-top-left-radius: 24px;
	border-bottom-left-radius: 24px;
}
.home_recipe .recipe_right ul li:last-child {
	border-top-right-radius: 24px;
	border-bottom-right-radius: 24px;
}
}
@media screen and (max-width: 640px) {
.contents_full {
	padding: 50px 4% 1px;
}
.contents_full::before {
    height: 100%;
}
.contents_full .home-recipe {
	font-size: 2.0rem;
	margin-bottom: 50px;
}
.home_recipe .recipe_left ul li a::after {
    top: 20px;
    width: 12px;
    height: 12px;
}
.home_recipe .recipe_right ul li:first-child {
	border-top-left-radius: 12px;
	border-bottom-left-radius: 12px;
}
.home_recipe .recipe_right ul li:last-child {
	border-top-right-radius: 12px;
	border-bottom-right-radius: 12px;
}
.home_recipe .recipe_left ul li {
	width: 100%;
	margin: 0 ;
	padding: 0;
}
}

.other_recipe li a {
    color: #333;
}

.other_recipe li:hover {
    text-decoration: underline;
}

/* コンテンツエリア */
.home_contents {
    position: relative;
    max-width: 1340px !important;
    margin: 0 auto;
    padding: 100px 50px 0 !important;
}
.home_contents .contentsList {
    position: relative;
    max-width: 100% !important;
    margin: 0 auto;
    padding: 0 !important;
}
.home_contents .contentsList li {
	margin-bottom: 30px;
}
.home_contents .check-contents a::after {
    position: absolute;
    bottom: 0;
    right: 50px;
    content: "";
    background: url(../images/common__arrow_gray.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
.home_contents .check-contents  {
    text-align: right;
    margin-right: 36px;
    font-size: 1.6rem;
}

.home_contents .check-contents a {
    color: #333;
}
.home_contents .check-contents a:hover {
    text-decoration: underline;
}

@media screen and (max-width: 640px) {
.home_contents {
    max-width: 100% !important;
    padding: 0 4% !important;
}
.home_contents .check-contents a::after {
    right: 4%;
}
}


.content-title {
    font-size: 1.6rem;
}

.home_contents .contentsList li:hover {
    text-decoration: underline;
}


/* よくあるご質問 */
.home_faq {
    position: relative;
}
.home_faq .accordion_wrapper-faq .check-faq a::after {
    position: absolute;
    bottom: 0;
    right: 0;
    content: "";
    background: url(../images/common__arrow_white.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
.home_faq .accordion_wrapper-faq .check-faq {
    position: relative;
    text-align: right;
    margin-top: 30px;
}
.home_faq .accordion_wrapper-faq .check-faq a {
    margin-right: 36px;
    color: #fff !important;
    font-size: 1.6rem;
}

@media screen and (min-width:1280px) {
.home_faq {
    padding-top: 120px;
}
}


/* 04.Story
--------------------------------------------------------------------*/
.story_visual {
	margin: 50px 0;
}
.story_visual img, .story_img img {
	border-radius: 24px;
}

.story_wrap {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 50px;
}
.story_h2 {
	text-align: center;
	line-height: 1.8;
	margin: 0 0 30px;
	padding: 0;
	font-size: 2.8rem;
}
.story_h3 {
	text-align: center;
	line-height: 1.8;
	margin: 0 0 50px;
	padding: 0;
	position: relative;
	margin-bottom: 1em;
    font-size: 2.2rem;
}
.story_h3::before {
	content: '';
	position: absolute;
	bottom: -15px;
	display: inline-block;
	width: 120px;
	height: 5px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #ad0a08;
	border-radius: 2px;
}
.story_h3 span {
	display: block;
}
.story_wrap p {
	margin: 0 0 30px;
	padding: 0;
	line-height: 1.8;
	font-size: 1.8rem;
}
.story_link a {
	color: #ad0a08;
	background: url("../images/home__showcase_right.png") no-repeat left center;
	background-size: contain;
	padding: 0 0 0 34px;
}
.story_img {
	display: block;
	margin: 50px 0 0;
}
.story_pc {
	display: block;
}
.story_sp {
	display: none;
}
.story_text {
	text-align: center;
	font-size: 1.6rem;
	margin-bottom: 30px;
}
@media screen and (max-width: 1280px) {
.story_visual {
	margin: 50px 3%;
}
}

@media screen and (max-width: 835px) {
.story_pc {
	display: none;
}
.story_sp {
	display: block;
}
.story_visual img, .story_img img {
	border-radius: 12px;
}
}
@media screen and (max-width: 640px) {
.story_wrap {
	max-width: 94%;
	width: 94%;
	margin: 0 auto;
	padding: 0;
}
.story_h2 {
	line-height: 1.5;
	font-size: 2.2rem;
}
.story_h3 {
	line-height: 1.5;
	font-size: 1.8rem;
}
.story_h3::before {
	height: 3px;
}
.story_wrap p {
	margin: 0 0 30px;
	padding: 0;
	line-height: 1.7;
	font-size: 1.5rem;
}
.story_text {
	font-size: 1.4rem;
}
}




/* 05.Lineup
--------------------------------------------------------------------*/
.internalLinks {
    display: flex;
    list-style: none;
    max-width: 1240px;
    padding: 0 50px;
    margin: 0 auto 150px;
    flex-wrap: wrap;
}
.internalLinks li {
    width: 18.4%;
    margin-right: 2%;
}
.internalLinks li:nth-child(5n) {
    margin-right: 0;
}
.internalLinks li .item {
    display: block;
    margin-right: 10px;
}
.internalLinks li .item img {
    width: 35px;
    height: auto;
}
.internalLinks li .text {
    display: block;
    width: 100%;
}
.internalLinks li a {
    padding: 10px;
    border: 2px solid #ad0a08;
    border-radius: 12px;
    display: flex;
    align-items: center;
    position: relative;
    font-size: 1.5rem;
    color: #ad0a08!important;
    font-weight: 700;
}
.internalLinks li a::after {
    position: absolute;
    bottom: -12px;
    left: 46%;
    content: "";
    background: url(../images/common__arrow_red.png) no-repeat center center;
    background-size: 100% auto;
    width: 25px;
    height: 25px;
}
.internalLinks li a:hover {
    background: #ad0a08;
    color: #fff!important;
    opacity: 1;
    text-decoration: none;
}
.internalLinks li a:hover img {
    opacity: 1;
}
@media screen and (max-width: 835px) {
.internalLinks {
    display: block;
    max-width: 100%;
    padding: 0 4%;
    margin: 0 auto 100px;
}
.internalLinks li a:hover {
    background: #fff;
    color: #ad0a08;
    opacity: 1;
    text-decoration: none;
}
.internalLinks li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
}
.internalLinks li .item {
    margin-right: 10px;
    margin-left: 10px;
}
.internalLinks li .item img {
    height: auto;
    width: 30px;
}
.internalLinks li a::after {
    position: absolute;
    bottom: 30%;
    left: 93%;
    content: "";
    background: url(../images/common__arrow_red.png) no-repeat center center;
    background-size: 100% auto;
    width: 25px;
    height: 25px;
}
}
@media screen and (max-width: 640px) {
.internalLinks li a::after {
    left: 88%;
}
}

.contBox {
    display: block;
    position: relative;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
}
.contBox .contBoxList {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0 auto 100px;
    padding: 0 50px 50px;
	max-width: 1240px;
}
.contBox .contBoxList li {
    width: 30%;
    margin-right: 5%;
    text-align: center;
    margin-bottom: 5%;
}
.contBox .contBoxList li:nth-child(3n) {
    margin-right: 0;
}
.contBox .contBoxList li dl dt {
    border: 2px solid #ad0a08;
    background: #fff;
    border-radius: 12px;
    display: flex;
    align-items: center;
    position: relative;
    padding: 40px 0;
    margin-bottom: 20px;
}
.contBox .contBoxList li dl dt img {
    width: 75%;
    height: auto;
    display: block;
    margin: 0 auto;
}
.contBox .contBoxList li dl dt.milk::after {
    position: absolute;
    bottom: 10px;
    right: 10px;
    content: "";
    background: url(../images/products__icon_milk.png) no-repeat center center;
    background-size: 100% auto;
    width: 80px;
    height: 80px;
}
.contBox .contBoxList li dl dt.water::after {
    position: absolute;
    bottom: 10px;
    right: 10px;
    content: "";
    background: url(../images/products__icon_water.png) no-repeat center center;
    background-size: 100% auto;
    width: 80px;
    height: 80px;
}
.contBox .contBoxList li dl dd {
    font-size: 1.8rem;
    color: #fff;
    font-weight: 700;
    position: relative;
}
.contBox .contBoxList li dl dd::after {
    position: absolute;
    bottom: 8px;
    right: 0;
    content: "";
    background: url(../images/common__arrow_white.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
.contBox .contBoxList li a:hover {
    text-decoration: underline;
    color: #fff;
    opacity: 1;
}

@media screen and (max-width: 835px) {
.contBox {
    width: 100%;
    max-width: 100%;
    padding: 0 4%;
}
.contBox .contBoxList {
    padding: 0 0 50px;
	max-width: 100%;
}
.contBox .contBoxList li dl dt {
    padding: 30px 0;
    margin-bottom: 10px;
}
.contBox .contBoxList li dl dt.milk::after {
    width: 50px;
    height: 50px;
}
.contBox .contBoxList li dl dt.water::after {
    width: 50px;
    height: 50px;
}
.contBox .contBoxList li dl dd {
    font-size: 1.5rem;
    text-align: left;
}
.contBox .contBoxList li dl dd::after {
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 18px;
    height: 18px;
}
.contBox .contBoxList li a:hover {
    text-decoration: underline;
    color: #fff;
    opacity: 1;
}
}
@media screen and (max-width: 640px) {
.contBox .contBoxList li {
    width: 48%;
    margin-right: 4%;
    text-align: center;
    margin-bottom: 50px;
}
.contBox .contBoxList li:nth-child(3n) {
    margin-right: 4%;
}
.contBox .contBoxList li:nth-child(2n) {
    margin-right: 0;
}
.contBox .contBoxList li dl dt {
    padding: 20px 0;
}
.contBox .contBoxList li dl dt.milk::after {
    bottom: 5px;
    right: 5px;
    width: 40px;
    height: 40px;
}
.contBox .contBoxList li dl dt.water::after {
    bottom: 5px;
    right: 5px;
    width: 40px;
    height: 40px;
}
.contBox .contBoxList li dl dd {
    font-size: 1.3rem;
}
.contBox .contBoxList li dl dd::after {
    position: absolute;
    bottom: 5px;
    right: 5px;
    width: 14px;
    height: 14px;
}
}

/* 商品詳細用 */
.container .pageTitle_detail {
	text-align: center;
	font-size: 5.0rem;
	font-weight: 700;
    line-height: 1.8;
    margin-bottom: 50px;
    color: #ad0a08;
    max-width: 1340px;
    padding: 0 50px;
    margin: 0 auto 5px;
}
.container .pageTitle_detail span {
    display: block;
	font-size: 2.4rem;
	font-weight: 700;
    line-height: 1;
    color: #333;
}
@media screen and (max-width: 1280px) {
.container .pageTitle_detail {
	font-size: 3.4rem;
    margin-bottom: 30px;
}
}
@media screen and (max-width: 835px) {
.container .pageTitle_detail {
	font-size: 3.0rem;
    margin-bottom: 20px;
    padding: 0 4%;
}
.container .pageTitle_detail span {
	font-size: 2.0rem;
}
}
@media screen and (max-width: 640px) {
.container .pageTitle_detail {
	font-size: 2.0rem;
    line-height: 1.4;
}
.container .pageTitle_detail span {
	font-size: 1.6rem;
    margin-bottom: 10px;
}
}

#product_lead {
    max-width: 900px;
    margin: 0 auto;
    padding: 0 50px;
    font-size: 1.8rem;
}
.img_detailBox {
    display: flex;
    justify-content: space-between;
    max-width: 1340px;
    padding: 0 50px;
    margin: 50px auto 70px;
}
.img_detailBox .showcase {
    max-width: 640px;
    margin-right: 50px;
}

.img_detailBox .showcase .swiper {
    border-radius: 24px;
    border: 5px solid #ad0a08;
}
.img_detailBox .showcase .swiper-slide {
    max-width: 100%;
    width: 100% !important;
    padding: 2%;
}
.img_detailBox .showcase .swiper img {
    border-radius: 8px;
}
.img_detailBox .showcase p {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 20px;
}
.img_detailBox .showcase p img {
    display: block;
    width: 50px;
    height: auto;
    margin-right: 10px;
}
.img_detailBox .showcase p span {
    font-size: 1.4rem;
    color: #a06d0c;
    padding-top: 10px;
}
.swiper2 .swiper-button-prev,
.swiper2 .swiper-button-next {
    height: 50px;
    width: 50px;
    left: 0;
    right: 0;
}
.swiper2 .swiper-button-prev {
    left: 0;
}
.swiper2 .swiper-button-next {
    left: auto;
    right: 0;
}
.swiper2 .swiper-button-prev::after,
.swiper2 .swiper-button-next::after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 50px;
    margin: auto;
    width: 50px;
}
.swiper2 .swiper-button-prev::after {
    background-image: url("../images/home__showcase_left.png");
    height: 40px;
    margin: auto;
    width: 40px;

}
.swiper2 .swiper-button-next::after {
    background-image: url("../images/home__showcase_right.png");
    height: 40px;
    margin: auto;
    width: 40px;
}
.img_detailBox ul {
    margin: 0;
    padding: 0;
    max-width: 550px;
    list-style: none;
}
.img_detailBox ul li {
    margin: 0;
    padding: 0;
    font-size: 1.4rem;
    line-height: 1.5;
}
.img_detailBox ul li dl {
}
.img_detailBox ul li dl dt {
    padding: 20px 0 10px 40px;
    color: #ad0a08;
    font-weight: 700;
    position: relative;
    font-size: 1.6rem;
}
.img_detailBox ul li dl dt#howto::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/recipe__tool_pot.png) no-repeat center center;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
}
.img_detailBox ul li dl dt#ingredients::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/products__tool_basket.png) no-repeat center center;
    background-size: 100% auto;
    width: 28px;
    height: 28px;
}
.img_detailBox ul li dl dt#contents::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/products__tool_scale.png) no-repeat center center;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
}
.img_detailBox ul li dl dt#nutrition::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/products__tool_note.png) no-repeat center center;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
}
.img_detailBox ul li dl dt#madeby::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/products__tool_globe.png) no-repeat center center;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
}
.img_detailBox ul li dl dd {
    border-bottom: 2px dotted #ad0a08;
    padding: 0 0 20px 40px;
}
.attention {
    font-size: 1.2rem !important;
    line-height: 1.4 !important;
    padding-top: 20px !important;
}
@media screen and (max-width: 835px) {
#product_lead {
    max-width: 92%;
    margin: 0 auto;
    padding: 0;
    font-size: 1.6rem;
}
.img_detailBox {
    display: block;
    max-width: 92%;
    margin: 20px auto 50px;
    padding: 0;
}
.img_detailBox .showcase {
    max-width: 80%;
    margin-right: 10%;
    margin-left: 10%;
}
.img_detailBox .showcase .swiper {
    border-radius: 24px;
    border: 5px solid #ad0a08;
}
.img_detailBox ul {
    max-width: 100%;
    margin-top: 30px;
}
}
@media screen and (max-width: 640px) {
.img_detailBox .showcase .swiper {
    border-radius: 12px;
    border: 2px solid #ad0a08;
}
.swiper2 .swiper-button-prev {
    left: 5px;
}
.swiper2 .swiper-button-next {
    left: auto;
    right: 5px;
}
}

.youtube_wrapper {
    position: relative;
    width: 100%;
    margin: 0;
    padding:  0 0 100px;
}
/* 背景の角Rのやつグレーver商品ページ用 */
.youtube_wrapper .cont__wrapper__gray, .youtube_wrapper .cont__wrapper__gray2 {
    background: #f5f5f5;
    border-radius: 48px;
    position: absolute;
    top: 100px;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: -9999;
}
.youtube_wrapper .include {
    width: 800px;
    margin: 0 auto;
}
.youtube_wrapper .youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.youtube_wrapper .youtube iframe {
    width: 100%;
    height: 100%;
}
.button_recipe {
    margin-top: 40px;
    background: #ad0a08;
    max-width: 600px;
    margin: 25px auto 0;
    border-radius: 50px;
}
.button_recipe:hover {
    transform: translateY(2px);
}
.button_recipe a {
    color: #fff!important;
    font-size: 2.0rem;
    text-align: left;
    padding: 20px 30px;
    display: block;
    line-height: 1.2;
    position: relative;
    font-weight: 700;
}
.button_recipe a span {
    font-size: 1.6rem;
    display: inline-block;
    font-weight: 400;
}
.button_recipe a:hover {
    text-decoration: none;
    opacity: 1;
}
.button_recipe a::before {
    position: absolute;
    top: 35%;
    right: 5%;
    content: "";
    background: url(../images/common__arrow_white.png) no-repeat center center;
    background-size: 100% auto;
    width: 24px;
    height: 24px;
}
@media screen and (max-width: 1280px) {
.youtube_wrapper .cont__wrapper__gray, .youtube_wrapper .cont__wrapper__gray2 {
    border-radius: 0;
}
}
@media screen and (max-width: 835px) {
.youtube_wrapper {
    max-width: 100%;
    padding:  0 0 100px;
}
.youtube_wrapper .include {
    width: 92%;
}
}
@media screen and (max-width: 640px) {
#product_lead {
    max-width: 100%;
    margin: 0;
    padding: 0 4%;
    font-size: 1.4rem;
}
.img_detailBox .showcase {
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
}
.button_recipe {
    max-width: 92%;
    margin: 20px auto 0;
    padding: 0 4%;
    border-radius: 50px;
}
.button_recipe a {
    font-size: 1.3rem;
    padding: 15px 10px 12px;
}
.button_recipe a span {
    font-size: 1.3rem;
}
.button_recipe a::before {
    position: absolute;
    top: 40%;
    right: 2%;
    width: 12px;
    height: 12px;
}
.swiper2 .swiper-button-prev,
.swiper2 .swiper-button-next {
    height: 30px;
    width: 30px;
    padding-top: 10px;
}
}





/* 06.Recipe
--------------------------------------------------------------------*/
.recipeBox {
    display: block;
    position: relative;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
}
.recipeBox .lead {
    display: block;
    font-size: 1.6rem;
    font-weight: 400;
}
.recipeBox .recipeBoxList {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0 auto 100px;
    padding: 0 50px 50px;
	max-width: 1240px;
}
.recipeBox .recipeBoxList li {
    width: 23.5%;
    margin-right: 2%;
    margin-bottom: 5%;
}
.recipeBox .recipeBoxList li:nth-child(4n) {
    margin-right: 0;
}
.recipeBox .recipeBoxList li dl dt {
    background: #fff;
    padding: 0;
    margin-bottom: 20px;
    border-radius: 12px;
}
.recipeBox .recipeBoxList li dl dt img {
    border-radius: 12px;
}
.recipeBox .recipeBoxList li dl dd {
    font-size: 1.8rem;
    color: #fff;
    font-weight: 700;
    position: relative;
    padding: 0 15px;
}
.recipeBox .recipeBoxList li dl dd .hosoku {
    font-size: 1.4rem;
    display: block;
    font-weight: 400;
}
.recipeBox .recipeBoxList li dl dd .recipeTitle {
    display: block;
    padding-bottom: 10px;
    min-height: 70px;
}
.recipeBox .recipeBoxList li dl dd .time {
    border-top: dotted 2px;
    padding-top: 10px;
    font-size: 1.6rem;
    display: block;
    font-weight: 400;
    padding-left: 30px;
}
.recipeBox .recipeBoxList li dl dd .num {
    font-size: 3.0rem;
    font-weight: 400;
}
.recipeBox .recipeBoxList li dl dd .time::before {
    position: absolute;
    bottom: 3px;
    left: 0;
    content: "";
    background: url(../images/recipe__tool_timerW.png) no-repeat center center;
    background-size: 100% auto;
    width: 36px;
    height: 36px;
}
.recipeBox .recipeBoxList li a:hover {
    text-decoration: none;
    color: #fff;
    opacity: 1;
}

@media screen and (max-width: 835px) {
.recipeBox {
    width: 100%;
    max-width: 100%;
    padding: 0 4%;
}
.recipeBox .recipeBoxList {
    padding: 0 0 50px;
	max-width: 100%;
}
.recipeBox .recipeBoxList li {
    width: 32%;
    margin-right: 2%;
}
.recipeBox .recipeBoxList li:nth-child(4n) {
    margin-right: 2%;
}
.recipeBox .recipeBoxList li:nth-child(3n) {
    margin-right: 0;
}
.recipeBox .recipeBoxList li dl dd .hosoku {
    font-size: 1.2rem;
    padding-bottom: 5px;
}
.recipeBox .recipeBoxList li dl dd .recipeTitle {
    font-size: 1.6rem;
}
.recipeBox .recipeBoxList li dl dd .time {
    font-size: 1.4rem;
    padding-left: 30px;
}
.recipeBox .recipeBoxList li dl dd .num {
    font-size: 2.0rem;
}
.recipeBox .recipeBoxList li dl dd .time::before {
    bottom: 3px;
    left: 10px;
    width: 24px;
    height: 24px;
}
}
@media screen and (max-width: 640px) {
.recipeBox .lead {
    font-size: 1.4rem;
}
.recipeBox .recipeBoxList li {
    width: 48%;
    margin-right: 4%;
    text-align: center;
    margin-bottom: 50px;
}
.recipeBox .recipeBoxList li:nth-child(3n) {
    margin-right: 4%;
}
.recipeBox .recipeBoxList li:nth-child(2n) {
    margin-right: 0;
}
.recipeBox .recipeBoxList li dl dd {
    text-align: left;
    padding: 0;
}
.recipeBox .recipeBoxList li dl dd .hosoku {
    font-size: 1.0rem;
}
.recipeBox .recipeBoxList li dl dd .recipeTitle {
    font-size: 1.4rem;
}
.recipeBox .recipeBoxList li dl dd .time {
    font-size: 1.2rem;
    padding-left: 24px;
}
.recipeBox .recipeBoxList li dl dd .num {
    font-size: 1.8rem;
}
.recipeBox .recipeBoxList li dl dd .time::before {
    bottom: 3px;
    left: -5px;
    width: 24px;
    height: 24px;
}
}

/* レシピ詳細ページ用 */
.recipe_img {
    max-width: 640px;
    margin-right: 50px;
	position: relative;
}
.recipe_img img {
    border-radius: 24px;
    border: 5px solid #ad0a08;
}
.recipe_img .kurashiru {
	position: absolute;
	top: 20px;
	left: 20px;
	width: 133px;
}
.recipe_img .kurashiru img {
    border: none;
    border-radius: 0;
}
.recipe_img .recipe_hosoku {
    font-size: 1.2rem;
    margin-top: 20px;
}
.img_detailBox ul li dl dt#time::before {
    content: "";
    position: absolute;
    top: 15px;
    left: 0;
    background: url(../images/recipe__tool_timer.png) no-repeat center center;
    background-size: 100% auto;
    width: 30px;
    height: 30px;
}
.howtocook_wrap .zairyou {
    list-style: disc !important;
    /* margin: 0 0 0 22px !important; */
    margin: 0!important;
    padding: 0;
}
.howtocook_wrap .zairyou p {
    font-size: 1.6rem;
}
.howtocook_wrap .howtocook {
    list-style: decimal!important;
    /* margin: 0 0 0 22px !important; */
        margin: 0!important;
    padding: 0;
}
.howtocook_wrap .zairyou li, .howtocook_wrap .howtocook li {
    line-height: 1.4 !important;
    padding-bottom: 10px !important;
    font-size: 1.6rem !important;
    margin-left: 23px;
}
.howtocook_wrap .zairyou li:last-child, .howtocook_wrap .howtocook li:last-child {
    padding-bottom: 0 !important;    
}

.products_button {
    max-width: 900px;
    margin: 0 auto 100px;
    padding: 0 50px;
}
.products_button a:hover {
    opacity: 1 !important;
}
.products_button a img:hover {
    transform: translateY(2px);
    opacity: 1 !important;
}

.other_recipe h2.heading {
    line-height: 1.4;
}
.other_recipe span {
    display: block;
    font-weight: 400;
    font-size: 1.4rem;
}
.other_recipe ul {
    list-style: none;
    margin: 0 auto;
    padding: 0 50px;
    max-width: 1120px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.other_recipe ul li {
    background: #fff;
    border-radius: 24px;
    text-align: center;
    width: 18.4%;
    padding: 10px;
    margin-right: 2%;
    
}
.other_recipe ul li:nth-child(5n) {
    margin-right: 0;
}
.other_recipe ul li img {
    width: 75%;
}
.other_recipe ul li span {
    font-size: 1.3rem;
    display: block;    
}
@media screen and (max-width: 1024px) {
.recipe_img .kurashiru {
	width: 67px;
}
}
@media screen and (max-width: 835px) {
.recipe_img {
    max-width: 80%;
    margin-right: 10%;
    margin-left: 10%;
}
.recipe_img .kurashiru {
	width: 133px;
}
}


@media screen and (max-width: 640px) {
.recipe_img {
    max-width: 100%;
    margin-right: 0;
    margin-left: 0;
}
.recipe_img .kurashiru {
	width: 100px;
}
.howtocook_wrap .zairyou li, .howtocook_wrap .howtocook li {
    font-size: 1.4rem !important;    
}
.youtube_wrapper .cont__wrapper__gray2 {
    border-radius: 0;
    top: 50px;
}
.products_button {
    max-width: 100%;
    margin: 0 auto 50px;
    padding: 0 4%;
}
.other_recipe ul {
    margin: 0 auto;
    padding: 0 4%;
    max-width: 100%;
}
.other_recipe ul li {
    border-radius: 12px;
    width: 48%;
    margin-right: 4%;
    margin-bottom: 50px;
    
}
.other_recipe ul li:nth-child(5n) {
    margin-right: 4%;
}
.other_recipe ul li:nth-child(2n) {
    margin-right: 0;
}
.other_recipe ul li:last-child {
    margin-bottom: 0;
    
}
}

.youtube_video_container {
    text-align: center;
    margin: 0 0 60px;
}


/* 07.Contents
--------------------------------------------------------------------*/
.contentsList {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    max-width: 1340px;
    margin: 0 auto;
    padding: 0 50px 100px;
}
.contentsList li {
    width: 32%;
    margin-bottom: 70px;
    margin-right: 2%;
}
.contentsList li:nth-child(3n) {
    margin-right: 0;
}
.contentsList li dl {
    margin: 0;
    padding: 0;
    color: #333;
}
.contentsList li dl dt {
    margin: 0 0 15px;
    padding: 0;
}
.contentsList li dl dt img {
    border-radius: 24px;
}
.contentsList li dl dd {
    margin: 0;
    padding: 0 30px;
}
.contentsList li dl dd span.date {
    font-size: 1.4rem;
    text-align: right;
    margin: 0 0 3px;
    padding: 0;
    display: block;
}
@media screen and (max-width: 1000px) {
.contentsList {
    list-style: none;
    max-width: 94%;
    padding: 0 3% 100px;
}
.contentsList li {
    margin-bottom: 50px;
}
}
@media screen and (max-width: 835px) {
.contentsList li dl dt img {
    border-radius: 12px;
}
}
@media screen and (max-width: 640px) {
.contentsList {
    width: 100%;
    max-width: 100%;
    padding-bottom: 70px;
}
.contentsList li {
    width: 46%; 
    margin-bottom: 40px;
    margin-left: 2%;
}
.contentsList li:nth-child(3n) {
    margin-right: 2%;
}
.contentsList li:nth-child(2n) {
    margin-right: 0;
}
.contentsList li dl dt img {
    border-radius: 8px;
}
.contentsList li dl dd {
    margin: 0;
    padding: 0;
    font-size: 1.4rem;
}
.contentsList li dl dd span.date {
    font-size: 1.2rem;
}
}

/* 記事詳細用 */
.article__wrap {
	width: 100%;
	padding:  0 70px;
	margin: 0 auto;
	position: relative;
}
.articleHead, .articleContents {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 50px;
}
.articleHead .article__pageTitle {
	text-align: left;
	font-size: 3.5rem;
	line-height: 1.5;
}
.articleHead .date {
	text-align: left;
	font-size: 1.8rem;
	line-height: 1;
	margin: 20px 0 0;
}
#articleMv {
	margin: 50px auto;
	max-width: 1210px;
	padding: 0;
}
#articleMv img {
	margin: 0;
	border-radius: 24px;
	border: 5px solid #ad0a08;
	display: block;
	padding: 0;
	max-width: 1200px;
}
/* 背景の角Rのやつ赤ver */
.cont__wrapper_article {
    background: #ad0a08;
    border-radius: 48px;
    position: absolute;
    top: 300px;
	height: 800px;
    left: 0;
    bottom: 0;
    width: 100%;
    z-index: -9999;
}
@media screen and (max-width: 1280px) {
.cont__wrapper_article {
    border-radius: 0;
	height: auto;
}
.articleContents,  .snsShare {
	padding: 0 50px 50px;
}
}
@media screen and (max-width: 640px) {
.cont__wrapper_article {
    top: 250px;
}
}
.articleLead {
	font-size: 1.4rem !important;
	color: #fff;
	margin-bottom: 20px;
}
.articleContents .tag {
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	list-style: none;
	margin-bottom: 50px;
}
.articleContents .tag li {
	display: inline-block;
	background: #fff;
	font-size: 1.2rem;
	margin-left: 15px;
	font-weight: 700;
	border-radius: 8px;
}
.articleContents .tag li a {
	color: #ad0a08;
	display: inline-block;
	padding: 5px 10px;
	line-height: 1;
}
.articleContents .tag li a::before {
	content: "#"
}
.articleContents .tag li a:hover {
	color: #333;
	text-decoration: none;
	opacity: 1;
}
.articleContents .article {
	border-radius: 24px;
	background: #fff;
	padding: 30px 30px 10px;
}
.article .articleIndex {
	padding: 30px 30px 0;
}
.article .articleIndex .mokuji {
	text-align: center;
	font-weight: 700;
	font-size: 2.0rem;
}
.article .articleIndex ul {
	margin: 0;
	padding: 0;
}
.article .articleIndex ul li {
	line-height: 1.5;
	margin-bottom: 20px;
    font-size: 1.6rem!important;
    list-style-type: disc;
}
.article .articleIndex ul li a{
color: #333!important;
}

.article .articleTextarea {
	margin-bottom: 60px;
}
.article .article__heading {
	color: #ad0a08;
	border-bottom: 2px dotted #ad0a08;
	padding-bottom: 10px;
	margin: 50px 0 30px;
}
.article p {
	font-size: 1.8rem;
	line-height: 1.8;
	margin-bottom: 20px;
}
.snsShare {
	background: #f5f5f5;
	border-radius: 24px;
	padding: 30px;
}
.snsShare p {
	text-align: center;
	font-weight: 700;
	font-size: 1.6rem;
	margin-bottom: 10px;
}
.snsShare ul {
	display: flex;
	justify-content: center;
	list-style: none;
	column-gap: 30px;
	align-items: center;
    margin: 0;
    padding: 0;
}
.snsShare ul li {
	text-align: center;
	line-height: 1;
}
.snsShare ul li a {
	color: #fff;
	display: block;
	padding: 5px 0;
	border-radius: 8px;
	width: 160px;
}
.snsShare ul li a:hover, .snsShare ul li a:hover img {
	opacity: 1 !important;
}
.snsShare ul li a img {
	width: 20px !important;
	height: auto;
}
.snsShare ul li#x a {
	background: #0f1419;
}
.snsShare ul li#facebook a {
	background: #0866ff;
}
.snsShare ul li#line a {
	background: #06c755;
}
.snsShare ul li#page a {
	background: #666666;
}
.snsShare ul li a:hover {
    transform: translateY(2px);
}

@media screen and (max-width: 1280px) {
.snsShare {
	border: 2px solid #fff;
	background: #fff;
    max-width: 800px;
    margin: 0 auto;
}
.snsShare ul li a {
	width: 120px;
}
}
@media screen and (max-width: 835px) {
.article__wrap {
	max-width: 100%;
	padding: 0 4% 70px;
}
.articleHead, .articleContents {
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
}
.articleContents {
	border: 5px solid #ad0a08;
	margin-bottom: 30px;
}
#articleMv {
	margin: 50px 0 30px;
	width: 100%;
	padding: 0;
}
.snsShare {
	background: #fff;
}
.snsShare ul {
	column-gap: 20px;
	max-width: 100%;
	margin: 0;
	padding: 0;
}
.snsShare ul li a {
	width: 100px;
}
.snsShare ul li a:hover, .snsShare ul li a:hover img {
	opacity: 1 !important;
}
.snsShare ul li a img {
	width: 20px !important;
	height: auto;
}
.snsShare ul li#x a {
	background: #0f1419;
}
.snsShare ul li#facebook a {
	background: #0866ff;
}
.snsShare ul li#line a {
	background: #06c755;
}
.snsShare ul li#page a {
	background: #666666;
}
.snsShare ul li a:hover {
    transform: translateY(2px);
}
}

@media screen and (max-width: 640px) {
.articleHead .article__pageTitle {
	font-size: 2.0rem;
}
.articleHead .date {
	font-size: 1.4rem;
}
#articleMv {
	border-radius: 12px;
	margin: 30px 0 10px;
}
#articleMv img {
	border: 2px solid #ad0a08;
	border-radius: 12px;
}
.articleLead {
	font-size: 1.2rem !important;
}
.articleContents .article {
	border-radius: 12px;
}
.article .articleIndex .mokuji {
	font-size: 1.6rem;
	text-align: center;
}
.article .articleIndex {
	padding: 0 0 0 15px;
}
.article .articleIndex ul li {
	font-size: 1.4rem;
	margin-bottom: 15px;
}
.article .article__heading {
	font-size: 1.6rem;
	margin-bottom: 15px;
}
.article p {
	font-size: 1.4rem;
	line-height: 1.8;
}
.snsShare p {
	font-size: 1.4rem;
}
.snsShare {
	background: #fff;
	border-radius: 12px;
    margin: 0 1.5%;
}
.snsShare ul {
	column-gap: 12px;
}
.snsShare ul li a {
	width: 70px;
}
}




/* 08.FAQ
--------------------------------------------------------------------*/
/* アコーディオン */
.accordion_wrapper-faq {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 100px;
}
.accordion-faq {
    font-size: 2.0rem;
    border-radius: 16px;
    border: 2px solid #ad0a08;
    margin: 0 0 20px;
    background: #fff;
}
.accordion_header-faq {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 3% 10% 3% 5.5%;
    width: 100%;
    font-weight: 700;
    border-radius: 16px;
}
.accordion_header-faq {
    cursor: pointer;
    background-color: #fff;
    color: #ad0a08;
    position: relative;
}
.accordion_content-faq {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 5% 5% 5.5%;
    width: 88%;
    font-weight: 400;
    font-size: 1.8rem;
    line-height: 1.8;
}
.accordion_content-faq {
    display: none;
    background-color: #fff;
    color: #333;
    padding-top: 20px;
    border-top: 1px solid #ad0a08;
}
.accordion_content-faq span {
    width: 30%;
    height: auto;
    display: block;
    margin-top: 20px;
}
.accordion_header-faq::before {
    position: absolute;
    content: '';
    top: 50%;
    right: 25px;
    width: 20px;
    height: 4px;
    background-color:#ad0a08;
    transform: rotate(90deg);
    transition: all .3s ease-in-out;
    border-radius: 5px;
}
.accordion_header-faq::after {
    position: absolute;
    content: '';
    top: 50%;
    right: 25px;
    width: 20px;
    height: 4px;
    background-color:#ad0a08;
    transition: all .3s ease-in-out;
    border-radius: 5px;
}
.accordion_header-faq.open::before {
    transform: rotate(180deg);
}
.accordion_header-faq.open::after {
    opacity:0;
}

@media screen and (max-width: 1000px) {
.accordion_wrapper-faq {
    max-width: 100%;
    width: 96%;
    margin: 0 auto;
    padding: 0 2% 70px;
}
.accordion_header-faq {
    padding: 5% 15% 5% 5.5%;
    font-size: 1.5rem;
}
.accordion_content-faq {
    margin: 0 5% 5% 5.5%;
    width: 88%;
}
.accordion_content-faq {
    padding-top: 15px;
    border-top: 2px solid #ad0a08;
    font-size: 1.5rem;
}
}
@media screen and (max-width: 640px) {
.accordion_content-faq span {
    width: 100%;

}
}






/* 09.Privacy policy
--------------------------------------------------------------------*/
.policyBox {
    max-width: 960px;
    margin: 0 auto;
}
.policyBox .lead {
    margin-bottom: 20px;
}
.policyBox .heading {
    text-align: left;
    font-size: 2.4rem;
    margin: 50px 0 10px;
}
.policyBox p {
    margin: 0 0 20px;
    padding: 0;
	line-height: 1.8;
    font-size: 1.6rem;
}
.policyBox ol, .policyBox ul {
    margin: 0 0 0 22px;
    padding: 0;
	display: block;
}
.policyBox ol {
	list-style: decimal;
}
.policyBox ul {
	list-style: disc;
}
.policyBox ol li, .policyBox ul li {
    margin: 0;
    padding: 0;
	line-height: 1.8;
    font-size: 1.6rem;
}
.policyBox a {
	color: #1558d6;
	text-decoration: underline!important;
}
.policyBox .contact {
	display: inline-block;
	border: 1px solid #ccc;
	padding: 20px 20px 0;
}
@media screen and (max-width: 1024px) {
.policyBox {
    max-width: 92%;
    margin: 0 4%;
	word-break: break-all;
}
}
@media screen and (max-width: 835px) {
.policyBox .heading {
    font-size: 1.8rem;
}
.policyBox p {
	font-size: 1.4rem;
	line-height: 1.6;
}
.policyBox ol, .policyBox ul {
    margin: 0 0 0 18px;
}
.policyBox ol li, .policyBox ul li {
	font-size: 1.4rem;
	line-height: 1.6;
}
.policyBox a {
	color: #1558d6;
	text-decoration: underline;
}
.policyBox .contact {
	display: block;
	padding: 10px 10px 0;
	font-size: 1.2rem;
	line-height: 1.4;
}
}





/* 10.Footer
--------------------------------------------------------------------*/
footer {
    position: sticky;
    top: 100vh;
    width: 100%;
    padding: 0 50px;
    margin: 0 0 70px;
}
footer p {
    text-align: center;
    font-size: 3.0rem;
    color: #ad0a08;
    font-weight: 700;
    margin-bottom: 50px;
}
footer p span {
    font-size: 1.6rem;
    font-weight: 400;
    display: block;
}
.footer__wrapper {
    display: flex;
    justify-content: space-between;
    max-width: 850px;
    margin: 0 auto 30px;
}
.footerNav {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 40%;
}
.footerNav li {
    margin: 0;
    padding: 0;
}
.footerNav li a {
    display: block;
    line-height: 1;
    padding: 0 0 30px 0;
    font-size: 1.8rem;
    color: #333;
    text-decoration: none;
    font-weight: 700;
}
.footerNav li a:hover {
    text-decoration: underline;
}
.relationLink {
    display: flex;
    flex-wrap: wrap;
    width: 60%;
}
.relation {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
    gap: 30px;
}
.relation .logos {
    width: 40%;
}  
.relation .link {
    width: 60%;
    list-style: none;
}  
.relation .link li:first-child {
    margin-bottom: 20px;
}  
.relation .link li a {
    display: block;
    line-height: 2;
    font-size: 1.6rem;
    color: #333;
    text-decoration: none;
}
.relation .link li a:hover {
    text-decoration: underline;
}
.copyright p {
    border-top: 1px solid #333;
    padding-top: 20px;
    font-size: 1.2rem;
    line-height: 1.8;
    color: #333;
    text-align: left;
    font-weight: 400;
}
#page-top {
  position: fixed;
  bottom: 50px;
  right: 20px;
  z-index: 99;
}
#page-top a {
  text-decoration: none;
  width: 62px;
  display: block;
  transition: all .3s ease;
}
#page-top a:hover {
  text-decoration: none;
  opacity: .5;
}

@media screen and (max-width: 835px) {
.footerNav {
    width: 35%;
}
.footerNav li {
    font-size: 1.4rem;
}
.footerNav li a {
    font-size: 1.5rem;
}
.relationLink {
    width: 65%;
}
.relation .link li a {
    font-size: 1.3rem;
}
}
@media screen and (max-width: 640px) {
footer {
    padding: 0 8%;
}
footer p {
    font-size: 2.0rem;
}
footer p span {
    font-size: 1.4rem;
}
.footer__wrapper {
    display: block;
    max-width: 100%;
}
.footerNav {
    list-style: none;
    margin: 0;
    padding: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.footerNav li {
    margin: 0;
    padding: 0;
    width: 48%;
}
.footerNav li a {
    font-size: 1.4rem;
}
.relationLink {
    width: 100%;
}
.relation .logos {
    width: 35%;
}  
.relation .link {
    width: 65%;
    list-style: none;
    margin: 0;
    padding: 0 0 0 15px;
}  
.relation .link li:first-child {
    margin-bottom: 10px;
}  
.relation .link li a {
    font-size: 1.2rem;
}
.copyright p {
    border-top: 1px solid #333;
    padding-top: 20px;
    font-size: 1.2rem;
    line-height: 1.8;
    color: #333;
    text-align: left;
    font-weight: 400;
}
#page-top {
  position: fixed;
  bottom: 30px;
  right: 10px;
}
#page-top a {
  text-decoration: none;
  width: 40px;
}
}





/* 11.Margin
--------------------------------------------------------------------*/
.mgT0 { margin-top: 0 !important; }
.mgT5 { margin-top: 5px !important; }
.mgT10 { margin-top: 10px !important; }
.mgT15 { margin-top: 15px !important; }
.mgT20 { margin-top: 20px !important; }
.mgT25 { margin-top: 25px !important; }
.mgT30 { margin-top: 30px !important; }
.mgT35 { margin-top: 35px !important; }
.mgT40 { margin-top: 40px !important; }
.mgT45 { margin-top: 45px !important; }
.mgT50 { margin-top: 50px !important; }
.mgT55 { margin-top: 55px !important; }
.mgT60 { margin-top: 60px !important; }
.mgT65 { margin-top: 65px !important; }
.mgT70 { margin-top: 70px !important; }
.mgT75 { margin-top: 75px !important; }
.mgT80 { margin-top: 80px !important; }
.mgT85 { margin-top: 85px !important; }
.mgT90 { margin-top: 90px !important; }
.mgT95 { margin-top: 95px !important; }
.mgT100 { margin-top: 100px !important; }

.mgL0 { margin-left: 0 !important; }
.mgL5 { margin-left: 5px !important; }
.mgL10 { margin-left: 10px !important; }
.mgL15 { margin-left: 15px !important; }
.mgL20 { margin-left: 20px !important; }
.mgL25 { margin-left: 25px !important; }
.mgL30 { margin-left: 30px !important; }
.mgL35 { margin-left: 35px !important; }
.mgL40 { margin-left: 40px !important; }
.mgL45 { margin-left: 45px !important; }
.mgL50 { margin-left: 50px !important; }
.mgL55 { margin-left: 55px !important; }
.mgL60 { margin-left: 60px !important; }
.mgL65 { margin-left: 65px !important; }
.mgL70 { margin-left: 70px !important; }
.mgL75 { margin-left: 75px !important; }
.mgL80 { margin-left: 80px !important; }
.mgL85 { margin-left: 85px !important; }
.mgL90 { margin-left: 90px !important; }
.mgL95 { margin-left: 95px !important; }
.mgL100 { margin-left: 100px !important; }

.mgR0 { margin-right: 0 !important; }
.mgR5 { margin-right: 5px !important; }
.mgR10 { margin-right: 10px !important; }
.mgR15 { margin-right: 15px !important; }
.mgR20 { margin-right: 20px !important; }
.mgR25 { margin-right: 25px !important; }
.mgR30 { margin-right: 30px !important; }
.mgR35 { margin-right: 35px !important; }
.mgR40 { margin-right: 40px !important; }
.mgR45 { margin-right: 45px !important; }
.mgR50 { margin-right: 50px !important; }
.mgR55 { margin-right: 55px !important; }
.mgR60 { margin-right: 60px !important; }
.mgR65 { margin-right: 65px !important; }
.mgR70 { margin-right: 70px !important; }
.mgR75 { margin-right: 75px !important; }
.mgR80 { margin-right: 80px !important; }
.mgR85 { margin-right: 85px !important; }
.mgR90 { margin-right: 90px !important; }
.mgR95 { margin-right: 95px !important; }
.mgR100 { margin-right: 100px !important; }

.mgB0 { margin-bottom: 0 !important; }
.mgB5 { margin-bottom: 5px !important; }
.mgB10 { margin-bottom: 10px !important; }
.mgB15 { margin-bottom: 15px !important; }
.mgB20 { margin-bottom: 20px !important; }
.mgB25 { margin-bottom: 25px !important; }
.mgB30 { margin-bottom: 30px !important; }
.mgB35 { margin-bottom: 35px !important; }
.mgB40 { margin-bottom: 40px !important; }
.mgB45 { margin-bottom: 45px !important; }
.mgB50 { margin-bottom: 50px !important; }
.mgB55 { margin-bottom: 55px !important; }
.mgB60 { margin-bottom: 60px !important; }
.mgB65 { margin-bottom: 65px !important; }
.mgB70 { margin-bottom: 70px !important; }
.mgB75 { margin-bottom: 75px !important; }
.mgB80 { margin-bottom: 80px !important; }
.mgB85 { margin-bottom: 85px !important; }
.mgB90 { margin-bottom: 90px !important; }
.mgB95 { margin-bottom: 95px !important; }
.mgB100 { margin-bottom: 100px !important; }



/* 12.Block editor
--------------------------------------------------------------------*/

/* 管理画面ブロックエディタで生成されるh2 */
h2.wp-block-sgb-headings.sgb-heading.article__heading {
    color: #ad0a08 !important;
    border-bottom: 2px dotted #ad0a08 !important;
    padding-bottom: 10px !important;
    margin: 50px 0 30px !important;
    font-size: 12px!important;
}

h2.wp-block-sgb-headings.sgb-heading.article__heading .sgb-heading__text {
    color: #ad0a08 !important;
}

h2.wp-block-sgb-headings.sgb-heading.article__heading .sgb-heading__inner {
    background-color: transparent !important;
    border-color: transparent !important;
}

span.sgb-heading__inner.sgb-heading--type1{
    padding: 0!important;
}

/* コンテンツ 応募step*/
.cam-step{
    display: flex;
    justify-content: center;
	gap: 0 20px;
}

/* コンテンツ 吹き出し*/
.sgb-block-say-text__content p {
    margin-bottom: 0 !important;
}

/* パーツ テーブル*/
.tabele-a,.tabele-b {
    font-size: 1.4rem;
}




.wp-block-table thead {
    border-bottom: 1px solid;
}






/* 13.404
--------------------------------------------------------------------*/
.wrap404 {
	border: 5px solid #ad0a08;
	border-radius: 48px;
}
.pageTitle__404 {
	text-align: center;
	font-size: 10rem;
	line-height: 1;
	margin: 0 !important;
	padding: 100px 0 30px !important;
	color: #ad0a08;
}
.pageTitle__404 span {
	font-size: 2.0rem;
	line-height: 1;
	margin: 0 !important;
	padding: 10px 0 !important;
	display: block;
}
.error-404 {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 50px;
}
.text404 {
	text-align: center;
	margin-bottom: 30px;
    font-size: 1.6rem;
}
.link404 a {
	background: #ad0a08;
	display: block;
	margin: 0 auto 100px;
	text-align: center;
	color: #fff;
	font-weight: 700;
	max-width: 40%;
	padding: 10px;
	line-height: 1;
	border-radius: 30px;
	border: 2px solid #ad0a08;
	font-size: 2.0rem;
}
.link404 a:hover {
	background: #fff;
	color: #ad0a08;
	border: 2px solid #ad0a08;
	text-decoration: none;
}
@media screen and (max-width: 1280px) {
.wrap404 {
	margin: 0 50px;
}
}
@media screen and (max-width: 835px) {
.wrap404 {
	border: 2px solid #ad0a08;
	border-radius: 24px;
	margin: 0 4%
}
.error-404 {
    width: 100%;
    max-width: 100%;
    padding: 0 4%;
}
.pageTitle__404 {
	font-size: 5rem;
	padding: 50px 0 15px !important;
}
.pageTitle__404 span {
	font-size: 1.6rem;
}
.text404 {
	text-align: left;
	font-size: 1.4rem;
	margin-bottom: 30px;
}
.link404 a {
	margin: 0 auto 50px;
	text-align: center;
	max-width: 80%;
	padding: 10px 15px;
	border-radius: 30px;
	font-size: 1.6rem;
}
}


/* 14.Search & Tags
--------------------------------------------------------------------*/
.posts-list {
	max-width: 1000px;
	margin: 0 auto;
	padding: 50px 50px 0;
}
.posts-list .post-item {
	margin-bottom: 30px;
	border-bottom: 1px solid #ccc;
	padding-bottom: 30px;
}
.posts-list .post-item:last-child {
	border-bottom: none;
	padding-bottom: 20px;
}
.posts-list .post-item a {
	color: #ad0a08;
	font-weight: 700;
	font-size: 2.0rem;
}
.posts-list .post-meta {
	display: flex;
	align-items: center;
}
.posts-list .post-meta .date {
	font-size: 1.4rem;
}
.posts-list .post-meta .post-type {
	border: 1px solid #ad0a08;
	border-radius: 12px;
	display: inline-block;
	padding: 5px 10px;
	line-height: 1;
	color: #ad0a08;
	font-size: 1rem;
	margin-left: 15px;
}
.post-title {
	line-height: 1.5;
	margin-bottom: 5px;
}
.post-excerpt {
	font-size: 1.4rem;
}
#no-results_img {
	width: 100%;
	margin: 50px 0 20px;
	display: block;
}

@media screen and (max-width: 835px) {
.posts-list {
    width: 100%;
    max-width: 100%;
    padding: 0 4%;
}
}
@media screen and (max-width: 640px) {
.posts-list {
    width: 100%;
    max-width: 100%;
    padding: 8% 4% 0;
}
.posts-list .post-item {
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.posts-list .post-item h2 {
	line-height: 1.2;
}
.post-title {
	line-height: 1.2 !important;
}
.posts-list .post-item a {
	font-size: 1.6rem;
	line-height: 1.2 !important;
}
.post-excerpt {
	font-size: 1.2rem;
}
}

/* 15.ContactForm
--------------------------------------------------------------------*/

/* 上書き */
.co-form input[type="text"], 
.co-form input[type="email"], 
.co-form input[type="tel"], 
.co-form textarea {
    display: block !important;
    width: 100% !important;
    margin-bottom: 0 !important;
    padding: 16px 20px !important;
    border: 2px solid #e1e5e9 !important;
    border-radius: 12px !important;
    background-color: #fff !important;
    box-shadow: none !important;
    color: #333 !important;
    font-size: 1.8rem !important;
    line-height: 1.5 !important;
}

.co-form .co-form__container.-name > input[type="text"].co-input {
    width: auto !important;
    display: inline-block !important; 
  }

  .co-form-text__wrap {
    margin: 0 auto;
    margin-bottom: 3rem;
    max-width: 920px;
  }

  p.co-form-text {
    font-size: 1.5rem;
    padding: 0 20px;
    text-align: center;
}

.co-form {
    max-width: 920px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
}

fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

.co-form__fieldset:last-of-type {
    margin-bottom: 0;
}


.co-form__label {
    display: block;
    font-size: 1.5rem;
    font-weight: 600;
    color: #333;
    line-height: 1.4;
    margin-bottom: 5px;
}

._required {
    color: #e74c3c;
    font-weight: 700;
    margin-left: 4px;
}


.co-form__container {
    margin-bottom: 40px;
}

.co-input,
.co-textarea {
    width: 100%;
    padding: 16px 20px;
    border: 2px solid #e1e5e9;
    border-radius: 12px;
    font-size: 1.6rem;
    color: #333;
    background: #fff;
    transition: all 0.3s ease;
    box-sizing: border-box;
    font-family: inherit;
    display: inline-block !important;
}


.co-input::placeholder,
.co-textarea::placeholder {
    color: #999;
    font-size: 1.6rem;
    opacity: 1;
}

/* ブラウザ対応 */
.co-input::-webkit-input-placeholder,
.co-textarea::-webkit-input-placeholder {
    color: #999;
    font-size: 1.6rem;
    opacity: 1;
}

.co-input::-moz-placeholder,
.co-textarea::-moz-placeholder {
    color: #999;
    font-size: 1.6rem;
    opacity: 1;
}

.co-input:-ms-input-placeholder,
.co-textarea:-ms-input-placeholder {
    color: #999;
    font-size: 1.6rem;
    opacity: 1;
}

.co-input {
    max-width: 400px;
}

.co-form__container.-name > p{
    display: inline-flex!important;
    gap: 0 10px;
}

span#privacy-policy {
    font-size: 1.6rem;
}

.co-form__button {
    background: #ad0a08;
    color: #fff;
    border: none;
    padding: 18px 40px;
    font-size: 1.6rem;
    font-weight: 600;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: none;
    letter-spacing: 0.5px;
    width: 100%;
    max-width: 300px!important;
    margin: 30px auto 0;
    display: block;
}



@media screen and (max-width: 768px) {
    .co-form {
        padding: 20px 10px;
        border-radius: 12px;
    }
    
    .co-form__container.-name {
        flex-direction: column;
        gap: 12px;
    }
    
    .co-form__container.-name > p{
        display: block!important;
    }
    p.co-form-text {
            padding: 0 10px;
            text-align: left;
            font-size: 1.4rem;
        }
    
}

@media screen and (max-width: 480px) {
    .co-form {
        margin: 0;
    }
    
    .co-form__label {
        font-size: 1.4rem;
    }
    
    .co-input,
    .co-textarea {
        padding: 12px 14px;
        font-size: 1.4rem;
    }
    
    .co-form__button {
        padding: 14px 25px;
        font-size: 1.6rem;
    }

}

.c-pageLayout__main{
    background-color: #F0EBDC;
  }
  
  .form-container {
    max-width: 700px;
    width: 100%;
    margin: 8rem auto 0;
    padding: 0 1rem;
  }
  
  .co-information__body {
    max-width: 800px;
    width: 100%;
    margin: 8rem auto;
    padding: 0 1rem;
  }
  
  .c-article__text {
    text-align: left;
  }
  
  .corp-indexHeader__title {
    margin: 3rem 0 0 .3rem;
  }


  span.link-text{
    font-size: 1.6rem;
    display: block;
    margin-left: 1.6rem;
  }
  
  .c-articleText p {
    margin: 0 0 1rem;
  }

  
  /* エッジブラウザ専用のスタイル  */
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .file-upload-wrapper {
      overflow: visible !important;
      min-height: 60px !important;
      padding-right: 15px !important;
      width: auto !important;
      max-width: none !important;
    }
    
    .file-upload-wrapper input[type="file"] {
      font-size: 1.2rem !important;
      white-space: nowrap !important;
      overflow: visible !important;
      text-overflow: clip !important;
      max-width: none !important;
      width: auto !important;
    }
  }
  
  .file-upload-wrapper input[type="file"]::-ms-browse {
    font-size: 1.2rem !important;
  }
  
  .wpcf7-form-control-wrap {
    width: 100% !important;
    max-width: 100% !important;
    display: block !important;
  }
  
  .wpcf7-form-control-wrap input[type="file"] {
    width: 100% !important;
    max-width: 100% !important;
  }
  
  .wpcf7-form-control-wrap .file-upload-wrapper {
    width: 100% !important;
    max-width: 100% !important;
  }

/* 16.Send complete
---------------------------------------------------------------------*/
.wrap-complete {
	border: 5px solid #ad0a08;
	border-radius: 48px;
}
.pageTitle-complete {
	text-align: center;
	font-size: 5.2rem!important;
	line-height: 1;
	margin: 0 !important;
	padding: 100px 0 30px !important;
	color: #ad0a08;
}
.pageTitle-complete span {
	font-size: 2.0rem;
	line-height: 1;
	margin: 0 !important;
	padding: 10px 0 !important;
	display: block;
}
.complete {
	max-width: 1000px;
	margin: 0 auto;
	padding: 0 50px;
}
.complete-text {
	text-align: center;
	margin-bottom: 30px;
    font-size: 1.6rem;
}
.complete-link a {
	background: #ad0a08;
	display: block;
	margin: 0 auto 100px;
	text-align: center;
	color: #fff;
	font-weight: 700;
	max-width: 40%;
	padding: 10px;
	line-height: 1;
	border-radius: 30px;
	border: 2px solid #ad0a08;
	font-size: 2.0rem;
}
.complete-link a:hover {
	background: #fff;
	color: #ad0a08;
	border: 2px solid #ad0a08;
	text-decoration: none;
}
@media screen and (max-width: 1280px) {
.wrap-complete {
	margin: 0 50px;
}
}
@media screen and (max-width: 835px) {
.wrap-complete {
	border: 2px solid #ad0a08;
	border-radius: 24px;
	margin: 0 4%
}
.complete {
    width: 100%;
    max-width: 100%;
    padding: 0 4%;
}
.pageTitle-complete {
	font-size: 1.8rem!important;
	padding: 50px 0 15px !important;
}
.pageTitle-complete span {
	font-size: 1.6rem;
}
.complete-text {
	text-align: left;
	font-size: 1.4rem;
	margin-bottom: 30px;
}
.complete-link a {
	margin: 0 auto 50px;
	text-align: center;
	max-width: 80%;
	padding: 10px 15px;
	border-radius: 30px;
	font-size: 1.6rem;
}
}

/* 17.Personal information
---------------------------------------------------------------------*/
.story_wrap p {
    margin: 0 0 10px;
    padding: 0;
    line-height: 1.8;
    font-size: 1.6rem;
}

.story_wrap p:last-child {
    margin-bottom: 0;
}

.privacy-purpose-list {
    margin: 0 0 20px 20px;
    padding: 0;
    list-style: disc;
}

.privacy-purpose-list li {
    margin-left: 1em;
    padding: 0;
    line-height: 1.8;
    font-size: 1.6rem;
    color: #333;
}

.privacy-definition-list {
    margin: 0 0 20px 20px;
    padding: 0;
    list-style: disc;
}

.privacy-definition-list li {
    margin-left: 1em;
    padding: 0;
    line-height: 1.8;
    font-size: 1.6rem;
    color: #333;
}


.privacy-contact-info p {
    margin: 0;
    font-size: 1.6rem;
    color: #333;
}


.privacy-contact-details {
    margin: 0 0 20px 20px;
    padding: 0;
    list-style: disc;
}

.privacy-contact-details li {
    margin-left: 1em;
    padding: 0;
    line-height: 1.8;
    font-size: 1.6rem;
    color: #333;
}


.privacy-final-contact-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

.privacy-final-contact-list li {
    margin-left: 1em;
    padding: 0;
    line-height: 1.8;

}

.privacy-final-contact-list li:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 1024px) {
    .privacy-purpose-list,
    .privacy-definition-list,
    .privacy-contact-details {
        margin: 0 0 20px 15px;
    }
    
    .privacy-purpose-list li,
    .privacy-definition-list li,
    .privacy-contact-details li {
        font-size: 1.6rem;
    }
    
    .story_wrap p {
        font-size: 1.6rem;
    }
    
    .privacy-contact-info p {
        font-size: 1.6rem;
    }
    
    .privacy-final-contact-list li {
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 835px) {
    .privacy-purpose-list,
    .privacy-definition-list,
    .privacy-contact-details {
        margin: 0 0 15px 15px;
    }
    
    .privacy-purpose-list li,
    .privacy-definition-list li,
    .privacy-contact-details li {
        font-size: 1.4rem;
        margin: 0 0 6px;
    }
    
    .story_wrap p {
        font-size: 1.4rem;
        margin: 0 0 15px;
    }
    
    .privacy-contact-info {
        padding: 12px 15px;
        margin: 15px 0;
    }
    
    .privacy-contact-info p {
        font-size: 1.4rem;
    }
    
    .privacy-final-contact {
        padding: 15px;
        margin: 20px 0;
    }
    
    .privacy-final-contact-list li {
        font-size: 1.4rem;
    }
}


