@charset "UTF-8";
/*
    Template: swell
    Theme Name: S-Unit
    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=Montserrat:wght@500;700&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: 1.5em;
  }
.kadomaru_img img{
border-radius: 1.5em;
}
.kadomaru_img figure{
    border-radius: 1.5em;
}
.clip_kadomaru{
    clip-path: inset(0 0 round 1.5em);
}
.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;
}


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

.c-gnav>.menu-item>a{
    padding: 0 1.5em;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-style: normal;
}
.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(9){ display: none;}
}
@media screen and (max-width: 1450px){
  .c-gnav > li.menu-item:nth-child(8){ display: none;}
}
@media screen and (max-width: 1350px){
  .c-gnav > li.menu-item:nth-child(7){ display: none;}
}
@media screen and (max-width: 1200px){
  .c-gnav > li.menu-item:nth-child(6){ display: none;}
  .c-infoBar__text.-flow-off{
    justify-content: flex-start;
  }
  .c-infoBar__text{
    padding-left: 2em;
  }
}

/* ページタイトル（サブタイトル）調整 */
.c-pageTitle{
    display: flex;
    flex-direction: column;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size: 2.5em;
}
.c-pageTitle__subTitle{
    display: block;
    margin-left: 0;
    font-style: normal;
    margin-top: 0.5em;
}


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

/* コンタクト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;
}

/* 背景 */
.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: 'Montserrat', 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: 'Montserrat', sans-serif;
  font-weight: 500;
  font-style: normal;
}


/* 装飾 */
.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.8em;
    }
}


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

/* メインビジュアル */
@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{
        padding-top: 7vw !important;
        font-size: 6vw !important;
        line-height: 1.4  !important;
        text-align: center !important;
    }
}
.mv__copy__l
{
    text-shadow: none;
}
.mv_marquee{
    display: flex;
    justify-content: flex-start;
    align-items: center;
    overflow: hidden;
    position: absolute;
    top: 50%;
    z-index: -2;
    text-shadow: none;
}
.mv_marquee_content>div.wp-block-group__inner-container{
    display: flex;
    animation: loop-text 15s linear infinite;
}
.mv_marquee_content_txt{
    display: inline-block;
    font-size: 10em;
    white-space: nowrap;
    margin-right: 100px;
}
@keyframes loop-text {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

/* メッセージ */
.top_msg_copy{
    text-decoration: underline dotted;
    text-underline-offset: 10px;
}
/* サービス */
.service_box .service_box_item div.has-background {
    --swl-box_padding: 1.75em 1.5em;
}
@media (max-width: 599px){
    .service_box .service_box_item p.has-medium-font-size{
        font-size: 0.9em !important;
    }
    .service_box .service_box_item div.has-background {
    --swl-box_padding: 1em 0.75em;
    }
}


/* 投稿リストブロックのカード型とサムネイル型を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);
    }
}

/* 画像のカードスタイル */
.wp-block-image.card-style figure,
figure.wp-block-image.card-style,
.card-style figure.wp-block-media-text__media{
    position: relative;
    z-index: 1;
}
.wp-block-image.card-style figure img,
figure.wp-block-image.card-style img,
.xo-slider.card-style.mv .swiper,
.card-style figure.wp-block-media-text__media img{
    border-radius: 1.5em;
    transform: rotate(3deg);
}
.wp-block-image.card-style figure:after,
figure.wp-block-image.card-style:after,
.xo-slider.card-style.mv:after,
.card-style figure.wp-block-media-text__media:after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 10px;
    width: 100%;
    height: 100%;
    z-index: -1;
    transform: rotate(-6deg);
    border-radius: 1.5em;
    background-color: #F2B705;
}
.xo-slider.card-style.mv{
    position: relative;
    max-width: 500px;
    margin: 0 40px;
}

.wp-block-image.card-style.left figure img,
figure.wp-block-image.card-style.left img,
.card-style.left figure.wp-block-media-text__media img{
    transform: rotate(-3deg);
}
.wp-block-image.card-style.left figure:after,
figure.wp-block-image.card-style.left:after,
.card-style.left figure.wp-block-media-text__media:after{
    left: -10px;
    transform: rotate(6deg);
}
@media (min-width: 960px) {
    .wp-block-image.card-style figure img{
        max-width: 400px;
    }
}
@media(max-width:959px){
    .flex-reverse .swell-block-columns__inner{
        flex-direction: column-reverse;
    }
    .mv_marquee{
        top: auto;
        bottom: -9vw;
    }
    .mv_marquee_content_txt {
        display: inline-block;
        font-size: 8vw;
        white-space: nowrap;
        margin-right: 40px;
    }
    .mv_wrapper .swell-block-columns__inner{
        flex-direction: column-reverse;
    }
    .wp-block-image.card-style.mv:has(figure img),
    figure.wp-block-image.card-style.mv{
        padding: 50px 12vw 0;
        max-width: 420px;
        margin: 0 auto;
    }
    .xo-slider.card-style.mv{
        margin: 0 auto;
        width: 77vw;
        max-width: 400px;
    }
}
@media(max-width:599px){
    .flex-reverse .swell-block-columns__inner{
        flex-direction: column-reverse;
    }
    .wp-block-image.card-style:has(figure img){
        padding: 2.5em;
    }
}
/* 【下層】商品一覧
==================================================== */

/* 絞り込み検索 */
/* チェックボックス */
.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: 1em 2em;
    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;
}

@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 .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;
}

    
/* 【下層】問い合わせフォーム
==================================================== */
/* 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{
    opacity: 0.7;
  }
  
