@charset "UTF-8";

/*********************************
	トップページ固有
*********************************/
body#fs_Top {
  overflow-x: hidden;
}

@media screen and (min-width: 768px) {
  body#fs_Top {
    background: url("https://yamakiichi.itembox.design/item/img/contents/index/body_bg_index.jpg") no-repeat center top;
  }
}

body#fs_Top .fs-l-main {
  margin-top: 0;
}

body#fs_Top .contents-area {
  padding-top: 0;
}


/* トップページ：キービジュアル */
body#fs_Top .keyv-area {
  margin: 0;
}

/* トップページ：キービジュアル：崩れ対策 */
@media screen and (min-width: 768px) {
  body#fs_Top .keyv-area picture img {
    width: 960px;
    height: 430px;
  }
}

/* トップページ：キービジュアル：スマホのみ全幅 */
@media not all and (min-width: 768px) {
  body#fs_Top .keyv-area {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}

body#fs_Top .bottom-navigation .link.top {
  background: #fff;
  border-radius: 5px;
  color: #EC7435;
}

.top-keyvBottom {
  display: none;
}

@media screen and (min-width: 768px) {
  .top-keyvBottom {
    display: flex;
    justify-content: space-between;
    margin-top: 60px;
  }

  .top-keyvBottom .item {
    background: #fff;
    box-shadow: 2px 3px 4px #a09f86;
    margin-right: 30px;
    width: 300px;
  }

  .top-keyvBottom a {
    display: block;
    padding: 8px;
    text-decoration: none;
  }

  .top-keyvBottom a:link, .top-keyvBottom a:visited {
    color: #000;
  }

  .top-keyvBottom a:hover, .top-keyvBottom a:active {
    color: #a88542;
  }

  .top-keyvBottom a.last {
    margin-right: 0;
  }

  .top-keyvBottom a .text {
    font-size: calc(17rem / 16);
    line-height: 1.5;
    margin: 0;
    padding-top: 10px;
  }

  .top-keyvBottom a img {
    margin-bottom: 10px;
  }

  .top-keyvBottom a p:first-child {
    padding-top: 0;
  }

  .top-keyvBottom .title {
    font-feature-settings: "palt";
    font-size: calc(22rem / 16);
    font-weight: bold;
    line-height: 1.2;
    margin: 0;
    text-align: center;
  }
}

/* トップページ：お知らせ */
.top-newsHeading {
  background-color: #af2c2c;
  color: #fff;
  display: inline-block;
  font-size: 0.8em;
  margin: 16px 0 0 0;
  padding: 0.5em 1.5em;
}

.top-newsList > li.fs-pt-list__item {
  border-bottom: dotted 1px #666666;
  font-size: calc(15rem / 16);
  line-height: 1.2;
  margin-top: 0;
  padding: 0.5em;
}

.top-newsList > li.fs-pt-list__item::before {
  content: "●";
  top: auto;
}

@media screen and (min-width: 768px) {
  .top-newsHeading {
    margin: 80px 0 0 0;
  }

  .top-newsList > li.fs-pt-list__item {
    font-size: calc(16rem / 16);
  }
}

/* トップページ：旬カレンダー */
.top-calendar {
  display: none;
}

@media screen and (min-width: 768px) {
  .top-calendar {
    background: url("https://yamakiichi.itembox.design/item/img/contents/index/calendar_bk.jpg") no-repeat center;
    display: block;
    height: 670px;
    margin: 80px 0;
    position: relative;
    text-align: center;
    width: 970px;
  }

  .top-calendar .title {
    margin-bottom: 10px;
    padding-top: 55px;
    position: relative;
  }

  .top-calendar .calendar {
    left: 66px;
    position: relative;
    top: 0;
    z-index: 0;
  }

  .top-calendar .link {
    font-size: calc(16rem / 16);
    height: 29px;
    left: 500px;
    line-height: 1.3;
    position: absolute;
    top: 205px;
    z-index: 1;
  }

  .top-calendar .link:link,
  .top-calendar .link:visited {
    color: #FFFFFF;
  }

  .top-calendar .link:hover {
    color: #E57B09;
  }
}

/* トップページ：泳ぐホタテの選ばれる理由（SP） */
.top-reasonArea {
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  margin-top: 80px;
}

.top-reason {
  background: #F5F5F5;
}

.top-reason .text {
  margin: 0;
}

.top-reason .box {
  padding: 32px 15px 40px 15px;
}

.top-reason .title {
  font-family: "Noto Serif JP", serif;
  font-size: calc(26rem / 16);
  font-weight: bold;
  line-height: 1;
  margin-bottom: 26px;
}

