/*
 !!!!! 英語用スタイルシートです !!!!!
 !!!!! 共通のスタイルと日本語用のスタイルは style.css に定義してください !!!!!
 !!!!! style.css は英語ページでも読み込みますので、style.css の内容をこちらにコピーする必要はありません !!!!!
 */


:root {
    --letter-spacing-body: .03em;
}

body {
    font-family: Inter, "Helvetica Neue", "Open Sans", Arial, "Noto Sans JP Local", "Noto Sans JP", sans-serif
}

.top-page-wrap p {
    letter-spacing: var(--letter-spacing-body);
}

/**************************************
 * ヘッダ
 **************************************/

@media (max-width: 767px) {
    .header-buttons {
        width: 90vw;
    }
    .header-buttons .wp-block-buttons {
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
    .header-buttons .wp-block-button {
        flex-grow: 1;
        width: 40%;
    }
    .header-buttons .wp-block-button a {
        padding: 12px;
    }
    .header-buttons .header-tel a {
        letter-spacing: 0;
        gap: 0 !important;
    }
}

/**************************************
 * グローバルメニュー
 **************************************/
.main-navigation .global-menu-pc > .menu-item:last-of-type > .sub-menu {
    right: calc(((100vw - 1145px) / 2 - 20px) * -1);
}

.main-navigation .global-menu-pc > .menu-item:last-of-type > .sub-menu > li:first-child:before {
    left: 20px;
}

/* 固定メニュー */
#global-menu-fixed.global-menu-pc > .menu-item:last-of-type > .sub-menu {
    left: unset !important;
    right: 0;
}

#global-menu-fixed.global-menu-pc > .menu-item:last-of-type > .sub-menu > li:first-child:before {
    left: unset !important;
    right: 100px;
}

@media (max-width: 1650px) {
    .main-navigation .global-menu-pc > .menu-item:last-of-type > .sub-menu > li:first-child:before {
        left: 100px;
    }
}

@media (max-width: 1510px) {
    .main-navigation .global-menu-pc > .menu-item:last-of-type > .sub-menu > li:first-child:before {
        left: unset;
        right: 30%;
    }
}

@media (max-width: 1100px) {
    .main-navigation .global-menu-pc > .menu-item:last-of-type > .sub-menu > li:first-child:before {
        left: unset;
        right: 10%;
    }
}

/**************************************
 * フッタ
 **************************************/


/**************************************
 * トップページ
 **************************************/
.top-page-wrap h2 {
    letter-spacing: var(--letter-spacing-body);
}
/* New Product / Pick Up */
.top-recommend > div {
    margin-top: 0;
}

.top-recommend .new-product .top-recommend-contents,
.top-recommend .pick-up .top-recommend-contents {
    min-height: 312px;
}

.top-recommend h4 {
    line-height: 1.25;
    margin-bottom: .5rem;
}

.top-recommend-contents p.explanation {
    padding-right: 2rem;
}

@media (max-width: 767px) {
    .top-recommend .top-recommend-contents .recommend-image {
        flex-basis: auto !important;
    }
}

/* トップページ - About */
.top-about .top-about-text {
    letter-spacing: var(--letter-spacing-body);
}

/* Product */
.top-product .top-product-heading h3 {
    line-height: 1.25;
}

.top-product .top-product-heading h3 + p {
    line-height: 1.5;
}

.top-product .top-product-title .wp-block-buttons {
    display: grid;
    grid-template-columns: auto;
    gap: .25rem;
}

.top-product .top-product-title .wp-block-buttons .wp-block-button__link {
    width: auto;
}

.top-product .top-product-heading div:first-child {
    min-width: 290px;
}

.top-product .top-product-notes p:not(:first-child) {
    margin-top: .25rem;
}

.top-product .top-product-notes ul {
    margin-top: .25rem;
    padding-left: 1.5rem;
}

.top-product .top-product-notes li::before {
    display: none;
}

.top-product .top-product-notes li {
    list-style: disc;
}

.top-product .products-banner {
  margin: 5.5rem auto 0;
  width: 517px;
  max-width: 100%;
}

.top-product .top-products-list .top-product-list-label {
    letter-spacing: var(--letter-spacing-body);
}

@media (max-width: 960px) {
    .top-product .top-product-title .wp-block-buttons {
        width: 100%;
    }

}

@media (min-width: 768px) {
    .top-product .top-product-title .wp-block-buttons {
        text-align: right;
    }

    .top-product .aids-to-nav .wp-block-image img {
        min-height: 220px;
    }

    .top-product .top-product-notes ul {
        margin-left: 3rem !important;
    }
}

@media (max-width: 767px) {
    .top-product .top-product-title .right-arrow a {
        text-align: left;
    }

    .top-product .products-banner a {
        font-size: 1rem;
    }

}

/* リストエリア */
.top-product .top-products-list .top-product-list-label {
    padding-right: 2.25rem;

}

.top-product .top-products-list .top-product-list-label:after {
    top: unset;
    bottom: .25rem;
}

/* フッタ上 */
.common-contact .common-contact-banners .uketsuke {
    display: none;
}

.common-contact .common-contact-consult {
    display: none;
}


/**************************************
  下層ページ 
 **************************************/

.disc-list li::before {
    display: none;
}

.disc-list li {
    list-style: disc;
}


/* ページ内リンク関連 */

.anchor-menu {
    display: grid;
    grid-template-columns: 1fr;
}

.anchor-menu a {
    padding: 0.5rem 1.5rem;    
}

.anchor-menu li {
    font-size: .95rem;
}

.anchor-menu li span {
    display: inline-block;
}


@media (min-width: 740px) {

    .sea-light-page-wrap .anchor-menu {
        display: grid;
        grid-template-columns: auto auto auto;
    }

}

