@charset "UTF-8";

@media screen and (max-width: 750px) {

    /* TOPページ */

    header::after {
        width: 40vw;
        height: 7.714vw;
    }

    .header_border {
        height: 2px;
    }

    header::before {
        display: none;
    }

    .fv_text span {
        font-size: 4.857vw;
        padding: 10px 16px 10px 8px;
        margin-bottom: 4px;
    }

    .fv_member {
        display: none;
    }

    .news {
        padding: 40px 0;
    }

    .news_box {
        flex-direction: column;
        gap: 0;
    }

    .news_box h2 {
        width: 72.5px;
    }

    .news_content {
        width: 100%;
    }

    .important_message {
        width: 100%;
        padding: 55px 0;
        background-image: url(../img/important_back_sp.png);
        background-repeat: no-repeat;
        background-size: cover;
    }

    .important_message_box {
        flex-direction: column;
        gap: 0;
    }

    .important_message_box p {
        width: 100%;
    }

    /* template.css */

    h2 {
        font-size: 22px;
        font-weight: 500;
        line-height: 32px;
        margin-bottom: 20px;
        color: #2C66B0;
    }
    
    .h2_bb {
        padding-bottom: 9px;
        position: relative;
    }
    
    .h2_bb::before {
        position: absolute;
        content: "";
        background-image: linear-gradient(90deg, rgba(42, 113, 209, 1), rgba(7, 174, 222, 1));
        width: 100%;
        height: 2px;
        bottom: 0;
    }

    .back h2 {
        padding-left: 10px;
        padding-right: 10px;
    }

    .back .h2_bb::before {
        width: calc(100% - 20px);
    }

    h3 {
        font-size: 20px;
        margin-bottom: 14px;
    }

    .h3_dot::before {
        content: "";
        position: absolute;
        width: 6px;
        height: 6px;
        top: 13px;
        bottom: initial;
        margin: auto;
        left: 0;
        background-image: url(../img/dot.svg);
        background-repeat: no-repeat;
        background-size: contain;
    }

    section.back {
        padding: 60px 0;
    }

    p {
        font-weight: 300;
        font-size: 15px;
        line-height: 1.7;
    }

    .bold {
        display: inline;
    }

    .inner {
        margin: 60px auto;
    }

    .back .inner {
        padding-left: 10px;
        padding-right: 10px;
    }

    .breadcrumb .inner {
        margin: 0;
    }

    .area {
        margin: 0;
    }

    .area_back  {
        padding: 40px 0;
    }

    .area_back > div, .area_back > ul {
        margin: 0;
        padding: 0 10px;
    }

    .footer_nav {
        flex-direction: column;
    }

    .footer_top {
        padding: 20px 0 0 0;
        background-image: linear-gradient(180deg, rgba(42, 113, 209, 1), rgba(7, 174, 222, 1));
    }
    
    .footer_nav01, .footer_nav02, .footer_nav03, .footer_nav04 {
        width: 100%;
    }

    .footer_nav li {
        padding-left: 0;
        border-bottom: 1px solid rgba(247, 247, 247, 0.5);
    }

    .footer_nav ul li {
        margin-bottom: 0;
    }
    
    .footer_nav ul li::before {
        display: block;
    }

    .menu_content_parent.link_none {
        padding: 19px 0 16px 20px;
        font-size: 14px;
        font-weight: 400;
    }

    .footer_mt {
        margin-top: 0;
    }

    .footer_nav_big {
        font-size: 14px!important;
        font-weight: 400!important;
    }

    .menu_content_child ul li {
        border-bottom: 0;
    }

    .footer_nav ul li a {
        font-size: 14px;
        color: #FFFFFF;
        padding: 19px 0 16px 20px;
        width: 100%;
    }

    .menu_content_child ul {
        display: flex;
        flex-wrap: wrap;
        gap: 26px 33px;
        justify-content: space-between;
        padding: 18px 7.5%;
        /* border-bottom: 1px solid rgba(247, 247, 247, 0.5); */
    }

    .menu_content_child ul li {
        width: calc((100% - 33px) / 2);
        text-align: left;
    }

    .menu_content_child ul li a {
        padding: 0;
        line-height: 22px;
    }

    .menu_content_parent.close::before {
        transform: rotate(90deg);
    }

    .menu_content_child {
        display: none;
    }

    .footer_link {
        align-items: flex-start;
    }

    .footer_member {
        flex-direction: column;
    }

    .footer_logo_img, .footer_member {
        width: 50%;
    }

    .footer_logo_img a {
        margin-left: 20px;
    }

    .footer_logo_img div {
        margin-top: 57px;
    }

    .footer_a:first-child {
        margin-bottom: 20px;
    }

    .footer_member {
        align-items: end;
    }

    .footer_member span {
        font-size: 14px;
        margin-bottom: 13px;
        margin-right: 20px;
    }

    .footer_member a {
        font-size: 14px;
        margin-right: 20px!important;
    }

    .footer_regist {
        margin-bottom: 10px;
    }

    .footer_copyright {
        justify-content: center;
    }

    .breadcrumb span {
        margin: 0 3px;
    }



    /* パーツページ */

    .txt_img_block1 {
        flex-direction: column;
        gap: 0;
        margin-bottom: 0;
    }

    .txt_img_block1_text {
        width: 100%;
    }

    .txt_img_block1_img {
        width: 57.14%;
        margin: 0 auto;
        margin-bottom: 30px;
    }

    .txt_img_block1_img4_block_box {
        width: 100%;
        flex-wrap: wrap;
    }

    .txt_img_block1_img4_block_item {
        width: 50%;
    }

    .txt_img_block2 {
        flex-direction: column-reverse;
        gap: 0;
        margin-bottom: 40px;
    }

    .txt_img_block2_img {
        width: 100%;
    }

    .txt_img_block2_text {
        width: 100%;
    }

    .txt_img_block2_box {
        margin: 0 10px!important;
    }

    .table_block {
        margin-bottom: 60px;
    }

    .table_block:last-child {
        margin-bottom: 0;
    }

    .table_block .btn_box, .table_block .btn {
        margin-bottom: 0;
    }

    .table_section.back {
        padding-top: 60px;
    }

    .table, .table th, .table td {
        font-size: 15px;
        width: 100%;
        display: block;
        padding: 0;
        border: 0;
    }

    .table th {
        margin-bottom: 5px;
    }

    .table tr {
        border-bottom: 1px solid rgba(42, 113, 209, 0.4);
        padding: 16px 0;
        display: block;
    }

    .button_block {
        flex-direction: column;
        margin-bottom: 20px;
    }

    .button_block p, .button_block div {
        width: 100%;
    }

    .button_block div a {
        margin-bottom: 20px;
    }

    .page_link {
        margin-left: 0;
        padding: 17px 28px 11px 0;
        border-bottom: 1px solid rgba(42, 113, 209, 0.5);
    }

    .page_link::before {
        top: 12px;
    }

    .link_list_title {
        width: 100%;
        padding: 16px 0;
        text-align: center;
    }

    .link_list {
        margin: 0;
        padding: 0 10px;
        flex-direction: column;
    }

    .link_list li {
        width: 100%;
        border: none;
        padding: 0;
    }

    .link_list .page_link {
        padding: 17px 0 11px 0;
    }

    .special_txt_box {
        padding: 20px 10px;
    }

    .column_item_title {
        font-size: 20px;
    }

    .column_item_detail {
        font-size: 15px;
        line-height: 1.7;
    }

    .link {
        font-size: 14px;
    }

    .tag_link_list {
        padding-top: 20px!important;
    }

    .accordion_section .area_back {
        padding: 17px 0;
    }

    .accordion_area h3 {
        font-size: 18px;
    }

    .accordion_box > div {
        flex-direction: column;
        gap: 30px;
        border-top: 1px solid rgba(42, 113, 209, 0.4);
        margin-top: 18px;
        padding: 30px 20px 0;
    }

    .accordion_box_img, .accordion_box_txt {
        width: 100%;
    }

    .accordion_box_img img {
        padding-left: 0;
    }

    .accordion_box_txt span {
        font-size: 20px;
        margin-bottom: 10px;
    }

    .accordion_box_txt p {
        margin-bottom: 0;
    }




    /* 3.product_details(医療関係者向け/動物関係者向け製品一覧) */

    .kasou_header {
        height: auto!important;
        aspect-ratio: initial;
    }

    .kasou_fv {
        height: auto;
        transform: initial;
        margin: 120px 0 40px 0;
    }
    
    .kasou_fv_title {
        position: initial;
        font-size: 30px;
        text-align: center;
        transform: initial;
    }

    .kasou_fv_img {
        display: none;
    }

    .kasou_fv_nav {
        flex-direction: column;
        position: initial;
        margin-bottom: 40px;
    }

    .kasou_fv_nav li {
        padding: 0 5%;
    }

    .page_inside {
        width: 100%;
        margin-left: 0;
        padding: 17px 0 11px 0;
        border-bottom: 1px solid rgba(42, 113, 209, 0.5);
    }

    .page_inside::before {
        top: 12px;
    }
    
    .filter_box {
        padding: 15px 2.5%;
        border: 1px solid rgba(44,102,176,0.5);
    }

    .filter_contents .btn_box {
        justify-content: center;
    }

    .kasou_filter h2 {
        font-size: 18px;
    }

    .tab {
        flex-direction: column;
    }

    .tab li a {
        text-align: center;
    }

    .tab1 > div span {
        display: block;
        line-height: 24px;
    }

    .tab1 > div label {
        line-height: 24px;
    }

    .btn {
        width: 100%;
        max-width: initial;
        margin: 0 0 30px 0;
        padding: 20px 30px;
        text-align: left;
    }

    .search_btn {
        padding: 20px 0;
        width: 140px;
        text-align: center;
    }

    .reset_btn {
        padding: 18px 0;
        width: 140px;
        text-align: center;
    }

    .button_section .btn {
        max-width: initial;
    }

    .product_contents {
        flex-direction: column;
        padding: 0;
        gap: 30px;
    }

    .product_item {
        width: 100%;
    }

    .product_item_img {
        height: 60vw;
    }

    .product_item_text h3 {
        font-size: 20px;
    }

    .product_item_part span {
        font-size: 13px;
    }

    .product_item_text p {
        font-size: 15px;
        line-height: 25.5px;
        margin-bottom: 20px;
    }

    .product_item_feature li {
        font-size: 11px;
    }

    .product_item_feature li:first-child {
        font-size: 13px;
    }

    .banner_item {
        width: 100%;
        height: 37.25vw;
    }

    .banner_item h3 {
        font-size: 22px;
        line-height: 1;
        margin-bottom: 5px;
    }

    .banner_item div {
        bottom: 10px;
        padding: 0 10px;
    }

    .banner_item p {
        font-size: 10px;
        line-height: 10px;
        margin-bottom: 0;
    }

    .catalog_link {
        margin: 35px 0 50px 0;
    }

    .kasou_product .kasou_link {
        margin-bottom: 30px;
    }



    /* 22.news(お知らせ) – 1 */


    .pull_down {
        width: 100%;
    }

    .news_title {
        margin-top: 5px;
        display: block;
    }

    .news_item a > div {
        padding-right: 90px;
        line-height: 28px;
    }

    .news_category {
        font-size: 14px;
        line-height: 14px;
        padding: 6px 15px;
    }

    .news_item a::before {
        bottom: 0;
        top: initial;
    }



    /* 製品詳細(各製品)＿投稿機能ページ（クラシックエディタorブロックエディタ） */


    .single_text_block {
        margin-bottom: 60px;
    }

    .product_detail {
        padding-bottom: 0;
    }

    .product_detail_box {
        flex-direction: column-reverse;
    }

    .product_detail_logo {
        margin: 0 auto 20px auto;
    }

    .product_detail_txt {
        margin: 0;
        width: 100%;
    }

    .product_detail_img {
        width: 100%;
        margin-bottom: 45px;
    }

    .product_detail_slick_thumbnail {
        margin-left: 10px;
        height: 20.5vw;
    }

    .product_detail_slider_slick_prev, .product_detail_slider_slick_next {
        display: none!important;
    }

    .product_detail_slick_img {
        width: 100%;
        height: 45.75vw;
        max-height: 353px;
    }

    .product_detail_slick_img img {
        height: 45.75vw;
    }

    .product_detail_body.sp {
        position: initial;
    }

    .product_detail_body div {
        width: 195px;
        height: 195px;
        margin: 0 auto;
    }

    .product_detail_body span {
        display: block;
        font-size: 18px;
        line-height: 31px;
    }
    
    .product_detail_body span:last-child {
        font-size: 22px;
    }

    .single_img_center {
        margin-bottom: 0;
    }

    .single_img_center img {
        width: 100%;
    }

    .caption {
        font-size: 13px;
    }

    .single_column2 {
        flex-direction: column;
        gap: 20px;
        margin-bottom: 0;
    }

    .single_column2_img, .single_column2_txt {
        width: 100%;
    }

    .column_box {
        flex-direction: column;
        gap: 0;
    }

    .column_item {
        width: 100%;
    }

    .column_item_img {
        height: initial;
    }

    .special_txt_box:last-child {
        flex-direction: column;
        padding: 30px 10px;
    }

    .special_txt_box_img ,.special_txt_box_txt {
        width: 100%;
    }

    /* 23.news_detail(お知らせ詳細) – 2 */

    .news_fv {
        margin: 150px 0 40px 0;
        padding: 0 20px;
    }

    .news_fv .kasou_fv_title {
        text-align: left;
        margin-top: 10px;
    }

    .news_single_detail {
        position: initial;
    }

    .news_date, .news_category {
        margin-right: 10px;
    }

    .accordion_item {
        font-size: 18px;
    }

    .accordion_item summary {
        padding: 18px 60px 18px 10px;
    }

    .accordion_item summary::after {
        right: 10px;
    }

    .accordion_item p {
        padding: 0 10px 28px 10px;
    }


    /* フォーム */

    .table tbody {
        display: block;
        width: 100%;
    }

}