.top-reason .link {
  align-items: center;
  border: 1px solid #707070;
  color: #000;
  display: flex;
  font-size: calc(16rem / 16);
  font-weight: bold;
  justify-content: center;
  line-height: 1;
  margin-top: 32px;
  padding: 20px;
  position: relative;
  text-decoration: none;
}

.top-reason .link::after {
  content: "";
  font-family: "fs-icon";
  font-size: 30px;
  line-height: 0;
  position: absolute;
  right: 10px;
  top: 50%;
}

.top-reasonBannerBox {
  padding: 40px 37px;
}

.top-reasonBannerBox .list {
  margin: 0;
  padding: 0;
}

.top-reasonBannerBox .text {
  font-size: calc(14rem / 16);
  line-height: 1.5;
  margin-bottom: 0;
  margin-top: 1em;
}

.top-reasonBannerBox .item + .item {
  margin-top: 32px;
}

@media screen and (min-width: 768px) {
  .top-reasonArea {
    display: none;
  }
}

/* トップ：コンテンツ紹介バナー */
.top-contentBannerArea {
  background: #F7F7F5;
  margin-left: calc(-50vw + 50%);
  margin-right: calc(-50vw + 50%);
  padding: 40px 20px;
}

.top-contentBanners {
  margin: 0;
  padding: 0;
}

.top-contentBanners > .item {
  margin-top: 16px;
}

.top-contentBanners > .item:nth-child(1) {
  margin-top: 0;
}

@media screen and (min-width: 768px) {
  .top-contentBannerArea {
    padding: 60px 20px;
  }

  .top-contentBanners {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin: 0 auto;
    width: 960px;
  }

  .top-contentBanners > .item {
    margin-top: 30px;
    width: calc(50% - 13px);
  }

  .top-contentBanners > .item:nth-child(even) {
    margin-left: 26px;
  }

  .top-contentBanners > .item:nth-child(2) {
    margin-top: 0;
  }
}

.top-contentBanners .textBanner {
  align-items: center;
  display: flex;
  font-size: calc(14rem / 16);
  justify-content: center;
  line-height: 1.5;
  margin-bottom: 0;
  min-height: 103px;
}

@media screen and (min-width: 768px) {
  .top-contentBanners .textBanner {
    border: 1px solid #D5D5D5;
  }

  .top-contentBanners .textBanner a {
    font-size: calc(16rem / 16);
  }
}

/* トップページ：ありがとうのリレー */
.top-relayFacebook {
  margin-bottom: 40px;
}

.top-relay {
  background-color: #333333;
  color: #fff;
  padding-bottom: 8px;
}

.top-relay .title {
  padding: 0 16px;
}

.top-relay .text {
  padding: 0 16px;
}

@media screen and (min-width: 768px) {
  .top-relayFacebook {
    margin: 80px 0 40px 0;
  }

  .top-relay {
    display: flex;
    flex-direction: column;
    height: 600px;
  }

  .top-relay .title {
    margin-top: 16px;
  }

  .top-relay .text {
    font-size: calc(16rem / 16);
    line-height: 1.75;
    margin: 0;
  }
}

@media not all and (min-width: 768px) {
  .top-relay {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}

/* トップページ：Facebook */
.top-facebook {
  overflow-x: hidden;
  padding: 24px 24px 0 24px;
}

@media screen and (min-width: 768px) {
  .top-facebook {
    padding: 0;
  }
}

/* トップ：ブログ誘導 */
.top-blogArea .list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0;
  padding: 0;
}

.top-blogArea .item {
  width: 50%;
}

@media screen and (min-width: 768px) {
  .top-blogArea .item {
    padding: 0;
    width: 210px;
  }
}

@media not all and (min-width: 768px) {
  .top-blogArea {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
  }
}

/*------------------------------
生わかめ・生めかぶ
------------------------------*/
.namaKaisou-order {
  background-image: url("https://yamakiichi.itembox.design/item/img/products/namawm/namawm_bkimg01.jpg");
  background-position: 50%;
  background-size: cover;
  margin: auto;
  padding: 10px;
}

.namaKaisou-order .box {
  background-color: #FFF;
  border: 1px solid #a74200;
  color: #a74200;
  margin: 3rem auto;
  padding: 20px;
}

.namaKaisou-order .title {
  background: #a74200;
  color: #FFF;
  font-weight: bold;
  margin-bottom: 2rem;
  padding: 8px 16px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .namaKaisou-order {
    padding: 40px 0;
  }

  .namaKaisou-order .box {
    padding: 40px;
    width: 80%;
  }
}


/*------------------------------
紅白セット
------------------------------*/
.kouhakuset-01 {
  background-color: #17263F;
}

.kouhakuset-01 p {
  color: #fff;
  margin-top: 0;
}

.kouhakuset-01 img {
  display: inline-block;
  margin: 0;
}

.kouhakuset-01 .item {
  margin-bottom: 40px;
  text-align: center;
}