@media (min-width: 840px) {

    .buoy-page-wrap .anchor-menu {
        display: grid;
        grid-template-columns: 1fr 1fr;
    }

}


/*------------------
 About Us:
 会社案内
 ------------------*/
/* Company Overview */
.company-page-wrap .overview td span {
    display: inline-block;
}

.profile-table td strong:not(:first-child) {
    margin-top: 0.75rem;
}

/* History */
.history-table {

}

.company-page-wrap .history-table tbody th {
  text-align: left;
  width: 5rem;
}

.company-page-wrap .history-table td:last-child {
  width: auto;
}

.history-table td:last-of-type::before {
    display: none;
}


@media (max-width: 767px) {

    .company-page-wrap .history-table tr {
        margin-bottom: 0;
    }

    .history-table td:last-of-type {
        padding-left: 1rem;
    }

    .company-page-wrap .history-table tbody th {      
        margin-top: .75rem;  
        padding: 0.5rem 1rem;
    }

}

/*------------------
 Our Services:
 業務案内
 ------------------*/
@media (max-width: 767px) {

    .business-page-wrap .lead-area br {
        display: none;
    }

}

.business-page-wrap .item-title {
    gap: 1rem;
}

.business-page-wrap .item-title::before {
    white-space: nowrap;
}

/* Consulting Services */
.consulting-lead-box .type-free::before {
    content: "Feel free to consult us.";
    padding: .5rem 1rem;
}

@media (min-width: 1000px) {

    .consulting-lead-box .type-free::before {
        width: 12rem;
    }

}

@media (max-width: 999px) {

    .consulting-lead-box .label-text {
        flex-direction: column;
        gap: 1rem;
    }

    .consulting-lead-box .type-free::before {
        content: "Feel free to consult us.";
        white-space: nowrap;
        width: auto;
    }

}

/*------------------
 AIDS TO NAVIGATION (SEALIGHT):
 航路標識一覧
 ------------------*/
.post-1891 h1::after {
    content: "\0022Sea Light\0022 is the generic name for the Aids to Navigation in our company.";
    display: block;
    font-size: 1rem;
    font-weight: normal;
}

/* LIGHT BEACON */
.sea-light-page-wrap ul.disc-list {
    padding-left: 1.5rem;
}

.sea-light-page-wrap ul.disc-list li {
    margin-bottom: .75rem;
}


/**************************************
 * 製品ページ
 **************************************/
.entry-content .kome-note::before {
    content: "* ";
}

.entry-content .kome-note {
    margin-bottom: .25rem;
}

.top-area .lead-text {
    margin-bottom: 2rem;
}

.top-area .lead-text .kome-note {
    margin-top: .25rem;
}

.response-time .disc-list {
    padding-left: 1.5rem;
}

.features-area .disc-list li:not(:first-child) {
    margin-top: 1rem;
}

.features-area .disc-list li:not(:first-child) {
    margin-top: .5rem;
}

.important-notice a {
    color: #dc2626;
}

.product-margin {
    padding-left: 1rem;
    padding-right: 1rem;
}

.features-area .disc-list {
    padding-left: 1.5rem;
    margin-bottom: 2rem;
}

.product_table_l table th {
    width: auto;
}

.product_table_l li::before {
    display: none;
}

.product_table_l li {
    list-style: disc;
}

@media screen and (min-width: 768px) {
    .product_table_l table tr:first-child th {
        width: 300px;
    }

}

.echo-sounder-detail p {
    padding: 0;
    margin-bottom: .75rem;
}

/* スマホ表示（画面幅767px以下）のときだけ横スクロールを有効にする */

@media screen and (max-width: 767px) {

    .js-scrollable.product_table_l table {
        min-width: 700px; 
    }

    .js-scrollable.product_table_l table tr:first-child th {
        width: 220px;
    }

    .js-scrollable.product_table_s table {
        min-width: 600px; 
    }

    .js-scrollable.product_table_s table tr:first-child th {
        width: 220px;
    } 
}

/**************************************
 * お問い合わせ
 **************************************/
.wpcf7-form .required-after::after {
    content: '*';
    padding-left: .5em;
}

/**************************************
 * 投稿ページ
 **************************************/
/**** News（英語）一覧ページタイトル装飾 ****/

/* 1. タイトルの文字色を白にする */
.category-news-en h1.page-title,
.category-news-en .page-header h1 {
  color: #fff !important;
  text-shadow: none !important;
}

/* 2. PC時の背景画像・高さ・上下中央揃え */
.category-news-en .page-header {
  height: 250px;
  background: url("assets/img/common/h1_blue.png") no-repeat center / cover;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.category-news .entry-content .entry-title + .entry-meta {
    letter-spacing: var(--letter-spacing-body);
}

/******* スマホ（767px以下）対応 ********/
@media (max-width: 767px) {
  /* 上の隙間を消す */
  .category-news-en #main-content {
    padding-top: 0 !important;
  }

  /* 背景画像の高さを縮める */
  .category-news-en .page-header {
    height: 150px !important;
  }

  /* 文字サイズを調整 */
  .category-news-en h1.page-title {
    font-size: 28px;
  }
}

.category-news-en h5 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.category-news-en ul.disc-list {
    padding-left: 2.25rem;
    margin-top: .5rem;
    margin-bottom: 1.5rem;
}

/**************************************
 * 共通・便利クラス
 **************************************/
/* テーブルのスマホ横スクロール対応 */
@media screen and (max-width: 767px) {

    .js-scrollable {
        overflow-x: auto;
        display: block;
        width: 100%;
        -webkit-overflow-scrolling: touch;
    }

    .js-scrollable table {
        min-width: 800px;
    }

}