@charset "UTF-8";
/*
    Template: swell
    Theme Name: ride-the-ship
    Theme URI:
    Description:
    Version: 0.0.1
    Author:
    Author URI:

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

/* WEBフォント */
@import url('https://fonts.googleapis.com/css2?family=Homemade+Apple&display=swap');

/* 色設定（swell本体で設定する内容）
==================================================== */


/* 全体調整
==================================================== */

body{
    font-feature-settings: "palt" 1;
    /* letter-spacing: 0.1em; */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* ページ上下の余白を削除 */
.page .l-content{
    padding-top: 0;
}
.w-beforeFooter{
    margin: 0 auto;
}

/* 余白調整 */
@media (min-width: 600px){
    div.has-background.pd4em{
        padding: 4em;
    }
    div.has-background.pd3em{
        padding: 3em;
    }
}
/* メディアとテキストの余白調整 */
@media (min-width: 1280px) {
    .wp-block-media-text {
        --swl-mediatext--space: 4rem;
    }
}
.wp-block-media-text {
    --swl-mediatext--space: 3rem;
}
/* .wp-block-media-text__media img{
    max-width: fit-content;
    margin: 0 auto;
} */
@media (max-width: 599px){
    .wp-block-media-text {
        --swl-mediatext--space: 2rem;
    }
}

/* 角丸 */
.kadomaru{
    border-radius: 0.75em;
  }
.kadomaru_img img{
border-radius: 0.75em;
}
.kadomaru_img figure{
border-radius: 0.75em;
}
.kadomaru_top, .kadomaru_top img, .kadomaru_top figure{
    border-top-left-radius: 0.75em;
    border-top-right-radius: 0.75em;
}
.kadomaru_bottom, .kadomaru_bottom img, .kadomaru_bottom figure{
    border-bottom-left-radius: 0.75em;
    border-bottom-right-radius: 0.75em;
}
.clip_kadomaru{
clip-path: inset(0 0 round 1em);
}
.kadomaru > .wp-block-group__inner-container{
padding: .75em;
}
@media (max-width: 599px){
    .kadomaru{
        padding: 1em !important;
    }
    .kadomaru > .wp-block-group__inner-container{
        padding: 0.5em 0;
    }
    .post_content h2.is-style-section_ttl{
        font-size: 1.4em;
    }
    .is-stacked-on-mobile>.wp-block-media-text__content{
        padding: 1em 0.5em !important;
    }
    :root{
        --swl-fz--huge: 1.2em;
        --wp--preset--font-size--large: 1.1em;
        --wp--preset--font-size--medium: 1em;
    }

}
/* 囲み文字 */
.has-inline-background,
.has-swl-main-background-color{
    border-radius: 1em;
    padding: 0.25em 1em;
}
.tag-list li{
    background-color: var(--color_gray);
    border-radius: 1em;
    padding: 0 0.5em;
}
.tag-list.is-style-check_list li{
    padding-left: 1.5em;
}
.tag-list.is-style-check_list li:before{
    padding: 0 0.25em;
}

/* テーブル */
.wp-block-table td, .wp-block-table th {
    padding: 1.5em .75em;
}
.post_content .wp-block-table.table_spec th{
}
.post_content .wp-block-table.table_spec th,
.post_content .wp-block-table.table_spec td{
    background-color: #fff;
    border: none;
    padding: 0.3em 0;
}
@media (max-width: 599px){
    .sp_center{
        text-align: center !important;
    }
}

/* ヘッダー
==================================================== */

.c-gnav>.menu-item>a{
    padding: 0 1.5em;
}
.c-gnav>.menu-item>a .ttl{
    font-weight: bold;
}
.header__cta .swell-block-button__link{
    padding: 0 1.5em;
    line-height: 72px;
	border-radius: 0;
}
.l-header__menuBtn{
    background-color: var(--color_main);
    color: #fff;
}
@media screen and (min-width: 300px){
    .l-header__inner.l-container,
    .l-fixHeader__inner.l-container {
        max-width: 100%;
    }
}
@media screen and (min-width: 1540px){
  .l-header__inner.l-container,
  .l-fixHeader__inner.l-container {
      max-width: 95%;
  }
}
@media (max-width: 1100px){
    .c-gnav>.menu-item>a{
        padding: 0 1em;
    }
}
@media (min-width: 960px) {
    .-series-right .c-gnavWrap {
        margin-left: 0;
    }
    .-series .l-header__inner,
    .l-fixHeader__inner{
        justify-content: space-between;
        padding-right: 0;
        margin: 0 auto;
    }
    .-series-left .w-header{
        margin-left: 0;
    }
}

/* ◯番目以降をカット */
@media screen and (max-width: 1550px){
  .c-gnav > li.menu-item:nth-child(8){ display: none;}
}
@media screen and (max-width: 1450px){
  .c-gnav > li.menu-item:nth-child(7){ display: none;}
}
@media screen and (max-width: 1350px){
  .c-gnav > li.menu-item:nth-child(6){ display: none;}
}
@media screen and (max-width: 1215px){
  .c-gnav > li.menu-item:nth-child(1){ display: none;}
  .c-infoBar__text.-flow-off{
    justify-content: flex-start;
  }
  .c-infoBar__text{
    padding-left: 2em;
  }
  .header__cta .swell-block-button__link{
    padding: 0;
    height: 72px;
    width: 72px;
  }
  .header__cta .swell-block-button__link span{
    display: none;
  }
  .header__cta.swell-block-button .__icon{
    margin-left: 0;
  }
    .header__cta .swell-block-button__link span:before {
        font-size: 16px;
        content: "お問合せ";
        vertical-align: middle;
    }
}

/* ページタイトル（サブタイトル）調整 */
.c-pageTitle{
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
}
.c-pageTitle__subTitle{
    display: block;
    margin-left: 0;
    font-style: normal;
}

/* タイトルの日付を削除 */
.single-our-fish time.c-postTitle__date,
.single-our-fish .p-articleMetas,
.single-our-fish time.c-postTitle__date,
.single-our-fish .p-articleMetas__times
{
    display: none;
}


/* パンくずリスト */
.p-breadcrumb__list {
    flex-wrap: wrap;
}
.single .p-breadcrumb__item:last-child>span.p-breadcrumb__text {
    display: block!important;
    opacity: 1;
    white-space: pre-wrap;
}



/* フッター
==================================================== */

/* コンタクトCTA */
.footer_cta{
    position: relative;
}
.footer_cta_ttl_image img{
    width: 60px;
    position: absolute;
    top: -2em;
    left: calc(50% - 30px);
}


/* 共通パーツ
==================================================== */

/* 横幅制限 */
.mw900 {
    max-width: 900px;
    margin: 0 auto;
}

/* 画像アスペクト比 メディアとテキストで画像を切り抜き設定オン*/
@media(max-width:599px){
    .post_content .sp_img-1-1>figure,
    .post_content .sp_img-2-1>figure,
    .post_content .sp_img-3-2>figure,
    .post_content .sp_img-16-9>figure{
        min-height: auto !important;
        position: relative;
    }
    .post_content .sp_img-1-1>figure img,
    .post_content .sp_img-2-1>figure img,
    .post_content .sp_img-3-2>figure img,
    .post_content .sp_img-16-9>figure img{
        min-height: auto !important;
        height: 100%;
        object-fit: cover;
        width: 100%;
    }
    .post_content .sp_img-1-1>figure{
        aspect-ratio: 1 / 1;
    }
    .post_content .sp_img-2-1>figure{
        aspect-ratio: 2 / 1;
    }
    .post_content .sp_img-3-2>figure{
        aspect-ratio: 3 / 2;

    }
    .post_content .sp_img-16-9>figure{
        aspect-ratio: 16 / 9;
    }
}

 /* ギャラリーのSP表示調整 */
 @media (max-width: 599px) {
  .wp-block-gallery.sp-col3 {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0.25em !important;
  }
  .wp-block-gallery.sp-col3 .wp-block-image {
    width: calc(33.33% - 0.25em) !important; 
    flex-basis: calc(33.33% - 0.25em) !important;
    max-width: calc(33.33% - 0.25em) !important;
    margin: 0 !important;
  }
  /* 拡大画像のサイズ調整 */
  .lum-lightbox .lum-img {
    max-width: 95vw !important;
    max-height: 85vh !important;
    object-fit: contain !important;
    margin: auto !important;
  }
}



/* 背景 */
.bg__dot{
    background-color: #ffffff;
    background-image: radial-gradient(#ebebeb 1.1500000000000001px, #ffffff 1.1500000000000001px);
    background-size: 30px 30px;
}

/* 見出し */
.post_content h2.styled{
    font-size: 2em;
    padding: 0.2em 0.2em 0.2em 16px;
    border-left: solid 8px var(--color_htag);
    color: var(--color_main);
    line-height: 1;
    font-family: 'Poppins', sans-serif;
    letter-spacing: 0.1em;
}
.post_content h2.styled span{
    display: block;
    font-size: 0.5em;
    color: #838ea2;
    padding-top: 0.5em;
    letter-spacing: 0.25em;
}
.post_content h2.styled.white{
    color: #fff;
}
.post_content h2.styled.white span{
    color: #fff;
}
.post_content .font-en{
  font-family: "Homemade Apple", cursive;
  font-weight: 400;
  font-style: normal;
}
.post_content .ttl_icon .ttl_icon_txt .wp-block-group{
    flex-direction: column;
    margin-left: 1em;
}
.post_content .ttl_btn{
        justify-content: space-between;
     }
@media(max-width:599px){
     .post_content .ttl_btn{
        position: relative;
     }
    .post_content .ttl_icon{
        flex-direction: column;
        align-items: center;
        text-align: center;
        margin-bottom: 1em !important;
    }
    .post_content .ttl_btn .ttl_icon{
        justify-content: center;
        margin: 0 auto;
    }
    .post_content .ttl_btn .btn_circle{
        position: absolute;
        right: 0;
        bottom: 0;
    }
    .post_content .ttl_icon .ttl_icon_txt{
        margin-top: -0.4em;
    }
    .post_content .ttl_icon .ttl_icon_txt .wp-block-group{
        margin-left: 0;
    }
    .post_content .ttl_icon .ttl_icon_txt h2{
        margin-bottom: 8px !important;
    }
    .post_content .ttl_icon > figure{
        width: 40px;
        margin-bottom: 0;
    }
}
/* 装飾 */
.border-white-top{
    border-top: 8px solid #FFF;
}
.border-red-top{
    border-top: 4px solid #D71018;
}
.indent{
    text-indent: 1em;
}
.image-radius img{
    border-radius: 12px;
}
mark.has-inline-color{
    padding:0.1em 0.3em;
}

/* ボタン */
.btn-white a{
    background: #FFF;
    color: var(--color_main);
}
.is-style-btn_normal.btn-white a{
	color: var(--color_main);
}

.btn-white a:hover{
    background: var(--color_main);
    color: #FFF;
}
.is-style-btn_normal a:hover{
    background: #FFF;
    color: var(--color_main);
    transition: 0.3s;
}
.is-style-btn_line a{
    border-width: 2px;
    font-weight: bold;
}
/* テキスト横に丸ボタン*/
.is-style-btn_normal.btn_circle a, .is-style-btn_normal.btn_circle a:hover{
    box-shadow: none;
}
.btn_circle a{
  background: transparent !important;
  color: var(--color_text);
  transition: 0.3s;
}
.btn_circle a .__icon{
  fill: var(--color_main);
  background: #FFF;
  border: 2px solid var(--color_main);
  border-radius: 50%;
  width: 2.5em;
  height: 2.5em;
  padding: 0.5em;
  margin-left: 0.5em;
  text-shadow: none;
  transition: 0.3s;
}
.btn_circle.is-style-btn_normal a:hover{
    color: var(--color_main);
}
.btn_circle.is-style-btn_normal a:hover .__icon{
    fill: #FFF;
    background: var(--color_main);
}
.btn_circle.is-style-btn_normal a:hover .__icon{
  box-shadow: 0 1rem 2rem -1rem rgb(90 115 130 / 40%);
  transform: scale(1.2);
}
@media(max-width:599px){
    .is-style-btn_normal.btn_circle a, .is-style-btn_normal.btn_circle a:hover {
        padding: 0.5em;
    }
    .btn_circle a .__icon{
        width: 1.5em;
        height: 1.5em;
        padding: 0.25em;
    }
    .btn_circle a span{
        font-size: 0.9em;
    }
}

/* リスト表示 */
/* 魚アイコンリストのスタイル */
.list-fish {
    list-style: none !important; /* 元の黒丸を消す */
    margin-left: 0 !important;
    padding-left: 0 !important;
}

.list-fish li {
    position: relative;
    padding-left: 2em;
    line-height: 1.6;
}

.list-fish li::before {
    content: "\f578";
    font-family: "FontAwesome";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0;
    color: var(--color_main);
}
.post_content .map-list .swell-block-columns .swell-block-column{
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 0.25em;
}
.post_content .map-list ul{
    list-style: none;
    gap: 0.25em 0.5em;
    display: flex;
    flex-wrap: wrap;
    padding-left: 0;
}
.post_content .map-list ul li{
    background: #f6f6f6;
    padding: 0.25em 0.75em;
    border-radius: 1em;
    margin: 0;
}
.post_content .map-list h4{
    padding-left: 1.25em;
}
.post_content .map-list h4:before{
    content: "\f3c5";
    font-family: "FontAwesome";
    font-weight: 900;
    position: absolute;
    left: 0;
    top: 0;
    color: #D42C38;
}
@media (max-width: 599px){
    .post_content .map-list ul li{
        padding: 0.25em 0.5em;
        border-radius: 0.5em;
        font-size: 0.85em;
        line-height: 1;
    }
    .post_content .map-list .swell-block-columns .swell-block-column{
        gap: 0.1em 0.2em;
    }
}



/* トップページ
==================================================== */

/* メインビジュアル */
@media (max-width: 959px){
    .mv__copy__s{
        font-size: 0.9em !important;
        line-height: 1.4 !important;
    }
    .mv__copy{
    }
    .mv__copy__m{
        font-size: 1.3em !important;
    }
    .mv__copy__l{
        font-size: 2em !important;
        line-height: 1.4  !important;
    }

}

/* 旬のおすすめ、生産者さんからお届け */
.top_pickup .p-postList figure.c-postThumb__figure{
    aspect-ratio: 1 / 1;
}
.top_pickup .p-postList figure.c-postThumb__figure,
.fisherman_item_link{
    position: relative;
}
.top_pickup .p-postList figure.c-postThumb__figure:before,
.fisherman_item_link:before{
        content: "";
        bottom: 0;
        right: 0;
        border-top: 3.5em solid transparent;
        border-right: 3.5em solid #d42c38;
        position: absolute;
        z-index: 100;
        border-radius: 0 0 0.5rem 0;
        padding-top: 0;
    }

.top_pickup .p-postList figure.c-postThumb__figure:after,
.fisherman_item_link:after{
        font-family: "FontAwesome";
        content: "\f002"; /*候補 f578 */
        display: block;
        bottom: 0;
        transform: rotate(0deg);
        color: #fff;
        right: 5px;
        position: absolute;
        z-index: 101;
        font-size: 17px;
}
@media(max-width:599px){
    .top_pickup .p-postList figure.c-postThumb__figure {
        aspect-ratio: 2 / 1;
    }
    .-type-card .p-postList__title, .-type-list .p-postList__title, .-type-list2 .p-postList__title, .-type-simple .p-postList__title{
        font-size: 3.4vw;
        line-height: 1.6;
    }
}
/* サービス */
.service__flow::after{
    display: block;
    content: "";
    height: 32px;
    background: transparent;
    border-style: solid;
    border-color: #fff;
    border-width: 0 1px 1px 1px;
    border-bottom: 1px solid #fff;
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;;
    width: 100%;
    margin-top: 2em;
}
.post_content .service__flow h3.is-style-section_ttl{
    display: flex;
    align-items: center;
}
.post_content .service__flow h3.is-style-section_ttl:before,
.post_content .service__flow h3.is-style-section_ttl:after {
    content: "";
    height: 32px;
    flex-grow: 1;
    background: transparent;
    border-top: 1px solid #fff;
    position: relative;
    margin-top: 1em;
    min-width: 32px;
}
.post_content .service__flow h3.is-style-section_ttl:before {
    border-left: 1px solid #fff;
    width: auto;
    margin-right: 1em;
}
.post_content .service__flow h3.is-style-section_ttl:after {
    border-right: 1px solid #fff;
    width: auto;
    margin-left: 1em;
}


/* 投稿リストブロックのカード型とサムネイル型を4列表示にする */
@media (min-width: 960px) {
    .-col4 .-type-card.-pc-col3 .p-postList__item, .-col4 .-type-thumb.-pc-col3 .p-postList__item{
        width: calc(100% / 4);
    }
}
@media (min-width: 1320px) {
    .-sidebar-on.post-type-archive-works .l-mainContent .-type-card.-pc-col3 .p-postList__item,
    .-sidebar-on.archive.tax-works_cat .l-mainContent .-type-card.-pc-col3 .p-postList__item,
    .-sidebar-on.archive.tax-works_tag .l-mainContent .-type-card.-pc-col3 .p-postList__item {
        width: calc(33.33333% - 1vw);
    }
}

/* 【下層】商品一覧
==================================================== */

/* 絞り込み検索 */
/* チェックボックス */
.fish_search .term-checkbox {
	display: none;
}
.fish_search .tagcloud, .wp-block-tag-cloud {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1em;
}
.fish_search .term-cloud-link {
	background: #FFF;
	border: 2px solid #eee;
	display: inline-block;
	line-height: 1;
	padding: 0.5em 1em !important;
	position: relative;
	text-decoration: none;
	font-size: 1.25em !important;
    border-radius: 1em;
}
.fish_search .term-cloud-link {
    cursor: pointer;
}

.fish_search_wrap{
    padding: 2em 1em 1em;
    margin-bottom: 2em;
    position: relative;
    background-color: #fff;
    border-radius: 1em;
}
.box_fish_shipping,
.box_fish_type{
    display: flex;
    align-items: center;
}

.fish_tax_ttl{
    min-width: 20%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25em;
    align-self: stretch;
    font-weight: bold;
}
.box_fish_shipping .fish_tax_ttl{
    color: #213F99;
    background-color: #fff;
}
.box_fish_type .fish_tax_ttl{
    color: #D42C38;
    background-color: #fff;
	
}
.fish_tax_body{
    padding: 0.75em 1%;
    background-color: #fff;
    box-sizing: border-box;
}
.box_fish_shipping .term-cloud-link.selected {
	background-color: #213F99;
	color: #fff !important;
    font-weight: bold;
}
.box_fish_type .term-cloud-link.selected {
	background-color: #D42C38;
	color: #fff !important;
    font-weight: bold;
}

/* カード */
.fish_search .p-postList__meta .wp-block-tag-cloud {
	margin-bottom: 8px !important;
}
.fish_search .p-postList__meta .tag-cloud-link {
	margin-bottom: 0 !important;
	margin-left: 0 !important;
}
.fish_search .p-postList__body{
    display: flex;
    flex-direction: column;
}

.fish_list .p-postList__cat,
.fish_list .p-postList__tag,
.fish_search .p-postList__cat,
.fish_search .p-postList__tag{
    font-size: 0.9rem;
    display: inline-block;
    padding: 0.25em 0.75em !important;
    margin:0.25em;
    border-radius: 1em;
    font-weight: bold;
    border: 1px solid;
}
.fish_list .p-postList__cat,
.fish_search .p-postList__cat{
	color: #213F99;
    border-color: #213F99;
}
.fish_list .p-postList__tag,
.fish_search .p-postList__tag{
    color: #D42C38;
	border-color: #D42C38;
}

.single-our-fish .c-taxList:before{
    content: none;
}
.single-our-fish .c-categoryList__link.label_fish_shipping{
    background-color: #213F99;
	color: #fff;
    border: none;
}
.single-our-fish .c-categoryList__link.label_fish_type{
    background-color: #D42C38;
	color: #fff;
    border: 1px solid #ccc;
}
.single-our-fish .l-articleBottom__section.-related .p-postList__meta{
    display: none;
}
.tax-fish_shipping .l-topTitleArea .c-pageTitle__subTitle,
.tax-fish_type .l-topTitleArea .c-pageTitle__subTitle{
    display: none;
}

.tax-fish_shipping .p-postList__link .p-postList__meta,
.tax-fish_type .p-postList__link .p-postList__meta{
    display: none;
}

.single-original .l-topTitleArea .c-categoryList__link,
.single-original .l-topTitleArea .c-tagList__link{
    background-color: var(--color_main);
	color: #fff;
    border: none;
}
.single-original .l-topTitleArea .c-categoryList__link{
    border: none;
}

@media(max-width:599px){
    .box_fish_shipping, .box_fish_type{
        display: block;
    }
    .fish_tax_ttl,.fish_tax_body{
        width: 100%;
    }
    .fish_search .term-cloud-link{
        font-size: 0.8em !important;
    }
    .fish_search .p-postList__excerpt{
        display: none;
    }
    .fish_search .tagcloud, .wp-block-tag-cloud {
        gap: 0.5em;
        justify-content: center;
    }
    .fish_list .p-postList__cat, .fish_list .p-postList__tag, .fish_search .p-postList__cat, .fish_search .p-postList__tag{
        font-size: 0.9em;
    }
    .fish_search .-type-card .p-postList__title{
        font-size: 3.2vw;
        line-height: 1.4;
    }
}

    
/* 【下層】問い合わせフォーム
==================================================== */
/* MW */
.contact_form span.form_required{
	display:inline-block;
	margin-left: 1em;
	font-size:0.75em;
	padding:0.25em 1em;
	background-color: var(--color_main);
	color: #ffffff;
	position: absolute;
	right: 1em;
}
.post_content .td_to_th_.contact_form tbody tr>:first-child {
    padding-right: 4em;
}
.gcal-sunday a, .gcal-sunday span{color: #f00 !important;}
.gcal-saturday a, .gcal-saturday span{color: #0af !important;}
.special-holiday a, .special-holiday span{color: #f00 !important;}
.jp-holiday a, .jp-holiday span{color: #f00 !important;}
.mwform-tel-field input[type="text"] {width: 70px !important;}

.submit_button{
    background: var(--color_main);
    border: 1px solid var(--color_main);
    color: #fff;
    border-radius: 0.25em;
    display: block;
    letter-spacing: 0.1em;
    line-height: 1.5;
    margin: 1.5em auto 0.5em;
    padding: 0.5em;
    position: relative;
    text-decoration: none;
    width: 300px;
}
.submit_button:hover{
    background: #FFF;
    border: 1px solid var(--color_main);
    color: var(--color_main);
}
input[name="submitBack"]{
    background: #FFF;
    border: 1px solid var(--color_main);
    color: var(--color_main);
    margin-top: 0;
}
input[name="submitBack"]:hover{
    background: #dedede;
    border: 1px solid var(--color_main);
    color: var(--color_main);
}


/* SMF */
.contactform {
}

.contactform dt {
  font-size: 16px;
  font-weight: 600;
  margin: 35px 0 10px;
  color: var(--color_main);
  border-left: 4px solid var(--color_htag);
  padding-left: 1em;
}

.contactform dd input[type="text"],
.contactform dd input[type="email"],
.contactform dd input[type="number"],
.contactform dd select,
.contactform dd textarea {
  padding: 7px 10px;
  font-size: 1em;
  line-height: 1;
  background: #fff;
  border: 1px solid #ddd;
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .contactform dd input.telnum {
    max-width: calc(33% - 11px);
  }
}

/* group hyperlink */
a.wp-block-tiptip-hyperlink-group-block {
    text-decoration: none;
    color: inherit;
    transition: 0.3s;
    margin-top: 0;
    margin-bottom: 0;
  }
  a.wp-block-tiptip-hyperlink-group-block:hover{
    box-shadow: 0 4px 12px rgba(0, 0, 0, .1), 0 12px 24px -12px rgba(0, 0, 0, .2);
    transform: translateY(-0.5em);
}