@media screen and (min-width: 768px) {
  .kouhakuset-01 .item {
    float: left;
    margin-bottom: 0;
    width: 355px;
  }
}

.kouhakuset-01 .text {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
}

.kouhakuset-01 .text img {
  margin-bottom: 10px;
}

.kouhakuset-01 .box {
  margin-top: 40px;
  padding: 0 20px 40px;
}

.kouhakuset-01 .box .col {
  border-top: solid 1px #fff;
  padding-top: 30px;
}

@media screen and (min-width: 768px) {
  .kouhakuset-01 .box {
    padding: 0 40px 40px;
  }
}

.kouhakuset-02 {
  background: #000;
  color: #fff;
  padding: 10px 20px;
}

.kouhakuset-02 .item {
  margin-top: 30px;
}

.kouhakuset-02 img {
  margin-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
}

@media screen and (min-width: 768px) {
  .kouhakuset-02 {
    padding: 30px 40px;
  }
}

.kouhakuset-03 {
  padding-top: 30px;
}

.kouhakuset-03 .title {
  font-size: 20px;
  line-height: 1.3;
  margin-bottom: 0.5em;
}

.kouhakuset-03 .image {
  margin: auto;
}

@media screen and (min-width: 768px) {
  .kouhakuset-03 {
    background: url("/itembox/item/img/products/kouhakuset/bg.png") no-repeat right top;
    padding-top: 50px;
  }

  .kouhakuset-03 .title {
    font-size: 24px;
    margin-top: 0;
  }

  .kouhakuset-03 .image {
    float: right;
  }
}

/*********************************
	泳ぐホタテとは
*********************************/
/* 泳ぐホタテとは: QA */
.oyoguhotate-qa {
  padding: 10px;
}

@media screen and (min-width: 768px) {
  .oyoguhotate-qa {
    padding: 60px 65px;
  }
}

.oyoguhotate-qa .heading {
  background: #fff;
  font-size: calc(16rem / 16);
  font-weight: bold;
  padding: 10px 20px;
}

@media screen and (min-width: 768px) {
  .oyoguhotate-qa .heading {
    font-size: calc(28rem / 16);
  }
}

.oyoguhotate-qa .subHeading {
  font-size: calc(16rem / 16);
  font-weight: bold;
  margin-left: 20px;
  margin-top: 20px;
}

@media screen and (min-width: 768px) {
  .oyoguhotate-qa .subHeading {
    font-size: calc(23rem / 16);
  }
}

.oyoguhotate-qa .icon {
  display: inline;
  vertical-align: middle;
}

/* 泳ぐホタテとは: 良い素材があれば */
.fine-food {
  background-color: #f5f0dc;
  margin: 30px 0 0 0;
  padding: 10px 28px 36px;
}

.fine-food h3 {
  margin-bottom: 10px;
}

.fine-food p {
  line-height: 1.8;
  margin: 0 0 1em;
  overflow: hidden;
  padding: 0 10px;
}

/* 泳ぐホタテとは:  泳ぐホタテ誕生秘話 */
.oyoguhotate-story {
  background-image: url("https://yamakiichi.itembox.design/item/img/contents/oyoguhotate-c/story/oyogu-hotate-bg.jpg");
  background-position: 0 0;
  background-repeat: repeat-y;
  background-size: contain;
}

.oyoguhotate-story p {
  line-height: 2;
  margin-bottom: 20px;
  padding: 0 22px;
}

.oyoguhotate-story p:last-child {
  background: url("https://yamakiichi.itembox.design/item/img/contents/oyoguhotate-c/story/oyogu-hotate-bottom.jpg") 0 bottom no-repeat;
  padding-bottom: 40px;
}

@media screen and (min-width: 768px) {
  .oyoguhotate-story {
    background-size: auto;
    width: 715px;
  }

  .oyoguhotate-story p {
    padding: 0 42px;
    width: 675px;
  }
}


/* 泳ぐホタテとは: レシピ： 見出し */
.recipe-heading {
  border-bottom: solid 4px #c69c6c;
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
  position: relative;
}

@media screen and (min-width: 768px) {
  .recipe-heading {
    align-items: center;
    flex-direction: row;
    justify-content: space-between;
  }
}

.recipe-heading .title {
  align-items: center;
  display: flex;
  font-size: calc(20rem / 16);
  margin: 0;
  order: 1;
  text-align: left;
}

@media screen and (min-width: 768px) {
  .recipe-heading .title {
    font-size: calc(32rem / 16);
    order: 0;
    text-align: left;
  }
}

.recipe-heading .tag-original::before {
  margin-right: 18px;
  position: relative;
}

.recipe-heading .image {
  display: flex;
}

.recipe-heading .image img + img {
  margin-left: 8px;
}

