@media screen and (max-width: 767px) {
  /* スマートフォン向けの調整はここに追加します。 */

  #maincontents.bunya-page h2.bunya-midashi {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 24px auto 0;
    padding: 0 0 8px;
    font-size: 18px;
    line-height: 1.4;
  }

  #maincontents.bunya-page .bunya-top {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 8px auto 12px;
    font-size: 12px;
    line-height: 1.4;
  }

  #maincontents.bunya-page ul.bunya-list {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    width: calc(100% - 24px);
    margin: 0 auto 20px;
    padding: 0;
  }

  #maincontents.bunya-page ul.bunya-list li {
    box-sizing: border-box;
    display: flex;
    width: auto;
    min-width: 0;
    min-height: 48px;
    margin: 0;
    padding: 0;
  }

  #maincontents.bunya-page ul.bunya-list li a,
  #maincontents.bunya-page ul.bunya-list li a:hover {
    box-sizing: border-box;
    position: static;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    height: auto;
    padding: 8px 6px;
    overflow-wrap: anywhere;
    line-height: 1.35;
    text-align: center;
  }

  #maincontents.bunya-page ul.item-list.color04:not(:has(> li)) + .bunya-top {
    display: none;
  }

  #maincontents .products-description {
    border-left: 0;
    padding-top: 14px;
    padding-left: 0;
  }

  /* 製品情報ページ：冒頭バナーと製品検索のスマートフォン表示 */
  #maincontents ul.about-dipcoat {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: calc(100% - 24px);
    margin: 12px auto 0;
    padding: 0;
    list-style: none;
  }

  #maincontents ul.about-dipcoat li,
  #maincontents ul.about-dipcoat li.dipcoat-left,
  #maincontents ul.about-dipcoat li.dipcoat-right {
    display: flex;
    align-items: center;
    justify-content: center;
    width: auto;
    margin: 0;
    padding: 0;
  }

  #maincontents ul.about-dipcoat a,
  #maincontents ul.about-dipcoat img {
    display: block;
  }

  #maincontents ul.about-dipcoat img {
    width: auto;
    max-width: 100%;
    height: clamp(44px, 13vw, 54px);
    object-fit: contain;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop {
    margin-top: 30px;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en {
    margin-top: 2px;
    margin-bottom: 0;
    padding-bottom: 0;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white {
    width: calc(100% - 24px);
    margin: 12px auto 16px;
    padding: 0;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search {
    width: 100%;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search .search-icon {
    display: none;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search form {
    display: flex;
    flex: 1 1 auto;
    align-items: center;
    gap: 8px;
    width: 100%;
    min-width: 0;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search .form {
    flex: 1 1 auto;
    width: auto;
    min-width: 0;
    margin: 0;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white .top-search {
    box-sizing: border-box;
    width: 100%;
    height: 42px;
    margin: 0;
    padding: 8px 10px;
    font-size: 16px;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search .btn {
    flex: 0 0 auto;
    margin: 0;
  }

  #maincontents ul.about-dipcoat + h1.midashi-pagetop + p.midashi-pagetop-en + ul.search-navi.bg-white li.search .button {
    box-sizing: border-box;
    min-height: 42px;
    margin: 0;
    padding: 8px 12px;
    font-size: 16px;
  }

  #choosing-dip-coater {
    padding-top: 36px;
  }

  /* 装置レンタル：製品詳細カード */
  #maincontents ul.rental-pruduct-box {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 24px);
    margin: 20px auto;
    padding: 20px 16px;
  }

  #maincontents ul.rental-pruduct-box > li,
  #maincontents ul.rental-pruduct-box > li.products-box,
  #maincontents ul.rental-pruduct-box > li.products-box-title {
    box-sizing: border-box;
    width: 100%;
  }

  #maincontents ul.rental-pruduct-box > li.products-box-title {
    margin: 0 0 16px;
    text-align: center;
  }

  #maincontents ul.rental-pruduct-box h2.midashi {
    width: 100%;
    margin: 0 !important;
    font-size: 22px;
    line-height: 1.35;
    overflow-wrap: anywhere;
  }

  #maincontents ul.rental-pruduct-box h3.midashi {
    width: 100%;
    margin: 4px 0 0;
    font-size: 16px;
    line-height: 1.4;
  }

  #maincontents ul.rental-pruduct-box .products-box {
    float: none;
    margin: 0 0 16px;
  }

  #maincontents ul.rental-pruduct-box .products-photo {
    width: 100%;
    max-width: 300px;
    margin: 0 auto;
  }

  #maincontents ul.rental-pruduct-box table.rental-price {
    width: 100%;
    margin: 0 0 16px;
    table-layout: fixed;
  }

  #maincontents ul.rental-pruduct-box table.rental-price td {
    padding: 10px 12px;
    line-height: 1.5;
    vertical-align: middle;
  }

  #maincontents ul.rental-pruduct-box table.rental-price td:first-child {
    width: 34%;
    white-space: nowrap;
  }

  #maincontents ul.rental-pruduct-box .products-text {
    width: 100%;
    margin: 0;
    line-height: 1.75;
  }

  #maincontents ul.rental-pruduct-box .products-btn {
    box-sizing: border-box;
    width: 100%;
    max-width: 300px;
    height: 48px;
    margin: 16px auto 0;
    padding: 0;
    font-size: 16px;
  }

  #maincontents ul.rental-pruduct-box .products-btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 0;
  }

  /* 装置レンタル：ページ上部の製品一覧 */
  #maincontents > ul.rental-pruduct-midashi {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: calc(100% - 24px);
    margin: 16px auto 28px;
    padding: 0;
  }

  #maincontents > ul.rental-pruduct-midashi > li.products-box-list {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: auto;
    min-width: 0;
    margin: 0;
    padding: 10px;
    border: 1px solid #cfd5dc;
    background-color: #ffffff;
  }

  #maincontents > ul.rental-pruduct-midashi .products-photo {
    box-sizing: border-box;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    width: 100%;
    height: 132px;
    margin: 0 0 10px;
    padding: 6px;
  }

  #maincontents > ul.rental-pruduct-midashi .products-photo img {
    width: auto;
    max-width: 100%;
    max-height: 120px;
    margin: 0;
    object-fit: contain;
  }

  #maincontents > ul.rental-pruduct-midashi h2.midashi-list,
  #maincontents > ul.rental-pruduct-midashi h3.midashi-list {
    width: 100%;
    margin: 0;
    color: #242d65;
    text-align: center;
  }

  #maincontents > ul.rental-pruduct-midashi h2.midashi-list {
    min-height: 4.05em;
    font-size: 13px;
    line-height: 1.35;
  }

  #maincontents > ul.rental-pruduct-midashi h3.midashi-list {
    min-height: 1.5em;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.4;
  }

  #maincontents > ul.rental-pruduct-midashi .products-list-btn {
    box-sizing: border-box;
    width: 100%;
    height: 40px;
    margin: 10px 0;
    padding: 0;
    border-radius: 5px;
  }

  #maincontents > ul.rental-pruduct-midashi .products-list-btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 0 6px;
    font-size: 13px;
    line-height: 1.2;
    border-radius: 5px;
  }

  #maincontents > ul.rental-pruduct-midashi iframe {
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    margin: auto 0 0;
    padding: 0;
    border: 0;
  }

  /* 装置レンタル：お問い合わせ・申込み・予約状況 */
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 32px auto 16px;
    padding-bottom: 8px;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto 16px;
    line-height: 1.75;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto 32px;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 li.customers-midashi,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 li.customers-text {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 li.customers-midashi {
    margin-top: 12px;
    padding: 10px 12px;
    background-color: #f1f3f5;
    font-size: 14px;
    line-height: 1.4;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 li.customers-text {
    padding: 10px 12px 0;
    line-height: 1.7;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 .tel-num,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 .fax-num {
    display: inline-block;
    font-size: 28px;
    line-height: 1.2;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 button.button1 {
    box-sizing: border-box;
    width: 100%;
    min-height: 48px;
    margin: 12px 0 0;
    padding: 10px 16px;
    border-radius: 5px;
    background-color: #0066a8;
    font-size: 16px;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text ul.rental-list {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto;
    padding-left: 1.5em;
    line-height: 1.7;
    list-style-position: outside;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: calc(100% - 24px);
    margin: 16px auto;
    padding: 20px 16px;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-l,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-l,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r {
    box-sizing: border-box;
    float: none;
    width: 100%;
    margin: 0;
    padding: 0;
    line-height: 1.75;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r {
    margin-top: 16px;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r form,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r a {
    position: relative;
    display: block;
    width: 100%;
    max-width: 320px;
    height: 48px;
    margin: 0 auto;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r form::before,
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r a::before {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    background-color: #0066a8;
    color: #ffffff;
    font-size: 16px;
    font-weight: bold;
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r form::before {
    content: "装置レンタルお申し込み";
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r a::before {
    content: "レンタル装置予約状況";
  }

  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l .rental-text-box-r input[type="image"],
  #maincontents > ul.rental-pruduct-midashi + h3.midashi2 + .products-text + ul.customers4 + h3.midashi2 + .products-text + .rental-text-l + .rental-text-l.blue .rental-text-box-r a img {
    position: absolute;
    inset: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
  }

  /* 受託コーティング：対応コート・所有設備 */
  #maincontents > h3.midashi2 + .products-text + .jutaku {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 24px auto 40px;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .jutaku-list-midashi {
    box-sizing: border-box;
    width: 100%;
    margin: 28px 0 16px;
    padding: 12px 14px;
    border-radius: 5px;
    background-color: #38759d;
    color: #ffffff;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .jutaku-list-midashi:first-child {
    margin-top: 0;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku h3.jutaku {
    box-sizing: border-box;
    width: 100%;
    margin: 24px 0 10px;
    padding: 0 0 8px;
    border-bottom: 1px solid #c8d8e3;
    font-size: 18px;
    line-height: 1.5;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .text2-jutaku {
    width: 100%;
    margin: 0;
    font-size: 16px;
    line-height: 1.75;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .img-jutaku,
  #maincontents > h3.midashi2 + .products-text + .jutaku .img-jutaku2 {
    box-sizing: border-box;
    width: 100%;
    max-width: 420px;
    margin: 16px auto 0;
    padding: 0;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .img-jutaku img,
  #maincontents > h3.midashi2 + .products-text + .jutaku .img-jutaku2 img {
    display: block;
    width: 100%;
    height: auto;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .img-jutaku2 p {
    margin: 8px 0 0;
    font-size: 14px;
    line-height: 1.6;
    text-align: center;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.img-jutaku-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    margin: 16px 0 0;
    padding: 0;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.img-jutaku-list li {
    width: auto;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.img-jutaku-list img {
    display: block;
    width: 100%;
    height: auto;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.jutaku-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    width: 100%;
    margin: 0;
    padding: 0;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.jutaku-list li {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    width: auto;
    min-width: 0;
    padding: 12px;
    border: 1px solid #d3dce3;
    background-color: #ffffff;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.jutaku-list li > img {
    display: block;
    width: 100%;
    height: 110px;
    margin: 0 0 12px;
    object-fit: contain;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku ul.jutaku-list li h3 {
    min-height: 4.2em;
    margin: 0 0 12px;
    font-size: 14px;
    font-weight: normal;
    line-height: 1.5;
    text-align: center;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .setsubi-btn {
    width: 100%;
    margin: auto 0 0;
  }

  #maincontents > h3.midashi2 + .products-text + .jutaku .setsubi-btn a {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 44px;
    padding: 8px;
    border-radius: 5px;
    background-color: #0066a8;
    color: #ffffff;
    font-size: 14px;
    line-height: 1.3;
    text-align: center;
  }

  /* 受託コーティング：受託コートの利点 */
  #maincontents > .jutaku + h3.midashi2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 32px auto 16px;
    padding-bottom: 8px;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents > .jutaku + h3.midashi2 + .products-text {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto;
    font-size: 16px;
    line-height: 1.75;
  }

  #maincontents > .jutaku + h3.midashi2 + .products-text ul.rental-list {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding-left: 1.5em;
    line-height: 1.8;
    list-style-position: outside;
  }

  #maincontents > .jutaku + h3.midashi2 + .products-text ul.rental-list li {
    margin-bottom: 8px;
    padding-left: 0.2em;
    list-style-type: decimal;
  }

  /* カタログダウンロード：入力フォーム */
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin-right: auto;
    margin-left: auto;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 {
    margin-top: 16px;
    margin-bottom: 12px;
    font-size: 14px;
    line-height: 1.6;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn {
    margin-top: 0;
    margin-bottom: 16px;
    text-align: center;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn img {
    display: block;
    width: 100%;
    max-width: 420px;
    height: auto;
    margin: 0 auto;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry {
    margin-top: 0;
    margin-bottom: 32px;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry ul.inquiry-table {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry ul.inquiry-table li.td-inquiry-l,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry ul.inquiry-table li.td-inquiry-r {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry ul.inquiry-table li.td-inquiry-l {
    padding: 8px 10px;
    font-size: 15px;
    line-height: 1.4;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry ul.inquiry-table li.td-inquiry-r {
    padding: 8px 10px 10px;
    border-left: 1px solid #a7a1a5;
    font-size: 16px;
    line-height: 1.4;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry input.t100 {
    box-sizing: border-box;
    width: 100%;
    height: 38px;
    margin: 0;
    padding: 6px 8px;
    font-size: 16px;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry input.t20 {
    box-sizing: border-box;
    width: calc((100% - 2.4em) / 3);
    min-width: 0;
    height: 38px;
    margin: 0;
    padding: 4px;
    font-size: 16px;
    text-align: center;
    vertical-align: middle;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry .td-submit {
    box-sizing: border-box;
    width: 100%;
    margin: 24px auto 0;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .inq-bn + #inquiry .td-submit .button {
    box-sizing: border-box;
    width: 100%;
    min-height: 50px;
    margin: 0 auto;
    padding: 10px 12px;
    font-size: clamp(13px, 4vw, 15px);
    line-height: 1.35;
    white-space: normal;
  }

  /* お問い合わせ：入力フォーム */
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 16px auto 32px;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry .red {
    margin: 0 0 12px;
    font-size: 14px;
    line-height: 1.6;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry ul.inquiry-table {
    box-sizing: border-box;
    width: 100%;
    margin: 0 0 24px;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry ul.inquiry-table li.td-inquiry-l,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry ul.inquiry-table li.td-inquiry-r {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry ul.inquiry-table li.td-inquiry-l {
    padding: 8px 10px;
    font-size: 15px;
    line-height: 1.4;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry ul.inquiry-table li.td-inquiry-r {
    padding: 8px 10px 10px;
    border-left: 1px solid #a7a1a5;
    font-size: 16px;
    line-height: 1.5;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input[type="text"],
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry select,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry textarea {
    box-sizing: border-box;
    max-width: 100%;
    min-height: 38px;
    padding: 6px 8px;
    font-size: 16px;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input.t100,
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry textarea {
    width: 100%;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry textarea {
    min-height: 160px;
    resize: vertical;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input.t20 {
    box-sizing: border-box;
    width: calc((100% - 2.4em) / 3);
    min-width: 0;
    height: 38px;
    margin: 0;
    padding: 4px;
    font-size: 16px;
    text-align: center;
    vertical-align: middle;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input[name="f_post"],
  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input[name="f_post2"] {
    width: calc((100% - 3.5em) / 2);
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry input[type="radio"] {
    width: 18px;
    height: 18px;
    margin: 5px 6px 5px 0;
    vertical-align: middle;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry .inquiry02 {
    margin: 0 0 12px;
    font-size: 16px;
    line-height: 1.5;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry .inquiry-btn {
    box-sizing: border-box;
    width: 100%;
    margin: 24px auto 0;
  }

  #maincontents > h1.midashi-pagetop + p.midashi-pagetop-en + .inq-com2 + .qa-btn + #inquiry .inquiry-btn .button {
    box-sizing: border-box;
    width: min(100%, 360px);
    min-height: 50px;
    margin: 0 auto;
    padding: 10px 12px;
    font-size: clamp(14px, 4vw, 16px);
    line-height: 1.35;
    white-space: normal;
  }

  /* 会社情報：上部ナビゲーション */
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table),
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3),
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + .company4),
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: calc(100% - 24px);
    margin: 0 auto 24px;
    padding: 0;
  }

  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table) > li,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3) > li,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + .company4) > li,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > li {
    box-sizing: border-box;
    width: auto;
    min-height: 48px;
    margin: 0;
    padding: 0;
    font-size: 14px;
  }

  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + .company4) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 6px 8px;
    line-height: 1.35;
  }

  /* 会社概要 */
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 24px auto 32px;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table > li.td-inquiry-l,
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table > li.td-inquiry-r {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table > li.td-inquiry-l {
    padding: 8px 10px;
    font-size: 15px;
    line-height: 1.4;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table > li.td-inquiry-r {
    padding: 9px 10px 11px;
    border-left: 1px solid #a7a1a5;
    font-size: 15px;
    line-height: 1.65;
    overflow-wrap: anywhere;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 24px);
    margin: 0 auto 24px;
    padding: 0;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 > li {
    width: 100%;
    margin: 0;
    padding: 0;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 > li:first-child > img,
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 > li:first-child > iframe {
    display: block;
    box-sizing: border-box;
    width: 100%;
    max-width: 385px;
    height: auto;
    aspect-ratio: 385 / 300;
    margin: 0 auto;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 > li.maptext {
    margin-top: 24px;
    font-size: 15px;
    line-height: 1.75;
    overflow-wrap: anywhere;
  }

  /* 会社概要：外部バナー */
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn,
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn + ul.top-footer-bn {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    width: calc(100% - 24px);
    margin: 20px auto 0;
    padding: 0;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn + ul.top-footer-bn {
    margin-top: 14px;
    margin-bottom: 28px;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn > li,
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn + ul.top-footer-bn > li {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 1.45;
    text-align: center;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn > li img,
  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + ul.company-table + ul.company2 + ul.top-footer-bn + ul.top-footer-bn > li img {
    display: block;
    width: auto;
    max-width: min(100%, 70vw);
    height: auto;
    margin: 0 auto 5px;
  }

  /* 沿革 */

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 28px auto 16px;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 24px);
    margin: 0 auto 32px;
    padding: 0;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 > li.maptext2 {
    width: 100%;
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
    overflow-wrap: anywhere;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 > li.img-history {
    width: 100%;
    margin: 24px 0 0;
    padding: 0;
    text-align: center;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 > li.img-history img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 + h3.midashi2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto 16px;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 + h3.midashi2 + table.enkaku {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto 32px;
    table-layout: fixed;
    border-collapse: collapse;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 + h3.midashi2 + table.enkaku td {
    box-sizing: border-box;
    padding: 10px 8px;
    font-size: 15px;
    line-height: 1.65;
    vertical-align: top;
    overflow-wrap: anywhere;
  }

  #maincontents > ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h3.midashi2 + ul.company2.company3 + h3.midashi2 + table.enkaku td:first-child {
    width: 6.5em;
    font-size: 14px;
    font-weight: 600;
    white-space: nowrap;
  }

  /* 主な納入先 */
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > h4.customers {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 28px auto 12px;
    font-size: 18px;
    line-height: 1.5;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers-c2 {
    box-sizing: border-box;
    column-count: 1;
    column-gap: 0;
    width: calc(100% - 24px);
    margin: 0 auto 24px;
    padding-left: 1.35em;
    font-size: 16px;
    line-height: 1.7;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers-c2 > li {
    margin: 0 0 6px;
    padding-left: 0.15em;
    list-style-position: outside;
    overflow-wrap: anywhere;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 {
    box-sizing: border-box;
    display: block;
    width: calc(100% - 24px);
    margin: 0 auto 32px;
    padding: 0;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 > li.customers-midashi,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 > li.customers-text {
    box-sizing: border-box;
    width: 100%;
    margin: 0;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 > li.customers-midashi {
    position: static;
    margin-top: 16px;
    padding: 10px 12px;
    background-color: #eeeeee;
    font-size: 15px;
    line-height: 1.45;
    text-align: left;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 > li.customers-midashi p {
    position: static;
    width: auto;
    margin: 0;
    transform: none;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h4.customers) > ul.customers4 > li.customers-text {
    padding: 10px 12px 2px;
    font-size: 16px;
    line-height: 1.75;
    overflow-wrap: anywhere;
  }

  /* ディップコーターの特徴 */
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + #device-body),
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box),
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) {
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    width: calc(100% - 24px);
    margin: 0 auto 24px;
    padding: 0;
  }

  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) > li,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > li,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) > li {
    box-sizing: border-box;
    display: flex;
    width: auto;
    min-width: 0;
    min-height: 48px;
    margin: 0;
    padding: 0;
  }

  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) > li > a,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) > li > a:hover,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > li > a:hover,
  #maincontents > ul.bunya-list:has(+ h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) > li > a:hover {
    box-sizing: border-box;
    position: static;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    height: auto;
    padding: 8px 6px;
    overflow-wrap: anywhere;
    line-height: 1.35;
    text-align: center;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) h2.midashi2,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > h2.midashi2,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) > h2.midashi2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 28px auto 16px;
    font-size: 20px;
    line-height: 1.4;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) img,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) img,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) img {
    max-width: 100%;
    height: auto;
  }

  /* システム概要 */
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #device-body {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 0 auto 32px;
    font-size: 16px;
    line-height: 1.75;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) .device-box01,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) .device-box01-2 {
    box-sizing: border-box;
    width: 100%;
    margin: 16px auto;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) ul.dip-flow-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin: 20px auto;
    padding: 0;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) ul.dip-flow-box > li {
    width: auto;
    margin: 0;
    text-align: center;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #dip-table01,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #device-01 table {
    box-sizing: border-box;
    width: 100% !important;
    max-width: 100%;
    table-layout: fixed;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #dip-table01 td {
    padding: 8px;
    font-size: 15px;
    line-height: 1.55;
    overflow-wrap: anywhere;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #device-01 {
    overflow-x: auto;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + #device-body) #device-01 td {
    padding: 6px 3px;
    font-size: 11px;
    line-height: 1.35;
  }

  /* 微粒子配列 */
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > .dip-flow-box,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > .cf,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > .device-text01,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > ul.device2 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 16px auto;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > .cf {
    display: block;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) .float-text,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) .dip-syousai-box {
    float: none;
    width: 100%;
    margin: 0 0 20px;
    font-size: 16px;
    line-height: 1.7;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) .dip-s-text {
    width: auto;
    margin-top: 8px;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > ul.device2 {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding: 0;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .dip-flow-box) > ul.device2 > li {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 15px;
    line-height: 1.6;
  }

  /* ディップコーティングとは・ディップコーターの特徴 */
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device-box01-2,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device-box01 {
    box-sizing: border-box;
    width: calc(100% - 24px);
    margin: 16px auto 28px;
    font-size: 16px;
    line-height: 1.75;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device-box01-2 p {
    width: 100%;
    margin: 12px 0 20px;
    font-size: 16px;
    line-height: 1.75;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device3-midashi {
    margin: 0 0 12px;
    padding: 10px 12px;
    font-size: 18px;
    line-height: 1.4;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device3-img {
    display: block;
    width: 120px;
    margin: 0 0 -10px 8px;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device3-img-center-01,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) .device3-img-center-02 {
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto 24px;
    text-align: center;
    line-height: 1.6;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) ul.dipcoating4-img {
    display: flex;
    flex-direction: column;
    gap: 20px;
    margin: 0;
    padding: 0;
  }

  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) ul.dipcoating4-img li,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) ul.dipcoating4-img li.type1,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) ul.dipcoating4-img li.type2,
  #maincontents:has(> ul.bunya-list + h1.midashi-pagetop + p.midashi-pagetop-en + h2.midashi2 + .device-box01-2) ul.dipcoating4-img li.type3 {
    box-sizing: border-box;
    width: 100%;
    padding: 0;
    font-size: 15px;
    line-height: 1.6;
    text-align: center;
  }

  #category_list.mobile-menu-renewal {
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100dvh;
    max-height: none;
    overflow-y: auto;
    padding: 0 16px 24px;
    background-color: #1779a0;
    filter: none;
    opacity: 1;
    font-size: 16px;
  }

  .mobile-menu-renewal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 64px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
    font-size: 18px;
    font-weight: bold;
  }

  .mobile-menu-renewal__close {
    min-width: 72px;
    min-height: 44px;
    padding: 8px 12px;
    border: 1px solid #ffffff;
    border-radius: 4px;
    background: transparent;
    color: #ffffff;
    font: inherit;
  }

  .mobile-menu-renewal__list,
  .mobile-menu-renewal__list ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .mobile-menu-renewal__list > li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.6);
  }

  .mobile-menu-renewal__list a,
  .mobile-menu-renewal__list summary {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 52px;
    padding: 12px 8px;
    color: #ffffff;
    line-height: 1.4;
    text-decoration: none;
  }

  .mobile-menu-renewal__list summary {
    justify-content: space-between;
    cursor: pointer;
    list-style: none;
  }

  .mobile-menu-renewal__list summary::-webkit-details-marker {
    display: none;
  }

  .mobile-menu-renewal__list summary::after {
    content: '+';
    margin-left: 16px;
    font-size: 22px;
    font-weight: normal;
  }

  .mobile-menu-renewal__list details[open] summary::after {
    content: '−';
  }

  .mobile-menu-renewal__list details ul {
    margin: 0 0 12px;
    background-color: #126787;
  }

  .mobile-menu-renewal__list details li + li {
    border-top: 1px solid rgba(255, 255, 255, 0.35);
  }

  .mobile-menu-renewal__list details a {
    min-height: 48px;
    padding-left: 20px;
    font-size: 14px;
  }

  .mobile-menu-renewal__list > li.mobile-menu-renewal__phone a {
    justify-content: center;
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 0.04em;
  }
}