@media not all and (min-width: 768px) {
  .recipe-heading .image {
    justify-content: flex-end;
    order: 0;
    width: 100%;
  }
}

/* 泳ぐホタテとは: レシピ： 使用部位 */
.recipe-use {
  background: url("https://yamakiichi.itembox.design/item/img/contents/oyoguhotate-c/recipe/recipe_use_part.png") no-repeat left top;
  font-weight: bold;
  min-height: 54px;
  padding: 15px 5px 0 125px;
}

/* 泳ぐホタテとは:インタビュー：一覧 */
.interview-menu .item {
  background: #f8f6f4;
  margin-bottom: 2em;
}

.interview-menu .item img {
  width: 100%;
}

.interview-menu .item a {
  color: #000;
  text-decoration: none;
}

.interview-menu .item p {
  line-height: 1.5em;
  margin-bottom: 0;
  margin-top: 0;
}

.interview-menu .item p.place {
  background: #000;
  color: #fff;
  display: inline-block;
  float: right;
  margin-bottom: 5px;
  padding: 3px 17px;
}

.interview-menu .item a:hover p {
  color: #a88542;
}

.interview-menu .item a:hover p.place {
  background: #a88542;
  color: #fff;
}

.interview-menu .item p.title {
  clear: both;
  font-size: calc(14rem / 16);
  text-align: center;
}

.interview-menu .item p.name {
  font-size: 22px;
  font-weight: bold;
  position: relative;
  text-align: center;
}

.interview-menu .item p.name span {
  font-size: calc(16rem / 16);
  padding-left: 5px;
}

.interview-menu .item p.name:after {
  border: 1px solid #a88542;
  bottom: -20px;
  content: "";
  display: inline-block;
  left: 35%;
  position: absolute;
  width: 80px;
}

.interview-menu .item p.comment {
  font-size: calc(15rem / 16);
  line-height: 1.8;
  padding: 40px 25px 25px 25px;
}

/* 泳ぐホタテとは:インタビュー：店舗情報 */
.interview-topArea {
  font-size: calc(14rem / 16);
}

@media screen and (min-width: 768px) {
  .interview-topArea {
    font-size: calc(16rem / 16);
    padding-left: 90px;
  }
}

.interview-topArea .catch {
  font-size: calc(19rem / 16);
  font-weight: bold;
}

@media screen and (min-width: 768px) {
  .interview-topArea .catch {
    font-size: calc(24rem / 16);
  }
}

.interview-shop {
  margin-top: 32px;
}

@media screen and (min-width: 768px) {
  .interview-shop {
    margin-top: 72px;
  }
}

.interview-shop p {
  margin: 0 0 8px 0;
}

.interview-shop .address {
  border-bottom: solid 1px #000;
  margin-bottom: 10px;
  padding-bottom: 10px;
}

@media screen and (min-width: 768px) {
  .interview-shop .address {
    font-size: calc(14rem / 16);
    margin-bottom: 15px;
  }
}

/* 泳ぐホタテとは:インタビュー：タブ風表示 */
/*タブ上付き*/
.interview-tabs {
  border-bottom: solid 1px #000;
  margin-top: 36px;
  padding-left: 0;
  text-align: center;
}

.interview-tabs li {
  display: inline-block;
  margin: 0 10px -1px;
}

.interview-tabs a {
  background: #213040;
  border: solid 1px #000;
  color: #fff;
  display: block;
  min-width: 100px;
  padding: 10px 5px;
  text-decoration: none;
}

.interview-tabs a span {
  display: block;
  font-size: 14px;
}

.interview-tabs a:hover {
  background: #636e79;
}

.interview-tabs a.active:hover {
  background: #fff;
}

.interview-tabs li.active {
  margin-bottom: -2px;
}

.interview-tabs li.active a {
  background: #fff;
  border-bottom: solid 2px #fff;
  color: #000;
}

@media screen and (min-width: 768px) {
  .interview-tabs {
    margin-top: 140px;
  }

  .interview-tabs a {
    font-size: 36px;
    padding: 20px 0 10px;
    width: 378px;
  }

  .interview-tabs a span {
    display: inline;
    font-size: 20px;
  }
}


/*タブ下付き*/
.interview-tabs.type_b {
  border-bottom: none;
  border-top: solid 1px #000;
  margin-top: 80px;
}

.interview-tabs.type_b li {
  margin: -1px 10px 0px;
}

.interview-tabs.type_b li.active {
  margin-top: -2px;
}

.interview-tabs.type_b li.active a {
  border-bottom: solid 1px #000;
  border-top: solid 2px #fff;
  border-top: solid 2px #fff;
}


/* 動画 */
.frame-movie {
  margin-top: 20px;
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}

.frame-movie iframe {
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
